1.2.1 (revision 3238)
OTF2_SnapReaderCallbacks.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) 2013,
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 #ifndef OTF2_SNAP_READER_CALLBACKS_H
00014 #define OTF2_SNAP_READER_CALLBACKS_H
00015 
00016 
00025 #include <stdint.h>
00026 
00027 
00028 #include <otf2/OTF2_ErrorCodes.h>
00029 
00030 
00031 #include <otf2/OTF2_GeneralDefinitions.h>
00032 #include <otf2/OTF2_AttributeList.h>
00033 #include <otf2/OTF2_Events.h>
00034 
00035 
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif /* __cplusplus */
00039 
00040 
00045 typedef struct OTF2_SnapReaderCallbacks_struct OTF2_SnapReaderCallbacks;
00046 
00047 
00054 OTF2_SnapReaderCallbacks*
00055 OTF2_SnapReaderCallbacks_New( void );
00056 
00057 
00065 void
00066 OTF2_SnapReaderCallbacks_Delete( OTF2_SnapReaderCallbacks* snapReaderCallbacks );
00067 
00068 
00076 void
00077 OTF2_SnapReaderCallbacks_Clear( OTF2_SnapReaderCallbacks* snapReaderCallbacks );
00078 
00079 
00093 typedef OTF2_CallbackCode
00094 ( *OTF2_SnapReaderCallback_Unknown )( OTF2_LocationRef    location,
00095                                       OTF2_TimeStamp      snapTime,
00096                                       void*               userData,
00097                                       OTF2_AttributeList* attributeList );
00098 
00099 
00114 OTF2_ErrorCode
00115 OTF2_SnapReaderCallbacks_SetUnknownCallback(
00116     OTF2_SnapReaderCallbacks*       snapReaderCallbacks,
00117     OTF2_SnapReaderCallback_Unknown unknownCallback );
00118 
00119 
00146 typedef OTF2_CallbackCode
00147 ( *OTF2_SnapReaderCallback_SnapshotStart )( OTF2_LocationRef    location,
00148                                             OTF2_TimeStamp      snapTime,
00149                                             void*               userData,
00150                                             OTF2_AttributeList* attributeList,
00151                                             uint64_t            numberOfRecords );
00152 
00153 
00168 OTF2_ErrorCode
00169 OTF2_SnapReaderCallbacks_SetSnapshotStartCallback(
00170     OTF2_SnapReaderCallbacks*             snapReaderCallbacks,
00171     OTF2_SnapReaderCallback_SnapshotStart snapshotStartCallback );
00172 
00173 
00193 typedef OTF2_CallbackCode
00194 ( *OTF2_SnapReaderCallback_SnapshotEnd )( OTF2_LocationRef    location,
00195                                           OTF2_TimeStamp      snapTime,
00196                                           void*               userData,
00197                                           OTF2_AttributeList* attributeList,
00198                                           uint64_t            contReadPos );
00199 
00200 
00215 OTF2_ErrorCode
00216 OTF2_SnapReaderCallbacks_SetSnapshotEndCallback(
00217     OTF2_SnapReaderCallbacks*           snapReaderCallbacks,
00218     OTF2_SnapReaderCallback_SnapshotEnd snapshotEndCallback );
00219 
00220 
00242 typedef OTF2_CallbackCode
00243 ( *OTF2_SnapReaderCallback_MeasurementOnOff )( OTF2_LocationRef     location,
00244                                                OTF2_TimeStamp       snapTime,
00245                                                void*                userData,
00246                                                OTF2_AttributeList*  attributeList,
00247                                                OTF2_TimeStamp       origEventTime,
00248                                                OTF2_MeasurementMode measurementMode );
00249 
00250 
00265 OTF2_ErrorCode
00266 OTF2_SnapReaderCallbacks_SetMeasurementOnOffCallback(
00267     OTF2_SnapReaderCallbacks*                snapReaderCallbacks,
00268     OTF2_SnapReaderCallback_MeasurementOnOff measurementOnOffCallback );
00269 
00270 
00293 typedef OTF2_CallbackCode
00294 ( *OTF2_SnapReaderCallback_Enter )( OTF2_LocationRef    location,
00295                                     OTF2_TimeStamp      snapTime,
00296                                     void*               userData,
00297                                     OTF2_AttributeList* attributeList,
00298                                     OTF2_TimeStamp      origEventTime,
00299                                     OTF2_RegionRef      region );
00300 
00301 
00316 OTF2_ErrorCode
00317 OTF2_SnapReaderCallbacks_SetEnterCallback(
00318     OTF2_SnapReaderCallbacks*     snapReaderCallbacks,
00319     OTF2_SnapReaderCallback_Enter enterCallback );
00320 
00321 
00351 typedef OTF2_CallbackCode
00352 ( *OTF2_SnapReaderCallback_MpiSend )( OTF2_LocationRef    location,
00353                                       OTF2_TimeStamp      snapTime,
00354                                       void*               userData,
00355                                       OTF2_AttributeList* attributeList,
00356                                       OTF2_TimeStamp      origEventTime,
00357                                       uint32_t            receiver,
00358                                       OTF2_CommRef        communicator,
00359                                       uint32_t            msgTag,
00360                                       uint64_t            msgLength );
00361 
00362 
00377 OTF2_ErrorCode
00378 OTF2_SnapReaderCallbacks_SetMpiSendCallback(
00379     OTF2_SnapReaderCallbacks*       snapReaderCallbacks,
00380     OTF2_SnapReaderCallback_MpiSend mpiSendCallback );
00381 
00382 
00414 typedef OTF2_CallbackCode
00415 ( *OTF2_SnapReaderCallback_MpiIsend )( OTF2_LocationRef    location,
00416                                        OTF2_TimeStamp      snapTime,
00417                                        void*               userData,
00418                                        OTF2_AttributeList* attributeList,
00419                                        OTF2_TimeStamp      origEventTime,
00420                                        uint32_t            receiver,
00421                                        OTF2_CommRef        communicator,
00422                                        uint32_t            msgTag,
00423                                        uint64_t            msgLength,
00424                                        uint64_t            requestID );
00425 
00426 
00441 OTF2_ErrorCode
00442 OTF2_SnapReaderCallbacks_SetMpiIsendCallback(
00443     OTF2_SnapReaderCallbacks*        snapReaderCallbacks,
00444     OTF2_SnapReaderCallback_MpiIsend mpiIsendCallback );
00445 
00446 
00469 typedef OTF2_CallbackCode
00470 ( *OTF2_SnapReaderCallback_MpiIsendComplete )( OTF2_LocationRef    location,
00471                                                OTF2_TimeStamp      snapTime,
00472                                                void*               userData,
00473                                                OTF2_AttributeList* attributeList,
00474                                                OTF2_TimeStamp      origEventTime,
00475                                                uint64_t            requestID );
00476 
00477 
00492 OTF2_ErrorCode
00493 OTF2_SnapReaderCallbacks_SetMpiIsendCompleteCallback(
00494     OTF2_SnapReaderCallbacks*                snapReaderCallbacks,
00495     OTF2_SnapReaderCallback_MpiIsendComplete mpiIsendCompleteCallback );
00496 
00497 
00528 typedef OTF2_CallbackCode
00529 ( *OTF2_SnapReaderCallback_MpiRecv )( OTF2_LocationRef    location,
00530                                       OTF2_TimeStamp      snapTime,
00531                                       void*               userData,
00532                                       OTF2_AttributeList* attributeList,
00533                                       OTF2_TimeStamp      origEventTime,
00534                                       uint32_t            sender,
00535                                       OTF2_CommRef        communicator,
00536                                       uint32_t            msgTag,
00537                                       uint64_t            msgLength );
00538 
00539 
00554 OTF2_ErrorCode
00555 OTF2_SnapReaderCallbacks_SetMpiRecvCallback(
00556     OTF2_SnapReaderCallbacks*       snapReaderCallbacks,
00557     OTF2_SnapReaderCallback_MpiRecv mpiRecvCallback );
00558 
00559 
00585 typedef OTF2_CallbackCode
00586 ( *OTF2_SnapReaderCallback_MpiIrecvRequest )( OTF2_LocationRef    location,
00587                                               OTF2_TimeStamp      snapTime,
00588                                               void*               userData,
00589                                               OTF2_AttributeList* attributeList,
00590                                               OTF2_TimeStamp      origEventTime,
00591                                               uint64_t            requestID );
00592 
00593 
00608 OTF2_ErrorCode
00609 OTF2_SnapReaderCallbacks_SetMpiIrecvRequestCallback(
00610     OTF2_SnapReaderCallbacks*               snapReaderCallbacks,
00611     OTF2_SnapReaderCallback_MpiIrecvRequest mpiIrecvRequestCallback );
00612 
00613 
00645 typedef OTF2_CallbackCode
00646 ( *OTF2_SnapReaderCallback_MpiIrecv )( OTF2_LocationRef    location,
00647                                        OTF2_TimeStamp      snapTime,
00648                                        void*               userData,
00649                                        OTF2_AttributeList* attributeList,
00650                                        OTF2_TimeStamp      origEventTime,
00651                                        uint32_t            sender,
00652                                        OTF2_CommRef        communicator,
00653                                        uint32_t            msgTag,
00654                                        uint64_t            msgLength,
00655                                        uint64_t            requestID );
00656 
00657 
00672 OTF2_ErrorCode
00673 OTF2_SnapReaderCallbacks_SetMpiIrecvCallback(
00674     OTF2_SnapReaderCallbacks*        snapReaderCallbacks,
00675     OTF2_SnapReaderCallback_MpiIrecv mpiIrecvCallback );
00676 
00677 
00697 typedef OTF2_CallbackCode
00698 ( *OTF2_SnapReaderCallback_MpiCollectiveBegin )( OTF2_LocationRef    location,
00699                                                  OTF2_TimeStamp      snapTime,
00700                                                  void*               userData,
00701                                                  OTF2_AttributeList* attributeList,
00702                                                  OTF2_TimeStamp      origEventTime );
00703 
00704 
00719 OTF2_ErrorCode
00720 OTF2_SnapReaderCallbacks_SetMpiCollectiveBeginCallback(
00721     OTF2_SnapReaderCallbacks*                  snapReaderCallbacks,
00722     OTF2_SnapReaderCallback_MpiCollectiveBegin mpiCollectiveBeginCallback );
00723 
00724 
00752 typedef OTF2_CallbackCode
00753 ( *OTF2_SnapReaderCallback_MpiCollectiveEnd )( OTF2_LocationRef    location,
00754                                                OTF2_TimeStamp      snapTime,
00755                                                void*               userData,
00756                                                OTF2_AttributeList* attributeList,
00757                                                OTF2_TimeStamp      origEventTime,
00758                                                OTF2_CollectiveOp   collectiveOp,
00759                                                OTF2_CommRef        communicator,
00760                                                uint32_t            root,
00761                                                uint64_t            sizeSent,
00762                                                uint64_t            sizeReceived );
00763 
00764 
00779 OTF2_ErrorCode
00780 OTF2_SnapReaderCallbacks_SetMpiCollectiveEndCallback(
00781     OTF2_SnapReaderCallbacks*                snapReaderCallbacks,
00782     OTF2_SnapReaderCallback_MpiCollectiveEnd mpiCollectiveEndCallback );
00783 
00784 
00805 typedef OTF2_CallbackCode
00806 ( *OTF2_SnapReaderCallback_OmpFork )( OTF2_LocationRef    location,
00807                                       OTF2_TimeStamp      snapTime,
00808                                       void*               userData,
00809                                       OTF2_AttributeList* attributeList,
00810                                       OTF2_TimeStamp      origEventTime,
00811                                       uint32_t            numberOfRequestedThreads );
00812 
00813 
00828 OTF2_ErrorCode
00829 OTF2_SnapReaderCallbacks_SetOmpForkCallback(
00830     OTF2_SnapReaderCallbacks*       snapReaderCallbacks,
00831     OTF2_SnapReaderCallback_OmpFork ompForkCallback );
00832 
00833 
00859 typedef OTF2_CallbackCode
00860 ( *OTF2_SnapReaderCallback_OmpAcquireLock )( OTF2_LocationRef    location,
00861                                              OTF2_TimeStamp      snapTime,
00862                                              void*               userData,
00863                                              OTF2_AttributeList* attributeList,
00864                                              OTF2_TimeStamp      origEventTime,
00865                                              uint32_t            lockID,
00866                                              uint32_t            acquisitionOrder );
00867 
00868 
00883 OTF2_ErrorCode
00884 OTF2_SnapReaderCallbacks_SetOmpAcquireLockCallback(
00885     OTF2_SnapReaderCallbacks*              snapReaderCallbacks,
00886     OTF2_SnapReaderCallback_OmpAcquireLock ompAcquireLockCallback );
00887 
00888 
00910 typedef OTF2_CallbackCode
00911 ( *OTF2_SnapReaderCallback_OmpTaskCreate )( OTF2_LocationRef    location,
00912                                             OTF2_TimeStamp      snapTime,
00913                                             void*               userData,
00914                                             OTF2_AttributeList* attributeList,
00915                                             OTF2_TimeStamp      origEventTime,
00916                                             uint64_t            taskID );
00917 
00918 
00933 OTF2_ErrorCode
00934 OTF2_SnapReaderCallbacks_SetOmpTaskCreateCallback(
00935     OTF2_SnapReaderCallbacks*             snapReaderCallbacks,
00936     OTF2_SnapReaderCallback_OmpTaskCreate ompTaskCreateCallback );
00937 
00938 
00960 typedef OTF2_CallbackCode
00961 ( *OTF2_SnapReaderCallback_OmpTaskSwitch )( OTF2_LocationRef    location,
00962                                             OTF2_TimeStamp      snapTime,
00963                                             void*               userData,
00964                                             OTF2_AttributeList* attributeList,
00965                                             OTF2_TimeStamp      origEventTime,
00966                                             uint64_t            taskID );
00967 
00968 
00983 OTF2_ErrorCode
00984 OTF2_SnapReaderCallbacks_SetOmpTaskSwitchCallback(
00985     OTF2_SnapReaderCallbacks*             snapReaderCallbacks,
00986     OTF2_SnapReaderCallback_OmpTaskSwitch ompTaskSwitchCallback );
00987 
00988 
01020 typedef OTF2_CallbackCode
01021 ( *OTF2_SnapReaderCallback_Metric )( OTF2_LocationRef        location,
01022                                      OTF2_TimeStamp          snapTime,
01023                                      void*                   userData,
01024                                      OTF2_AttributeList*     attributeList,
01025                                      OTF2_TimeStamp          origEventTime,
01026                                      OTF2_MetricRef          metric,
01027                                      uint8_t                 numberOfMetrics,
01028                                      const OTF2_Type*        typeIDs,
01029                                      const OTF2_MetricValue* metricValues );
01030 
01031 
01046 OTF2_ErrorCode
01047 OTF2_SnapReaderCallbacks_SetMetricCallback(
01048     OTF2_SnapReaderCallbacks*      snapReaderCallbacks,
01049     OTF2_SnapReaderCallback_Metric metricCallback );
01050 
01051 
01079 typedef OTF2_CallbackCode
01080 ( *OTF2_SnapReaderCallback_ParameterString )( OTF2_LocationRef    location,
01081                                               OTF2_TimeStamp      snapTime,
01082                                               void*               userData,
01083                                               OTF2_AttributeList* attributeList,
01084                                               OTF2_TimeStamp      origEventTime,
01085                                               OTF2_ParameterRef   parameter,
01086                                               OTF2_StringRef      string );
01087 
01088 
01103 OTF2_ErrorCode
01104 OTF2_SnapReaderCallbacks_SetParameterStringCallback(
01105     OTF2_SnapReaderCallbacks*               snapReaderCallbacks,
01106     OTF2_SnapReaderCallback_ParameterString parameterStringCallback );
01107 
01108 
01133 typedef OTF2_CallbackCode
01134 ( *OTF2_SnapReaderCallback_ParameterInt )( OTF2_LocationRef    location,
01135                                            OTF2_TimeStamp      snapTime,
01136                                            void*               userData,
01137                                            OTF2_AttributeList* attributeList,
01138                                            OTF2_TimeStamp      origEventTime,
01139                                            OTF2_ParameterRef   parameter,
01140                                            int64_t             value );
01141 
01142 
01157 OTF2_ErrorCode
01158 OTF2_SnapReaderCallbacks_SetParameterIntCallback(
01159     OTF2_SnapReaderCallbacks*            snapReaderCallbacks,
01160     OTF2_SnapReaderCallback_ParameterInt parameterIntCallback );
01161 
01162 
01187 typedef OTF2_CallbackCode
01188 ( *OTF2_SnapReaderCallback_ParameterUnsignedInt )( OTF2_LocationRef    location,
01189                                                    OTF2_TimeStamp      snapTime,
01190                                                    void*               userData,
01191                                                    OTF2_AttributeList* attributeList,
01192                                                    OTF2_TimeStamp      origEventTime,
01193                                                    OTF2_ParameterRef   parameter,
01194                                                    uint64_t            value );
01195 
01196 
01211 OTF2_ErrorCode
01212 OTF2_SnapReaderCallbacks_SetParameterUnsignedIntCallback(
01213     OTF2_SnapReaderCallbacks*                    snapReaderCallbacks,
01214     OTF2_SnapReaderCallback_ParameterUnsignedInt parameterUnsignedIntCallback );
01215 
01216 
01217 #ifdef __cplusplus
01218 }
01219 #endif /* __cplusplus */
01220 
01221 
01222 #endif /* !OTF2_SNAP_READER_CALLBACKS_H */