1.2 (revision 3183)

OTF2_Reader.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-2013,
00005  *    RWTH Aachen University, Germany
00006  *    Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany
00007  *    Technische Universitaet Dresden, Germany
00008  *    University of Oregon, Eugene, USA
00009  *    Forschungszentrum Juelich GmbH, Germany
00010  *    German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany
00011  *    Technische Universitaet Muenchen, Germany
00012  *
00013  * See the COPYING file in the package base directory for details.
00014  *
00015  */
00016 
00017 
00018 #ifndef OTF2_READER_H
00019 #define OTF2_READER_H
00020 
00021 
00191 #include <stdint.h>
00192 
00193 
00194 #include <otf2/OTF2_ErrorCodes.h>
00195 
00196 
00197 #include <otf2/OTF2_Archive.h>
00198 
00199 
00200 #ifdef __cplusplus
00201 extern "C" {
00202 #endif /* __cplusplus */
00203 
00204 
00206 typedef struct OTF2_Reader_struct OTF2_Reader;
00207 
00208 
00220 OTF2_Reader*
00221 OTF2_Reader_Open( const char* anchorFilePath );
00222 
00223 
00233 OTF2_ErrorCode
00234 OTF2_Reader_Close( OTF2_Reader* reader );
00235 
00236 
00250 OTF2_ErrorCode
00251 OTF2_Reader_SetFileSionCallbacks( OTF2_Reader*                  reader,
00252                                   const OTF2_FileSionCallbacks* fileSionCallbacks,
00253                                   void*                         fileSionData );
00254 
00255 
00265 OTF2_ErrorCode
00266 OTF2_Reader_RegisterEvtCallbacks( OTF2_Reader*                   reader,
00267                                   OTF2_EvtReader*                evtReader,
00268                                   const OTF2_EvtReaderCallbacks* callbacks,
00269                                   void*                          userData );
00270 
00271 
00282 OTF2_ErrorCode
00283 OTF2_Reader_RegisterGlobalEvtCallbacks( OTF2_Reader*                         reader,
00284                                         OTF2_GlobalEvtReader*                evtReader,
00285                                         const OTF2_GlobalEvtReaderCallbacks* callbacks,
00286                                         void*                                userData );
00287 
00288 
00298 OTF2_ErrorCode
00299 OTF2_Reader_RegisterDefCallbacks( OTF2_Reader*                   reader,
00300                                   OTF2_DefReader*                defReader,
00301                                   const OTF2_DefReaderCallbacks* callbacks,
00302                                   void*                          userData );
00303 
00304 
00314 OTF2_ErrorCode
00315 OTF2_Reader_RegisterGlobalDefCallbacks( OTF2_Reader*                         reader,
00316                                         OTF2_GlobalDefReader*                defReader,
00317                                         const OTF2_GlobalDefReaderCallbacks* callbacks,
00318                                         void*                                userData );
00319 
00320 
00332 OTF2_ErrorCode
00333 OTF2_Reader_RegisterSnapCallbacks( OTF2_Reader*                    reader,
00334                                    OTF2_SnapReader*                snapReader,
00335                                    const OTF2_SnapReaderCallbacks* callbacks,
00336                                    void*                           userData );
00337 
00338 
00351 OTF2_ErrorCode
00352 OTF2_Reader_RegisterGlobalSnapCallbacks( OTF2_Reader*                          reader,
00353                                          OTF2_GlobalSnapReader*                evtReader,
00354                                          const OTF2_GlobalSnapReaderCallbacks* callbacks,
00355                                          void*                                 userData );
00356 
00357 
00369 OTF2_ErrorCode
00370 OTF2_Reader_RegisterMarkerCallbacks( OTF2_Reader*                      reader,
00371                                      OTF2_MarkerReader*                markerReader,
00372                                      const OTF2_MarkerReaderCallbacks* callbacks,
00373                                      void*                             userData );
00374 
00375 
00385 OTF2_ErrorCode
00386 OTF2_Reader_ReadLocalEvents( OTF2_Reader*    reader,
00387                              OTF2_EvtReader* evtReader,
00388                              uint64_t        eventsToRead,
00389                              uint64_t*       eventsRead );
00390 
00391 
00400 OTF2_ErrorCode
00401 OTF2_Reader_ReadAllLocalEvents( OTF2_Reader*    reader,
00402                                 OTF2_EvtReader* evtReader,
00403                                 uint64_t*       eventsRead );
00404 
00405 
00415 OTF2_ErrorCode
00416 OTF2_Reader_ReadLocalEventsBackward( OTF2_Reader*    reader,
00417                                      OTF2_EvtReader* evtReader,
00418                                      uint64_t        eventsToRead,
00419                                      uint64_t*       eventsRead );
00420 
00421 
00429 OTF2_ErrorCode
00430 OTF2_Reader_ReadGlobalEvent( OTF2_Reader*          reader,
00431                              OTF2_GlobalEvtReader* evtReader );
00432 
00433 
00444 OTF2_ErrorCode
00445 OTF2_Reader_HasGlobalEvent( OTF2_Reader*          reader,
00446                             OTF2_GlobalEvtReader* evtReader,
00447                             int*                  flag );
00448 
00449 
00459 OTF2_ErrorCode
00460 OTF2_Reader_ReadGlobalEvents( OTF2_Reader*          reader,
00461                               OTF2_GlobalEvtReader* evtReader,
00462                               uint64_t              eventsToRead,
00463                               uint64_t*             eventsRead );
00464 
00465 
00474 OTF2_ErrorCode
00475 OTF2_Reader_ReadAllGlobalEvents( OTF2_Reader*          reader,
00476                                  OTF2_GlobalEvtReader* evtReader,
00477                                  uint64_t*             eventsRead );
00478 
00479 
00497 OTF2_ErrorCode
00498 OTF2_Reader_ReadLocalDefinitions( OTF2_Reader*    reader,
00499                                   OTF2_DefReader* defReader,
00500                                   uint64_t        definitionsToRead,
00501                                   uint64_t*       definitionsRead );
00502 
00503 
00520 OTF2_ErrorCode
00521 OTF2_Reader_ReadAllLocalDefinitions( OTF2_Reader*    reader,
00522                                      OTF2_DefReader* defReader,
00523                                      uint64_t*       definitionsRead );
00524 
00525 
00536 OTF2_ErrorCode
00537 OTF2_Reader_ReadGlobalDefinitions( OTF2_Reader*          reader,
00538                                    OTF2_GlobalDefReader* defReader,
00539                                    uint64_t              definitionsToRead,
00540                                    uint64_t*             definitionsRead );
00541 
00542 
00552 OTF2_ErrorCode
00553 OTF2_Reader_ReadAllGlobalDefinitions( OTF2_Reader*          reader,
00554                                       OTF2_GlobalDefReader* defReader,
00555                                       uint64_t*             definitionsRead );
00556 
00557 
00569 OTF2_ErrorCode
00570 OTF2_Reader_ReadLocalSnapshots( OTF2_Reader*     reader,
00571                                 OTF2_SnapReader* snapReader,
00572                                 uint64_t         recordsToRead,
00573                                 uint64_t*        recordsRead );
00574 
00575 
00586 OTF2_ErrorCode
00587 OTF2_Reader_ReadAllLocalSnapshots( OTF2_Reader*     reader,
00588                                    OTF2_SnapReader* snapReader,
00589                                    uint64_t*        recordsRead );
00590 
00591 
00604 OTF2_ErrorCode
00605 OTF2_Reader_ReadGlobalSnapshots( OTF2_Reader*           reader,
00606                                  OTF2_GlobalSnapReader* snapReader,
00607                                  uint64_t               recordsToRead,
00608                                  uint64_t*              recordsRead );
00609 
00610 
00621 OTF2_ErrorCode
00622 OTF2_Reader_ReadAllGlobalSnapshots( OTF2_Reader*           reader,
00623                                     OTF2_GlobalSnapReader* snapReader,
00624                                     uint64_t*              recordsRead );
00625 
00626 
00639 OTF2_ErrorCode
00640 OTF2_Reader_ReadMarkers( OTF2_Reader*       reader,
00641                          OTF2_MarkerReader* markerReader,
00642                          uint64_t           markersToRead,
00643                          uint64_t*          markersRead );
00644 
00645 
00657 OTF2_ErrorCode
00658 OTF2_Reader_ReadAllMarkers( OTF2_Reader*       reader,
00659                             OTF2_MarkerReader* markerReader,
00660                             uint64_t*          markersRead );
00661 
00662 
00671 OTF2_EvtReader*
00672 OTF2_Reader_GetEvtReader( OTF2_Reader*     reader,
00673                           OTF2_LocationRef location );
00674 
00675 
00683 OTF2_GlobalEvtReader*
00684 OTF2_Reader_GetGlobalEvtReader( OTF2_Reader* reader );
00685 
00686 
00695 OTF2_DefReader*
00696 OTF2_Reader_GetDefReader( OTF2_Reader*     reader,
00697                           OTF2_LocationRef location );
00698 
00699 
00707 OTF2_GlobalDefReader*
00708 OTF2_Reader_GetGlobalDefReader( OTF2_Reader* reader );
00709 
00710 
00720 OTF2_SnapReader*
00721 OTF2_Reader_GetSnapReader( OTF2_Reader*     reader,
00722                            OTF2_LocationRef location );
00723 
00724 
00733 OTF2_GlobalSnapReader*
00734 OTF2_Reader_GetGlobalSnapReader( OTF2_Reader* reader );
00735 
00736 
00747 OTF2_ThumbReader*
00748 OTF2_Reader_GetThumbReader( OTF2_Reader* reader,
00749                             uint32_t     number );
00750 
00751 
00761 OTF2_MarkerReader*
00762 OTF2_Reader_GetMarkerReader( OTF2_Reader* reader );
00763 
00764 
00774 OTF2_MarkerWriter*
00775 OTF2_Reader_GetMarkerWriter( OTF2_Reader* reader );
00776 
00777 
00785 OTF2_ErrorCode
00786 OTF2_Reader_CloseEvtReader( OTF2_Reader*    reader,
00787                             OTF2_EvtReader* evtReader );
00788 
00789 
00799 OTF2_ErrorCode
00800 OTF2_Reader_CloseGlobalEvtReader( OTF2_Reader*          reader,
00801                                   OTF2_GlobalEvtReader* globalEvtReader );
00802 
00803 
00811 OTF2_ErrorCode
00812 OTF2_Reader_CloseDefReader( OTF2_Reader*    reader,
00813                             OTF2_DefReader* defReader );
00814 
00815 
00823 OTF2_ErrorCode
00824 OTF2_Reader_CloseGlobalDefReader( OTF2_Reader*          reader,
00825                                   OTF2_GlobalDefReader* globalDefReader );
00826 
00827 
00837 OTF2_ErrorCode
00838 OTF2_Reader_CloseSnapReader( OTF2_Reader*     reader,
00839                              OTF2_SnapReader* snapReader );
00840 
00841 
00851 OTF2_ErrorCode
00852 OTF2_Reader_CloseGlobalSnapReader( OTF2_Reader*           reader,
00853                                    OTF2_GlobalSnapReader* globalSnapReader );
00854 
00855 
00865 OTF2_ErrorCode
00866 OTF2_Reader_CloseThumbReader( OTF2_Reader*      reader,
00867                               OTF2_ThumbReader* thumbReader );
00868 
00869 
00879 OTF2_ErrorCode
00880 OTF2_Reader_CloseMarkerReader( OTF2_Reader*       reader,
00881                                OTF2_MarkerReader* markerReader );
00882 
00883 
00893 OTF2_ErrorCode
00894 OTF2_Reader_CloseMarkerWriter( OTF2_Reader*       reader,
00895                                OTF2_MarkerWriter* markerWriter );
00896 
00897 
00907 OTF2_ErrorCode
00908 OTF2_Reader_GetVersion( OTF2_Reader* reader,
00909                         uint8_t*     major,
00910                         uint8_t*     minor,
00911                         uint8_t*     bugfix );
00912 
00913 
00922 OTF2_ErrorCode
00923 OTF2_Reader_GetChunkSize( OTF2_Reader* reader,
00924                           uint64_t*    chunkSizeEvents,
00925                           uint64_t*    chunkSizeDefinitions );
00926 
00927 
00935 OTF2_ErrorCode
00936 OTF2_Reader_GetFileSubstrate( OTF2_Reader*        reader,
00937                               OTF2_FileSubstrate* substrate );
00938 
00939 
00947 OTF2_ErrorCode
00948 OTF2_Reader_GetCompression( OTF2_Reader*      reader,
00949                             OTF2_Compression* compression );
00950 
00951 
00959 OTF2_ErrorCode
00960 OTF2_Reader_GetNumberOfLocations( OTF2_Reader* reader,
00961                                   uint64_t*    numberOfLocations );
00962 
00963 
00971 OTF2_ErrorCode
00972 OTF2_Reader_GetNumberOfGlobalDefinitions( OTF2_Reader* reader,
00973                                           uint64_t*    numberOfDefinitions );
00974 
00975 
00983 OTF2_ErrorCode
00984 OTF2_Reader_GetMachineName( OTF2_Reader* reader,
00985                             char**       machineName );
00986 
00987 
00995 OTF2_ErrorCode
00996 OTF2_Reader_GetCreator( OTF2_Reader* reader,
00997                         char**       creator );
00998 
00999 
01007 OTF2_ErrorCode
01008 OTF2_Reader_GetDescription( OTF2_Reader* reader,
01009                             char**       description );
01010 
01011 
01022 OTF2_ErrorCode
01023 OTF2_Reader_GetPropertyNames( OTF2_Reader* reader,
01024                               uint32_t*    numberOfProperties,
01025                               char***      names );
01026 
01027 
01041 OTF2_ErrorCode
01042 OTF2_Reader_GetProperty( OTF2_Reader* reader,
01043                          const char*  name,
01044                          char**       value );
01045 
01046 
01061 OTF2_ErrorCode
01062 OTF2_Reader_GetBoolProperty( OTF2_Reader* reader,
01063                              const char*  name,
01064                              bool*        value );
01065 
01066 
01074 OTF2_ErrorCode
01075 OTF2_Reader_GetTraceId( OTF2_Reader* reader,
01076                         uint64_t*    id );
01077 
01078 
01088 OTF2_ErrorCode
01089 OTF2_Reader_GetNumberOfSnapshots( OTF2_Reader* reader,
01090                                   uint32_t*    number );
01091 
01092 
01102 OTF2_ErrorCode
01103 OTF2_Reader_GetNumberOfThumbnails( OTF2_Reader* reader,
01104                                    uint32_t*    number );
01105 
01106 
01107 #ifdef __cplusplus
01108 }
01109 #endif /* __cplusplus */
01110 
01111 
01112 #endif /* !OTF2_READER_H */