1.4 (revision 3771)
otf2/OTF2_DefReaderCallbacks.h
Go to the documentation of this file.
00001 /*
00002  * This file is part of the Score-P software (http://www.score-p.org)
00003  *
00004  * Copyright (c) 2009-2012,
00005  * RWTH Aachen University, Germany
00006  *
00007  * Copyright (c) 2009-2012,
00008  * Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany
00009  *
00010  * Copyright (c) 2009-2012, 2014,
00011  * Technische Universitaet Dresden, Germany
00012  *
00013  * Copyright (c) 2009-2012,
00014  * University of Oregon, Eugene, USA
00015  *
00016  * Copyright (c) 2009-2012,
00017  * Forschungszentrum Juelich GmbH, Germany
00018  *
00019  * Copyright (c) 2009-2012,
00020  * German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany
00021  *
00022  * Copyright (c) 2009-2012,
00023  * Technische Universitaet Muenchen, Germany
00024  *
00025  * This software may be modified and distributed under the terms of
00026  * a BSD-style license.  See the COPYING file in the package base
00027  * directory for details.
00028  *
00029  */
00030 
00031 
00032 #ifndef OTF2_DEF_READER_CALLBACKS_H
00033 #define OTF2_DEF_READER_CALLBACKS_H
00034 
00035 
00044 #include <stdint.h>
00045 
00046 
00047 #include <otf2/OTF2_ErrorCodes.h>
00048 
00049 
00050 #include <otf2/OTF2_GeneralDefinitions.h>
00051 #include <otf2/OTF2_Definitions.h>
00052 #include <otf2/OTF2_IdMap.h>
00053 
00054 
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif /* __cplusplus */
00058 
00061 typedef struct OTF2_DefReaderCallbacks_struct OTF2_DefReaderCallbacks;
00062 
00063 
00068 OTF2_DefReaderCallbacks*
00069 OTF2_DefReaderCallbacks_New( void );
00070 
00071 
00077 void
00078 OTF2_DefReaderCallbacks_Delete( OTF2_DefReaderCallbacks* defReaderCallbacks );
00079 
00080 
00086 void
00087 OTF2_DefReaderCallbacks_Clear( OTF2_DefReaderCallbacks* defReaderCallbacks );
00088 
00089 
00099 typedef OTF2_CallbackCode
00100 ( *OTF2_DefReaderCallback_Unknown )( void* userData );
00101 
00102 
00115 OTF2_ErrorCode
00116 OTF2_DefReaderCallbacks_SetUnknownCallback(
00117     OTF2_DefReaderCallbacks*       defReaderCallbacks,
00118     OTF2_DefReaderCallback_Unknown unknownCallback );
00119 
00120 
00139 typedef OTF2_CallbackCode
00140 ( *OTF2_DefReaderCallback_MappingTable )( void*             userData,
00141                                           OTF2_MappingType  mappingType,
00142                                           const OTF2_IdMap* idMap );
00143 
00144 
00159 OTF2_ErrorCode
00160 OTF2_DefReaderCallbacks_SetMappingTableCallback(
00161     OTF2_DefReaderCallbacks*            defReaderCallbacks,
00162     OTF2_DefReaderCallback_MappingTable mappingTableCallback );
00163 
00164 
00183 typedef OTF2_CallbackCode
00184 ( *OTF2_DefReaderCallback_ClockOffset )( void*          userData,
00185                                          OTF2_TimeStamp time,
00186                                          int64_t        offset,
00187                                          double         standardDeviation );
00188 
00189 
00204 OTF2_ErrorCode
00205 OTF2_DefReaderCallbacks_SetClockOffsetCallback(
00206     OTF2_DefReaderCallbacks*           defReaderCallbacks,
00207     OTF2_DefReaderCallback_ClockOffset clockOffsetCallback );
00208 
00209 
00225 typedef OTF2_CallbackCode
00226 ( *OTF2_DefReaderCallback_String )( void*          userData,
00227                                     OTF2_StringRef self,
00228                                     const char*    string );
00229 
00230 
00245 OTF2_ErrorCode
00246 OTF2_DefReaderCallbacks_SetStringCallback(
00247     OTF2_DefReaderCallbacks*      defReaderCallbacks,
00248     OTF2_DefReaderCallback_String stringCallback );
00249 
00250 
00271 typedef OTF2_CallbackCode
00272 ( *OTF2_DefReaderCallback_Attribute )( void*             userData,
00273                                        OTF2_AttributeRef self,
00274                                        OTF2_StringRef    name,
00275                                        OTF2_StringRef    description,
00276                                        OTF2_Type         type );
00277 
00278 
00293 OTF2_ErrorCode
00294 OTF2_DefReaderCallbacks_SetAttributeCallback(
00295     OTF2_DefReaderCallbacks*         defReaderCallbacks,
00296     OTF2_DefReaderCallback_Attribute attributeCallback );
00297 
00298 
00322 typedef OTF2_CallbackCode
00323 ( *OTF2_DefReaderCallback_SystemTreeNode )( void*                  userData,
00324                                             OTF2_SystemTreeNodeRef self,
00325                                             OTF2_StringRef         name,
00326                                             OTF2_StringRef         className,
00327                                             OTF2_SystemTreeNodeRef parent );
00328 
00329 
00344 OTF2_ErrorCode
00345 OTF2_DefReaderCallbacks_SetSystemTreeNodeCallback(
00346     OTF2_DefReaderCallbacks*              defReaderCallbacks,
00347     OTF2_DefReaderCallback_SystemTreeNode systemTreeNodeCallback );
00348 
00349 
00370 typedef OTF2_CallbackCode
00371 ( *OTF2_DefReaderCallback_LocationGroup )( void*                  userData,
00372                                            OTF2_LocationGroupRef  self,
00373                                            OTF2_StringRef         name,
00374                                            OTF2_LocationGroupType locationGroupType,
00375                                            OTF2_SystemTreeNodeRef systemTreeParent );
00376 
00377 
00392 OTF2_ErrorCode
00393 OTF2_DefReaderCallbacks_SetLocationGroupCallback(
00394     OTF2_DefReaderCallbacks*             defReaderCallbacks,
00395     OTF2_DefReaderCallback_LocationGroup locationGroupCallback );
00396 
00397 
00419 typedef OTF2_CallbackCode
00420 ( *OTF2_DefReaderCallback_Location )( void*                 userData,
00421                                       OTF2_LocationRef      self,
00422                                       OTF2_StringRef        name,
00423                                       OTF2_LocationType     locationType,
00424                                       uint64_t              numberOfEvents,
00425                                       OTF2_LocationGroupRef locationGroup );
00426 
00427 
00442 OTF2_ErrorCode
00443 OTF2_DefReaderCallbacks_SetLocationCallback(
00444     OTF2_DefReaderCallbacks*        defReaderCallbacks,
00445     OTF2_DefReaderCallback_Location locationCallback );
00446 
00447 
00478 typedef OTF2_CallbackCode
00479 ( *OTF2_DefReaderCallback_Region )( void*           userData,
00480                                     OTF2_RegionRef  self,
00481                                     OTF2_StringRef  name,
00482                                     OTF2_StringRef  canonicalName,
00483                                     OTF2_StringRef  description,
00484                                     OTF2_RegionRole regionRole,
00485                                     OTF2_Paradigm   paradigm,
00486                                     OTF2_RegionFlag regionFlags,
00487                                     OTF2_StringRef  sourceFile,
00488                                     uint32_t        beginLineNumber,
00489                                     uint32_t        endLineNumber );
00490 
00491 
00506 OTF2_ErrorCode
00507 OTF2_DefReaderCallbacks_SetRegionCallback(
00508     OTF2_DefReaderCallbacks*      defReaderCallbacks,
00509     OTF2_DefReaderCallback_Region regionCallback );
00510 
00511 
00534 typedef OTF2_CallbackCode
00535 ( *OTF2_DefReaderCallback_Callsite )( void*            userData,
00536                                       OTF2_CallsiteRef self,
00537                                       OTF2_StringRef   sourceFile,
00538                                       uint32_t         lineNumber,
00539                                       OTF2_RegionRef   enteredRegion,
00540                                       OTF2_RegionRef   leftRegion );
00541 
00542 
00557 OTF2_ErrorCode
00558 OTF2_DefReaderCallbacks_SetCallsiteCallback(
00559     OTF2_DefReaderCallbacks*        defReaderCallbacks,
00560     OTF2_DefReaderCallback_Callsite callsiteCallback );
00561 
00562 
00581 typedef OTF2_CallbackCode
00582 ( *OTF2_DefReaderCallback_Callpath )( void*            userData,
00583                                       OTF2_CallpathRef self,
00584                                       OTF2_CallpathRef parent,
00585                                       OTF2_RegionRef   region );
00586 
00587 
00602 OTF2_ErrorCode
00603 OTF2_DefReaderCallbacks_SetCallpathCallback(
00604     OTF2_DefReaderCallbacks*        defReaderCallbacks,
00605     OTF2_DefReaderCallback_Callpath callpathCallback );
00606 
00607 
00631 typedef OTF2_CallbackCode
00632 ( *OTF2_DefReaderCallback_Group )( void*           userData,
00633                                    OTF2_GroupRef   self,
00634                                    OTF2_StringRef  name,
00635                                    OTF2_GroupType  groupType,
00636                                    OTF2_Paradigm   paradigm,
00637                                    OTF2_GroupFlag  groupFlags,
00638                                    uint32_t        numberOfMembers,
00639                                    const uint64_t* members );
00640 
00641 
00656 OTF2_ErrorCode
00657 OTF2_DefReaderCallbacks_SetGroupCallback(
00658     OTF2_DefReaderCallbacks*     defReaderCallbacks,
00659     OTF2_DefReaderCallback_Group groupCallback );
00660 
00661 
00707 typedef OTF2_CallbackCode
00708 ( *OTF2_DefReaderCallback_MetricMember )( void*                userData,
00709                                           OTF2_MetricMemberRef self,
00710                                           OTF2_StringRef       name,
00711                                           OTF2_StringRef       description,
00712                                           OTF2_MetricType      metricType,
00713                                           OTF2_MetricMode      metricMode,
00714                                           OTF2_Type            valueType,
00715                                           OTF2_MetricBase      metricBase,
00716                                           int64_t              exponent,
00717                                           OTF2_StringRef       unit );
00718 
00719 
00734 OTF2_ErrorCode
00735 OTF2_DefReaderCallbacks_SetMetricMemberCallback(
00736     OTF2_DefReaderCallbacks*            defReaderCallbacks,
00737     OTF2_DefReaderCallback_MetricMember metricMemberCallback );
00738 
00739 
00764 typedef OTF2_CallbackCode
00765 ( *OTF2_DefReaderCallback_MetricClass )( void*                       userData,
00766                                          OTF2_MetricRef              self,
00767                                          uint8_t                     numberOfMetrics,
00768                                          const OTF2_MetricMemberRef* metricMembers,
00769                                          OTF2_MetricOccurrence       metricOccurrence,
00770                                          OTF2_RecorderKind           recorderKind );
00771 
00772 
00787 OTF2_ErrorCode
00788 OTF2_DefReaderCallbacks_SetMetricClassCallback(
00789     OTF2_DefReaderCallbacks*           defReaderCallbacks,
00790     OTF2_DefReaderCallback_MetricClass metricClassCallback );
00791 
00792 
00820 typedef OTF2_CallbackCode
00821 ( *OTF2_DefReaderCallback_MetricInstance )( void*            userData,
00822                                             OTF2_MetricRef   self,
00823                                             OTF2_MetricRef   metricClass,
00824                                             OTF2_LocationRef recorder,
00825                                             OTF2_MetricScope metricScope,
00826                                             uint64_t         scope );
00827 
00828 
00843 OTF2_ErrorCode
00844 OTF2_DefReaderCallbacks_SetMetricInstanceCallback(
00845     OTF2_DefReaderCallbacks*              defReaderCallbacks,
00846     OTF2_DefReaderCallback_MetricInstance metricInstanceCallback );
00847 
00848 
00873 typedef OTF2_CallbackCode
00874 ( *OTF2_DefReaderCallback_Comm )( void*          userData,
00875                                   OTF2_CommRef   self,
00876                                   OTF2_StringRef name,
00877                                   OTF2_GroupRef  group,
00878                                   OTF2_CommRef   parent );
00879 
00880 
00895 OTF2_ErrorCode
00896 OTF2_DefReaderCallbacks_SetCommCallback(
00897     OTF2_DefReaderCallbacks*    defReaderCallbacks,
00898     OTF2_DefReaderCallback_Comm commCallback );
00899 
00900 
00920 typedef OTF2_CallbackCode
00921 ( *OTF2_DefReaderCallback_Parameter )( void*              userData,
00922                                        OTF2_ParameterRef  self,
00923                                        OTF2_StringRef     name,
00924                                        OTF2_ParameterType parameterType );
00925 
00926 
00941 OTF2_ErrorCode
00942 OTF2_DefReaderCallbacks_SetParameterCallback(
00943     OTF2_DefReaderCallbacks*         defReaderCallbacks,
00944     OTF2_DefReaderCallback_Parameter parameterCallback );
00945 
00946 
00966 typedef OTF2_CallbackCode
00967 ( *OTF2_DefReaderCallback_RmaWin )( void*          userData,
00968                                     OTF2_RmaWinRef self,
00969                                     OTF2_StringRef name,
00970                                     OTF2_CommRef   comm );
00971 
00972 
00987 OTF2_ErrorCode
00988 OTF2_DefReaderCallbacks_SetRmaWinCallback(
00989     OTF2_DefReaderCallbacks*      defReaderCallbacks,
00990     OTF2_DefReaderCallback_RmaWin rmaWinCallback );
00991 
00992 
01011 typedef OTF2_CallbackCode
01012 ( *OTF2_DefReaderCallback_MetricClassRecorder )( void*            userData,
01013                                                  OTF2_MetricRef   metricClass,
01014                                                  OTF2_LocationRef recorder );
01015 
01016 
01031 OTF2_ErrorCode
01032 OTF2_DefReaderCallbacks_SetMetricClassRecorderCallback(
01033     OTF2_DefReaderCallbacks*                   defReaderCallbacks,
01034     OTF2_DefReaderCallback_MetricClassRecorder metricClassRecorderCallback );
01035 
01036 
01057 typedef OTF2_CallbackCode
01058 ( *OTF2_DefReaderCallback_SystemTreeNodeProperty )( void*                  userData,
01059                                                     OTF2_SystemTreeNodeRef systemTreeNode,
01060                                                     OTF2_StringRef         name,
01061                                                     OTF2_StringRef         value );
01062 
01063 
01078 OTF2_ErrorCode
01079 OTF2_DefReaderCallbacks_SetSystemTreeNodePropertyCallback(
01080     OTF2_DefReaderCallbacks*                      defReaderCallbacks,
01081     OTF2_DefReaderCallback_SystemTreeNodeProperty systemTreeNodePropertyCallback );
01082 
01083 
01102 typedef OTF2_CallbackCode
01103 ( *OTF2_DefReaderCallback_SystemTreeNodeDomain )( void*                  userData,
01104                                                   OTF2_SystemTreeNodeRef systemTreeNode,
01105                                                   OTF2_SystemTreeDomain  systemTreeDomain );
01106 
01107 
01122 OTF2_ErrorCode
01123 OTF2_DefReaderCallbacks_SetSystemTreeNodeDomainCallback(
01124     OTF2_DefReaderCallbacks*                    defReaderCallbacks,
01125     OTF2_DefReaderCallback_SystemTreeNodeDomain systemTreeNodeDomainCallback );
01126 
01127 
01147 typedef OTF2_CallbackCode
01148 ( *OTF2_DefReaderCallback_LocationGroupProperty )( void*                 userData,
01149                                                    OTF2_LocationGroupRef locationGroup,
01150                                                    OTF2_StringRef        name,
01151                                                    OTF2_StringRef        value );
01152 
01153 
01168 OTF2_ErrorCode
01169 OTF2_DefReaderCallbacks_SetLocationGroupPropertyCallback(
01170     OTF2_DefReaderCallbacks*                     defReaderCallbacks,
01171     OTF2_DefReaderCallback_LocationGroupProperty locationGroupPropertyCallback );
01172 
01173 
01192 typedef OTF2_CallbackCode
01193 ( *OTF2_DefReaderCallback_LocationProperty )( void*            userData,
01194                                               OTF2_LocationRef location,
01195                                               OTF2_StringRef   name,
01196                                               OTF2_StringRef   value );
01197 
01198 
01213 OTF2_ErrorCode
01214 OTF2_DefReaderCallbacks_SetLocationPropertyCallback(
01215     OTF2_DefReaderCallbacks*                defReaderCallbacks,
01216     OTF2_DefReaderCallback_LocationProperty locationPropertyCallback );
01217 
01218 
01239 typedef OTF2_CallbackCode
01240 ( *OTF2_DefReaderCallback_CartDimension )( void*                 userData,
01241                                            OTF2_CartDimensionRef self,
01242                                            OTF2_StringRef        name,
01243                                            uint32_t              size,
01244                                            OTF2_CartPeriodicity  cartPeriodicity );
01245 
01246 
01261 OTF2_ErrorCode
01262 OTF2_DefReaderCallbacks_SetCartDimensionCallback(
01263     OTF2_DefReaderCallbacks*             defReaderCallbacks,
01264     OTF2_DefReaderCallback_CartDimension cartDimensionCallback );
01265 
01266 
01293 typedef OTF2_CallbackCode
01294 ( *OTF2_DefReaderCallback_CartTopology )( void*                        userData,
01295                                           OTF2_CartTopologyRef         self,
01296                                           OTF2_StringRef               name,
01297                                           OTF2_CommRef                 communicator,
01298                                           uint8_t                      numberOfDimensions,
01299                                           const OTF2_CartDimensionRef* cartDimensions );
01300 
01301 
01316 OTF2_ErrorCode
01317 OTF2_DefReaderCallbacks_SetCartTopologyCallback(
01318     OTF2_DefReaderCallbacks*            defReaderCallbacks,
01319     OTF2_DefReaderCallback_CartTopology cartTopologyCallback );
01320 
01321 
01344 typedef OTF2_CallbackCode
01345 ( *OTF2_DefReaderCallback_CartCoordinate )( void*                userData,
01346                                             OTF2_CartTopologyRef cartTopology,
01347                                             uint32_t             rank,
01348                                             uint8_t              numberOfDimensions,
01349                                             const uint32_t*      coordinates );
01350 
01351 
01366 OTF2_ErrorCode
01367 OTF2_DefReaderCallbacks_SetCartCoordinateCallback(
01368     OTF2_DefReaderCallbacks*              defReaderCallbacks,
01369     OTF2_DefReaderCallback_CartCoordinate cartCoordinateCallback );
01370 
01371 
01372 #ifdef __cplusplus
01373 }
01374 #endif /* __cplusplus */
01375 
01376 
01377 #endif /* !OTF2_DEF_READER_CALLBACKS_H */