Data Types

Fusion supports the standard primitive data types (boolean, integers, real numbers, characters, and character strings). In addition, for convenience, data types are defined to represent dates and time intervals, as well as a character-string representation of 8-bit bytes. The Fusion model is strongly typed, i.e. all data definitions require a declaration of the corresponding type. Complex data types include enumerations and structures (a grouping of other data types). Data structures within Fusion can hold the following data types

Data types known to Fusion
CIM Data Type CIM Data Value Kind Java Equivalent Type(s)
Void no value (only used for methods which do not return a value) Primitive void
Boolean true or false value Primitive Boolean
SInt8 8-bit signed integer Primitive Byte
UInt8 8-bit unsigned integer Primitive UInt8
SInt16 16-bit signed integer Primitive Short
UInt16 16-bit unsigned integer Primitive UInt16
SInt32 32-bit signed integer Primitive Integer
UInt32 32-bit unsigned integer Primitive UInt32
SInt64 64-bit signed integer Primitive Long
UInt64 64-bit unsigned integer Primitive UInt64
Real32 32-bit IEEE floating point number Primitive Float
Real64 64-bit IEEE floating point number Primitive Double
Char16 UCS-2 character Primitive Character
String UCS-2 character string Primitive String
DateTime Date/Time or interval Primitive DateTime
OctetString String representation of octet values Primitive OctetString
typeName ref reference to complex data types (StructureValue, InstanceValue) Primitive ObjectPath
EnumerationValue String or integer enumerated Values Complex Enum
StructureValue Collection of data values Complex StructureValue
InstanceValue Object containing data values and methods Complex InstanceValue

With the exception of void (which does not have a corresponding array type), all data types can also be represented as arrays. Fusion represents all data types known to it using the Java enumeration DataType, and all data values are managed using the Java wrapping class DataValue, which allows the Fusion model classes to represent all data using a single DataValue representation within Java.