Objective Views : Chapter 9 Properties : Registering Properties
Registering Properties
The CODPropertyContainer class implements the IODPropertyContainer interface. It maintains a map of registered properties in which each registered property ID maps onto an IProperty interface pointer. The methods defined by IPropertyContainer for retrieving properties, such as the GetPropertyCount(), GetPropertyAt(), GetProperty(), and GetPropertyByName() are implemented by performing lookups in the map.
The CODPropertyContainer class is identical to SFL’s CPropertyContainer class, with the exception that it implements the IODPropertyContainer interface instead of IPropertyContainer. Properties are added to the property map by calling the RegisterProperty() method. Accessor objects can be associated with each property, which encapsulate pointers to a get and a put function. The property map is declared as a static member by each property container class, so registering properties affects every instance of a given container class.
Refer to the Stingray Foundation Library User’s Guide for more information about property registration.