OpFlex Framework  1.7.0
opflex::modb::PropertyInfo Class Reference

Property info provides metadata about a particular managed object property. More...

#include <opflex/modb/PropertyInfo.h>

Public Types

enum  property_type_t {
  COMPOSITE, REFERENCE, STRING, S64,
  U64, MAC, ENUM8, ENUM16,
  ENUM32, ENUM64
}
 Possible property types. More...
 
enum  cardinality_t { SCALAR, VECTOR }
 Enum representing the cardinality of the property. More...
 

Public Member Functions

 PropertyInfo ()
 Default constructor.
 
 PropertyInfo (prop_id_t prop_id, const std::string &property_name, property_type_t type, cardinality_t cardinality)
 Construct a property info object with the provided property name and primitive property type.
 
 PropertyInfo (prop_id_t prop_id, const std::string &property_name, property_type_t type, cardinality_t cardinality, const EnumInfo &enum_info)
 Construct a property info object with enum info of the specified type.
 
 PropertyInfo (prop_id_t prop_id, const std::string &property_name, property_type_t type, class_id_t class_id, cardinality_t cardinality)
 Construct a property info object with either a composite or reference data type of the specified type.
 
 ~PropertyInfo ()
 Destroy the property info object.
 
prop_id_t getId () const
 Get the id for this property.
 
const std::string & getName () const
 Get the name for this property.
 
const property_type_t getType () const
 Get the type of this property.
 
const class_id_t getClassId () const
 Get the class ID for this property. More...
 
const cardinality_t getCardinality () const
 Get the cardinality for this type.
 
const EnumInfo & getEnumInfo () const
 Get the associated enum info for this property if it is an enum.
 

Detailed Description

Property info provides metadata about a particular managed object property.

This metadata is generated by the code generation framework and is required when the framework is initialized.

Member Enumeration Documentation

◆ cardinality_t

Enum representing the cardinality of the property.

Enumerator
SCALAR 

A scalar-valued property.

VECTOR 

A vector-valued property.

◆ property_type_t

Possible property types.

Enumerator
COMPOSITE 

A composite property.

REFERENCE 

A string-valued property containing a class ID and URI which is a reference to another location in the management information tree.

STRING 

A string-valued property.

S64 

A signed 64-bit integer value.

U64 

An unsigned 64-bit integer value.

MAC 

A MAC address.

ENUM8 

An 8-bit enum value.

ENUM16 

A 16-bit enum value.

ENUM32 

A 32-bit enum value.

ENUM64 

A 64-bit enum value.

Member Function Documentation

◆ getClassId()

const class_id_t opflex::modb::PropertyInfo::getClassId ( ) const
inline

Get the class ID for this property.

This is valid only when property_type_t == COMPOSITE


The documentation for this class was generated from the following file: