1.5.1 (revision 4026)
otf2/OTF2_GlobalDefWriter.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) 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 */