![]() |
VR-Forces 4.6.1 Class Documentation
|
Interface class used to define minimal interface for a property. More...

Public Types | |
| enum | MergeFlags { Replace = 0x00000001, MinimalSimilarityCheck = 0x00000002, RollUp = 0x00000004, AddMissing = 0x00000008, KeepIsPublished = 0x00000010 } |
Public Member Functions | |
| virtual | ~DtPropertyInterface () |
| virtual char * | encode (char *) const =0 |
| These methods are for network encoding/decoding for Hla encoding decoding reasons. | |
| virtual const char * | decode (const char *)=0 |
| Decodes the variable bindings from the specified buffer. | |
| virtual void | getSize (int &size) const =0 |
| Returns the size of this item, iterating over all types. | |
| virtual int | hlaAlignment () const =0 |
| Returns hlaAlignment. | |
| virtual const char * | propertyType () const =0 |
| Typically returns reader/writer type. | |
| virtual DtString | stringRep (const DtString &root="") const =0 |
| int | getSize () const |
| virtual bool | isSimilarProperty (const DtPropertyInterface *rhs) const |
| Returns true if the readerWriterType is the same. | |
| virtual bool | merge (const DtPropertyInterface &target, MergeFlags, const DtMergePath &path=DtMergePath(), const std::set< DtString > &ignore=std::set< DtString >())=0 |
| Takes the contents of the supplied properties and merges with the following rules if replace is false: 1) If the same named property of the same type (and prototype and key) exists regardless of what the contents are in this property, it is replaced with the contents of the target 2) If a property in the target does not exist in source, it is not merged in 3) All other items are kept in the source. | |
| virtual DtlObjPtr | getData (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)=0 |
| Override to allow a variable to be assigned to a property of derived type. | |
| virtual bool | isPublishedArg (DtlObjPtr arg, unsigned &disVarRecType) const |
| Tests whether the argument specified indicates this property should be published. | |
| virtual void | reset ()=0 |
| Override to clear out variable value. | |
| virtual DtReaderWriter * | readerWriter ()=0 |
| virtual const DtReaderWriter * | readerWriter () const =0 |
| virtual bool | isPublished () const =0 |
| Whether this property should be published. | |
| virtual void | setIsPublished (bool isPub)=0 |
| virtual unsigned | disRecordType () const =0 |
| If this property is published, which DIS record type should it use. | |
| virtual void | setDisRecordType (unsigned recType)=0 |
Interface class used to define minimal interface for a property.
|
inlinevirtual |
These methods are for network encoding/decoding for Hla encoding decoding reasons.
Implemented at templated rw level Encodes the variable bindings into the supplied buffer
Implemented in DtRwPropertyWithThreshold< _RwType >, DtRwPropertyWithThreshold< DtRwInt >, DtRwPropertyWithThreshold< DtRwInt8 >, DtRwPropertyWithThreshold< DtRwInt16 >, DtRwPropertyWithThreshold< DtRwReal >, DtRwPropertyWithThreshold< DtRwVector >, DtRwPropertyWithThreshold< DtRwReal64 >, DtRwPropertyWithThreshold< DtRwOffsetVector >, DtRwPropertyWithThreshold< DtRwInt32 >, DtRwPropertyWithThreshold< DtRwReal32 >, DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, DtRwProperties, and DtRwPropertiesList.
Decodes the variable bindings from the specified buffer.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, DtRwProperties, and DtRwPropertiesList.
|
pure virtual |
Returns the size of this item, iterating over all types.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, DtRwPropertiesList, and DtRwProperties.
|
pure virtual |
Returns hlaAlignment.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Typically returns reader/writer type.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, DtRwProperties, and DtRwPropertiesRangeItem.
Referenced by isSimilarProperty().
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
Referenced by DtVrfStatePropertyPrinter::processObjectUpdated().
|
inline |
|
pure virtual |
Returns a ReaderWriter pointer of the property. If property is not a ReaderWriter, this should be overridden to return 0.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
inlinevirtual |
Returns true if the readerWriterType is the same.
Subclasses can do extra checking
Reimplemented in DtRwPropertiesList, DtRwPropertiesMap, and DtRwPropertiesStructure.
References propertyType().
|
pure virtual |
Takes the contents of the supplied properties and merges with the following rules if replace is false: 1) If the same named property of the same type (and prototype and key) exists regardless of what the contents are in this property, it is replaced with the contents of the target 2) If a property in the target does not exist in source, it is not merged in 3) All other items are kept in the source.
If replace is true, any matching items are replaced by their target. This will add/remove properties
This is a non-recursive function. It only looks at top level property items.
Returns true if merge was successful
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Override to allow a variable to be assigned to a property of derived type.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, DtRwPropertiesList, and DtRwProperties.
|
inlinevirtual |
Tests whether the argument specified indicates this property should be published.
If a specific DIS variable record type is indicated, this is returned in disVarRecType.
|
pure virtual |
Whether this property should be published.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
If this property is published, which DIS record type should it use.
Default is 0, which indicates that the normal VRF generic attribute record type should be used.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.
|
pure virtual |
Override to clear out variable value.
Implemented in DtRwProperty< _RwType >, DtRwProperty< DtRwString >, DtRwProperty< DtRwInt >, DtRwProperty< DtRwInt8 >, DtRwProperty< DtRwInt16 >, DtRwProperty< DtRwReal >, DtRwProperty< DtRwVector >, DtRwProperty< DtRwReal64 >, DtRwProperty< DtRwBoolean >, DtRwProperty< DtRwOffsetVector >, DtRwProperty< DtRwInt32 >, DtRwProperty< DtRwReal32 >, and DtRwProperties.