![]() |
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-2012, 00005 * RWTH Aachen University, Germany 00006 * 00007 * Copyright (c) 2009-2012, 00008 * Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany 00009 * 00010 * Copyright (c) 2009-2012, 2014, 00011 * Technische Universitaet Dresden, Germany 00012 * 00013 * Copyright (c) 2009-2012, 00014 * University of Oregon, Eugene, USA 00015 * 00016 * Copyright (c) 2009-2012, 00017 * Forschungszentrum Juelich GmbH, Germany 00018 * 00019 * Copyright (c) 2009-2012, 00020 * German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany 00021 * 00022 * Copyright (c) 2009-2012, 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_GLOBAL_DEF_WRITER_H 00033 #define OTF2_GLOBAL_DEF_WRITER_H 00034 00035 00051 #include <stdint.h> 00052 00053 00054 #include <otf2/OTF2_ErrorCodes.h> 00055 00056 00057 #include <otf2/OTF2_GeneralDefinitions.h> 00058 #include <otf2/OTF2_AttributeValue.h> 00059 #include <otf2/OTF2_Definitions.h> 00060 00061 00062 #ifdef __cplusplus 00063 extern "C" { 00064 #endif /* __cplusplus */ 00065 00066 00071 typedef struct OTF2_GlobalDefWriter_struct OTF2_GlobalDefWriter; 00072 00073 00082 OTF2_ErrorCode 00083 OTF2_GlobalDefWriter_GetNumberOfDefinitions( OTF2_GlobalDefWriter* writerHandle, 00084 uint64_t* numberOfDefinitions ); 00085 00086 00095 OTF2_ErrorCode 00096 OTF2_GlobalDefWriter_GetNumberOfLocations( OTF2_GlobalDefWriter* writerHandle, 00097 uint64_t* numberOfLocations ); 00098 00099 00118 OTF2_ErrorCode 00119 OTF2_GlobalDefWriter_WriteClockProperties( OTF2_GlobalDefWriter* writerHandle, 00120 uint64_t timerResolution, 00121 uint64_t globalOffset, 00122 uint64_t traceLength ); 00123 00124 00144 OTF2_ErrorCode 00145 OTF2_GlobalDefWriter_WriteParadigm( OTF2_GlobalDefWriter* writerHandle, 00146 OTF2_Paradigm paradigm, 00147 OTF2_StringRef name, 00148 OTF2_ParadigmClass paradigmClass ); 00149 00150 00168 OTF2_ErrorCode 00169 OTF2_GlobalDefWriter_WriteParadigmProperty( OTF2_GlobalDefWriter* writerHandle, 00170 OTF2_Paradigm paradigm, 00171 OTF2_ParadigmProperty property, 00172 OTF2_Type type, 00173 OTF2_AttributeValue attributeValue ); 00174 00175 00188 OTF2_ErrorCode 00189 OTF2_GlobalDefWriter_WriteString( OTF2_GlobalDefWriter* writerHandle, 00190 OTF2_StringRef self, 00191 const char* string ); 00192 00193 00211 OTF2_ErrorCode 00212 OTF2_GlobalDefWriter_WriteAttribute( OTF2_GlobalDefWriter* writerHandle, 00213 OTF2_AttributeRef self, 00214 OTF2_StringRef name, 00215 OTF2_StringRef description, 00216 OTF2_Type type ); 00217 00218 00239 OTF2_ErrorCode 00240 OTF2_GlobalDefWriter_WriteSystemTreeNode( OTF2_GlobalDefWriter* writerHandle, 00241 OTF2_SystemTreeNodeRef self, 00242 OTF2_StringRef name, 00243 OTF2_StringRef className, 00244 OTF2_SystemTreeNodeRef parent ); 00245 00246 00264 OTF2_ErrorCode 00265 OTF2_GlobalDefWriter_WriteLocationGroup( OTF2_GlobalDefWriter* writerHandle, 00266 OTF2_LocationGroupRef self, 00267 OTF2_StringRef name, 00268 OTF2_LocationGroupType locationGroupType, 00269 OTF2_SystemTreeNodeRef systemTreeParent ); 00270 00271 00290 OTF2_ErrorCode 00291 OTF2_GlobalDefWriter_WriteLocation( OTF2_GlobalDefWriter* writerHandle, 00292 OTF2_LocationRef self, 00293 OTF2_StringRef name, 00294 OTF2_LocationType locationType, 00295 uint64_t numberOfEvents, 00296 OTF2_LocationGroupRef locationGroup ); 00297 00298 00326 OTF2_ErrorCode 00327 OTF2_GlobalDefWriter_WriteRegion( OTF2_GlobalDefWriter* writerHandle, 00328 OTF2_RegionRef self, 00329 OTF2_StringRef name, 00330 OTF2_StringRef canonicalName, 00331 OTF2_StringRef description, 00332 OTF2_RegionRole regionRole, 00333 OTF2_Paradigm paradigm, 00334 OTF2_RegionFlag regionFlags, 00335 OTF2_StringRef sourceFile, 00336 uint32_t beginLineNumber, 00337 uint32_t endLineNumber ); 00338 00339 00359 OTF2_ErrorCode 00360 OTF2_GlobalDefWriter_WriteCallsite( OTF2_GlobalDefWriter* writerHandle, 00361 OTF2_CallsiteRef self, 00362 OTF2_StringRef sourceFile, 00363 uint32_t lineNumber, 00364 OTF2_RegionRef enteredRegion, 00365 OTF2_RegionRef leftRegion ); 00366 00367 00384 OTF2_ErrorCode 00385 OTF2_GlobalDefWriter_WriteCallpath( OTF2_GlobalDefWriter* writerHandle, 00386 OTF2_CallpathRef self, 00387 OTF2_CallpathRef parent, 00388 OTF2_RegionRef region ); 00389 00390 00411 OTF2_ErrorCode 00412 OTF2_GlobalDefWriter_WriteGroup( OTF2_GlobalDefWriter* writerHandle, 00413 OTF2_GroupRef self, 00414 OTF2_StringRef name, 00415 OTF2_GroupType groupType, 00416 OTF2_Paradigm paradigm, 00417 OTF2_GroupFlag groupFlags, 00418 uint32_t numberOfMembers, 00419 const uint64_t* members ); 00420 00421 00466 OTF2_ErrorCode 00467 OTF2_GlobalDefWriter_WriteMetricMember( OTF2_GlobalDefWriter* writerHandle, 00468 OTF2_MetricMemberRef self, 00469 OTF2_StringRef name, 00470 OTF2_StringRef description, 00471 OTF2_MetricType metricType, 00472 OTF2_MetricMode metricMode, 00473 OTF2_Type valueType, 00474 OTF2_MetricBase metricBase, 00475 int64_t exponent, 00476 OTF2_StringRef unit ); 00477 00478 00500 OTF2_ErrorCode 00501 OTF2_GlobalDefWriter_WriteMetricClass( OTF2_GlobalDefWriter* writerHandle, 00502 OTF2_MetricRef self, 00503 uint8_t numberOfMetrics, 00504 const OTF2_MetricMemberRef* metricMembers, 00505 OTF2_MetricOccurrence metricOccurrence, 00506 OTF2_RecorderKind recorderKind ); 00507 00508 00533 OTF2_ErrorCode 00534 OTF2_GlobalDefWriter_WriteMetricInstance( OTF2_GlobalDefWriter* writerHandle, 00535 OTF2_MetricRef self, 00536 OTF2_MetricRef metricClass, 00537 OTF2_LocationRef recorder, 00538 OTF2_MetricScope metricScope, 00539 uint64_t scope ); 00540 00541 00566 OTF2_ErrorCode 00567 OTF2_GlobalDefWriter_WriteComm( OTF2_GlobalDefWriter* writerHandle, 00568 OTF2_CommRef self, 00569 OTF2_StringRef name, 00570 OTF2_GroupRef group, 00571 OTF2_CommRef parent ); 00572 00573 00590 OTF2_ErrorCode 00591 OTF2_GlobalDefWriter_WriteParameter( OTF2_GlobalDefWriter* writerHandle, 00592 OTF2_ParameterRef self, 00593 OTF2_StringRef name, 00594 OTF2_ParameterType parameterType ); 00595 00596 00613 OTF2_ErrorCode 00614 OTF2_GlobalDefWriter_WriteRmaWin( OTF2_GlobalDefWriter* writerHandle, 00615 OTF2_RmaWinRef self, 00616 OTF2_StringRef name, 00617 OTF2_CommRef comm ); 00618 00619 00635 OTF2_ErrorCode 00636 OTF2_GlobalDefWriter_WriteMetricClassRecorder( OTF2_GlobalDefWriter* writerHandle, 00637 OTF2_MetricRef metricClass, 00638 OTF2_LocationRef recorder ); 00639 00640 00658 OTF2_ErrorCode 00659 OTF2_GlobalDefWriter_WriteSystemTreeNodeProperty( OTF2_GlobalDefWriter* writerHandle, 00660 OTF2_SystemTreeNodeRef systemTreeNode, 00661 OTF2_StringRef name, 00662 OTF2_StringRef value ); 00663 00664 00680 OTF2_ErrorCode 00681 OTF2_GlobalDefWriter_WriteSystemTreeNodeDomain( OTF2_GlobalDefWriter* writerHandle, 00682 OTF2_SystemTreeNodeRef systemTreeNode, 00683 OTF2_SystemTreeDomain systemTreeDomain ); 00684 00685 00702 OTF2_ErrorCode 00703 OTF2_GlobalDefWriter_WriteLocationGroupProperty( OTF2_GlobalDefWriter* writerHandle, 00704 OTF2_LocationGroupRef locationGroup, 00705 OTF2_StringRef name, 00706 OTF2_StringRef value ); 00707 00708 00725 OTF2_ErrorCode 00726 OTF2_GlobalDefWriter_WriteLocationProperty( OTF2_GlobalDefWriter* writerHandle, 00727 OTF2_LocationRef location, 00728 OTF2_StringRef name, 00729 OTF2_StringRef value ); 00730 00731 00749 OTF2_ErrorCode 00750 OTF2_GlobalDefWriter_WriteCartDimension( OTF2_GlobalDefWriter* writerHandle, 00751 OTF2_CartDimensionRef self, 00752 OTF2_StringRef name, 00753 uint32_t size, 00754 OTF2_CartPeriodicity cartPeriodicity ); 00755 00756 00780 OTF2_ErrorCode 00781 OTF2_GlobalDefWriter_WriteCartTopology( OTF2_GlobalDefWriter* writerHandle, 00782 OTF2_CartTopologyRef self, 00783 OTF2_StringRef name, 00784 OTF2_CommRef communicator, 00785 uint8_t numberOfDimensions, 00786 const OTF2_CartDimensionRef* cartDimensions ); 00787 00788 00808 OTF2_ErrorCode 00809 OTF2_GlobalDefWriter_WriteCartCoordinate( OTF2_GlobalDefWriter* writerHandle, 00810 OTF2_CartTopologyRef cartTopology, 00811 uint32_t rank, 00812 uint8_t numberOfDimensions, 00813 const uint32_t* coordinates ); 00814 00815 00837 OTF2_ErrorCode 00838 OTF2_GlobalDefWriter_WriteSourceCodeLocation( OTF2_GlobalDefWriter* writerHandle, 00839 OTF2_SourceCodeLocationRef self, 00840 OTF2_StringRef file, 00841 uint32_t lineNumber ); 00842 00843 00862 OTF2_ErrorCode 00863 OTF2_GlobalDefWriter_WriteCallingContext( OTF2_GlobalDefWriter* writerHandle, 00864 OTF2_CallingContextRef self, 00865 uint64_t ip, 00866 OTF2_RegionRef region, 00867 uint32_t offsetLineNumber, 00868 OTF2_CallingContextRef parent ); 00869 00870 00888 OTF2_ErrorCode 00889 OTF2_GlobalDefWriter_WriteInterruptGenerator( OTF2_GlobalDefWriter* writerHandle, 00890 OTF2_InterruptGeneratorRef self, 00891 OTF2_StringRef name, 00892 OTF2_StringRef unit, 00893 uint64_t period ); 00894 00895 00896 #ifdef __cplusplus 00897 } 00898 #endif /* __cplusplus */ 00899 00900 00901 #endif /* !OTF2_GLOBAL_DEF_WRITER_H */