![]() |
1.2.1 (revision 3238)
|
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 */