16 #ifndef __OMNETPP_CPROPERTY_H 17 #define __OMNETPP_CPROPERTY_H 21 #include "simkerneldefs.h" 24 #include "cstringpool.h" 25 #include "cproperties.h" 41 static const char *DEFAULTKEY;
55 const char *propindex;
56 mutable const char *propfullname;
58 typedef std::vector<const char *> CharPtrVector;
60 std::vector<CharPtrVector> valuesv;
66 static void releaseValues(CharPtrVector& vals);
67 int findKey(
const char *key)
const;
68 CharPtrVector& getValuesVector(
const char *key)
const;
72 virtual void updateWith(
const cProperty *property);
77 virtual void lock() {setFlag(FL_ISLOCKED,
true);}
80 virtual bool isLocked()
const {
return flags&FL_ISLOCKED;}
92 explicit cProperty(
const char *name=
nullptr,
const char *index=
nullptr);
116 virtual void setName(
const char *name)
override;
121 virtual const char *getFullName()
const override;
131 virtual std::string str()
const override;
136 virtual void parsimPack(
cCommBuffer *buffer)
const override;
141 virtual void parsimUnpack(
cCommBuffer *buffer)
override;
150 virtual void setIndex(
const char *index);
158 virtual const char *getIndex()
const;
163 virtual void setIsImplicit(
bool b);
170 virtual bool isImplicit()
const;
176 virtual const std::vector<const char *>& getKeys()
const;
182 virtual bool containsKey(
const char *key)
const;
188 virtual void addKey(
const char *key);
196 virtual int getNumValues(
const char *key)
const;
206 virtual void setNumValues(
const char *key,
int size);
213 virtual const char *getValue(
const char *key=
"",
int index=0)
const;
224 virtual void setValue(
const char *key,
int index,
const char *value);
229 virtual void erase(
const char *key);
Extends cObject with a name string. Also includes a "flags" member, with bits open for use by subclas...
Definition: cnamedobject.h:36
cProperty(const cProperty &other)
Definition: cproperty.h:97
Stores a (NED) property with its (possibly compound) value.
Definition: cproperty.h:38
Buffer for the communications layer of parallel simulation.
Definition: ccommbuffer.h:41
Definition: cabstracthistogram.h:21
A collection of properties (cProperty).
Definition: cproperties.h:34
virtual cProperty * dup() const override
Definition: cproperty.h:126
Reference-counted storage for strings.
Definition: cstringpool.h:36