32 #ifndef OTF2_ATTRIBUTE_LIST_H
33 #define OTF2_ATTRIBUTE_LIST_H
160 uint8_t uint8Value );
176 uint16_t uint16Value );
192 uint32_t uint32Value );
208 uint64_t uint64Value );
240 int16_t int16Value );
256 int32_t int32Value );
272 int64_t int64Value );
288 float float32Value );
304 double float64Value );
613 uint8_t* uint8Value );
630 uint16_t* uint16Value );
647 uint32_t* uint32Value );
664 uint64_t* uint64Value );
698 int16_t* int16Value );
715 int32_t* int32Value );
732 int64_t* int64Value );
749 float* float32Value );
766 double* float64Value );
OTF2_ErrorCode OTF2_AttributeList_GetCallingContextRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_CallingContextRef *callingContextRef)
Get an OTF2_TYPE_CALLING_CONTEXT attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetStringRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_StringRef *stringRef)
Get an OTF2_TYPE_STRING attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddUint16(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint16_t uint16Value)
Add an OTF2_TYPE_UINT16 attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddLocationRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_LocationRef locationRef)
Add an OTF2_TYPE_LOCATION attribute to an attribute list.
uint64_t OTF2_LocationRef
Type used to indicate a reference to a Location definition.
Definition: OTF2_GeneralDefinitions.h:142
OTF2_ErrorCode OTF2_AttributeList_GetDouble(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, double *float64Value)
Get an OTF2_TYPE_DOUBLE attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetIoHandleRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_IoHandleRef *ioHandleRef)
Get an OTF2_TYPE_IO_HANDLE attribute from an attribute list by attribute ID.
uint8_t OTF2_Type
Wrapper for enum OTF2_Type_enum.
Definition: OTF2_GeneralDefinitions.h:596
OTF2_ErrorCode OTF2_AttributeList_GetUint32(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint32_t *uint32Value)
Get an OTF2_TYPE_UINT32 attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddCallingContextRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_CallingContextRef callingContextRef)
Add an OTF2_TYPE_CALLING_CONTEXT attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_RemoveAllAttributes(OTF2_AttributeList *attributeList)
Remove all attributes from an attribute list.
OTF2_ErrorCode OTF2_AttributeList_Delete(OTF2_AttributeList *attributeList)
Delete an attribute list handle.
uint32_t OTF2_StringRef
Type used to indicate a reference to a String definition.
Definition: OTF2_GeneralDefinitions.h:118
OTF2_ErrorCode OTF2_AttributeList_AddUint32(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint32_t uint32Value)
Add an OTF2_TYPE_UINT32 attribute to an attribute list.
Declares the OTF2_AttributeValue and provides convenience functions to convert from and to OTF2 enum ...
uint32_t OTF2_ParameterRef
Type used to indicate a reference to a Parameter definition.
Definition: OTF2_GeneralDefinitions.h:190
OTF2_ErrorCode OTF2_AttributeList_GetAttributeRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_AttributeRef *attributeRef)
Get an OTF2_TYPE_ATTRIBUTE attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetSourceCodeLocationRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_SourceCodeLocationRef *sourceCodeLocationRef)
Get an OTF2_TYPE_SOURCE_CODE_LOCATION attribute from an attribute list by attribute ID...
OTF2_ErrorCode OTF2_AttributeList_GetLocationGroupRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_LocationGroupRef *locationGroupRef)
Get an OTF2_TYPE_LOCATION_GROUP attribute from an attribute list by attribute ID. ...
OTF2_ErrorCode OTF2_AttributeList_GetCommRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_CommRef *commRef)
Get an OTF2_TYPE_COMM attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetMetricRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_MetricRef *metricRef)
Get an OTF2_TYPE_METRIC attribute from an attribute list by attribute ID.
struct OTF2_AttributeList_struct OTF2_AttributeList
Attribute list handle.
Definition: OTF2_AttributeList.h:104
OTF2_ErrorCode
Definition: OTF2_ErrorCodes.h:54
OTF2_ErrorCode OTF2_AttributeList_GetInt32(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int32_t *int32Value)
Get an OTF2_TYPE_INT32 attribute from an attribute list by attribute ID.
uint32_t OTF2_InterruptGeneratorRef
Type used to indicate a reference to a InterruptGenerator definition.
Definition: OTF2_GeneralDefinitions.h:226
This header file provides general definitions which should be accessible in all internal and external...
uint32_t OTF2_AttributeList_GetNumberOfElements(const OTF2_AttributeList *attributeList)
Get the number of entries in an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddIoFileRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_IoFileRef ioFileRef)
Add an OTF2_TYPE_IO_FILE attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddGroupRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_GroupRef groupRef)
Add an OTF2_TYPE_GROUP attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddInt64(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int64_t int64Value)
Add an OTF2_TYPE_INT64 attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetGroupRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_GroupRef *groupRef)
Get an OTF2_TYPE_GROUP attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddAttributeRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_AttributeRef attributeRef)
Add an OTF2_TYPE_ATTRIBUTE attribute to an attribute list.
uint32_t OTF2_IoHandleRef
Type used to indicate a reference to a IoHandle definition.
Definition: OTF2_GeneralDefinitions.h:238
OTF2_ErrorCode OTF2_AttributeList_AddUint8(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint8_t uint8Value)
Add an OTF2_TYPE_UINT8 attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddStringRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_StringRef stringRef)
Add an OTF2_TYPE_STRING attribute to an attribute list.
uint32_t OTF2_MetricRef
Type used to indicate a reference to a MetricClass, or a MetricInstance definition.
Definition: OTF2_GeneralDefinitions.h:178
OTF2_ErrorCode OTF2_AttributeList_AddLocationGroupRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_LocationGroupRef locationGroupRef)
Add an OTF2_TYPE_LOCATION_GROUP attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddParameterRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_ParameterRef parameterRef)
Add an OTF2_TYPE_PARAMETER attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddRmaWinRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_RmaWinRef rmaWinRef)
Add an OTF2_TYPE_RMA_WIN attribute to an attribute list.
uint32_t OTF2_CallingContextRef
Type used to indicate a reference to a CallingContext definition.
Definition: OTF2_GeneralDefinitions.h:220
OTF2_ErrorCode OTF2_AttributeList_AddDouble(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, double float64Value)
Add an OTF2_TYPE_DOUBLE attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddCommRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_CommRef commRef)
Add an OTF2_TYPE_COMM attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddSourceCodeLocationRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_SourceCodeLocationRef sourceCodeLocationRef)
Add an OTF2_TYPE_SOURCE_CODE_LOCATION attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddRegionRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_RegionRef regionRef)
Add an OTF2_TYPE_REGION attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddInt32(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int32_t int32Value)
Add an OTF2_TYPE_INT32 attribute to an attribute list.
uint32_t OTF2_IoFileRef
Type used to indicate a reference to a IoRegularFile, or a IoDirectory definition.
Definition: OTF2_GeneralDefinitions.h:232
OTF2_ErrorCode OTF2_AttributeList_AddInterruptGeneratorRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_InterruptGeneratorRef interruptGeneratorRef)
Add an OTF2_TYPE_INTERRUPT_GENERATOR attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_AddInt16(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int16_t int16Value)
Add an OTF2_TYPE_INT16 attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetInt64(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int64_t *int64Value)
Get an OTF2_TYPE_INT64 attribute from an attribute list by attribute ID.
uint32_t OTF2_SourceCodeLocationRef
Type used to indicate a reference to a SourceCodeLocation definition.
Definition: OTF2_GeneralDefinitions.h:214
OTF2_ErrorCode OTF2_AttributeList_GetLocationRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_LocationRef *locationRef)
Get an OTF2_TYPE_LOCATION attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetParameterRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_ParameterRef *parameterRef)
Get an OTF2_TYPE_PARAMETER attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetAttributeByID(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_Type *type, OTF2_AttributeValue *attributeValue)
Get an attribute from an attribute list by attribute ID.
uint32_t OTF2_CommRef
Type used to indicate a reference to a Comm, or a InterComm definition.
Definition: OTF2_GeneralDefinitions.h:184
OTF2_ErrorCode OTF2_AttributeList_AddFloat(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, float float32Value)
Add an OTF2_TYPE_FLOAT attribute to an attribute list.
uint32_t OTF2_RegionRef
Type used to indicate a reference to a Region definition.
Definition: OTF2_GeneralDefinitions.h:148
OTF2_ErrorCode OTF2_AttributeList_PopAttribute(OTF2_AttributeList *attributeList, OTF2_AttributeRef *attribute, OTF2_Type *type, OTF2_AttributeValue *attributeValue)
Get first attribute from an attribute list and remove it.
OTF2_ErrorCode OTF2_AttributeList_GetRegionRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_RegionRef *regionRef)
Get an OTF2_TYPE_REGION attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddInt8(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int8_t int8Value)
Add an OTF2_TYPE_INT8 attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetFloat(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, float *float32Value)
Get an OTF2_TYPE_FLOAT attribute from an attribute list by attribute ID.
uint32_t OTF2_GroupRef
Type used to indicate a reference to a Group definition.
Definition: OTF2_GeneralDefinitions.h:166
OTF2_ErrorCode OTF2_AttributeList_AddMetricRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_MetricRef metricRef)
Add an OTF2_TYPE_METRIC attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetRmaWinRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_RmaWinRef *rmaWinRef)
Get an OTF2_TYPE_RMA_WIN attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddIoHandleRef(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_IoHandleRef ioHandleRef)
Add an OTF2_TYPE_IO_HANDLE attribute to an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetInt16(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int16_t *int16Value)
Get an OTF2_TYPE_INT16 attribute from an attribute list by attribute ID.
uint32_t OTF2_AttributeRef
Type used to indicate a reference to a Attribute definition.
Definition: OTF2_GeneralDefinitions.h:124
OTF2_AttributeList * OTF2_AttributeList_New(void)
Create a new attribute list handle.
OTF2_ErrorCode OTF2_AttributeList_GetUint8(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint8_t *uint8Value)
Get an OTF2_TYPE_UINT8 attribute from an attribute list by attribute ID.
Error codes and error handling.
OTF2_ErrorCode OTF2_AttributeList_AddUint64(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint64_t uint64Value)
Add an OTF2_TYPE_UINT64 attribute to an attribute list.
uint32_t OTF2_RmaWinRef
Type used to indicate a reference to a RmaWin definition.
Definition: OTF2_GeneralDefinitions.h:196
Value container for an attributes.
Definition: OTF2_AttributeValue.h:52
OTF2_ErrorCode OTF2_AttributeList_GetUint16(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint16_t *uint16Value)
Get an OTF2_TYPE_UINT16 attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetUint64(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, uint64_t *uint64Value)
Get an OTF2_TYPE_UINT64 attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_AddAttribute(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_Type type, OTF2_AttributeValue attributeValue)
Add an attribute to an attribute list.
bool OTF2_AttributeList_TestAttributeByID(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute)
Test if an attribute is in the attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetInterruptGeneratorRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_InterruptGeneratorRef *interruptGeneratorRef)
Get an OTF2_TYPE_INTERRUPT_GENERATOR attribute from an attribute list by attribute ID...
OTF2_ErrorCode OTF2_AttributeList_RemoveAttribute(OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute)
Remove an attribute from an attribute list.
OTF2_ErrorCode OTF2_AttributeList_GetIoFileRef(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, OTF2_IoFileRef *ioFileRef)
Get an OTF2_TYPE_IO_FILE attribute from an attribute list by attribute ID.
OTF2_ErrorCode OTF2_AttributeList_GetInt8(const OTF2_AttributeList *attributeList, OTF2_AttributeRef attribute, int8_t *int8Value)
Get an OTF2_TYPE_INT8 attribute from an attribute list by attribute ID.
uint32_t OTF2_LocationGroupRef
Type used to indicate a reference to a LocationGroup definition.
Definition: OTF2_GeneralDefinitions.h:136
OTF2_ErrorCode OTF2_AttributeList_GetAttributeByIndex(const OTF2_AttributeList *attributeList, uint32_t index, OTF2_AttributeRef *attribute, OTF2_Type *type, OTF2_AttributeValue *attributeValue)
Get an attribute from an attribute list by attribute index.