1.2.1 (revision 3238)
OTF2_MarkerReaderCallbacks.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_MARKER_READER_CALLBACKS_H
00014 #define OTF2_MARKER_READER_CALLBACKS_H
00015 
00016 
00024 #include <stdint.h>
00025 
00026 
00027 #include <otf2/OTF2_ErrorCodes.h>
00028 
00029 
00030 #include <otf2/OTF2_GeneralDefinitions.h>
00031 #include <otf2/OTF2_Definitions.h>
00032 #include <otf2/OTF2_IdMap.h>
00033 
00034 
00035 #include <otf2/OTF2_Marker.h>
00036 
00037 
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif /* __cplusplus */
00041 
00042 
00045 typedef struct OTF2_MarkerReaderCallbacks_struct OTF2_MarkerReaderCallbacks;
00046 
00047 
00054 OTF2_MarkerReaderCallbacks*
00055 OTF2_MarkerReaderCallbacks_New( void );
00056 
00057 
00065 void
00066 OTF2_MarkerReaderCallbacks_Delete( OTF2_MarkerReaderCallbacks* markerReaderCallbacks );
00067 
00068 
00076 void
00077 OTF2_MarkerReaderCallbacks_Clear( OTF2_MarkerReaderCallbacks* markerReaderCallbacks );
00078 
00079 
00091 typedef OTF2_CallbackCode
00092 ( *OTF2_MarkerReaderCallback_Unknown )( void* userData );
00093 
00094 
00109 OTF2_ErrorCode
00110 OTF2_MarkerReaderCallbacks_SetUnknownCallback(
00111     OTF2_MarkerReaderCallbacks*       markerReaderCallbacks,
00112     OTF2_MarkerReaderCallback_Unknown unknownCallback );
00113 
00114 
00133 typedef OTF2_CallbackCode
00134 ( *OTF2_MarkerReaderCallback_DefMarker )( void*               userData,
00135                                           OTF2_MarkerRef      self,
00136                                           const char*         markerGroup,
00137                                           const char*         markerCategory,
00138                                           OTF2_MarkerSeverity severity );
00139 
00140 
00154 OTF2_ErrorCode
00155 OTF2_MarkerReaderCallbacks_SetDefMarkerCallback(
00156     OTF2_MarkerReaderCallbacks*         markerReaderCallbacks,
00157     OTF2_MarkerReaderCallback_DefMarker defMarkerCallback );
00158 
00159 
00179 typedef OTF2_CallbackCode
00180 ( *OTF2_MarkerReaderCallback_Marker )( void*            userData,
00181                                        OTF2_TimeStamp   timestamp,
00182                                        OTF2_TimeStamp   duration,
00183                                        OTF2_MarkerRef   marker,
00184                                        OTF2_MarkerScope scope,
00185                                        uint64_t         scopeRef,
00186                                        const char*      text );
00187 
00188 
00202 OTF2_ErrorCode
00203 OTF2_MarkerReaderCallbacks_SetMarkerCallback(
00204     OTF2_MarkerReaderCallbacks*      markerReaderCallbacks,
00205     OTF2_MarkerReaderCallback_Marker markerCallback );
00206 
00207 
00208 #ifdef __cplusplus
00209 }
00210 #endif /* __cplusplus */
00211 
00212 
00213 #endif /* !OTF2_MARKER_READER_CALLBACKS_H */