openDAQ
Open data acquisition platform
IUnit Struct Referenceabstract

Describes a measurement unit with IDs as defined in Codes for Units of Measurement used in International Trade. More...

+ Inheritance diagram for IUnit:
+ Collaboration diagram for IUnit:

Detailed Description

Describes a measurement unit with IDs as defined in Codes for Units of Measurement used in International Trade.

Unit objects implement the Struct methods internally and are Core type ctStruct.

Unit components

  • ID: The unit ID as defined in Codes for Units of Measurement used in International Trade. Should be set to -1 if the unit ID is not available.
  • Symbol: The symbol of the unit, i.e. "m/s". It is mandatory and must be set before the Unit object is frozen.
  • Name: The full name of the unit, i.e. "meters per second". The unit's name is optional.
  • Quantity: The quantity represented by the unit, i.e. "Velocity". The unit's quantity is optional.

Public Member Functions

virtual ErrCode INTERFACE_FUNC getId (Int *id)=0
 Gets the unit ID as defined in Codes for Units of Measurement used in International Trade. More...
 
virtual ErrCode INTERFACE_FUNC getSymbol (IString **symbol)=0
 Gets the symbol of the unit, i.e. "m/s". More...
 
virtual ErrCode INTERFACE_FUNC getName (IString **name)=0
 Gets the full name of the unit, i.e. "meters per second". More...
 
virtual ErrCode INTERFACE_FUNC getQuantity (IString **quantity)=0
 Gets the quantity represented by the unit, i.e. "Velocity". More...
 
- 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

◆ getId()

virtual ErrCode INTERFACE_FUNC getId ( Int *  id)
pure virtual

Gets the unit ID as defined in Codes for Units of Measurement used in International Trade.

Parameters
[out]idThe unit ID.

Returns -1 if the unit id is not available.

◆ getName()

virtual ErrCode INTERFACE_FUNC getName ( IString **  name)
pure virtual

Gets the full name of the unit, i.e. "meters per second".

Parameters
[out]nameThe unit's full name.

nullptr if not set.

◆ getQuantity()

virtual ErrCode INTERFACE_FUNC getQuantity ( IString **  quantity)
pure virtual

Gets the quantity represented by the unit, i.e. "Velocity".

Parameters
[out]quantityThe unit's quantity.

nullptr if not set.

◆ getSymbol()

virtual ErrCode INTERFACE_FUNC getSymbol ( IString **  symbol)
pure virtual

Gets the symbol of the unit, i.e. "m/s".

Parameters
[out]symbolThe unit's symbol.