Objects.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2006-2011, SRI International (R)
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #pragma once
19 
20 #ifndef __OpenKarto_Object_h__
21 #define __OpenKarto_Object_h__
22 
23 #include <OpenKarto/Object.h>
24 
25 namespace karto
26 {
27 
29 
30 
34 
38  class KARTO_EXPORT ModuleParameters : public Object
39  {
40  KARTO_RTTI();
41 
42  public:
47  ModuleParameters(const Identifier& rName);
48 
49  protected:
50  //@cond EXCLUDE
54  virtual ~ModuleParameters();
55  //@endcond
56 
57  private:
58  // restrict the following functions
59  ModuleParameters(const ModuleParameters&);
60  const ModuleParameters& operator=(const ModuleParameters&);
61  }; // ModuleParameters
62 
66  KARTO_TYPE(ModuleParameters);
67 
71  typedef SmartPointer<ModuleParameters> ParametersPtr;
72 
76 
80  class KARTO_EXPORT CustomItem : public Object
81  {
82  KARTO_RTTI();
83 
84  public:
88  CustomItem();
89 
94  CustomItem(const Identifier& rName);
95 
96  protected:
97  //@cond EXCLUDE
101  virtual ~CustomItem();
102  //@endcond
103 
104  public:
109  virtual const String& Write() const = 0;
110 
115  virtual void Read(const String& pValue) = 0;
116 
117  private:
118  // restrict the following functions
119  CustomItem(const CustomItem&);
120  const CustomItem& operator=(const CustomItem&);
121  }; // CustomItem
122 
126  KARTO_TYPE(CustomItem);
127 
131  typedef SmartPointer<CustomItem> CustomItemPtr;
132 
136  typedef List<CustomItemPtr> CustomItemList;
137 
141 
146  class KARTO_EXPORT DatasetInfo : public Object
147  {
148  KARTO_RTTI();
149 
150  public:
154  DatasetInfo();
155 
156  protected:
157  //@cond EXCLUDE
161  virtual ~DatasetInfo();
162  //@endcond
163 
164  public:
169  const String& GetTitle() const;
170 
175  const String& GetAuthor() const;
176 
181  const String& GetDescription() const;
182 
187  const String& GetCopyright() const;
188 
189  private:
190  // restrict the following functions
191  DatasetInfo(const DatasetInfo&);
192  const DatasetInfo& operator=(const DatasetInfo&);
193 
194  private:
195  Parameter<String>* m_pTitle;
196  Parameter<String>* m_pAuthor;
197  Parameter<String>* m_pDescription;
198  Parameter<String>* m_pCopyright;
199  }; // class DatasetInfo
200 
204  KARTO_TYPE(DatasetInfo);
205 
209  typedef SmartPointer<DatasetInfo> DatasetInfoPtr;
210 
212 
213 }
214 
215 #endif // __OpenKarto_Object_h__
Write
#define KARTO_EXPORT
Definition: Macros.h:78
#define KARTO_RTTI()
Definition: Meta.h:198
KARTO_TYPE(Grid< kt_int8u >)
Read
Definition: Any.cpp:20


nav2d_karto
Author(s): Sebastian Kasperski
autogenerated on Thu Jun 6 2019 19:20:24