IVariableParam.h
Go to the documentation of this file.
1 #ifndef iprm_IVariableParam_included
2 #define iprm_IVariableParam_included
3 
4 
5 // Qt includes
6 #include <QtCore/QByteArray>
7 #include <QtCore/QSet>
8 
9 // ACF includes
10 #include <iser/ISerializable.h>
11 #include <iprm/iprm.h>
12 
13 
14 namespace iprm
15 {
16 
17 
21 class IVariableParam: virtual public iser::ISerializable
22 {
23 public:
24  typedef QSet<QByteArray> TypeIds;
25 
29  virtual TypeIds GetKnownTypeIds() const = 0;
30 
35  virtual QByteArray GetParameterTypeId() const = 0;
40  virtual iser::ISerializable* GetParameter() const = 0;
41 
46  virtual bool AssignTypeId(const QByteArray& typeId) = 0;
47 };
48 
49 
50 } // namespace iprm
51 
52 
53 #endif // !iprm_IVariableParam_included
54 
55 
virtual TypeIds GetKnownTypeIds() const =0
Get lilst of all known type ID's.
Common class for all classes which objects can be archived or restored from archive.
Definition: ISerializable.h:23
virtual bool AssignTypeId(const QByteArray &typeId)=0
Assign type ID to this object.
QSet< QByteArray > TypeIds
Represents parameter, which can change its type.
virtual QByteArray GetParameterTypeId() const =0
Get type ID of current stored parameter.
virtual iser::ISerializable * GetParameter() const =0
Get current parameter.

© 2007-2017 Witold Gantzke and Kirill Lepskiy