![]() |
1.2 (revision 3183)
|
00001 /* 00002 * This file is part of the Score-P software (http://www.score-p.org) 00003 * 00004 * Copyright (c) 2009-2012, 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_GLOBAL_DEF_WRITER_H 00019 #define OTF2_GLOBAL_DEF_WRITER_H 00020 00021 00041 #include <stdint.h> 00042 00043 00044 #include <otf2/OTF2_ErrorCodes.h> 00045 00046 00047 #include <otf2/OTF2_Definitions.h> 00048 00049 00050 #ifdef __cplusplus 00051 extern "C" { 00052 #endif /* __cplusplus */ 00053 00054 00059 typedef struct OTF2_GlobalDefWriter_struct OTF2_GlobalDefWriter; 00060 00061 00070 OTF2_ErrorCode 00071 OTF2_GlobalDefWriter_GetNumberOfDefinitions( OTF2_GlobalDefWriter* writerHandle, 00072 uint64_t* numberOfDefinitions ); 00073 00074 00083 OTF2_ErrorCode 00084 OTF2_GlobalDefWriter_GetNumberOfLocations( OTF2_GlobalDefWriter* writerHandle, 00085 uint64_t* numberOfLocations ); 00086 00087 00107 OTF2_ErrorCode 00108 OTF2_GlobalDefWriter_WriteClockProperties( OTF2_GlobalDefWriter* writerHandle, 00109 uint64_t timerResolution, 00110 uint64_t globalOffset, 00111 uint64_t traceLength ); 00112 00113 00127 OTF2_ErrorCode 00128 OTF2_GlobalDefWriter_WriteString( OTF2_GlobalDefWriter* writerHandle, 00129 OTF2_StringRef self, 00130 const char* string ); 00131 00132 00147 OTF2_ErrorCode 00148 OTF2_GlobalDefWriter_WriteAttribute( OTF2_GlobalDefWriter* writerHandle, 00149 OTF2_AttributeRef self, 00150 OTF2_StringRef name, 00151 OTF2_Type type ); 00152 00153 00175 OTF2_ErrorCode 00176 OTF2_GlobalDefWriter_WriteSystemTreeNode( OTF2_GlobalDefWriter* writerHandle, 00177 OTF2_SystemTreeNodeRef self, 00178 OTF2_StringRef name, 00179 OTF2_StringRef className, 00180 OTF2_SystemTreeNodeRef parent ); 00181 00182 00201 OTF2_ErrorCode 00202 OTF2_GlobalDefWriter_WriteLocationGroup( OTF2_GlobalDefWriter* writerHandle, 00203 OTF2_LocationGroupRef self, 00204 OTF2_StringRef name, 00205 OTF2_LocationGroupType locationGroupType, 00206 OTF2_SystemTreeNodeRef systemTreeParent ); 00207 00208 00228 OTF2_ErrorCode 00229 OTF2_GlobalDefWriter_WriteLocation( OTF2_GlobalDefWriter* writerHandle, 00230 OTF2_LocationRef self, 00231 OTF2_StringRef name, 00232 OTF2_LocationType locationType, 00233 uint64_t numberOfEvents, 00234 OTF2_LocationGroupRef locationGroup ); 00235 00236 00264 OTF2_ErrorCode 00265 OTF2_GlobalDefWriter_WriteRegion( OTF2_GlobalDefWriter* writerHandle, 00266 OTF2_RegionRef self, 00267 OTF2_StringRef name, 00268 OTF2_StringRef canonicalName, 00269 OTF2_StringRef description, 00270 OTF2_RegionRole regionRole, 00271 OTF2_Paradigm paradigm, 00272 OTF2_RegionFlag regionFlags, 00273 OTF2_StringRef sourceFile, 00274 uint32_t beginLineNumber, 00275 uint32_t endLineNumber ); 00276 00277 00297 OTF2_ErrorCode 00298 OTF2_GlobalDefWriter_WriteCallsite( OTF2_GlobalDefWriter* writerHandle, 00299 OTF2_CallsiteRef self, 00300 OTF2_StringRef sourceFile, 00301 uint32_t lineNumber, 00302 OTF2_RegionRef enteredRegion, 00303 OTF2_RegionRef leftRegion ); 00304 00305 00320 OTF2_ErrorCode 00321 OTF2_GlobalDefWriter_WriteCallpath( OTF2_GlobalDefWriter* writerHandle, 00322 OTF2_CallpathRef self, 00323 OTF2_CallpathRef parent, 00324 OTF2_RegionRef region ); 00325 00326 00347 OTF2_ErrorCode 00348 OTF2_GlobalDefWriter_WriteGroup( OTF2_GlobalDefWriter* writerHandle, 00349 OTF2_GroupRef self, 00350 OTF2_StringRef name, 00351 OTF2_GroupType groupType, 00352 OTF2_Paradigm paradigm, 00353 OTF2_GroupFlag groupFlags, 00354 uint32_t numberOfMembers, 00355 const uint64_t* members ); 00356 00357 00397 OTF2_ErrorCode 00398 OTF2_GlobalDefWriter_WriteMetricMember( OTF2_GlobalDefWriter* writerHandle, 00399 OTF2_MetricMemberRef self, 00400 OTF2_StringRef name, 00401 OTF2_StringRef description, 00402 OTF2_MetricType metricType, 00403 OTF2_MetricMode metricMode, 00404 OTF2_Type valueType, 00405 OTF2_MetricBase metricBase, 00406 int64_t exponent, 00407 OTF2_StringRef unit ); 00408 00409 00432 OTF2_ErrorCode 00433 OTF2_GlobalDefWriter_WriteMetricClass( OTF2_GlobalDefWriter* writerHandle, 00434 OTF2_MetricRef self, 00435 uint8_t numberOfMetrics, 00436 const OTF2_MetricMemberRef* metricMembers, 00437 OTF2_MetricOccurrence metricOccurrence, 00438 OTF2_RecorderKind recorderKind ); 00439 00440 00466 OTF2_ErrorCode 00467 OTF2_GlobalDefWriter_WriteMetricInstance( OTF2_GlobalDefWriter* writerHandle, 00468 OTF2_MetricRef self, 00469 OTF2_MetricRef metricClass, 00470 OTF2_LocationRef recorder, 00471 OTF2_MetricScope metricScope, 00472 uint64_t scope ); 00473 00474 00497 OTF2_ErrorCode 00498 OTF2_GlobalDefWriter_WriteComm( OTF2_GlobalDefWriter* writerHandle, 00499 OTF2_CommRef self, 00500 OTF2_StringRef name, 00501 OTF2_GroupRef group, 00502 OTF2_CommRef parent ); 00503 00504 00522 OTF2_ErrorCode 00523 OTF2_GlobalDefWriter_WriteParameter( OTF2_GlobalDefWriter* writerHandle, 00524 OTF2_ParameterRef self, 00525 OTF2_StringRef name, 00526 OTF2_ParameterType parameterType ); 00527 00528 00546 OTF2_ErrorCode 00547 OTF2_GlobalDefWriter_WriteRmaWin( OTF2_GlobalDefWriter* writerHandle, 00548 OTF2_RmaWinRef self, 00549 OTF2_StringRef name, 00550 OTF2_CommRef comm ); 00551 00552 00569 OTF2_ErrorCode 00570 OTF2_GlobalDefWriter_WriteMetricClassRecorder( OTF2_GlobalDefWriter* writerHandle, 00571 OTF2_MetricRef metricClass, 00572 OTF2_LocationRef recorder ); 00573 00574 00592 OTF2_ErrorCode 00593 OTF2_GlobalDefWriter_WriteSystemTreeNodeProperty( OTF2_GlobalDefWriter* writerHandle, 00594 OTF2_SystemTreeNodeRef systemTreeNode, 00595 OTF2_StringRef name, 00596 OTF2_StringRef value ); 00597 00598 00614 OTF2_ErrorCode 00615 OTF2_GlobalDefWriter_WriteSystemTreeNodeDomain( OTF2_GlobalDefWriter* writerHandle, 00616 OTF2_SystemTreeNodeRef systemTreeNode, 00617 OTF2_SystemTreeDomain systemTreeDomain ); 00618 00619 00620 #ifdef __cplusplus 00621 } 00622 #endif /* __cplusplus */ 00623 00624 00625 #endif /* !OTF2_GLOBAL_DEF_WRITER_H */