![]() |
1.5.1 (revision 4026)
|
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 * 00007 * Copyright (c) 2009-2013, 00008 * Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany 00009 * 00010 * Copyright (c) 2009-2014, 00011 * Technische Universitaet Dresden, Germany 00012 * 00013 * Copyright (c) 2009-2013, 00014 * University of Oregon, Eugene, USA 00015 * 00016 * Copyright (c) 2009-2014, 00017 * Forschungszentrum Juelich GmbH, Germany 00018 * 00019 * Copyright (c) 2009-2013, 00020 * German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany 00021 * 00022 * Copyright (c) 2009-2013, 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_READER_H 00033 #define OTF2_READER_H 00034 00035 00175 #include <stdint.h> 00176 00177 00178 #include <otf2/OTF2_ErrorCodes.h> 00179 00180 00181 #include <otf2/OTF2_Archive.h> 00182 00183 00184 #ifdef __cplusplus 00185 extern "C" { 00186 #endif /* __cplusplus */ 00187 00188 00190 typedef struct OTF2_Reader_struct OTF2_Reader; 00191 00192 00204 OTF2_Reader* 00205 OTF2_Reader_Open( const char* anchorFilePath ); 00206 00207 00217 OTF2_ErrorCode 00218 OTF2_Reader_Close( OTF2_Reader* reader ); 00219 00220 00246 OTF2_ErrorCode 00247 OTF2_Reader_SetHint( OTF2_Reader* reader, 00248 OTF2_Hint hint, 00249 void* value ); 00250 00251 00270 OTF2_ErrorCode 00271 OTF2_Reader_SetCollectiveCallbacks( OTF2_Reader* reader, 00272 const OTF2_CollectiveCallbacks* collectiveCallbacks, 00273 void* collectiveData, 00274 OTF2_CollectiveContext* globalCommContext, 00275 OTF2_CollectiveContext* localCommContext ); 00276 00277 00285 OTF2_ErrorCode 00286 OTF2_Reader_SetSerialCollectiveCallbacks( OTF2_Reader* reader ); 00287 00288 00308 OTF2_ErrorCode 00309 OTF2_Reader_SetLockingCallbacks( OTF2_Reader* reader, 00310 const OTF2_LockingCallbacks* lockingCallbacks, 00311 void* lockingData ); 00312 00313 00323 OTF2_ErrorCode 00324 OTF2_Reader_RegisterEvtCallbacks( OTF2_Reader* reader, 00325 OTF2_EvtReader* evtReader, 00326 const OTF2_EvtReaderCallbacks* callbacks, 00327 void* userData ); 00328 00329 00340 OTF2_ErrorCode 00341 OTF2_Reader_RegisterGlobalEvtCallbacks( OTF2_Reader* reader, 00342 OTF2_GlobalEvtReader* evtReader, 00343 const OTF2_GlobalEvtReaderCallbacks* callbacks, 00344 void* userData ); 00345 00346 00356 OTF2_ErrorCode 00357 OTF2_Reader_RegisterDefCallbacks( OTF2_Reader* reader, 00358 OTF2_DefReader* defReader, 00359 const OTF2_DefReaderCallbacks* callbacks, 00360 void* userData ); 00361 00362 00372 OTF2_ErrorCode 00373 OTF2_Reader_RegisterGlobalDefCallbacks( OTF2_Reader* reader, 00374 OTF2_GlobalDefReader* defReader, 00375 const OTF2_GlobalDefReaderCallbacks* callbacks, 00376 void* userData ); 00377 00378 00390 OTF2_ErrorCode 00391 OTF2_Reader_RegisterSnapCallbacks( OTF2_Reader* reader, 00392 OTF2_SnapReader* snapReader, 00393 const OTF2_SnapReaderCallbacks* callbacks, 00394 void* userData ); 00395 00396 00409 OTF2_ErrorCode 00410 OTF2_Reader_RegisterGlobalSnapCallbacks( OTF2_Reader* reader, 00411 OTF2_GlobalSnapReader* evtReader, 00412 const OTF2_GlobalSnapReaderCallbacks* callbacks, 00413 void* userData ); 00414 00415 00427 OTF2_ErrorCode 00428 OTF2_Reader_RegisterMarkerCallbacks( OTF2_Reader* reader, 00429 OTF2_MarkerReader* markerReader, 00430 const OTF2_MarkerReaderCallbacks* callbacks, 00431 void* userData ); 00432 00433 00443 OTF2_ErrorCode 00444 OTF2_Reader_ReadLocalEvents( OTF2_Reader* reader, 00445 OTF2_EvtReader* evtReader, 00446 uint64_t eventsToRead, 00447 uint64_t* eventsRead ); 00448 00449 00458 OTF2_ErrorCode 00459 OTF2_Reader_ReadAllLocalEvents( OTF2_Reader* reader, 00460 OTF2_EvtReader* evtReader, 00461 uint64_t* eventsRead ); 00462 00463 00473 OTF2_ErrorCode 00474 OTF2_Reader_ReadLocalEventsBackward( OTF2_Reader* reader, 00475 OTF2_EvtReader* evtReader, 00476 uint64_t eventsToRead, 00477 uint64_t* eventsRead ); 00478 00479 00487 OTF2_ErrorCode 00488 OTF2_Reader_ReadGlobalEvent( OTF2_Reader* reader, 00489 OTF2_GlobalEvtReader* evtReader ); 00490 00491 00502 OTF2_ErrorCode 00503 OTF2_Reader_HasGlobalEvent( OTF2_Reader* reader, 00504 OTF2_GlobalEvtReader* evtReader, 00505 int* flag ); 00506 00507 00517 OTF2_ErrorCode 00518 OTF2_Reader_ReadGlobalEvents( OTF2_Reader* reader, 00519 OTF2_GlobalEvtReader* evtReader, 00520 uint64_t eventsToRead, 00521 uint64_t* eventsRead ); 00522 00523 00532 OTF2_ErrorCode 00533 OTF2_Reader_ReadAllGlobalEvents( OTF2_Reader* reader, 00534 OTF2_GlobalEvtReader* evtReader, 00535 uint64_t* eventsRead ); 00536 00537 00555 OTF2_ErrorCode 00556 OTF2_Reader_ReadLocalDefinitions( OTF2_Reader* reader, 00557 OTF2_DefReader* defReader, 00558 uint64_t definitionsToRead, 00559 uint64_t* definitionsRead ); 00560 00561 00578 OTF2_ErrorCode 00579 OTF2_Reader_ReadAllLocalDefinitions( OTF2_Reader* reader, 00580 OTF2_DefReader* defReader, 00581 uint64_t* definitionsRead ); 00582 00583 00594 OTF2_ErrorCode 00595 OTF2_Reader_ReadGlobalDefinitions( OTF2_Reader* reader, 00596 OTF2_GlobalDefReader* defReader, 00597 uint64_t definitionsToRead, 00598 uint64_t* definitionsRead ); 00599 00600 00610 OTF2_ErrorCode 00611 OTF2_Reader_ReadAllGlobalDefinitions( OTF2_Reader* reader, 00612 OTF2_GlobalDefReader* defReader, 00613 uint64_t* definitionsRead ); 00614 00615 00627 OTF2_ErrorCode 00628 OTF2_Reader_ReadLocalSnapshots( OTF2_Reader* reader, 00629 OTF2_SnapReader* snapReader, 00630 uint64_t recordsToRead, 00631 uint64_t* recordsRead ); 00632 00633 00644 OTF2_ErrorCode 00645 OTF2_Reader_ReadAllLocalSnapshots( OTF2_Reader* reader, 00646 OTF2_SnapReader* snapReader, 00647 uint64_t* recordsRead ); 00648 00649 00662 OTF2_ErrorCode 00663 OTF2_Reader_ReadGlobalSnapshots( OTF2_Reader* reader, 00664 OTF2_GlobalSnapReader* snapReader, 00665 uint64_t recordsToRead, 00666 uint64_t* recordsRead ); 00667 00668 00679 OTF2_ErrorCode 00680 OTF2_Reader_ReadAllGlobalSnapshots( OTF2_Reader* reader, 00681 OTF2_GlobalSnapReader* snapReader, 00682 uint64_t* recordsRead ); 00683 00684 00697 OTF2_ErrorCode 00698 OTF2_Reader_ReadMarkers( OTF2_Reader* reader, 00699 OTF2_MarkerReader* markerReader, 00700 uint64_t markersToRead, 00701 uint64_t* markersRead ); 00702 00703 00715 OTF2_ErrorCode 00716 OTF2_Reader_ReadAllMarkers( OTF2_Reader* reader, 00717 OTF2_MarkerReader* markerReader, 00718 uint64_t* markersRead ); 00719 00720 00729 OTF2_EvtReader* 00730 OTF2_Reader_GetEvtReader( OTF2_Reader* reader, 00731 OTF2_LocationRef location ); 00732 00733 00741 OTF2_GlobalEvtReader* 00742 OTF2_Reader_GetGlobalEvtReader( OTF2_Reader* reader ); 00743 00744 00753 OTF2_DefReader* 00754 OTF2_Reader_GetDefReader( OTF2_Reader* reader, 00755 OTF2_LocationRef location ); 00756 00757 00765 OTF2_GlobalDefReader* 00766 OTF2_Reader_GetGlobalDefReader( OTF2_Reader* reader ); 00767 00768 00778 OTF2_SnapReader* 00779 OTF2_Reader_GetSnapReader( OTF2_Reader* reader, 00780 OTF2_LocationRef location ); 00781 00782 00791 OTF2_GlobalSnapReader* 00792 OTF2_Reader_GetGlobalSnapReader( OTF2_Reader* reader ); 00793 00794 00805 OTF2_ThumbReader* 00806 OTF2_Reader_GetThumbReader( OTF2_Reader* reader, 00807 uint32_t number ); 00808 00809 00819 OTF2_MarkerReader* 00820 OTF2_Reader_GetMarkerReader( OTF2_Reader* reader ); 00821 00822 00832 OTF2_MarkerWriter* 00833 OTF2_Reader_GetMarkerWriter( OTF2_Reader* reader ); 00834 00835 00843 OTF2_ErrorCode 00844 OTF2_Reader_CloseEvtReader( OTF2_Reader* reader, 00845 OTF2_EvtReader* evtReader ); 00846 00847 00857 OTF2_ErrorCode 00858 OTF2_Reader_CloseGlobalEvtReader( OTF2_Reader* reader, 00859 OTF2_GlobalEvtReader* globalEvtReader ); 00860 00861 00869 OTF2_ErrorCode 00870 OTF2_Reader_CloseDefReader( OTF2_Reader* reader, 00871 OTF2_DefReader* defReader ); 00872 00873 00881 OTF2_ErrorCode 00882 OTF2_Reader_CloseGlobalDefReader( OTF2_Reader* reader, 00883 OTF2_GlobalDefReader* globalDefReader ); 00884 00885 00895 OTF2_ErrorCode 00896 OTF2_Reader_CloseSnapReader( OTF2_Reader* reader, 00897 OTF2_SnapReader* snapReader ); 00898 00899 00909 OTF2_ErrorCode 00910 OTF2_Reader_CloseGlobalSnapReader( OTF2_Reader* reader, 00911 OTF2_GlobalSnapReader* globalSnapReader ); 00912 00913 00923 OTF2_ErrorCode 00924 OTF2_Reader_CloseThumbReader( OTF2_Reader* reader, 00925 OTF2_ThumbReader* thumbReader ); 00926 00927 00937 OTF2_ErrorCode 00938 OTF2_Reader_CloseMarkerReader( OTF2_Reader* reader, 00939 OTF2_MarkerReader* markerReader ); 00940 00941 00951 OTF2_ErrorCode 00952 OTF2_Reader_CloseMarkerWriter( OTF2_Reader* reader, 00953 OTF2_MarkerWriter* markerWriter ); 00954 00955 00965 OTF2_ErrorCode 00966 OTF2_Reader_GetVersion( OTF2_Reader* reader, 00967 uint8_t* major, 00968 uint8_t* minor, 00969 uint8_t* bugfix ); 00970 00971 00980 OTF2_ErrorCode 00981 OTF2_Reader_GetChunkSize( OTF2_Reader* reader, 00982 uint64_t* chunkSizeEvents, 00983 uint64_t* chunkSizeDefinitions ); 00984 00985 00993 OTF2_ErrorCode 00994 OTF2_Reader_GetFileSubstrate( OTF2_Reader* reader, 00995 OTF2_FileSubstrate* substrate ); 00996 00997 01005 OTF2_ErrorCode 01006 OTF2_Reader_GetCompression( OTF2_Reader* reader, 01007 OTF2_Compression* compression ); 01008 01009 01017 OTF2_ErrorCode 01018 OTF2_Reader_GetNumberOfLocations( OTF2_Reader* reader, 01019 uint64_t* numberOfLocations ); 01020 01021 01029 OTF2_ErrorCode 01030 OTF2_Reader_GetNumberOfGlobalDefinitions( OTF2_Reader* reader, 01031 uint64_t* numberOfDefinitions ); 01032 01033 01041 OTF2_ErrorCode 01042 OTF2_Reader_GetMachineName( OTF2_Reader* reader, 01043 char** machineName ); 01044 01045 01053 OTF2_ErrorCode 01054 OTF2_Reader_GetCreator( OTF2_Reader* reader, 01055 char** creator ); 01056 01057 01065 OTF2_ErrorCode 01066 OTF2_Reader_GetDescription( OTF2_Reader* reader, 01067 char** description ); 01068 01069 01080 OTF2_ErrorCode 01081 OTF2_Reader_GetPropertyNames( OTF2_Reader* reader, 01082 uint32_t* numberOfProperties, 01083 char*** names ); 01084 01085 01099 OTF2_ErrorCode 01100 OTF2_Reader_GetProperty( OTF2_Reader* reader, 01101 const char* name, 01102 char** value ); 01103 01104 01119 OTF2_ErrorCode 01120 OTF2_Reader_GetBoolProperty( OTF2_Reader* reader, 01121 const char* name, 01122 bool* value ); 01123 01124 01132 OTF2_ErrorCode 01133 OTF2_Reader_GetTraceId( OTF2_Reader* reader, 01134 uint64_t* id ); 01135 01136 01146 OTF2_ErrorCode 01147 OTF2_Reader_GetNumberOfSnapshots( OTF2_Reader* reader, 01148 uint32_t* number ); 01149 01150 01160 OTF2_ErrorCode 01161 OTF2_Reader_GetNumberOfThumbnails( OTF2_Reader* reader, 01162 uint32_t* number ); 01163 01164 01176 OTF2_ErrorCode 01177 OTF2_Reader_OpenEvtFiles( OTF2_Reader* reader ); 01178 01179 01193 OTF2_ErrorCode 01194 OTF2_Reader_CloseEvtFiles( OTF2_Reader* reader ); 01195 01196 01208 OTF2_ErrorCode 01209 OTF2_Reader_OpenDefFiles( OTF2_Reader* reader ); 01210 01211 01225 OTF2_ErrorCode 01226 OTF2_Reader_CloseDefFiles( OTF2_Reader* reader ); 01227 01228 01240 OTF2_ErrorCode 01241 OTF2_Reader_OpenSnapFiles( OTF2_Reader* reader ); 01242 01243 01257 OTF2_ErrorCode 01258 OTF2_Reader_CloseSnapFiles( OTF2_Reader* reader ); 01259 01260 01271 OTF2_ErrorCode 01272 OTF2_Reader_SelectLocation( OTF2_Reader* reader, 01273 OTF2_LocationRef location ); 01274 01275 01276 #ifdef __cplusplus 01277 } 01278 #endif /* __cplusplus */ 01279 01280 01281 #endif /* !OTF2_READER_H */