App::PropertyData Struct Reference

#include <PropertyContainer.h>

Classes

struct  OffsetBase
 
struct  PropertySpec
 

Public Member Functions

void addProperty (OffsetBase offsetBase, const char *PropName, Property *Prop, const char *PropertyGroup=nullptr, PropertyType=Prop_None, const char *PropertyDocu=nullptr)
 
const PropertySpecfindProperty (OffsetBase offsetBase, const char *PropName) const
 
const PropertySpecfindProperty (OffsetBase offsetBase, const Property *prop) const
 
const char * getDocumentation (OffsetBase offsetBase, const char *name) const
 
const char * getDocumentation (OffsetBase offsetBase, const Property *prop) const
 
const char * getGroup (OffsetBase offsetBase, const char *name) const
 
const char * getGroup (OffsetBase offsetBase, const Property *prop) const
 
const char * getName (OffsetBase offsetBase, const Property *prop) const
 
PropertygetPropertyByName (OffsetBase offsetBase, const char *name) const
 
void getPropertyList (OffsetBase offsetBase, std::vector< Property * > &List) const
 
void getPropertyMap (OffsetBase offsetBase, std::map< std::string, Property * > &Map) const
 
void getPropertyNamedList (OffsetBase offsetBase, std::vector< std::pair< const char *, Property * > > &List) const
 
short getType (OffsetBase offsetBase, const char *name) const
 
short getType (OffsetBase offsetBase, const Property *prop) const
 
void merge (PropertyData *other=nullptr) const
 
void split (PropertyData *other)
 

Public Attributes

bool parentMerged = false
 
const PropertyDataparentPropertyData
 
bmi::multi_index_container< PropertySpec, bmi::indexed_by< bmi::sequenced<>, bmi::hashed_unique< bmi::member< PropertySpec, const char *, &PropertySpec::Name >, CStringHasher, CStringHasher >, bmi::hashed_unique< bmi::member< PropertySpec, short, &PropertySpec::Offset > > > > propertyData
 

Member Function Documentation

◆ addProperty()

void PropertyData::addProperty ( OffsetBase  offsetBase,
const char *  PropName,
Property Prop,
const char *  PropertyGroup = nullptr,
PropertyType  Type = Prop_None,
const char *  PropertyDocu = nullptr 
)

◆ findProperty() [1/2]

const PropertyData::PropertySpec * PropertyData::findProperty ( OffsetBase  offsetBase,
const char *  PropName 
) const

◆ findProperty() [2/2]

const PropertyData::PropertySpec * PropertyData::findProperty ( OffsetBase  offsetBase,
const Property prop 
) const

◆ getDocumentation() [1/2]

const char * PropertyData::getDocumentation ( OffsetBase  offsetBase,
const char *  name 
) const

◆ getDocumentation() [2/2]

const char * PropertyData::getDocumentation ( OffsetBase  offsetBase,
const Property prop 
) const

◆ getGroup() [1/2]

const char * PropertyData::getGroup ( OffsetBase  offsetBase,
const char *  name 
) const

◆ getGroup() [2/2]

const char * PropertyData::getGroup ( OffsetBase  offsetBase,
const Property prop 
) const

◆ getName()

const char * PropertyData::getName ( OffsetBase  offsetBase,
const Property prop 
) const

◆ getPropertyByName()

Property * PropertyData::getPropertyByName ( OffsetBase  offsetBase,
const char *  name 
) const

◆ getPropertyList()

void PropertyData::getPropertyList ( OffsetBase  offsetBase,
std::vector< Property * > &  List 
) const

◆ getPropertyMap()

void PropertyData::getPropertyMap ( OffsetBase  offsetBase,
std::map< std::string, Property * > &  Map 
) const

◆ getPropertyNamedList()

void PropertyData::getPropertyNamedList ( OffsetBase  offsetBase,
std::vector< std::pair< const char *, Property * > > &  List 
) const

◆ getType() [1/2]

short PropertyData::getType ( OffsetBase  offsetBase,
const char *  name 
) const

◆ getType() [2/2]

short PropertyData::getType ( OffsetBase  offsetBase,
const Property prop 
) const

◆ merge()

void PropertyData::merge ( PropertyData other = nullptr) const

◆ split()

void PropertyData::split ( PropertyData other)

Member Data Documentation

◆ parentMerged

bool App::PropertyData::parentMerged = false
mutable

Referenced by addProperty(), merge(), and split().

◆ parentPropertyData

const PropertyData* App::PropertyData::parentPropertyData

Referenced by merge(), and split().

◆ propertyData

bmi::multi_index_container< PropertySpec, bmi::indexed_by< bmi::sequenced<>, bmi::hashed_unique< bmi::member<PropertySpec, const char*, &PropertySpec::Name>, CStringHasher, CStringHasher >, bmi::hashed_unique< bmi::member<PropertySpec, short, &PropertySpec::Offset> > > > App::PropertyData::propertyData
mutable

The documentation for this struct was generated from the following files: