1.4 (revision 3771)
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_Definitions.h>
00058 
00059 
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif /* __cplusplus */
00063 
00064 
00069 typedef struct OTF2_GlobalDefWriter_struct OTF2_GlobalDefWriter;
00070 
00071 
00080 OTF2_ErrorCode
00081 OTF2_GlobalDefWriter_GetNumberOfDefinitions( OTF2_GlobalDefWriter* writerHandle,
00082                                              uint64_t*             numberOfDefinitions );
00083 
00084 
00093 OTF2_ErrorCode
00094 OTF2_GlobalDefWriter_GetNumberOfLocations( OTF2_GlobalDefWriter* writerHandle,
00095                                            uint64_t*             numberOfLocations );
00096 
00097 
00116 OTF2_ErrorCode
00117 OTF2_GlobalDefWriter_WriteClockProperties( OTF2_GlobalDefWriter* writerHandle,
00118                                            uint64_t              timerResolution,
00119                                            uint64_t              globalOffset,
00120                                            uint64_t              traceLength );
00121 
00122 
00135 OTF2_ErrorCode
00136 OTF2_GlobalDefWriter_WriteString( OTF2_GlobalDefWriter* writerHandle,
00137                                   OTF2_StringRef        self,
00138                                   const char*           string );
00139 
00140 
00158 OTF2_ErrorCode
00159 OTF2_GlobalDefWriter_WriteAttribute( OTF2_GlobalDefWriter* writerHandle,
00160                                      OTF2_AttributeRef     self,
00161                                      OTF2_StringRef        name,
00162                                      OTF2_StringRef        description,
00163                                      OTF2_Type             type );
00164 
00165 
00186 OTF2_ErrorCode
00187 OTF2_GlobalDefWriter_WriteSystemTreeNode( OTF2_GlobalDefWriter*  writerHandle,
00188                                           OTF2_SystemTreeNodeRef self,
00189                                           OTF2_StringRef         name,
00190                                           OTF2_StringRef         className,
00191                                           OTF2_SystemTreeNodeRef parent );
00192 
00193 
00211 OTF2_ErrorCode
00212 OTF2_GlobalDefWriter_WriteLocationGroup( OTF2_GlobalDefWriter*  writerHandle,
00213                                          OTF2_LocationGroupRef  self,
00214                                          OTF2_StringRef         name,
00215                                          OTF2_LocationGroupType locationGroupType,
00216                                          OTF2_SystemTreeNodeRef systemTreeParent );
00217 
00218 
00237 OTF2_ErrorCode
00238 OTF2_GlobalDefWriter_WriteLocation( OTF2_GlobalDefWriter* writerHandle,
00239                                     OTF2_LocationRef      self,
00240                                     OTF2_StringRef        name,
00241                                     OTF2_LocationType     locationType,
00242                                     uint64_t              numberOfEvents,
00243                                     OTF2_LocationGroupRef locationGroup );
00244 
00245 
00273 OTF2_ErrorCode
00274 OTF2_GlobalDefWriter_WriteRegion( OTF2_GlobalDefWriter* writerHandle,
00275                                   OTF2_RegionRef        self,
00276                                   OTF2_StringRef        name,
00277                                   OTF2_StringRef        canonicalName,
00278                                   OTF2_StringRef        description,
00279                                   OTF2_RegionRole       regionRole,
00280                                   OTF2_Paradigm         paradigm,
00281                                   OTF2_RegionFlag       regionFlags,
00282                                   OTF2_StringRef        sourceFile,
00283                                   uint32_t              beginLineNumber,
00284                                   uint32_t              endLineNumber );
00285 
00286 
00306 OTF2_ErrorCode
00307 OTF2_GlobalDefWriter_WriteCallsite( OTF2_GlobalDefWriter* writerHandle,
00308                                     OTF2_CallsiteRef      self,
00309                                     OTF2_StringRef        sourceFile,
00310                                     uint32_t              lineNumber,
00311                                     OTF2_RegionRef        enteredRegion,
00312                                     OTF2_RegionRef        leftRegion );
00313 
00314 
00330 OTF2_ErrorCode
00331 OTF2_GlobalDefWriter_WriteCallpath( OTF2_GlobalDefWriter* writerHandle,
00332                                     OTF2_CallpathRef      self,
00333                                     OTF2_CallpathRef      parent,
00334                                     OTF2_RegionRef        region );
00335 
00336 
00357 OTF2_ErrorCode
00358 OTF2_GlobalDefWriter_WriteGroup( OTF2_GlobalDefWriter* writerHandle,
00359                                  OTF2_GroupRef         self,
00360                                  OTF2_StringRef        name,
00361                                  OTF2_GroupType        groupType,
00362                                  OTF2_Paradigm         paradigm,
00363                                  OTF2_GroupFlag        groupFlags,
00364                                  uint32_t              numberOfMembers,
00365                                  const uint64_t*       members );
00366 
00367 
00410 OTF2_ErrorCode
00411 OTF2_GlobalDefWriter_WriteMetricMember( OTF2_GlobalDefWriter* writerHandle,
00412                                         OTF2_MetricMemberRef  self,
00413                                         OTF2_StringRef        name,
00414                                         OTF2_StringRef        description,
00415                                         OTF2_MetricType       metricType,
00416                                         OTF2_MetricMode       metricMode,
00417                                         OTF2_Type             valueType,
00418                                         OTF2_MetricBase       metricBase,
00419                                         int64_t               exponent,
00420                                         OTF2_StringRef        unit );
00421 
00422 
00444 OTF2_ErrorCode
00445 OTF2_GlobalDefWriter_WriteMetricClass( OTF2_GlobalDefWriter*       writerHandle,
00446                                        OTF2_MetricRef              self,
00447                                        uint8_t                     numberOfMetrics,
00448                                        const OTF2_MetricMemberRef* metricMembers,
00449                                        OTF2_MetricOccurrence       metricOccurrence,
00450                                        OTF2_RecorderKind           recorderKind );
00451 
00452 
00477 OTF2_ErrorCode
00478 OTF2_GlobalDefWriter_WriteMetricInstance( OTF2_GlobalDefWriter* writerHandle,
00479                                           OTF2_MetricRef        self,
00480                                           OTF2_MetricRef        metricClass,
00481                                           OTF2_LocationRef      recorder,
00482                                           OTF2_MetricScope      metricScope,
00483                                           uint64_t              scope );
00484 
00485 
00507 OTF2_ErrorCode
00508 OTF2_GlobalDefWriter_WriteComm( OTF2_GlobalDefWriter* writerHandle,
00509                                 OTF2_CommRef          self,
00510                                 OTF2_StringRef        name,
00511                                 OTF2_GroupRef         group,
00512                                 OTF2_CommRef          parent );
00513 
00514 
00531 OTF2_ErrorCode
00532 OTF2_GlobalDefWriter_WriteParameter( OTF2_GlobalDefWriter* writerHandle,
00533                                      OTF2_ParameterRef     self,
00534                                      OTF2_StringRef        name,
00535                                      OTF2_ParameterType    parameterType );
00536 
00537 
00554 OTF2_ErrorCode
00555 OTF2_GlobalDefWriter_WriteRmaWin( OTF2_GlobalDefWriter* writerHandle,
00556                                   OTF2_RmaWinRef        self,
00557                                   OTF2_StringRef        name,
00558                                   OTF2_CommRef          comm );
00559 
00560 
00576 OTF2_ErrorCode
00577 OTF2_GlobalDefWriter_WriteMetricClassRecorder( OTF2_GlobalDefWriter* writerHandle,
00578                                                OTF2_MetricRef        metricClass,
00579                                                OTF2_LocationRef      recorder );
00580 
00581 
00599 OTF2_ErrorCode
00600 OTF2_GlobalDefWriter_WriteSystemTreeNodeProperty( OTF2_GlobalDefWriter*  writerHandle,
00601                                                   OTF2_SystemTreeNodeRef systemTreeNode,
00602                                                   OTF2_StringRef         name,
00603                                                   OTF2_StringRef         value );
00604 
00605 
00621 OTF2_ErrorCode
00622 OTF2_GlobalDefWriter_WriteSystemTreeNodeDomain( OTF2_GlobalDefWriter*  writerHandle,
00623                                                 OTF2_SystemTreeNodeRef systemTreeNode,
00624                                                 OTF2_SystemTreeDomain  systemTreeDomain );
00625 
00626 
00643 OTF2_ErrorCode
00644 OTF2_GlobalDefWriter_WriteLocationGroupProperty( OTF2_GlobalDefWriter* writerHandle,
00645                                                  OTF2_LocationGroupRef locationGroup,
00646                                                  OTF2_StringRef        name,
00647                                                  OTF2_StringRef        value );
00648 
00649 
00665 OTF2_ErrorCode
00666 OTF2_GlobalDefWriter_WriteLocationProperty( OTF2_GlobalDefWriter* writerHandle,
00667                                             OTF2_LocationRef      location,
00668                                             OTF2_StringRef        name,
00669                                             OTF2_StringRef        value );
00670 
00671 
00689 OTF2_ErrorCode
00690 OTF2_GlobalDefWriter_WriteCartDimension( OTF2_GlobalDefWriter* writerHandle,
00691                                          OTF2_CartDimensionRef self,
00692                                          OTF2_StringRef        name,
00693                                          uint32_t              size,
00694                                          OTF2_CartPeriodicity  cartPeriodicity );
00695 
00696 
00720 OTF2_ErrorCode
00721 OTF2_GlobalDefWriter_WriteCartTopology( OTF2_GlobalDefWriter*        writerHandle,
00722                                         OTF2_CartTopologyRef         self,
00723                                         OTF2_StringRef               name,
00724                                         OTF2_CommRef                 communicator,
00725                                         uint8_t                      numberOfDimensions,
00726                                         const OTF2_CartDimensionRef* cartDimensions );
00727 
00728 
00748 OTF2_ErrorCode
00749 OTF2_GlobalDefWriter_WriteCartCoordinate( OTF2_GlobalDefWriter* writerHandle,
00750                                           OTF2_CartTopologyRef  cartTopology,
00751                                           uint32_t              rank,
00752                                           uint8_t               numberOfDimensions,
00753                                           const uint32_t*       coordinates );
00754 
00755 
00756 #ifdef __cplusplus
00757 }
00758 #endif /* __cplusplus */
00759 
00760 
00761 #endif /* !OTF2_GLOBAL_DEF_WRITER_H */