![]() |
1.5.1 (revision 4026)
|
00001 /* 00002 * This file is part of the Score-P software (http://www.score-p.org) 00003 * 00004 * Copyright (c) 2014, 00005 * Technische Universitaet Dresden, Germany 00006 * 00007 * This software may be modified and distributed under the terms of 00008 * a BSD-style license. See the COPYING file in the package base 00009 * directory for details. 00010 * 00011 */ 00012 00013 00014 #ifndef OTF2_ATTRIBUTE_VALUE_H 00015 #define OTF2_ATTRIBUTE_VALUE_H 00016 00017 00028 #include <stdint.h> 00029 #ifndef __cplusplus 00030 #include <stdbool.h> 00031 #endif 00032 00033 00034 #include <otf2/OTF2_ErrorCodes.h> 00035 00036 00037 #include <otf2/OTF2_GeneralDefinitions.h> 00038 #include <otf2/OTF2_Definitions.h> 00039 #include <otf2/OTF2_Events.h> 00040 00041 00042 #ifdef __cplusplus 00043 extern "C" { 00044 #endif /* __cplusplus */ 00045 00046 00052 typedef union OTF2_AttributeValue_union 00053 { 00055 uint8_t uint8; 00057 uint16_t uint16; 00059 uint32_t uint32; 00061 uint64_t uint64; 00063 int8_t int8; 00065 int16_t int16; 00067 int32_t int32; 00069 int64_t int64; 00071 float float32; 00073 double float64; 00079 OTF2_StringRef stringRef; 00085 OTF2_AttributeRef attributeRef; 00091 OTF2_LocationRef locationRef; 00097 OTF2_RegionRef regionRef; 00103 OTF2_GroupRef groupRef; 00109 OTF2_MetricRef metricRef; 00115 OTF2_CommRef commRef; 00121 OTF2_ParameterRef parameterRef; 00127 OTF2_RmaWinRef rmaWinRef; 00133 OTF2_SourceCodeLocationRef sourceCodeLocationRef; 00139 OTF2_CallingContextRef callingContextRef; 00145 OTF2_InterruptGeneratorRef interruptGeneratorRef; 00146 } OTF2_AttributeValue; 00147 00148 00164 OTF2_ErrorCode 00165 OTF2_AttributeValue_SetBoolean( OTF2_Boolean enumValue, 00166 OTF2_Type* type, 00167 OTF2_AttributeValue* value ); 00168 00169 00185 OTF2_ErrorCode 00186 OTF2_AttributeValue_SetFileType( OTF2_FileType enumValue, 00187 OTF2_Type* type, 00188 OTF2_AttributeValue* value ); 00189 00190 00206 OTF2_ErrorCode 00207 OTF2_AttributeValue_SetFileSubstrate( OTF2_FileSubstrate enumValue, 00208 OTF2_Type* type, 00209 OTF2_AttributeValue* value ); 00210 00211 00227 OTF2_ErrorCode 00228 OTF2_AttributeValue_SetMappingType( OTF2_MappingType enumValue, 00229 OTF2_Type* type, 00230 OTF2_AttributeValue* value ); 00231 00232 00248 OTF2_ErrorCode 00249 OTF2_AttributeValue_SetType( OTF2_Type enumValue, 00250 OTF2_Type* type, 00251 OTF2_AttributeValue* value ); 00252 00253 00269 OTF2_ErrorCode 00270 OTF2_AttributeValue_SetParadigm( OTF2_Paradigm enumValue, 00271 OTF2_Type* type, 00272 OTF2_AttributeValue* value ); 00273 00274 00290 OTF2_ErrorCode 00291 OTF2_AttributeValue_SetParadigmClass( OTF2_ParadigmClass enumValue, 00292 OTF2_Type* type, 00293 OTF2_AttributeValue* value ); 00294 00295 00311 OTF2_ErrorCode 00312 OTF2_AttributeValue_SetParadigmProperty( OTF2_ParadigmProperty enumValue, 00313 OTF2_Type* type, 00314 OTF2_AttributeValue* value ); 00315 00316 00332 OTF2_ErrorCode 00333 OTF2_AttributeValue_SetThumbnailType( OTF2_ThumbnailType enumValue, 00334 OTF2_Type* type, 00335 OTF2_AttributeValue* value ); 00336 00337 00353 OTF2_ErrorCode 00354 OTF2_AttributeValue_SetSystemTreeDomain( OTF2_SystemTreeDomain enumValue, 00355 OTF2_Type* type, 00356 OTF2_AttributeValue* value ); 00357 00358 00374 OTF2_ErrorCode 00375 OTF2_AttributeValue_SetLocationGroupType( OTF2_LocationGroupType enumValue, 00376 OTF2_Type* type, 00377 OTF2_AttributeValue* value ); 00378 00379 00395 OTF2_ErrorCode 00396 OTF2_AttributeValue_SetLocationType( OTF2_LocationType enumValue, 00397 OTF2_Type* type, 00398 OTF2_AttributeValue* value ); 00399 00400 00416 OTF2_ErrorCode 00417 OTF2_AttributeValue_SetRegionRole( OTF2_RegionRole enumValue, 00418 OTF2_Type* type, 00419 OTF2_AttributeValue* value ); 00420 00421 00437 OTF2_ErrorCode 00438 OTF2_AttributeValue_SetRegionFlag( OTF2_RegionFlag enumValue, 00439 OTF2_Type* type, 00440 OTF2_AttributeValue* value ); 00441 00442 00458 OTF2_ErrorCode 00459 OTF2_AttributeValue_SetGroupType( OTF2_GroupType enumValue, 00460 OTF2_Type* type, 00461 OTF2_AttributeValue* value ); 00462 00463 00479 OTF2_ErrorCode 00480 OTF2_AttributeValue_SetGroupFlag( OTF2_GroupFlag enumValue, 00481 OTF2_Type* type, 00482 OTF2_AttributeValue* value ); 00483 00484 00500 OTF2_ErrorCode 00501 OTF2_AttributeValue_SetMetricOccurrence( OTF2_MetricOccurrence enumValue, 00502 OTF2_Type* type, 00503 OTF2_AttributeValue* value ); 00504 00505 00521 OTF2_ErrorCode 00522 OTF2_AttributeValue_SetMetricType( OTF2_MetricType enumValue, 00523 OTF2_Type* type, 00524 OTF2_AttributeValue* value ); 00525 00526 00542 OTF2_ErrorCode 00543 OTF2_AttributeValue_SetMetricValueProperty( OTF2_MetricValueProperty enumValue, 00544 OTF2_Type* type, 00545 OTF2_AttributeValue* value ); 00546 00547 00563 OTF2_ErrorCode 00564 OTF2_AttributeValue_SetMetricTiming( OTF2_MetricTiming enumValue, 00565 OTF2_Type* type, 00566 OTF2_AttributeValue* value ); 00567 00568 00584 OTF2_ErrorCode 00585 OTF2_AttributeValue_SetMetricMode( OTF2_MetricMode enumValue, 00586 OTF2_Type* type, 00587 OTF2_AttributeValue* value ); 00588 00589 00605 OTF2_ErrorCode 00606 OTF2_AttributeValue_SetMetricBase( OTF2_MetricBase enumValue, 00607 OTF2_Type* type, 00608 OTF2_AttributeValue* value ); 00609 00610 00626 OTF2_ErrorCode 00627 OTF2_AttributeValue_SetMetricScope( OTF2_MetricScope enumValue, 00628 OTF2_Type* type, 00629 OTF2_AttributeValue* value ); 00630 00631 00647 OTF2_ErrorCode 00648 OTF2_AttributeValue_SetRecorderKind( OTF2_RecorderKind enumValue, 00649 OTF2_Type* type, 00650 OTF2_AttributeValue* value ); 00651 00652 00668 OTF2_ErrorCode 00669 OTF2_AttributeValue_SetParameterType( OTF2_ParameterType enumValue, 00670 OTF2_Type* type, 00671 OTF2_AttributeValue* value ); 00672 00673 00689 OTF2_ErrorCode 00690 OTF2_AttributeValue_SetCartPeriodicity( OTF2_CartPeriodicity enumValue, 00691 OTF2_Type* type, 00692 OTF2_AttributeValue* value ); 00693 00694 00710 OTF2_ErrorCode 00711 OTF2_AttributeValue_SetMeasurementMode( OTF2_MeasurementMode enumValue, 00712 OTF2_Type* type, 00713 OTF2_AttributeValue* value ); 00714 00715 00731 OTF2_ErrorCode 00732 OTF2_AttributeValue_SetCollectiveOp( OTF2_CollectiveOp enumValue, 00733 OTF2_Type* type, 00734 OTF2_AttributeValue* value ); 00735 00736 00752 OTF2_ErrorCode 00753 OTF2_AttributeValue_SetRmaSyncType( OTF2_RmaSyncType enumValue, 00754 OTF2_Type* type, 00755 OTF2_AttributeValue* value ); 00756 00757 00773 OTF2_ErrorCode 00774 OTF2_AttributeValue_SetRmaSyncLevel( OTF2_RmaSyncLevel enumValue, 00775 OTF2_Type* type, 00776 OTF2_AttributeValue* value ); 00777 00778 00794 OTF2_ErrorCode 00795 OTF2_AttributeValue_SetLockType( OTF2_LockType enumValue, 00796 OTF2_Type* type, 00797 OTF2_AttributeValue* value ); 00798 00799 00815 OTF2_ErrorCode 00816 OTF2_AttributeValue_SetRmaAtomicType( OTF2_RmaAtomicType enumValue, 00817 OTF2_Type* type, 00818 OTF2_AttributeValue* value ); 00819 00820 00837 OTF2_ErrorCode 00838 OTF2_AttributeValue_GetBoolean( OTF2_Type type, 00839 OTF2_AttributeValue value, 00840 OTF2_Boolean* enumValue ); 00841 00842 00859 OTF2_ErrorCode 00860 OTF2_AttributeValue_GetFileType( OTF2_Type type, 00861 OTF2_AttributeValue value, 00862 OTF2_FileType* enumValue ); 00863 00864 00881 OTF2_ErrorCode 00882 OTF2_AttributeValue_GetFileSubstrate( OTF2_Type type, 00883 OTF2_AttributeValue value, 00884 OTF2_FileSubstrate* enumValue ); 00885 00886 00903 OTF2_ErrorCode 00904 OTF2_AttributeValue_GetMappingType( OTF2_Type type, 00905 OTF2_AttributeValue value, 00906 OTF2_MappingType* enumValue ); 00907 00908 00925 OTF2_ErrorCode 00926 OTF2_AttributeValue_GetType( OTF2_Type type, 00927 OTF2_AttributeValue value, 00928 OTF2_Type* enumValue ); 00929 00930 00947 OTF2_ErrorCode 00948 OTF2_AttributeValue_GetParadigm( OTF2_Type type, 00949 OTF2_AttributeValue value, 00950 OTF2_Paradigm* enumValue ); 00951 00952 00969 OTF2_ErrorCode 00970 OTF2_AttributeValue_GetParadigmClass( OTF2_Type type, 00971 OTF2_AttributeValue value, 00972 OTF2_ParadigmClass* enumValue ); 00973 00974 00991 OTF2_ErrorCode 00992 OTF2_AttributeValue_GetParadigmProperty( OTF2_Type type, 00993 OTF2_AttributeValue value, 00994 OTF2_ParadigmProperty* enumValue ); 00995 00996 01013 OTF2_ErrorCode 01014 OTF2_AttributeValue_GetThumbnailType( OTF2_Type type, 01015 OTF2_AttributeValue value, 01016 OTF2_ThumbnailType* enumValue ); 01017 01018 01035 OTF2_ErrorCode 01036 OTF2_AttributeValue_GetSystemTreeDomain( OTF2_Type type, 01037 OTF2_AttributeValue value, 01038 OTF2_SystemTreeDomain* enumValue ); 01039 01040 01057 OTF2_ErrorCode 01058 OTF2_AttributeValue_GetLocationGroupType( OTF2_Type type, 01059 OTF2_AttributeValue value, 01060 OTF2_LocationGroupType* enumValue ); 01061 01062 01079 OTF2_ErrorCode 01080 OTF2_AttributeValue_GetLocationType( OTF2_Type type, 01081 OTF2_AttributeValue value, 01082 OTF2_LocationType* enumValue ); 01083 01084 01101 OTF2_ErrorCode 01102 OTF2_AttributeValue_GetRegionRole( OTF2_Type type, 01103 OTF2_AttributeValue value, 01104 OTF2_RegionRole* enumValue ); 01105 01106 01123 OTF2_ErrorCode 01124 OTF2_AttributeValue_GetRegionFlag( OTF2_Type type, 01125 OTF2_AttributeValue value, 01126 OTF2_RegionFlag* enumValue ); 01127 01128 01145 OTF2_ErrorCode 01146 OTF2_AttributeValue_GetGroupType( OTF2_Type type, 01147 OTF2_AttributeValue value, 01148 OTF2_GroupType* enumValue ); 01149 01150 01167 OTF2_ErrorCode 01168 OTF2_AttributeValue_GetGroupFlag( OTF2_Type type, 01169 OTF2_AttributeValue value, 01170 OTF2_GroupFlag* enumValue ); 01171 01172 01189 OTF2_ErrorCode 01190 OTF2_AttributeValue_GetMetricOccurrence( OTF2_Type type, 01191 OTF2_AttributeValue value, 01192 OTF2_MetricOccurrence* enumValue ); 01193 01194 01211 OTF2_ErrorCode 01212 OTF2_AttributeValue_GetMetricType( OTF2_Type type, 01213 OTF2_AttributeValue value, 01214 OTF2_MetricType* enumValue ); 01215 01216 01233 OTF2_ErrorCode 01234 OTF2_AttributeValue_GetMetricValueProperty( OTF2_Type type, 01235 OTF2_AttributeValue value, 01236 OTF2_MetricValueProperty* enumValue ); 01237 01238 01255 OTF2_ErrorCode 01256 OTF2_AttributeValue_GetMetricTiming( OTF2_Type type, 01257 OTF2_AttributeValue value, 01258 OTF2_MetricTiming* enumValue ); 01259 01260 01277 OTF2_ErrorCode 01278 OTF2_AttributeValue_GetMetricMode( OTF2_Type type, 01279 OTF2_AttributeValue value, 01280 OTF2_MetricMode* enumValue ); 01281 01282 01299 OTF2_ErrorCode 01300 OTF2_AttributeValue_GetMetricBase( OTF2_Type type, 01301 OTF2_AttributeValue value, 01302 OTF2_MetricBase* enumValue ); 01303 01304 01321 OTF2_ErrorCode 01322 OTF2_AttributeValue_GetMetricScope( OTF2_Type type, 01323 OTF2_AttributeValue value, 01324 OTF2_MetricScope* enumValue ); 01325 01326 01343 OTF2_ErrorCode 01344 OTF2_AttributeValue_GetRecorderKind( OTF2_Type type, 01345 OTF2_AttributeValue value, 01346 OTF2_RecorderKind* enumValue ); 01347 01348 01365 OTF2_ErrorCode 01366 OTF2_AttributeValue_GetParameterType( OTF2_Type type, 01367 OTF2_AttributeValue value, 01368 OTF2_ParameterType* enumValue ); 01369 01370 01387 OTF2_ErrorCode 01388 OTF2_AttributeValue_GetCartPeriodicity( OTF2_Type type, 01389 OTF2_AttributeValue value, 01390 OTF2_CartPeriodicity* enumValue ); 01391 01392 01409 OTF2_ErrorCode 01410 OTF2_AttributeValue_GetMeasurementMode( OTF2_Type type, 01411 OTF2_AttributeValue value, 01412 OTF2_MeasurementMode* enumValue ); 01413 01414 01431 OTF2_ErrorCode 01432 OTF2_AttributeValue_GetCollectiveOp( OTF2_Type type, 01433 OTF2_AttributeValue value, 01434 OTF2_CollectiveOp* enumValue ); 01435 01436 01453 OTF2_ErrorCode 01454 OTF2_AttributeValue_GetRmaSyncType( OTF2_Type type, 01455 OTF2_AttributeValue value, 01456 OTF2_RmaSyncType* enumValue ); 01457 01458 01475 OTF2_ErrorCode 01476 OTF2_AttributeValue_GetRmaSyncLevel( OTF2_Type type, 01477 OTF2_AttributeValue value, 01478 OTF2_RmaSyncLevel* enumValue ); 01479 01480 01497 OTF2_ErrorCode 01498 OTF2_AttributeValue_GetLockType( OTF2_Type type, 01499 OTF2_AttributeValue value, 01500 OTF2_LockType* enumValue ); 01501 01502 01519 OTF2_ErrorCode 01520 OTF2_AttributeValue_GetRmaAtomicType( OTF2_Type type, 01521 OTF2_AttributeValue value, 01522 OTF2_RmaAtomicType* enumValue ); 01523 01524 01525 #ifdef __cplusplus 01526 } 01527 #endif /* __cplusplus */ 01528 01529 01530 #endif /* !OTF2_ATTRIBUTE_VALUE_H */