1.2.1 (revision 3238)
OTF2_SnapWriter.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_SNAP_WRITER_H
00014 #define OTF2_SNAP_WRITER_H
00015 
00016 
00027 #include <stdint.h>
00028 
00029 
00030 #include <otf2/OTF2_ErrorCodes.h>
00031 
00032 
00033 #include <otf2/OTF2_Events.h>
00034 #include <otf2/OTF2_AttributeList.h>
00035 
00036 
00037 #ifdef __cplusplus
00038 extern "C" {
00039 #endif /* __cplusplus */
00040 
00041 
00047 typedef struct OTF2_SnapWriter_struct OTF2_SnapWriter;
00048 
00049 
00060 OTF2_ErrorCode
00061 OTF2_SnapWriter_GetLocationID( const OTF2_SnapWriter* writer,
00062                                OTF2_LocationRef*      locationID );
00063 
00064 
00065 
00089 OTF2_ErrorCode
00090 OTF2_SnapWriter_SnapshotStart( OTF2_SnapWriter*    writer,
00091                                OTF2_AttributeList* attributeList,
00092                                OTF2_TimeStamp      snapTime,
00093                                uint64_t            numberOfRecords );
00094 
00095 
00112 OTF2_ErrorCode
00113 OTF2_SnapWriter_SnapshotEnd( OTF2_SnapWriter*    writer,
00114                              OTF2_AttributeList* attributeList,
00115                              OTF2_TimeStamp      snapTime,
00116                              uint64_t            contReadPos );
00117 
00118 
00137 OTF2_ErrorCode
00138 OTF2_SnapWriter_MeasurementOnOff( OTF2_SnapWriter*     writer,
00139                                   OTF2_AttributeList*  attributeList,
00140                                   OTF2_TimeStamp       snapTime,
00141                                   OTF2_TimeStamp       origEventTime,
00142                                   OTF2_MeasurementMode measurementMode );
00143 
00144 
00164 OTF2_ErrorCode
00165 OTF2_SnapWriter_Enter( OTF2_SnapWriter*    writer,
00166                        OTF2_AttributeList* attributeList,
00167                        OTF2_TimeStamp      snapTime,
00168                        OTF2_TimeStamp      origEventTime,
00169                        OTF2_RegionRef      region );
00170 
00171 
00198 OTF2_ErrorCode
00199 OTF2_SnapWriter_MpiSend( OTF2_SnapWriter*    writer,
00200                          OTF2_AttributeList* attributeList,
00201                          OTF2_TimeStamp      snapTime,
00202                          OTF2_TimeStamp      origEventTime,
00203                          uint32_t            receiver,
00204                          OTF2_CommRef        communicator,
00205                          uint32_t            msgTag,
00206                          uint64_t            msgLength );
00207 
00208 
00237 OTF2_ErrorCode
00238 OTF2_SnapWriter_MpiIsend( OTF2_SnapWriter*    writer,
00239                           OTF2_AttributeList* attributeList,
00240                           OTF2_TimeStamp      snapTime,
00241                           OTF2_TimeStamp      origEventTime,
00242                           uint32_t            receiver,
00243                           OTF2_CommRef        communicator,
00244                           uint32_t            msgTag,
00245                           uint64_t            msgLength,
00246                           uint64_t            requestID );
00247 
00248 
00268 OTF2_ErrorCode
00269 OTF2_SnapWriter_MpiIsendComplete( OTF2_SnapWriter*    writer,
00270                                   OTF2_AttributeList* attributeList,
00271                                   OTF2_TimeStamp      snapTime,
00272                                   OTF2_TimeStamp      origEventTime,
00273                                   uint64_t            requestID );
00274 
00275 
00303 OTF2_ErrorCode
00304 OTF2_SnapWriter_MpiRecv( OTF2_SnapWriter*    writer,
00305                          OTF2_AttributeList* attributeList,
00306                          OTF2_TimeStamp      snapTime,
00307                          OTF2_TimeStamp      origEventTime,
00308                          uint32_t            sender,
00309                          OTF2_CommRef        communicator,
00310                          uint32_t            msgTag,
00311                          uint64_t            msgLength );
00312 
00313 
00336 OTF2_ErrorCode
00337 OTF2_SnapWriter_MpiIrecvRequest( OTF2_SnapWriter*    writer,
00338                                  OTF2_AttributeList* attributeList,
00339                                  OTF2_TimeStamp      snapTime,
00340                                  OTF2_TimeStamp      origEventTime,
00341                                  uint64_t            requestID );
00342 
00343 
00372 OTF2_ErrorCode
00373 OTF2_SnapWriter_MpiIrecv( OTF2_SnapWriter*    writer,
00374                           OTF2_AttributeList* attributeList,
00375                           OTF2_TimeStamp      snapTime,
00376                           OTF2_TimeStamp      origEventTime,
00377                           uint32_t            sender,
00378                           OTF2_CommRef        communicator,
00379                           uint32_t            msgTag,
00380                           uint64_t            msgLength,
00381                           uint64_t            requestID );
00382 
00383 
00400 OTF2_ErrorCode
00401 OTF2_SnapWriter_MpiCollectiveBegin( OTF2_SnapWriter*    writer,
00402                                     OTF2_AttributeList* attributeList,
00403                                     OTF2_TimeStamp      snapTime,
00404                                     OTF2_TimeStamp      origEventTime );
00405 
00406 
00431 OTF2_ErrorCode
00432 OTF2_SnapWriter_MpiCollectiveEnd( OTF2_SnapWriter*    writer,
00433                                   OTF2_AttributeList* attributeList,
00434                                   OTF2_TimeStamp      snapTime,
00435                                   OTF2_TimeStamp      origEventTime,
00436                                   OTF2_CollectiveOp   collectiveOp,
00437                                   OTF2_CommRef        communicator,
00438                                   uint32_t            root,
00439                                   uint64_t            sizeSent,
00440                                   uint64_t            sizeReceived );
00441 
00442 
00460 OTF2_ErrorCode
00461 OTF2_SnapWriter_OmpFork( OTF2_SnapWriter*    writer,
00462                          OTF2_AttributeList* attributeList,
00463                          OTF2_TimeStamp      snapTime,
00464                          OTF2_TimeStamp      origEventTime,
00465                          uint32_t            numberOfRequestedThreads );
00466 
00467 
00490 OTF2_ErrorCode
00491 OTF2_SnapWriter_OmpAcquireLock( OTF2_SnapWriter*    writer,
00492                                 OTF2_AttributeList* attributeList,
00493                                 OTF2_TimeStamp      snapTime,
00494                                 OTF2_TimeStamp      origEventTime,
00495                                 uint32_t            lockID,
00496                                 uint32_t            acquisitionOrder );
00497 
00498 
00517 OTF2_ErrorCode
00518 OTF2_SnapWriter_OmpTaskCreate( OTF2_SnapWriter*    writer,
00519                                OTF2_AttributeList* attributeList,
00520                                OTF2_TimeStamp      snapTime,
00521                                OTF2_TimeStamp      origEventTime,
00522                                uint64_t            taskID );
00523 
00524 
00543 OTF2_ErrorCode
00544 OTF2_SnapWriter_OmpTaskSwitch( OTF2_SnapWriter*    writer,
00545                                OTF2_AttributeList* attributeList,
00546                                OTF2_TimeStamp      snapTime,
00547                                OTF2_TimeStamp      origEventTime,
00548                                uint64_t            taskID );
00549 
00550 
00579 OTF2_ErrorCode
00580 OTF2_SnapWriter_Metric( OTF2_SnapWriter*        writer,
00581                         OTF2_AttributeList*     attributeList,
00582                         OTF2_TimeStamp          snapTime,
00583                         OTF2_TimeStamp          origEventTime,
00584                         OTF2_MetricRef          metric,
00585                         uint8_t                 numberOfMetrics,
00586                         const OTF2_Type*        typeIDs,
00587                         const OTF2_MetricValue* metricValues );
00588 
00589 
00614 OTF2_ErrorCode
00615 OTF2_SnapWriter_ParameterString( OTF2_SnapWriter*    writer,
00616                                  OTF2_AttributeList* attributeList,
00617                                  OTF2_TimeStamp      snapTime,
00618                                  OTF2_TimeStamp      origEventTime,
00619                                  OTF2_ParameterRef   parameter,
00620                                  OTF2_StringRef      string );
00621 
00622 
00644 OTF2_ErrorCode
00645 OTF2_SnapWriter_ParameterInt( OTF2_SnapWriter*    writer,
00646                               OTF2_AttributeList* attributeList,
00647                               OTF2_TimeStamp      snapTime,
00648                               OTF2_TimeStamp      origEventTime,
00649                               OTF2_ParameterRef   parameter,
00650                               int64_t             value );
00651 
00652 
00674 OTF2_ErrorCode
00675 OTF2_SnapWriter_ParameterUnsignedInt( OTF2_SnapWriter*    writer,
00676                                       OTF2_AttributeList* attributeList,
00677                                       OTF2_TimeStamp      snapTime,
00678                                       OTF2_TimeStamp      origEventTime,
00679                                       OTF2_ParameterRef   parameter,
00680                                       uint64_t            value );
00681 
00682 
00683 
00684 #ifdef __cplusplus
00685 }
00686 #endif /* __cplusplus */
00687 
00688 
00689 #endif /* !OTF2_SNAP_WRITER_H */