ClassGroup.h
Go to the documentation of this file.
1 /****
2  * ClassGroup.h
3  *
4  * Copyright 2020 mikee47 <mike@sillyhouse.net>
5  *
6  * This file is part of the Sming UPnP Library
7  *
8  * This library is free software: you can redistribute it and/or modify it under the terms of the
9  * GNU General Public License as published by the Free Software Foundation, version 3 or later.
10  *
11  * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
12  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13  * See the GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along with this library.
16  * If not, see <https://www.gnu.org/licenses/>.
17  *
18  ****/
19 
20 #pragma once
21 
22 #include "ObjectClass.h"
23 #include <WVector.h>
24 
25 namespace UPnP
26 {
27 class ClassGroupList;
28 
29 struct ClassGroup {
31 
34 
35  const ObjectClass* find(Urn::Kind kind, const String& type, uint8_t version) const;
36 };
37 
38 class ClassGroupList : public Vector<ClassGroup>
39 {
40 public:
41  int add(const FlashString& domain, const ObjectClass::List& classes);
42  const ObjectClass* find(const Urn& objectType) const;
43 };
44 
45 } // namespace UPnP
describes a counted string stored in flash memory
Definition: String.hpp:174
Class to access a Vector of objects stored in flash.
Definition: Vector.hpp:110
The String class.
Definition: WString.h:137
Definition: ClassGroup.h:39
int add(const FlashString &domain, const ObjectClass::List &classes)
const ObjectClass * find(const Urn &objectType) const
Structure for UPnP URNs.
Definition: Urn.h:41
Kind
Definition: Urn.h:43
Vector class template.
Definition: WVector.h:32
Definition: ActionRequest.h:25
Definition: ClassGroup.h:29
const ObjectClass * find(Urn::Kind kind, const String &type, uint8_t version) const
const ObjectClass::List & classes
Definition: ClassGroup.h:33
const FlashString & domain
Definition: ClassGroup.h:32
Describes device or service class.
Definition: ObjectClass.h:36