CDPProperty Class

The template class for storing a named value as a string or a numeric type. More...

Header: #include <CDPSystem/Base/CDPProperty.h>
Inherits: CDPPropertyBase

Public Functions

CDPProperty()
CDPProperty(const CDPPropertyBase &other)
CDPProperty(const CDPProperty<T> &other)
CDPProperty(const T &other)
~CDPProperty() override
void Create(XMLPrimitive *pXMLOwner, CDP::StudioAPI::ICDPNode *pOwner)
const std::string GetPropertySetting(std::string strSettingName) const
virtual std::string GetValueFromConfiguration() const
void RemoveFromSyncIn()
void RemoveFromSyncOut()
const std::string &ToStdString() const
virtual bool empty() const
std::string::size_type length()
std::string::size_type size()
operator T() const
CDPProperty<T> &operator=(const CDPProperty<T> &rhs)
CDPProperty<T> &operator=(const XMLString &rhs)
CDPProperty<T> &operator=(const std::string &rhs)
CDPProperty<T> &operator=(const char *rhs)
char operator[](unsigned int nIndex) const

Reimplemented Public Functions

virtual void AddListener(CDPPropertyBase *pProperty) override
virtual void AddListenersToSyncInOnce() override
virtual void AddToSyncIn() override
virtual void AddToSyncInOnce() override
virtual void AddToSyncOut() override
virtual void AddToSyncOutOnce() override
virtual void ClearRoutedProperty() override
virtual void ClockIn() override
virtual void Configure(XMLPrimitive *pXMLPrimitive) override
virtual void Connect(std::string propertyRouting) override
virtual void ConnectToProperty(CDPPropertyBase *pProperty) override
virtual void Create(const char *pzName, CDP::StudioAPI::ICDPNode *pOwner, CDPPropertyBase::PropertyType_e ePropertyType = CDPPropertyBase::e_Attribute, CDPOBJECT_SETPROPERTY_HANDLER setPropertyHandler = nullptr, CDPOBJECT_VALIDATEPROPERTY_HANDLER validatePropertyHandler = nullptr) override
virtual void Destroy() override
virtual void Disconnect() override
virtual void DisconnectAllListeners() override
virtual void DisconnectBackend(bool removeFromRoutedPropertyListener = true) override
virtual void FillNodeChildren(CDP::StudioAPI::NodeStream &serializer) const override
virtual bool GetDoSaveOnChange() const override
virtual const char *GetFullName() const override
virtual unsigned int GetInternalSize() const override
virtual CDPPropertyBase::PropertyInternalType_e GetInternalType() const override
virtual double GetInternalValue() const override
virtual uint64_t GetInternalValueUInt64() const override
virtual bool GetLogEventOnChange() const override
virtual const char *GetName() const override
virtual CDP::StudioAPI::CDPNodeModeFlags GetNodeModeFlags() const override
virtual const std::string GetNodeName() const override
virtual CDP::StudioAPI::CDPNodeType GetNodeType() const override
virtual std::string GetNodeTypeName() const override
virtual CDP::StudioAPI::CDPValueType GetNodeValueType() const override
virtual CDPBaseObject *GetOwner() const override
virtual CDPObject *GetParent() const override
virtual CDPComponent *GetParentComponent() const override
virtual const PropertyListeners &GetPropertyListeners() const override
virtual std::shared_ptr<CDPPropertyModel> GetPropertyModel() override
virtual CDPPropertyBase::RouteMethod_e GetRouteMethod() const override
virtual CDPPropertyBase *GetRoutedProperty() override
virtual const char *GetRouting() const override
virtual CDPPropertyBase::RoutingStatus_e GetRoutingStatus() const override
virtual int GetSyncGroupId() const override
virtual std::string GetValue() const override
virtual CDP::StudioAPI::CDPVariantValue GetVariantValue() const override
virtual XMLPrimitive *GetXMLOwner() override
virtual void InvalidateListener(CDPPropertyBase *pProperty) override
virtual bool IsAutoCreated() const override
virtual bool IsConnected() const override
virtual bool IsDestroyed() const override
virtual bool IsNumeric() const override
virtual bool IsString() const override
virtual void PostProcess() override
virtual void PreProcess() override
virtual void RegisterRoutingChangeCallback(CDPOBJECT_SETPROPERTY_HANDLER handler) override
virtual void RegisterSetCallback(CDPOBJECT_SETPROPERTY_HANDLER handler) override
virtual void RegisterValidateCallback(CDPOBJECT_VALIDATEPROPERTY_HANDLER handler) override
virtual void RemoveListener(CDPPropertyBase *pProperty) override
virtual void RemoveListenerIfNotListening() override
virtual void SetAutoCreated() override
virtual void SetDoSaveOnChange(bool bSave) override
virtual void SetLogEventOnChange(bool bLogEvent) override
virtual void SetName(const char *propertyName) override
virtual void SetOwner(CDPBaseObject *pBase) override
virtual void SetPropertyChangeHandler(const std::function<void( CDPPropertyBase * ) > &handler) override
virtual void SetPropertyModel(std::shared_ptr<CDPPropertyModel> pInfo) override
virtual bool SetPropertySetting(std::string strPropertySetting, std::string strValue) override
virtual void SetPropertyValidateHandler(const std::function<bool( CDP::StudioAPI::CDPVariantValue &, CDPPropertyBase * ) > &) override
virtual void SetRouteMethod(CDPPropertyBase::RouteMethod_e eType) override
virtual void SetRoutingStatus(CDPPropertyBase::RoutingStatus_e newStatus) override
virtual void SetValue(const std::string &propertyValue) override
virtual void SetValueDontSave(const char *propertyValue) override
virtual void SetVariantValue(const CDP::StudioAPI::CDPVariantValue &value) override
virtual void SetXMLOwner(XMLPrimitive *pPrim) override
virtual const char *c_str() const override
virtual CDPPropertyBase &operator=(CDPPropertyBase const &rhs) override
virtual CDPProperty<T> &operator=(const double &rhs) override
virtual CDPProperty<T> &operator=(const float rhs) override
virtual CDPProperty<T> &operator=(const uint64_t &rhs) override
virtual CDPProperty<T> &operator=(const int64_t &rhs) override
virtual CDPProperty<T> &operator=(const unsigned int rhs) override
virtual CDPProperty<T> &operator=(const int rhs) override
virtual CDPProperty<T> &operator=(const unsigned short rhs) override
virtual CDPProperty<T> &operator=(const short rhs) override
virtual CDPProperty<T> &operator=(const unsigned char rhs) override
virtual CDPProperty<T> &operator=(const char rhs) override
virtual CDPProperty<T> &operator=(const bool rhs) override

Protected Variables

Additional Inherited Members

Detailed Description

The template class for storing a named value as a string or a numeric type.

A CDPProperty is a named value that can be used as an ordinary variable. It can hold data as strings or as any of the standard numeric types. CDPProperty is used as the value carrier in a CDPSignal. CDPProperties are aggregated by CDPBaseObjects, and it is the model configuration in this parent object which specifies how a named CDPProperty is configured.

Type

The property can have any of the supported types string, double, uint64_t, int64_t, float, unsigned int, int, unsigned short, short, unsigned char, char and bool.

Routing

The CDPProperty can retrieve its value from another CDPProperty by specifying Routing to the CDPProperty to retrieve the value from. The CDPProperty types can be different. For the transfer of routed values, there is a possibility to set if the values should be sent using events or a periodic transfer. String type properties are always event-based. Other properties can be either event-based, or periodic. SetRouteMethod is used to specify the RouteMethod of a property.

Event reporting

A property can be set up to generate events through the SetLogEventOnChange.

Validate Callback

The property can call validation code before the property is set, to prohibit setting the property to an invalid value. RegisterValidateCallback is used to set the ValidateCallback handler.

Set Callback

The property can call a callback when the property is set, so that dependent changes can be applied. RegisterSetCallback is used to register the Set-Callback handler.

Adding a CDPProperty in code

To add a CDPProperty in code mode, use the context-menu and select CDP, then Add. From the dialog that pops up, fill in Type, Name and set the other fields as wanted. The field Declare As specifies how the property is stored in the configuration, and should just be set to 'Element' for now.

Usage in code:

In the code it is used as a normal variable:

myProperty = 1.0*someOtherProperty;

except when using CDPMessage/printf and similar; The CDPProperty must then be cast to its type:

CDPProperty<int> myIntProperty;
...
myIntProperty = 12;
...
CDPMessage("The value is %u\n",static_cast<int>(myIntProperty));

CDPProperty Validation / callback

If you chose to add a validation callback to the CDPProperty, then the following happens whenever the CDPProperty is attempted changed:

First the coded validation-handler is called, and if it succeeds, then the set handler is called.

The CDPObject::ValidatePropertyHandler is called before setting the value, and allows you to modify the property value before setting it, or disallowing the set alltogether:

bool MyComponent::ValidatePropertyHandler(string& strNewValue, CDPPropertyBase* pProperty)
{
  if(pProperty==&myProperty) // check address of property instead of name, for speed reasons
  {
    if(strNewValue!=allowedValue)
      return false; // don't allow changing the value
    else
    {
      if(strNewValue=="0") // 0 is not a valid value, change it to '1' instead
        strNewValue = "1";  //  change the value to set.
    }
  }
  return true;
}

The CDPObject::SetPropertyHandler is called for a property after a property has been set:

void MyComponent::SetPropertyHandler(CDPPropertyBase* pProperty)
{
  if(pProperty==&myProperty) // verify this is called for correct property
  {
    m_nTheMeaningOfLifeAndEverything = 40+2; // whenever myProperty is set, recompute some dependency
  }
}

The handlers are set up when you create the property. If you have already added the property, you can modify it by right-clicking the property to bring up the CDP context menu, then click Change. The property configuration will the show, and you can add or remove settings for the property.

See also CDPSignal, CDPPropertyBase, CDPPropertyBase::PropertyInternalType_e, CDPBaseObject, CDPObject::ValidatePropertyHandler, and CDPObject::SetPropertyHandler.

Member Function Documentation

CDPProperty::CDPProperty()

Plain constructor, sets m_ValueInternal to 0

CDPProperty::CDPProperty(const CDPPropertyBase &other)

Constructor from a CDPPropertyBase. Sets m_ValueInternal from other

CDPProperty::CDPProperty(const CDPProperty<T> &other)

Creates a property by copying from another.

CDPProperty::CDPProperty(const T &other)

Constructor from type T. Sets m_ValueInternal from other

CDPProperty::~CDPProperty()

Destructor

[override virtual] void CDPProperty::AddListener(CDPPropertyBase *pProperty)

Reimplemented from CDPPropertyBase::AddListener().

[override virtual] void CDPProperty::AddListenersToSyncInOnce()

Reimplemented from CDPPropertyBase::AddListenersToSyncInOnce().

[override virtual] void CDPProperty::AddToSyncIn()

Reimplemented from CDPPropertyBase::AddToSyncIn().

Also calls SetRoutingStatus(CDPPropertyBase::e_Routed)

[override virtual] void CDPProperty::AddToSyncInOnce()

Reimplemented from CDPPropertyBase::AddToSyncInOnce().

Also calls SetRoutingStatus(CDPPropertyBase::e_Routed)

[override virtual] void CDPProperty::AddToSyncOut()

Reimplemented from CDPPropertyBase::AddToSyncOut().

[override virtual] void CDPProperty::AddToSyncOutOnce()

Reimplemented from CDPPropertyBase::AddToSyncOutOnce().

Also calls SetRoutingStatus(CDPPropertyBase::e_Routed)

[override virtual] void CDPProperty::ClearRoutedProperty()

Reimplemented from CDPPropertyBase::ClearRoutedProperty().

[override virtual] void CDPProperty::ClockIn()

Reimplemented from CDPPropertyBase::ClockIn().

[override virtual] void CDPProperty::Configure(XMLPrimitive *pXMLPrimitive)

Reimplemented from CDPPropertyBase::Configure().

The primitive sent in must be either an XMLElementEx* or an XMLAttribute*

[override virtual] void CDPProperty::Connect(std::string propertyRouting)

[override virtual] void CDPProperty::ConnectToProperty(CDPPropertyBase *pProperty)

Reimplemented from CDPPropertyBase::ConnectToProperty().

Connects pProperty to this property, so that whenever pProperty changes, the changed value will propagate to this property.

[override virtual] void CDPProperty::Create(const char *pzName, CDP::StudioAPI::ICDPNode *pOwner, CDPPropertyBase::PropertyType_e ePropertyType = CDPPropertyBase::e_Attribute, CDPOBJECT_SETPROPERTY_HANDLER setPropertyHandler = nullptr, CDPOBJECT_VALIDATEPROPERTY_HANDLER validatePropertyHandler = nullptr)

Reimplemented from CDPPropertyBase::Create().

void CDPProperty::Create(XMLPrimitive *pXMLOwner, CDP::StudioAPI::ICDPNode *pOwner)

Creates the property from the XMLPrimitive and bind it to an object. pXMLOwner is either an XMLAttribute or an XMLElementEx.

pOwner is the owner CDPObject pointer

[override virtual] void CDPProperty::Destroy()

Reimplemented from CDPPropertyBase::Destroy().

Disconnects the CDPProperty if connected, sets RoutingStatus to CDPPropertyBase::e_NotRouted and removes the property from SyncIn and SyncOut lists. To reuse the object, Create() must be called.

Note: Dynamically created property can not be deleted using C++ delete, because it can still be pointed by other recently connected properties. Use Application::DeferredPropertyDelete(CDPPropertyBase* property) to delete the property safely.

[override virtual] void CDPProperty::Disconnect()

Reimplemented from CDPPropertyBase::Disconnect().

Disconnects any routed property that has been set in this property. Note that owner components memberaccess mutex must be locked when this is called!

[override virtual] void CDPProperty::DisconnectAllListeners()

Reimplemented from CDPPropertyBase::DisconnectAllListeners().

[override virtual] void CDPProperty::DisconnectBackend(bool removeFromRoutedPropertyListener = true)

Reimplemented from CDPPropertyBase::DisconnectBackend().

[override virtual] void CDPProperty::FillNodeChildren(CDP::StudioAPI::NodeStream &serializer) const

Reimplemented from CDPNode::FillNodeChildren().

Fills serializer with internal members.

[override virtual] bool CDPProperty::GetDoSaveOnChange() const

Reimplemented from CDPPropertyBase::GetDoSaveOnChange().

[override virtual] const char *CDPProperty::GetFullName() const

Reimplemented from CDPPropertyBase::GetFullName().

[override virtual] unsigned int CDPProperty::GetInternalSize() const

Reimplemented from CDPPropertyBase::GetInternalSize().

[override virtual] CDPPropertyBase::PropertyInternalType_e CDPProperty::GetInternalType() const

Reimplemented from CDPPropertyBase::GetInternalType().

[override virtual] double CDPProperty::GetInternalValue() const

Reimplemented from CDPPropertyBase::GetInternalValue().

[override virtual] uint64_t CDPProperty::GetInternalValueUInt64() const

Reimplemented from CDPPropertyBase::GetInternalValueUInt64().

[override virtual] bool CDPProperty::GetLogEventOnChange() const

Reimplemented from CDPPropertyBase::GetLogEventOnChange().

[override virtual] const char *CDPProperty::GetName() const

Reimplemented from CDPPropertyBase::GetName().

[override virtual] CDP::StudioAPI::CDPNodeModeFlags CDPProperty::GetNodeModeFlags() const

Reimplemented from ICDPNode::GetNodeModeFlags().

Returns the CDPNodeModeFlags of this CDPProperty.

[override virtual] const std::string CDPProperty::GetNodeName() const

Reimplemented from ICDPNode::GetNodeName().

Returns the name of this property.

[override virtual] CDP::StudioAPI::CDPNodeType CDPProperty::GetNodeType() const

Reimplemented from ICDPNode::GetNodeType().

Returns CDP::StudioAPI::eCDP_PROPERTY_NODE

[override virtual] std::string CDPProperty::GetNodeTypeName() const

Reimplemented from ICDPNode::GetNodeTypeName().

Returns "CDPProperty"

[override virtual] CDP::StudioAPI::CDPValueType CDPProperty::GetNodeValueType() const

Reimplemented from ICDPNode::GetNodeValueType().

Returns the CDP::StudioAPI::CDPValueType of this CDPProperty

[override virtual] CDPBaseObject *CDPProperty::GetOwner() const

Reimplemented from CDPPropertyBase::GetOwner().

[override virtual] CDPObject *CDPProperty::GetParent() const

Reimplemented from CDPPropertyBase::GetParent().

[override virtual] CDPComponent *CDPProperty::GetParentComponent() const

Reimplemented from CDPPropertyBase::GetParentComponent().

[override virtual] const PropertyListeners &CDPProperty::GetPropertyListeners() const

Reimplemented from CDPPropertyBase::GetPropertyListeners().

[override virtual] std::shared_ptr<CDPPropertyModel> CDPProperty::GetPropertyModel()

Reimplemented from CDPPropertyBase::GetPropertyModel().

const std::string CDPProperty::GetPropertySetting(std::string strSettingName) const

Gets the behavior of a property. The following properties can be retrieved:

RoutingGets the routing for this property
SaveOnChangeGets if this property should save itself to disk on change. Returns "1" or "0".
LogEventOnChangeGets if this property should generate PropertyChanged events on change. Returns "1" or "0".

[override virtual] CDPPropertyBase::RouteMethod_e CDPProperty::GetRouteMethod() const

Reimplemented from CDPPropertyBase::GetRouteMethod().

[override virtual] CDPPropertyBase *CDPProperty::GetRoutedProperty()

Reimplemented from CDPPropertyBase::GetRoutedProperty().

Note: Use this function with caution, as the returned CDPProperty may be owned by another CDPObject.

[override virtual] const char *CDPProperty::GetRouting() const

Reimplemented from CDPPropertyBase::GetRouting().

Returns the routing for this property, or "" if no routing is set

[override virtual] CDPPropertyBase::RoutingStatus_e CDPProperty::GetRoutingStatus() const

Reimplemented from CDPPropertyBase::GetRoutingStatus().

[override virtual] int CDPProperty::GetSyncGroupId() const

Reimplemented from CDPPropertyBase::GetSyncGroupId().

[override virtual] std::string CDPProperty::GetValue() const

Reimplemented from CDPPropertyBase::GetValue().

Converts the value from a numeric value to a string.

[virtual] std::string CDPProperty::GetValueFromConfiguration() const

[override virtual] CDP::StudioAPI::CDPVariantValue CDPProperty::GetVariantValue() const

Reimplemented from ICDPNode::GetVariantValue().

Returns the CDPVariantValue of m_ValueInternal.

[override virtual] XMLPrimitive *CDPProperty::GetXMLOwner()

Reimplemented from CDPPropertyBase::GetXMLOwner().

[override virtual] void CDPProperty::InvalidateListener(CDPPropertyBase *pProperty)

Reimplemented from CDPPropertyBase::InvalidateListener().

[override virtual] bool CDPProperty::IsAutoCreated() const

Reimplemented from CDPPropertyBase::IsAutoCreated().

[override virtual] bool CDPProperty::IsConnected() const

Reimplemented from CDPPropertyBase::IsConnected().

[override virtual] bool CDPProperty::IsDestroyed() const

Reimplemented from CDPPropertyBase::IsDestroyed().

[override virtual] bool CDPProperty::IsNumeric() const

Reimplemented from CDPPropertyBase::IsNumeric().

[override virtual] bool CDPProperty::IsString() const

Reimplemented from CDPPropertyBase::IsString().

[override virtual] void CDPProperty::PostProcess()

[override virtual] void CDPProperty::PreProcess()

[override virtual] void CDPProperty::RegisterRoutingChangeCallback(CDPOBJECT_SETPROPERTY_HANDLER handler)

Reimplemented from CDPPropertyBase::RegisterRoutingChangeCallback().

[override virtual] void CDPProperty::RegisterSetCallback(CDPOBJECT_SETPROPERTY_HANDLER handler)

Reimplemented from CDPPropertyBase::RegisterSetCallback().

Input to the callback function is a pointer to the property (can f.i. be used for comparison when handling multiple properties in one callback). The callback is typically sent in as '(CDPOBJECT_SETPROPERTY_HANDLER)&MyObject::MyCallbackName'. The pParent object pointer must be set for the callback to be called.

[override virtual] void CDPProperty::RegisterValidateCallback(CDPOBJECT_VALIDATEPROPERTY_HANDLER handler)

Reimplemented from CDPPropertyBase::RegisterValidateCallback().

The validation callback will supply the string for the new property value along with a pointer to the property. If you return false from the callback, the property is NOT changed. If the callback returns true, then the string returned out from the handler is used as the new propertyValue. The callback is typically sent in as '(CDPOBJECT_VALIDATEPROPERTY_HANDLER)&MyObject::MyCallbackName' The pParent object pointer must be set for the callback to be called.

void CDPProperty::RemoveFromSyncIn()

Removes this property from parent list of properties to call ClockIn() on

void CDPProperty::RemoveFromSyncOut()

Removes this property from parent list of properties to call ClockOut() on

[override virtual] void CDPProperty::RemoveListener(CDPPropertyBase *pProperty)

Reimplemented from CDPPropertyBase::RemoveListener().

[override virtual] void CDPProperty::RemoveListenerIfNotListening()

Reimplemented from CDPPropertyBase::RemoveListenerIfNotListening().

[override virtual] void CDPProperty::SetAutoCreated()

Reimplemented from CDPPropertyBase::SetAutoCreated().

Calling this function will also turn off logging of events.

[override virtual] void CDPProperty::SetDoSaveOnChange(bool bSave)

Reimplemented from CDPPropertyBase::SetDoSaveOnChange().

[override virtual] void CDPProperty::SetLogEventOnChange(bool bLogEvent)

Reimplemented from CDPPropertyBase::SetLogEventOnChange().

[override virtual] void CDPProperty::SetName(const char *propertyName)

Reimplemented from CDPPropertyBase::SetName().

Re-Registers with the parent on name-change.

[override virtual] void CDPProperty::SetOwner(CDPBaseObject *pBase)

Reimplemented from CDPPropertyBase::SetOwner().

[override virtual] void CDPProperty::SetPropertyChangeHandler(const std::function<void( CDPPropertyBase * ) > &handler)

Reimplemented from CDPPropertyBase::SetPropertyChangeHandler().

The argument to the callback is a base class pointer to the property (can be used for comparison when handling multiple properties in one callback). The method stores a copy of provided function object. If the lifetime of the owner of bound function object is shorter than the property's, then set with empty function object {} need to be called in the scope end of the owner.

[override virtual] void CDPProperty::SetPropertyModel(std::shared_ptr<CDPPropertyModel> pInfo)

Reimplemented from CDPPropertyBase::SetPropertyModel().

[override virtual] bool CDPProperty::SetPropertySetting(std::string strPropertySetting, std::string strValue)

Reimplemented from CDPPropertyBase::SetPropertySetting().

[override virtual] void CDPProperty::SetPropertyValidateHandler(const std::function<bool( CDP::StudioAPI::CDPVariantValue &, CDPPropertyBase * ) > &)

[override virtual] void CDPProperty::SetRouteMethod(CDPPropertyBase::RouteMethod_e eType)

Reimplemented from CDPPropertyBase::SetRouteMethod().

Possible values are:

e_RouteEventRoutes this property asynchronously using the eventmanager system (Note that setting RouteMethod=e_RouteEvent will also set LogEventOnChange="1")
e_RoutePeriodicRoutes this property through messengerIOServer (not possible for string type properties). Note that setting RouteMethod=e_RoutePeriodic will also set LogEventOnChange="0"

[override virtual] void CDPProperty::SetRoutingStatus(CDPPropertyBase::RoutingStatus_e newStatus)

Reimplemented from CDPPropertyBase::SetRoutingStatus().

Calls the RoutingChangedHandler if set.

[override virtual] void CDPProperty::SetValue(const std::string &propertyValue)

Reimplemented from CDPPropertyBase::SetValue().

Calls registered validator callback if set, and if approved, changes the value.

[override virtual] void CDPProperty::SetValueDontSave(const char *propertyValue)

Reimplemented from CDPPropertyBase::SetValueDontSave().

Sets the property value (m_ValueInternal), but does not save it to configuration.

[override virtual] void CDPProperty::SetVariantValue(const CDP::StudioAPI::CDPVariantValue &value)

Reimplemented from CDPNode::SetVariantValue().

Sets the CDPVariantValue of m_ValueInternal.

[override virtual] void CDPProperty::SetXMLOwner(XMLPrimitive *pPrim)

Reimplemented from CDPPropertyBase::SetXMLOwner().

This function can be called with nullptr if the XML owner is no longer valid

const std::string &CDPProperty::ToStdString() const

[override virtual] const char *CDPProperty::c_str() const

Reimplemented from CDPPropertyBase::c_str().

[virtual] bool CDPProperty::empty() const

Returns true if property string is empty (string compatibility function)

std::string::size_type CDPProperty::length()

Return the length of the Value Return the length of the Value (string compatibility function)

std::string::size_type CDPProperty::size()

Returns the length of the Value Return the size (length) of the Value (string compatibility function)

CDPProperty::operator T() const

Typecasts m_ValueInternal to type T

CDPProperty<T> &CDPProperty::operator=(const CDPProperty<T> &rhs)

Assigns m_ValueInternal from rhs.

CDPProperty<T> &CDPProperty::operator=(const XMLString &rhs)

Assigns string value from rhs

CDPProperty<T> &CDPProperty::operator=(const std::string &rhs)

CDPProperty<T> &CDPProperty::operator=(const char *rhs)

Assigns string value from rhs

[override virtual] CDPPropertyBase &CDPProperty::operator=(CDPPropertyBase const &rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns m_ValueInternal from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const double &rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const float rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs.

[override virtual] CDPProperty<T> &CDPProperty::operator=(const uint64_t &rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const int64_t &rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const unsigned int rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const int rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const unsigned short rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const short rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const unsigned char rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const char rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

[override virtual] CDPProperty<T> &CDPProperty::operator=(const bool rhs)

Reimplemented from CDPPropertyBase::operator=().

Assigns the value from rhs

char CDPProperty::operator[](unsigned int nIndex) const

Returns the nIndex character from the property value, or 0 if oustide range.

Member Variable Documentation

T CDPProperty::m_ValueInternal

This variable holds the 'internal' value of type T.

© CDP Technologies AS - All rights reserved