openDAQ
Open data acquisition platform
IDimensionRuleBuilder Struct Referenceabstract

Configuration component of Dimension rule objects. Contains setter methods that allow for Dimension rule parameter configuration, and a build method that builds the Dimension rule. More...

+ Inheritance diagram for IDimensionRuleBuilder:
+ Collaboration diagram for IDimensionRuleBuilder:

Detailed Description

Configuration component of Dimension rule objects. Contains setter methods that allow for Dimension rule parameter configuration, and a build method that builds the Dimension rule.

Public Member Functions

virtual ErrCode INTERFACE_FUNC build (IDimensionRule **dimensionRule)=0
 Builds and returns a Dimension rule object using the currently set values of the Builder. More...
 
virtual ErrCode INTERFACE_FUNC setType (DimensionRuleType type)=0
 Sets the type of the dimension rule. Rule parameters must be configured to match the requirements of the rule type. More...
 
virtual ErrCode INTERFACE_FUNC getType (DimensionRuleType *type)=0
 Gets the type of the dimension rule. More...
 
virtual ErrCode INTERFACE_FUNC setParameters (IDict *parameters)=0
 Sets a dictionary of string-object key-value pairs representing the parameters used to evaluate the rule. More...
 
virtual ErrCode INTERFACE_FUNC getParameters (IDict **parameters)=0
 Gets a dictionary of string-object key-value pairs representing the parameters used to evaluate the rule. More...
 
virtual ErrCode INTERFACE_FUNC addParameter (IString *name, IBaseObject *parameter)=0
 Adds a string-object pair parameter to the Dictionary of Dimension rule parameters. More...
 
virtual ErrCode INTERFACE_FUNC removeParameter (IString *name)=0
 Removes the parameter with the given name from the Dictionary of Dimension rule parameters.
 
- Public Member Functions inherited from IBaseObject
virtual ErrCode INTERFACE_FUNC borrowInterface (const IntfID &intfID, void **obj) const =0
 Returns another interface which is supported by the object without incrementing the reference count. More...
 
virtual ErrCode INTERFACE_FUNC dispose ()=0
 Disposes all references held by the object. More...
 
virtual ErrCode INTERFACE_FUNC getHashCode (SizeT *hashCode)=0
 Returns hash code of the object. More...
 
virtual ErrCode INTERFACE_FUNC equals (IBaseObject *other, Bool *equal) const =0
 Compares object to another object for equality. More...
 
virtual ErrCode INTERFACE_FUNC toString (CharPtr *str)=0
 Returns a string representation of the object. More...
 
- Public Member Functions inherited from IUnknown
virtual ErrCode INTERFACE_FUNC queryInterface (const IntfID &intfID, void **obj)=0
 Returns another interface which is supported by the object and increments the reference count. More...
 
virtual int INTERFACE_FUNC addRef ()=0
 Increments the reference count for an interface on an object. More...
 
virtual int INTERFACE_FUNC releaseRef ()=0
 Decrements the reference count for an interface on an object. More...
 

Member Function Documentation

◆ addParameter()

virtual ErrCode INTERFACE_FUNC addParameter ( IString name,
IBaseObject parameter 
)
pure virtual

Adds a string-object pair parameter to the Dictionary of Dimension rule parameters.

Parameters
nameThe string-type name of the parameter.
parameterThe object-type parameter.

◆ build()

virtual ErrCode INTERFACE_FUNC build ( IDimensionRule **  dimensionRule)
pure virtual

Builds and returns a Dimension rule object using the currently set values of the Builder.

Parameters
[out]dataRuleThe built Dimension rule.

◆ getParameters()

virtual ErrCode INTERFACE_FUNC getParameters ( IDict **  parameters)
pure virtual

Gets a dictionary of string-object key-value pairs representing the parameters used to evaluate the rule.

Parameters
[out]parametersThe dictionary containing the rule parameter members.

◆ getType()

virtual ErrCode INTERFACE_FUNC getType ( DimensionRuleType type)
pure virtual

Gets the type of the dimension rule.

Parameters
[out]typeThe type of the dimension rule.

◆ setParameters()

virtual ErrCode INTERFACE_FUNC setParameters ( IDict parameters)
pure virtual

Sets a dictionary of string-object key-value pairs representing the parameters used to evaluate the rule.

Parameters
parametersThe dictionary containing the rule parameter members.

◆ setType()

virtual ErrCode INTERFACE_FUNC setType ( DimensionRuleType  type)
pure virtual

Sets the type of the dimension rule. Rule parameters must be configured to match the requirements of the rule type.

Parameters
typeThe type of the dimension rule.

The required rule parameters are as follows:

  • Linear: delta, start, and size number parameters. Calculated as: index * delta + start for size number of elements.
  • Logarithmic: delta, start, base, and size number parameters. Calculated as: base ^ (index * delta + start) for size number of elements.
  • List: list parameter. The list contains all dimension labels.