About
maxon::Data is a generic container that can store any MAXON API data type (MAXON Data Type). It is typically used together with a maxon::DataDictionary which stores such maxon::Data elements, see DataDictionary Manual.
Creation
A new maxon::Data object can simply be created on the stack.
if (dataType)
if (floatDataType)
{
}
A given maxon::Data object can be inspected and reset with:
Data
The key function of maxon::Data is to store and access data stored in the object:
if (!integerType)
if (type == integerType)
{
number++;
}
The data stored within a maxon::Data object can also be converted into another data type:
Copy
The data stored in a maxon::Data object can easily be copied to another maxon::Data object.
Compare
There are multiple ways to compare two given maxon::Data objects:
if (dataA.IsEqual(dataB))
if (dataA == dataB)
Utility
Further utility functions are:
Further Reading
Result< void > CopyFrom(const Data &src)
Definition: datatypebase.h:1289
Result< T > Convert() const
Definition: datatypebase.h:1394
Definition: datatypebase.h:726
Bool IsPopulated() const
Definition: datatypebase.h:1211
Result< void > Init(const DataType &type)
Definition: datatypebase.h:1161
Definition: string.h:1197
Definition: datatypebase.h:1143
const T & Get(Int index, const TupleDataType &type) const
Definition: datatype.h:1027
#define iferr_return
Definition: resultbase.h:1434
#define MAXON_SOURCE_LOCATION
Definition: memoryallocationbase.h:66
Result< typename std::conditional< GetCollectionKind< T >::value==COLLECTION_KIND::ARRAY, T, typename ByValueParam< T >::type >::type > Get() const
Definition: datatypebase.h:1352
Float64 Float
Definition: apibase.h:193
Result< void > Set(T &&data)
Definition: datatypebase.h:1341
Result< Data > GetCopy() const
Returns a copy of the data.
Definition: datatype.h:1139
Definition: basearray.h:366
Definition: datatype.h:1017
#define DiagnosticOutput(formatString,...)
Definition: debugdiagnostics.h:166
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef< T > Append()
Definition: basearray.h:569
int32_t Int32
32 bit signed integer datatype.
Definition: apibase.h:172
Int64 Int
signed 32/64 bit int, size depends on the platform
Definition: apibase.h:184
Definition: datatypelib.h:657
COMPARERESULT Compare(const Data &c) const
Definition: datatypebase.h:1543
const DataType & GetType() const
Definition: datatypebase.h:1220
TupleValue * GetTuple()
Definition: datatypebase.h:1517
String ToString(const FormatStatement *formatStatement=nullptr) const
void Reset()
Frees the wrapped data and resetd the Data object to its initial state.
Definition: datatypebase.h:1225
Bool IsEmpty() const
Definition: datatypebase.h:1202
COMPARERESULT
Data type for comparison results.
Definition: compare.h:20