1.5.1 (revision 4026)
otf2/OTF2_GlobalEvtReaderCallbacks.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,
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_GLOBAL_EVT_READER_CALLBACKS_H
00033 #define OTF2_GLOBAL_EVT_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_AttributeList.h>
00052 #include <otf2/OTF2_Events.h>
00053 
00054 
00055 #ifdef __cplusplus
00056 extern "C" {
00057 #endif /* __cplusplus */
00058 
00059 
00062 typedef struct OTF2_GlobalEvtReaderCallbacks_struct OTF2_GlobalEvtReaderCallbacks;
00063 
00064 
00069 OTF2_GlobalEvtReaderCallbacks*
00070 OTF2_GlobalEvtReaderCallbacks_New( void );
00071 
00072 
00078 void
00079 OTF2_GlobalEvtReaderCallbacks_Delete( OTF2_GlobalEvtReaderCallbacks* globalEvtReaderCallbacks );
00080 
00081 
00087 void
00088 OTF2_GlobalEvtReaderCallbacks_Clear( OTF2_GlobalEvtReaderCallbacks* globalEvtReaderCallbacks );
00089 
00090 
00102 typedef OTF2_CallbackCode
00103 ( *OTF2_GlobalEvtReaderCallback_Unknown )( OTF2_LocationRef    locationID,
00104                                            OTF2_TimeStamp      time,
00105                                            void*               userData,
00106                                            OTF2_AttributeList* attributeList );
00107 
00108 
00120 OTF2_ErrorCode
00121 OTF2_GlobalEvtReaderCallbacks_SetUnknownCallback(
00122     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
00123     OTF2_GlobalEvtReaderCallback_Unknown unknownCallback );
00124 
00125 
00143 typedef OTF2_CallbackCode
00144 ( *OTF2_GlobalEvtReaderCallback_BufferFlush )( OTF2_LocationRef    locationID,
00145                                                OTF2_TimeStamp      time,
00146                                                void*               userData,
00147                                                OTF2_AttributeList* attributeList,
00148                                                OTF2_TimeStamp      stopTime );
00149 
00150 
00166 OTF2_ErrorCode
00167 OTF2_GlobalEvtReaderCallbacks_SetBufferFlushCallback(
00168     OTF2_GlobalEvtReaderCallbacks*           globalEvtReaderCallbacks,
00169     OTF2_GlobalEvtReaderCallback_BufferFlush bufferFlushCallback );
00170 
00171 
00191 typedef OTF2_CallbackCode
00192 ( *OTF2_GlobalEvtReaderCallback_MeasurementOnOff )( OTF2_LocationRef     locationID,
00193                                                     OTF2_TimeStamp       time,
00194                                                     void*                userData,
00195                                                     OTF2_AttributeList*  attributeList,
00196                                                     OTF2_MeasurementMode measurementMode );
00197 
00198 
00214 OTF2_ErrorCode
00215 OTF2_GlobalEvtReaderCallbacks_SetMeasurementOnOffCallback(
00216     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
00217     OTF2_GlobalEvtReaderCallback_MeasurementOnOff measurementOnOffCallback );
00218 
00219 
00239 typedef OTF2_CallbackCode
00240 ( *OTF2_GlobalEvtReaderCallback_Enter )( OTF2_LocationRef    locationID,
00241                                          OTF2_TimeStamp      time,
00242                                          void*               userData,
00243                                          OTF2_AttributeList* attributeList,
00244                                          OTF2_RegionRef      region );
00245 
00246 
00262 OTF2_ErrorCode
00263 OTF2_GlobalEvtReaderCallbacks_SetEnterCallback(
00264     OTF2_GlobalEvtReaderCallbacks*     globalEvtReaderCallbacks,
00265     OTF2_GlobalEvtReaderCallback_Enter enterCallback );
00266 
00267 
00287 typedef OTF2_CallbackCode
00288 ( *OTF2_GlobalEvtReaderCallback_Leave )( OTF2_LocationRef    locationID,
00289                                          OTF2_TimeStamp      time,
00290                                          void*               userData,
00291                                          OTF2_AttributeList* attributeList,
00292                                          OTF2_RegionRef      region );
00293 
00294 
00310 OTF2_ErrorCode
00311 OTF2_GlobalEvtReaderCallbacks_SetLeaveCallback(
00312     OTF2_GlobalEvtReaderCallbacks*     globalEvtReaderCallbacks,
00313     OTF2_GlobalEvtReaderCallback_Leave leaveCallback );
00314 
00315 
00341 typedef OTF2_CallbackCode
00342 ( *OTF2_GlobalEvtReaderCallback_MpiSend )( OTF2_LocationRef    locationID,
00343                                            OTF2_TimeStamp      time,
00344                                            void*               userData,
00345                                            OTF2_AttributeList* attributeList,
00346                                            uint32_t            receiver,
00347                                            OTF2_CommRef        communicator,
00348                                            uint32_t            msgTag,
00349                                            uint64_t            msgLength );
00350 
00351 
00367 OTF2_ErrorCode
00368 OTF2_GlobalEvtReaderCallbacks_SetMpiSendCallback(
00369     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
00370     OTF2_GlobalEvtReaderCallback_MpiSend mpiSendCallback );
00371 
00372 
00399 typedef OTF2_CallbackCode
00400 ( *OTF2_GlobalEvtReaderCallback_MpiIsend )( OTF2_LocationRef    locationID,
00401                                             OTF2_TimeStamp      time,
00402                                             void*               userData,
00403                                             OTF2_AttributeList* attributeList,
00404                                             uint32_t            receiver,
00405                                             OTF2_CommRef        communicator,
00406                                             uint32_t            msgTag,
00407                                             uint64_t            msgLength,
00408                                             uint64_t            requestID );
00409 
00410 
00426 OTF2_ErrorCode
00427 OTF2_GlobalEvtReaderCallbacks_SetMpiIsendCallback(
00428     OTF2_GlobalEvtReaderCallbacks*        globalEvtReaderCallbacks,
00429     OTF2_GlobalEvtReaderCallback_MpiIsend mpiIsendCallback );
00430 
00431 
00448 typedef OTF2_CallbackCode
00449 ( *OTF2_GlobalEvtReaderCallback_MpiIsendComplete )( OTF2_LocationRef    locationID,
00450                                                     OTF2_TimeStamp      time,
00451                                                     void*               userData,
00452                                                     OTF2_AttributeList* attributeList,
00453                                                     uint64_t            requestID );
00454 
00455 
00471 OTF2_ErrorCode
00472 OTF2_GlobalEvtReaderCallbacks_SetMpiIsendCompleteCallback(
00473     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
00474     OTF2_GlobalEvtReaderCallback_MpiIsendComplete mpiIsendCompleteCallback );
00475 
00476 
00493 typedef OTF2_CallbackCode
00494 ( *OTF2_GlobalEvtReaderCallback_MpiIrecvRequest )( OTF2_LocationRef    locationID,
00495                                                    OTF2_TimeStamp      time,
00496                                                    void*               userData,
00497                                                    OTF2_AttributeList* attributeList,
00498                                                    uint64_t            requestID );
00499 
00500 
00516 OTF2_ErrorCode
00517 OTF2_GlobalEvtReaderCallbacks_SetMpiIrecvRequestCallback(
00518     OTF2_GlobalEvtReaderCallbacks*               globalEvtReaderCallbacks,
00519     OTF2_GlobalEvtReaderCallback_MpiIrecvRequest mpiIrecvRequestCallback );
00520 
00521 
00547 typedef OTF2_CallbackCode
00548 ( *OTF2_GlobalEvtReaderCallback_MpiRecv )( OTF2_LocationRef    locationID,
00549                                            OTF2_TimeStamp      time,
00550                                            void*               userData,
00551                                            OTF2_AttributeList* attributeList,
00552                                            uint32_t            sender,
00553                                            OTF2_CommRef        communicator,
00554                                            uint32_t            msgTag,
00555                                            uint64_t            msgLength );
00556 
00557 
00573 OTF2_ErrorCode
00574 OTF2_GlobalEvtReaderCallbacks_SetMpiRecvCallback(
00575     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
00576     OTF2_GlobalEvtReaderCallback_MpiRecv mpiRecvCallback );
00577 
00578 
00605 typedef OTF2_CallbackCode
00606 ( *OTF2_GlobalEvtReaderCallback_MpiIrecv )( OTF2_LocationRef    locationID,
00607                                             OTF2_TimeStamp      time,
00608                                             void*               userData,
00609                                             OTF2_AttributeList* attributeList,
00610                                             uint32_t            sender,
00611                                             OTF2_CommRef        communicator,
00612                                             uint32_t            msgTag,
00613                                             uint64_t            msgLength,
00614                                             uint64_t            requestID );
00615 
00616 
00632 OTF2_ErrorCode
00633 OTF2_GlobalEvtReaderCallbacks_SetMpiIrecvCallback(
00634     OTF2_GlobalEvtReaderCallbacks*        globalEvtReaderCallbacks,
00635     OTF2_GlobalEvtReaderCallback_MpiIrecv mpiIrecvCallback );
00636 
00637 
00655 typedef OTF2_CallbackCode
00656 ( *OTF2_GlobalEvtReaderCallback_MpiRequestTest )( OTF2_LocationRef    locationID,
00657                                                   OTF2_TimeStamp      time,
00658                                                   void*               userData,
00659                                                   OTF2_AttributeList* attributeList,
00660                                                   uint64_t            requestID );
00661 
00662 
00678 OTF2_ErrorCode
00679 OTF2_GlobalEvtReaderCallbacks_SetMpiRequestTestCallback(
00680     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
00681     OTF2_GlobalEvtReaderCallback_MpiRequestTest mpiRequestTestCallback );
00682 
00683 
00700 typedef OTF2_CallbackCode
00701 ( *OTF2_GlobalEvtReaderCallback_MpiRequestCancelled )( OTF2_LocationRef    locationID,
00702                                                        OTF2_TimeStamp      time,
00703                                                        void*               userData,
00704                                                        OTF2_AttributeList* attributeList,
00705                                                        uint64_t            requestID );
00706 
00707 
00724 OTF2_ErrorCode
00725 OTF2_GlobalEvtReaderCallbacks_SetMpiRequestCancelledCallback(
00726     OTF2_GlobalEvtReaderCallbacks*                   globalEvtReaderCallbacks,
00727     OTF2_GlobalEvtReaderCallback_MpiRequestCancelled mpiRequestCancelledCallback );
00728 
00729 
00746 typedef OTF2_CallbackCode
00747 ( *OTF2_GlobalEvtReaderCallback_MpiCollectiveBegin )( OTF2_LocationRef    locationID,
00748                                                       OTF2_TimeStamp      time,
00749                                                       void*               userData,
00750                                                       OTF2_AttributeList* attributeList );
00751 
00752 
00768 OTF2_ErrorCode
00769 OTF2_GlobalEvtReaderCallbacks_SetMpiCollectiveBeginCallback(
00770     OTF2_GlobalEvtReaderCallbacks*                  globalEvtReaderCallbacks,
00771     OTF2_GlobalEvtReaderCallback_MpiCollectiveBegin mpiCollectiveBeginCallback );
00772 
00773 
00800 typedef OTF2_CallbackCode
00801 ( *OTF2_GlobalEvtReaderCallback_MpiCollectiveEnd )( OTF2_LocationRef    locationID,
00802                                                     OTF2_TimeStamp      time,
00803                                                     void*               userData,
00804                                                     OTF2_AttributeList* attributeList,
00805                                                     OTF2_CollectiveOp   collectiveOp,
00806                                                     OTF2_CommRef        communicator,
00807                                                     uint32_t            root,
00808                                                     uint64_t            sizeSent,
00809                                                     uint64_t            sizeReceived );
00810 
00811 
00827 OTF2_ErrorCode
00828 OTF2_GlobalEvtReaderCallbacks_SetMpiCollectiveEndCallback(
00829     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
00830     OTF2_GlobalEvtReaderCallback_MpiCollectiveEnd mpiCollectiveEndCallback );
00831 
00832 
00854 typedef OTF2_CallbackCode
00855 ( *OTF2_GlobalEvtReaderCallback_OmpFork )( OTF2_LocationRef    locationID,
00856                                            OTF2_TimeStamp      time,
00857                                            void*               userData,
00858                                            OTF2_AttributeList* attributeList,
00859                                            uint32_t            numberOfRequestedThreads );
00860 
00861 
00877 OTF2_ErrorCode
00878 OTF2_GlobalEvtReaderCallbacks_SetOmpForkCallback(
00879     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
00880     OTF2_GlobalEvtReaderCallback_OmpFork ompForkCallback );
00881 
00882 
00903 typedef OTF2_CallbackCode
00904 ( *OTF2_GlobalEvtReaderCallback_OmpJoin )( OTF2_LocationRef    locationID,
00905                                            OTF2_TimeStamp      time,
00906                                            void*               userData,
00907                                            OTF2_AttributeList* attributeList );
00908 
00909 
00925 OTF2_ErrorCode
00926 OTF2_GlobalEvtReaderCallbacks_SetOmpJoinCallback(
00927     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
00928     OTF2_GlobalEvtReaderCallback_OmpJoin ompJoinCallback );
00929 
00930 
00956 typedef OTF2_CallbackCode
00957 ( *OTF2_GlobalEvtReaderCallback_OmpAcquireLock )( OTF2_LocationRef    locationID,
00958                                                   OTF2_TimeStamp      time,
00959                                                   void*               userData,
00960                                                   OTF2_AttributeList* attributeList,
00961                                                   uint32_t            lockID,
00962                                                   uint32_t            acquisitionOrder );
00963 
00964 
00980 OTF2_ErrorCode
00981 OTF2_GlobalEvtReaderCallbacks_SetOmpAcquireLockCallback(
00982     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
00983     OTF2_GlobalEvtReaderCallback_OmpAcquireLock ompAcquireLockCallback );
00984 
00985 
01011 typedef OTF2_CallbackCode
01012 ( *OTF2_GlobalEvtReaderCallback_OmpReleaseLock )( OTF2_LocationRef    locationID,
01013                                                   OTF2_TimeStamp      time,
01014                                                   void*               userData,
01015                                                   OTF2_AttributeList* attributeList,
01016                                                   uint32_t            lockID,
01017                                                   uint32_t            acquisitionOrder );
01018 
01019 
01035 OTF2_ErrorCode
01036 OTF2_GlobalEvtReaderCallbacks_SetOmpReleaseLockCallback(
01037     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
01038     OTF2_GlobalEvtReaderCallback_OmpReleaseLock ompReleaseLockCallback );
01039 
01040 
01062 typedef OTF2_CallbackCode
01063 ( *OTF2_GlobalEvtReaderCallback_OmpTaskCreate )( OTF2_LocationRef    locationID,
01064                                                  OTF2_TimeStamp      time,
01065                                                  void*               userData,
01066                                                  OTF2_AttributeList* attributeList,
01067                                                  uint64_t            taskID );
01068 
01069 
01085 OTF2_ErrorCode
01086 OTF2_GlobalEvtReaderCallbacks_SetOmpTaskCreateCallback(
01087     OTF2_GlobalEvtReaderCallbacks*             globalEvtReaderCallbacks,
01088     OTF2_GlobalEvtReaderCallback_OmpTaskCreate ompTaskCreateCallback );
01089 
01090 
01114 typedef OTF2_CallbackCode
01115 ( *OTF2_GlobalEvtReaderCallback_OmpTaskSwitch )( OTF2_LocationRef    locationID,
01116                                                  OTF2_TimeStamp      time,
01117                                                  void*               userData,
01118                                                  OTF2_AttributeList* attributeList,
01119                                                  uint64_t            taskID );
01120 
01121 
01137 OTF2_ErrorCode
01138 OTF2_GlobalEvtReaderCallbacks_SetOmpTaskSwitchCallback(
01139     OTF2_GlobalEvtReaderCallbacks*             globalEvtReaderCallbacks,
01140     OTF2_GlobalEvtReaderCallback_OmpTaskSwitch ompTaskSwitchCallback );
01141 
01142 
01164 typedef OTF2_CallbackCode
01165 ( *OTF2_GlobalEvtReaderCallback_OmpTaskComplete )( OTF2_LocationRef    locationID,
01166                                                    OTF2_TimeStamp      time,
01167                                                    void*               userData,
01168                                                    OTF2_AttributeList* attributeList,
01169                                                    uint64_t            taskID );
01170 
01171 
01187 OTF2_ErrorCode
01188 OTF2_GlobalEvtReaderCallbacks_SetOmpTaskCompleteCallback(
01189     OTF2_GlobalEvtReaderCallbacks*               globalEvtReaderCallbacks,
01190     OTF2_GlobalEvtReaderCallback_OmpTaskComplete ompTaskCompleteCallback );
01191 
01192 
01221 typedef OTF2_CallbackCode
01222 ( *OTF2_GlobalEvtReaderCallback_Metric )( OTF2_LocationRef        locationID,
01223                                           OTF2_TimeStamp          time,
01224                                           void*                   userData,
01225                                           OTF2_AttributeList*     attributeList,
01226                                           OTF2_MetricRef          metric,
01227                                           uint8_t                 numberOfMetrics,
01228                                           const OTF2_Type*        typeIDs,
01229                                           const OTF2_MetricValue* metricValues );
01230 
01231 
01247 OTF2_ErrorCode
01248 OTF2_GlobalEvtReaderCallbacks_SetMetricCallback(
01249     OTF2_GlobalEvtReaderCallbacks*      globalEvtReaderCallbacks,
01250     OTF2_GlobalEvtReaderCallback_Metric metricCallback );
01251 
01252 
01277 typedef OTF2_CallbackCode
01278 ( *OTF2_GlobalEvtReaderCallback_ParameterString )( OTF2_LocationRef    locationID,
01279                                                    OTF2_TimeStamp      time,
01280                                                    void*               userData,
01281                                                    OTF2_AttributeList* attributeList,
01282                                                    OTF2_ParameterRef   parameter,
01283                                                    OTF2_StringRef      string );
01284 
01285 
01301 OTF2_ErrorCode
01302 OTF2_GlobalEvtReaderCallbacks_SetParameterStringCallback(
01303     OTF2_GlobalEvtReaderCallbacks*               globalEvtReaderCallbacks,
01304     OTF2_GlobalEvtReaderCallback_ParameterString parameterStringCallback );
01305 
01306 
01328 typedef OTF2_CallbackCode
01329 ( *OTF2_GlobalEvtReaderCallback_ParameterInt )( OTF2_LocationRef    locationID,
01330                                                 OTF2_TimeStamp      time,
01331                                                 void*               userData,
01332                                                 OTF2_AttributeList* attributeList,
01333                                                 OTF2_ParameterRef   parameter,
01334                                                 int64_t             value );
01335 
01336 
01352 OTF2_ErrorCode
01353 OTF2_GlobalEvtReaderCallbacks_SetParameterIntCallback(
01354     OTF2_GlobalEvtReaderCallbacks*            globalEvtReaderCallbacks,
01355     OTF2_GlobalEvtReaderCallback_ParameterInt parameterIntCallback );
01356 
01357 
01379 typedef OTF2_CallbackCode
01380 ( *OTF2_GlobalEvtReaderCallback_ParameterUnsignedInt )( OTF2_LocationRef    locationID,
01381                                                         OTF2_TimeStamp      time,
01382                                                         void*               userData,
01383                                                         OTF2_AttributeList* attributeList,
01384                                                         OTF2_ParameterRef   parameter,
01385                                                         uint64_t            value );
01386 
01387 
01404 OTF2_ErrorCode
01405 OTF2_GlobalEvtReaderCallbacks_SetParameterUnsignedIntCallback(
01406     OTF2_GlobalEvtReaderCallbacks*                    globalEvtReaderCallbacks,
01407     OTF2_GlobalEvtReaderCallback_ParameterUnsignedInt parameterUnsignedIntCallback );
01408 
01409 
01429 typedef OTF2_CallbackCode
01430 ( *OTF2_GlobalEvtReaderCallback_RmaWinCreate )( OTF2_LocationRef    locationID,
01431                                                 OTF2_TimeStamp      time,
01432                                                 void*               userData,
01433                                                 OTF2_AttributeList* attributeList,
01434                                                 OTF2_RmaWinRef      win );
01435 
01436 
01452 OTF2_ErrorCode
01453 OTF2_GlobalEvtReaderCallbacks_SetRmaWinCreateCallback(
01454     OTF2_GlobalEvtReaderCallbacks*            globalEvtReaderCallbacks,
01455     OTF2_GlobalEvtReaderCallback_RmaWinCreate rmaWinCreateCallback );
01456 
01457 
01477 typedef OTF2_CallbackCode
01478 ( *OTF2_GlobalEvtReaderCallback_RmaWinDestroy )( OTF2_LocationRef    locationID,
01479                                                  OTF2_TimeStamp      time,
01480                                                  void*               userData,
01481                                                  OTF2_AttributeList* attributeList,
01482                                                  OTF2_RmaWinRef      win );
01483 
01484 
01500 OTF2_ErrorCode
01501 OTF2_GlobalEvtReaderCallbacks_SetRmaWinDestroyCallback(
01502     OTF2_GlobalEvtReaderCallbacks*             globalEvtReaderCallbacks,
01503     OTF2_GlobalEvtReaderCallback_RmaWinDestroy rmaWinDestroyCallback );
01504 
01505 
01522 typedef OTF2_CallbackCode
01523 ( *OTF2_GlobalEvtReaderCallback_RmaCollectiveBegin )( OTF2_LocationRef    locationID,
01524                                                       OTF2_TimeStamp      time,
01525                                                       void*               userData,
01526                                                       OTF2_AttributeList* attributeList );
01527 
01528 
01544 OTF2_ErrorCode
01545 OTF2_GlobalEvtReaderCallbacks_SetRmaCollectiveBeginCallback(
01546     OTF2_GlobalEvtReaderCallbacks*                  globalEvtReaderCallbacks,
01547     OTF2_GlobalEvtReaderCallback_RmaCollectiveBegin rmaCollectiveBeginCallback );
01548 
01549 
01575 typedef OTF2_CallbackCode
01576 ( *OTF2_GlobalEvtReaderCallback_RmaCollectiveEnd )( OTF2_LocationRef    locationID,
01577                                                     OTF2_TimeStamp      time,
01578                                                     void*               userData,
01579                                                     OTF2_AttributeList* attributeList,
01580                                                     OTF2_CollectiveOp   collectiveOp,
01581                                                     OTF2_RmaSyncLevel   syncLevel,
01582                                                     OTF2_RmaWinRef      win,
01583                                                     uint32_t            root,
01584                                                     uint64_t            bytesSent,
01585                                                     uint64_t            bytesReceived );
01586 
01587 
01603 OTF2_ErrorCode
01604 OTF2_GlobalEvtReaderCallbacks_SetRmaCollectiveEndCallback(
01605     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
01606     OTF2_GlobalEvtReaderCallback_RmaCollectiveEnd rmaCollectiveEndCallback );
01607 
01608 
01634 typedef OTF2_CallbackCode
01635 ( *OTF2_GlobalEvtReaderCallback_RmaGroupSync )( OTF2_LocationRef    locationID,
01636                                                 OTF2_TimeStamp      time,
01637                                                 void*               userData,
01638                                                 OTF2_AttributeList* attributeList,
01639                                                 OTF2_RmaSyncLevel   syncLevel,
01640                                                 OTF2_RmaWinRef      win,
01641                                                 OTF2_GroupRef       group );
01642 
01643 
01659 OTF2_ErrorCode
01660 OTF2_GlobalEvtReaderCallbacks_SetRmaGroupSyncCallback(
01661     OTF2_GlobalEvtReaderCallbacks*            globalEvtReaderCallbacks,
01662     OTF2_GlobalEvtReaderCallback_RmaGroupSync rmaGroupSyncCallback );
01663 
01664 
01691 typedef OTF2_CallbackCode
01692 ( *OTF2_GlobalEvtReaderCallback_RmaRequestLock )( OTF2_LocationRef    locationID,
01693                                                   OTF2_TimeStamp      time,
01694                                                   void*               userData,
01695                                                   OTF2_AttributeList* attributeList,
01696                                                   OTF2_RmaWinRef      win,
01697                                                   uint32_t            remote,
01698                                                   uint64_t            lockId,
01699                                                   OTF2_LockType       lockType );
01700 
01701 
01717 OTF2_ErrorCode
01718 OTF2_GlobalEvtReaderCallbacks_SetRmaRequestLockCallback(
01719     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
01720     OTF2_GlobalEvtReaderCallback_RmaRequestLock rmaRequestLockCallback );
01721 
01722 
01747 typedef OTF2_CallbackCode
01748 ( *OTF2_GlobalEvtReaderCallback_RmaAcquireLock )( OTF2_LocationRef    locationID,
01749                                                   OTF2_TimeStamp      time,
01750                                                   void*               userData,
01751                                                   OTF2_AttributeList* attributeList,
01752                                                   OTF2_RmaWinRef      win,
01753                                                   uint32_t            remote,
01754                                                   uint64_t            lockId,
01755                                                   OTF2_LockType       lockType );
01756 
01757 
01773 OTF2_ErrorCode
01774 OTF2_GlobalEvtReaderCallbacks_SetRmaAcquireLockCallback(
01775     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
01776     OTF2_GlobalEvtReaderCallback_RmaAcquireLock rmaAcquireLockCallback );
01777 
01778 
01803 typedef OTF2_CallbackCode
01804 ( *OTF2_GlobalEvtReaderCallback_RmaTryLock )( OTF2_LocationRef    locationID,
01805                                               OTF2_TimeStamp      time,
01806                                               void*               userData,
01807                                               OTF2_AttributeList* attributeList,
01808                                               OTF2_RmaWinRef      win,
01809                                               uint32_t            remote,
01810                                               uint64_t            lockId,
01811                                               OTF2_LockType       lockType );
01812 
01813 
01829 OTF2_ErrorCode
01830 OTF2_GlobalEvtReaderCallbacks_SetRmaTryLockCallback(
01831     OTF2_GlobalEvtReaderCallbacks*          globalEvtReaderCallbacks,
01832     OTF2_GlobalEvtReaderCallback_RmaTryLock rmaTryLockCallback );
01833 
01834 
01857 typedef OTF2_CallbackCode
01858 ( *OTF2_GlobalEvtReaderCallback_RmaReleaseLock )( OTF2_LocationRef    locationID,
01859                                                   OTF2_TimeStamp      time,
01860                                                   void*               userData,
01861                                                   OTF2_AttributeList* attributeList,
01862                                                   OTF2_RmaWinRef      win,
01863                                                   uint32_t            remote,
01864                                                   uint64_t            lockId );
01865 
01866 
01882 OTF2_ErrorCode
01883 OTF2_GlobalEvtReaderCallbacks_SetRmaReleaseLockCallback(
01884     OTF2_GlobalEvtReaderCallbacks*              globalEvtReaderCallbacks,
01885     OTF2_GlobalEvtReaderCallback_RmaReleaseLock rmaReleaseLockCallback );
01886 
01887 
01910 typedef OTF2_CallbackCode
01911 ( *OTF2_GlobalEvtReaderCallback_RmaSync )( OTF2_LocationRef    locationID,
01912                                            OTF2_TimeStamp      time,
01913                                            void*               userData,
01914                                            OTF2_AttributeList* attributeList,
01915                                            OTF2_RmaWinRef      win,
01916                                            uint32_t            remote,
01917                                            OTF2_RmaSyncType    syncType );
01918 
01919 
01935 OTF2_ErrorCode
01936 OTF2_GlobalEvtReaderCallbacks_SetRmaSyncCallback(
01937     OTF2_GlobalEvtReaderCallbacks*       globalEvtReaderCallbacks,
01938     OTF2_GlobalEvtReaderCallback_RmaSync rmaSyncCallback );
01939 
01940 
01961 typedef OTF2_CallbackCode
01962 ( *OTF2_GlobalEvtReaderCallback_RmaWaitChange )( OTF2_LocationRef    locationID,
01963                                                  OTF2_TimeStamp      time,
01964                                                  void*               userData,
01965                                                  OTF2_AttributeList* attributeList,
01966                                                  OTF2_RmaWinRef      win );
01967 
01968 
01984 OTF2_ErrorCode
01985 OTF2_GlobalEvtReaderCallbacks_SetRmaWaitChangeCallback(
01986     OTF2_GlobalEvtReaderCallbacks*             globalEvtReaderCallbacks,
01987     OTF2_GlobalEvtReaderCallback_RmaWaitChange rmaWaitChangeCallback );
01988 
01989 
02013 typedef OTF2_CallbackCode
02014 ( *OTF2_GlobalEvtReaderCallback_RmaPut )( OTF2_LocationRef    locationID,
02015                                           OTF2_TimeStamp      time,
02016                                           void*               userData,
02017                                           OTF2_AttributeList* attributeList,
02018                                           OTF2_RmaWinRef      win,
02019                                           uint32_t            remote,
02020                                           uint64_t            bytes,
02021                                           uint64_t            matchingId );
02022 
02023 
02039 OTF2_ErrorCode
02040 OTF2_GlobalEvtReaderCallbacks_SetRmaPutCallback(
02041     OTF2_GlobalEvtReaderCallbacks*      globalEvtReaderCallbacks,
02042     OTF2_GlobalEvtReaderCallback_RmaPut rmaPutCallback );
02043 
02044 
02068 typedef OTF2_CallbackCode
02069 ( *OTF2_GlobalEvtReaderCallback_RmaGet )( OTF2_LocationRef    locationID,
02070                                           OTF2_TimeStamp      time,
02071                                           void*               userData,
02072                                           OTF2_AttributeList* attributeList,
02073                                           OTF2_RmaWinRef      win,
02074                                           uint32_t            remote,
02075                                           uint64_t            bytes,
02076                                           uint64_t            matchingId );
02077 
02078 
02094 OTF2_ErrorCode
02095 OTF2_GlobalEvtReaderCallbacks_SetRmaGetCallback(
02096     OTF2_GlobalEvtReaderCallbacks*      globalEvtReaderCallbacks,
02097     OTF2_GlobalEvtReaderCallback_RmaGet rmaGetCallback );
02098 
02099 
02125 typedef OTF2_CallbackCode
02126 ( *OTF2_GlobalEvtReaderCallback_RmaAtomic )( OTF2_LocationRef    locationID,
02127                                              OTF2_TimeStamp      time,
02128                                              void*               userData,
02129                                              OTF2_AttributeList* attributeList,
02130                                              OTF2_RmaWinRef      win,
02131                                              uint32_t            remote,
02132                                              OTF2_RmaAtomicType  type,
02133                                              uint64_t            bytesSent,
02134                                              uint64_t            bytesReceived,
02135                                              uint64_t            matchingId );
02136 
02137 
02153 OTF2_ErrorCode
02154 OTF2_GlobalEvtReaderCallbacks_SetRmaAtomicCallback(
02155     OTF2_GlobalEvtReaderCallbacks*         globalEvtReaderCallbacks,
02156     OTF2_GlobalEvtReaderCallback_RmaAtomic rmaAtomicCallback );
02157 
02158 
02181 typedef OTF2_CallbackCode
02182 ( *OTF2_GlobalEvtReaderCallback_RmaOpCompleteBlocking )( OTF2_LocationRef    locationID,
02183                                                          OTF2_TimeStamp      time,
02184                                                          void*               userData,
02185                                                          OTF2_AttributeList* attributeList,
02186                                                          OTF2_RmaWinRef      win,
02187                                                          uint64_t            matchingId );
02188 
02189 
02206 OTF2_ErrorCode
02207 OTF2_GlobalEvtReaderCallbacks_SetRmaOpCompleteBlockingCallback(
02208     OTF2_GlobalEvtReaderCallbacks*                     globalEvtReaderCallbacks,
02209     OTF2_GlobalEvtReaderCallback_RmaOpCompleteBlocking rmaOpCompleteBlockingCallback );
02210 
02211 
02234 typedef OTF2_CallbackCode
02235 ( *OTF2_GlobalEvtReaderCallback_RmaOpCompleteNonBlocking )( OTF2_LocationRef    locationID,
02236                                                             OTF2_TimeStamp      time,
02237                                                             void*               userData,
02238                                                             OTF2_AttributeList* attributeList,
02239                                                             OTF2_RmaWinRef      win,
02240                                                             uint64_t            matchingId );
02241 
02242 
02260 OTF2_ErrorCode
02261 OTF2_GlobalEvtReaderCallbacks_SetRmaOpCompleteNonBlockingCallback(
02262     OTF2_GlobalEvtReaderCallbacks*                        globalEvtReaderCallbacks,
02263     OTF2_GlobalEvtReaderCallback_RmaOpCompleteNonBlocking rmaOpCompleteNonBlockingCallback );
02264 
02265 
02288 typedef OTF2_CallbackCode
02289 ( *OTF2_GlobalEvtReaderCallback_RmaOpTest )( OTF2_LocationRef    locationID,
02290                                              OTF2_TimeStamp      time,
02291                                              void*               userData,
02292                                              OTF2_AttributeList* attributeList,
02293                                              OTF2_RmaWinRef      win,
02294                                              uint64_t            matchingId );
02295 
02296 
02312 OTF2_ErrorCode
02313 OTF2_GlobalEvtReaderCallbacks_SetRmaOpTestCallback(
02314     OTF2_GlobalEvtReaderCallbacks*         globalEvtReaderCallbacks,
02315     OTF2_GlobalEvtReaderCallback_RmaOpTest rmaOpTestCallback );
02316 
02317 
02340 typedef OTF2_CallbackCode
02341 ( *OTF2_GlobalEvtReaderCallback_RmaOpCompleteRemote )( OTF2_LocationRef    locationID,
02342                                                        OTF2_TimeStamp      time,
02343                                                        void*               userData,
02344                                                        OTF2_AttributeList* attributeList,
02345                                                        OTF2_RmaWinRef      win,
02346                                                        uint64_t            matchingId );
02347 
02348 
02365 OTF2_ErrorCode
02366 OTF2_GlobalEvtReaderCallbacks_SetRmaOpCompleteRemoteCallback(
02367     OTF2_GlobalEvtReaderCallbacks*                   globalEvtReaderCallbacks,
02368     OTF2_GlobalEvtReaderCallback_RmaOpCompleteRemote rmaOpCompleteRemoteCallback );
02369 
02370 
02389 typedef OTF2_CallbackCode
02390 ( *OTF2_GlobalEvtReaderCallback_ThreadFork )( OTF2_LocationRef    locationID,
02391                                               OTF2_TimeStamp      time,
02392                                               void*               userData,
02393                                               OTF2_AttributeList* attributeList,
02394                                               OTF2_Paradigm       model,
02395                                               uint32_t            numberOfRequestedThreads );
02396 
02397 
02413 OTF2_ErrorCode
02414 OTF2_GlobalEvtReaderCallbacks_SetThreadForkCallback(
02415     OTF2_GlobalEvtReaderCallbacks*          globalEvtReaderCallbacks,
02416     OTF2_GlobalEvtReaderCallback_ThreadFork threadForkCallback );
02417 
02418 
02436 typedef OTF2_CallbackCode
02437 ( *OTF2_GlobalEvtReaderCallback_ThreadJoin )( OTF2_LocationRef    locationID,
02438                                               OTF2_TimeStamp      time,
02439                                               void*               userData,
02440                                               OTF2_AttributeList* attributeList,
02441                                               OTF2_Paradigm       model );
02442 
02443 
02459 OTF2_ErrorCode
02460 OTF2_GlobalEvtReaderCallbacks_SetThreadJoinCallback(
02461     OTF2_GlobalEvtReaderCallbacks*          globalEvtReaderCallbacks,
02462     OTF2_GlobalEvtReaderCallback_ThreadJoin threadJoinCallback );
02463 
02464 
02483 typedef OTF2_CallbackCode
02484 ( *OTF2_GlobalEvtReaderCallback_ThreadTeamBegin )( OTF2_LocationRef    locationID,
02485                                                    OTF2_TimeStamp      time,
02486                                                    void*               userData,
02487                                                    OTF2_AttributeList* attributeList,
02488                                                    OTF2_CommRef        threadTeam );
02489 
02490 
02506 OTF2_ErrorCode
02507 OTF2_GlobalEvtReaderCallbacks_SetThreadTeamBeginCallback(
02508     OTF2_GlobalEvtReaderCallbacks*               globalEvtReaderCallbacks,
02509     OTF2_GlobalEvtReaderCallback_ThreadTeamBegin threadTeamBeginCallback );
02510 
02511 
02530 typedef OTF2_CallbackCode
02531 ( *OTF2_GlobalEvtReaderCallback_ThreadTeamEnd )( OTF2_LocationRef    locationID,
02532                                                  OTF2_TimeStamp      time,
02533                                                  void*               userData,
02534                                                  OTF2_AttributeList* attributeList,
02535                                                  OTF2_CommRef        threadTeam );
02536 
02537 
02553 OTF2_ErrorCode
02554 OTF2_GlobalEvtReaderCallbacks_SetThreadTeamEndCallback(
02555     OTF2_GlobalEvtReaderCallbacks*             globalEvtReaderCallbacks,
02556     OTF2_GlobalEvtReaderCallback_ThreadTeamEnd threadTeamEndCallback );
02557 
02558 
02581 typedef OTF2_CallbackCode
02582 ( *OTF2_GlobalEvtReaderCallback_ThreadAcquireLock )( OTF2_LocationRef    locationID,
02583                                                      OTF2_TimeStamp      time,
02584                                                      void*               userData,
02585                                                      OTF2_AttributeList* attributeList,
02586                                                      OTF2_Paradigm       model,
02587                                                      uint32_t            lockID,
02588                                                      uint32_t            acquisitionOrder );
02589 
02590 
02606 OTF2_ErrorCode
02607 OTF2_GlobalEvtReaderCallbacks_SetThreadAcquireLockCallback(
02608     OTF2_GlobalEvtReaderCallbacks*                 globalEvtReaderCallbacks,
02609     OTF2_GlobalEvtReaderCallback_ThreadAcquireLock threadAcquireLockCallback );
02610 
02611 
02634 typedef OTF2_CallbackCode
02635 ( *OTF2_GlobalEvtReaderCallback_ThreadReleaseLock )( OTF2_LocationRef    locationID,
02636                                                      OTF2_TimeStamp      time,
02637                                                      void*               userData,
02638                                                      OTF2_AttributeList* attributeList,
02639                                                      OTF2_Paradigm       model,
02640                                                      uint32_t            lockID,
02641                                                      uint32_t            acquisitionOrder );
02642 
02643 
02659 OTF2_ErrorCode
02660 OTF2_GlobalEvtReaderCallbacks_SetThreadReleaseLockCallback(
02661     OTF2_GlobalEvtReaderCallbacks*                 globalEvtReaderCallbacks,
02662     OTF2_GlobalEvtReaderCallback_ThreadReleaseLock threadReleaseLockCallback );
02663 
02664 
02688 typedef OTF2_CallbackCode
02689 ( *OTF2_GlobalEvtReaderCallback_ThreadTaskCreate )( OTF2_LocationRef    locationID,
02690                                                     OTF2_TimeStamp      time,
02691                                                     void*               userData,
02692                                                     OTF2_AttributeList* attributeList,
02693                                                     OTF2_CommRef        threadTeam,
02694                                                     uint32_t            creatingThread,
02695                                                     uint32_t            generationNumber );
02696 
02697 
02713 OTF2_ErrorCode
02714 OTF2_GlobalEvtReaderCallbacks_SetThreadTaskCreateCallback(
02715     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
02716     OTF2_GlobalEvtReaderCallback_ThreadTaskCreate threadTaskCreateCallback );
02717 
02718 
02744 typedef OTF2_CallbackCode
02745 ( *OTF2_GlobalEvtReaderCallback_ThreadTaskSwitch )( OTF2_LocationRef    locationID,
02746                                                     OTF2_TimeStamp      time,
02747                                                     void*               userData,
02748                                                     OTF2_AttributeList* attributeList,
02749                                                     OTF2_CommRef        threadTeam,
02750                                                     uint32_t            creatingThread,
02751                                                     uint32_t            generationNumber );
02752 
02753 
02769 OTF2_ErrorCode
02770 OTF2_GlobalEvtReaderCallbacks_SetThreadTaskSwitchCallback(
02771     OTF2_GlobalEvtReaderCallbacks*                globalEvtReaderCallbacks,
02772     OTF2_GlobalEvtReaderCallback_ThreadTaskSwitch threadTaskSwitchCallback );
02773 
02774 
02798 typedef OTF2_CallbackCode
02799 ( *OTF2_GlobalEvtReaderCallback_ThreadTaskComplete )( OTF2_LocationRef    locationID,
02800                                                       OTF2_TimeStamp      time,
02801                                                       void*               userData,
02802                                                       OTF2_AttributeList* attributeList,
02803                                                       OTF2_CommRef        threadTeam,
02804                                                       uint32_t            creatingThread,
02805                                                       uint32_t            generationNumber );
02806 
02807 
02823 OTF2_ErrorCode
02824 OTF2_GlobalEvtReaderCallbacks_SetThreadTaskCompleteCallback(
02825     OTF2_GlobalEvtReaderCallbacks*                  globalEvtReaderCallbacks,
02826     OTF2_GlobalEvtReaderCallback_ThreadTaskComplete threadTaskCompleteCallback );
02827 
02828 
02851 typedef OTF2_CallbackCode
02852 ( *OTF2_GlobalEvtReaderCallback_ThreadCreate )( OTF2_LocationRef    locationID,
02853                                                 OTF2_TimeStamp      time,
02854                                                 void*               userData,
02855                                                 OTF2_AttributeList* attributeList,
02856                                                 OTF2_CommRef        threadContingent,
02857                                                 uint64_t            sequenceCount );
02858 
02859 
02875 OTF2_ErrorCode
02876 OTF2_GlobalEvtReaderCallbacks_SetThreadCreateCallback(
02877     OTF2_GlobalEvtReaderCallbacks*            globalEvtReaderCallbacks,
02878     OTF2_GlobalEvtReaderCallback_ThreadCreate threadCreateCallback );
02879 
02880 
02903 typedef OTF2_CallbackCode
02904 ( *OTF2_GlobalEvtReaderCallback_ThreadBegin )( OTF2_LocationRef    locationID,
02905                                                OTF2_TimeStamp      time,
02906                                                void*               userData,
02907                                                OTF2_AttributeList* attributeList,
02908                                                OTF2_CommRef        threadContingent,
02909                                                uint64_t            sequenceCount );
02910 
02911 
02927 OTF2_ErrorCode
02928 OTF2_GlobalEvtReaderCallbacks_SetThreadBeginCallback(
02929     OTF2_GlobalEvtReaderCallbacks*           globalEvtReaderCallbacks,
02930     OTF2_GlobalEvtReaderCallback_ThreadBegin threadBeginCallback );
02931 
02932 
02955 typedef OTF2_CallbackCode
02956 ( *OTF2_GlobalEvtReaderCallback_ThreadWait )( OTF2_LocationRef    locationID,
02957                                               OTF2_TimeStamp      time,
02958                                               void*               userData,
02959                                               OTF2_AttributeList* attributeList,
02960                                               OTF2_CommRef        threadContingent,
02961                                               uint64_t            sequenceCount );
02962 
02963 
02979 OTF2_ErrorCode
02980 OTF2_GlobalEvtReaderCallbacks_SetThreadWaitCallback(
02981     OTF2_GlobalEvtReaderCallbacks*          globalEvtReaderCallbacks,
02982     OTF2_GlobalEvtReaderCallback_ThreadWait threadWaitCallback );
02983 
02984 
03009 typedef OTF2_CallbackCode
03010 ( *OTF2_GlobalEvtReaderCallback_ThreadEnd )( OTF2_LocationRef    locationID,
03011                                              OTF2_TimeStamp      time,
03012                                              void*               userData,
03013                                              OTF2_AttributeList* attributeList,
03014                                              OTF2_CommRef        threadContingent,
03015                                              uint64_t            sequenceCount );
03016 
03017 
03033 OTF2_ErrorCode
03034 OTF2_GlobalEvtReaderCallbacks_SetThreadEndCallback(
03035     OTF2_GlobalEvtReaderCallbacks*         globalEvtReaderCallbacks,
03036     OTF2_GlobalEvtReaderCallback_ThreadEnd threadEndCallback );
03037 
03038 
03079 typedef OTF2_CallbackCode
03080 ( *OTF2_GlobalEvtReaderCallback_CallingContextSample )( OTF2_LocationRef           locationID,
03081                                                         OTF2_TimeStamp             time,
03082                                                         void*                      userData,
03083                                                         OTF2_AttributeList*        attributeList,
03084                                                         OTF2_CallingContextRef     callingContext,
03085                                                         uint32_t                   unwindDistance,
03086                                                         OTF2_InterruptGeneratorRef interruptGenerator );
03087 
03088 
03105 OTF2_ErrorCode
03106 OTF2_GlobalEvtReaderCallbacks_SetCallingContextSampleCallback(
03107     OTF2_GlobalEvtReaderCallbacks*                    globalEvtReaderCallbacks,
03108     OTF2_GlobalEvtReaderCallback_CallingContextSample callingContextSampleCallback );
03109 
03110 
03111 #ifdef __cplusplus
03112 }
03113 #endif /* __cplusplus */
03114 
03115 
03116 #endif /* !OTF2_GLOBAL_EVT_READER_CALLBACKS_H */