summaryrefslogtreecommitdiff
path: root/covoar/GcovFunctionData.h
diff options
context:
space:
mode:
Diffstat (limited to 'covoar/GcovFunctionData.h')
-rw-r--r--covoar/GcovFunctionData.h274
1 files changed, 0 insertions, 274 deletions
diff --git a/covoar/GcovFunctionData.h b/covoar/GcovFunctionData.h
deleted file mode 100644
index 1bc1be9..0000000
--- a/covoar/GcovFunctionData.h
+++ /dev/null
@@ -1,274 +0,0 @@
-/*! @file GcovFunctionData.h
- * @brief GcovFunctionData Specification
- *
- * This file contains the specification of the GcovGcnoWriter class.
- */
-
-#ifndef __GCOV_FUNCTION_DATA_H__
-#define __GCOV_FUNCTION_DATA_H__
-
-#include <stdint.h>
-#include <list>
-#include "CoverageMapBase.h"
-#include "DesiredSymbols.h"
-
-namespace Gcov {
-
-#define FUNCTION_NAME_LENGTH 64
-#define FILE_NAME_LENGTH 256
-
-#define ON_TREE_ARC_FLAG 0x1
-#define FAKE_ARC_FLAG 0x2
-#define FALLTHROUGH_ARC_FLAG 0x4
-
-struct gcov_arc_info
-{
- uint32_t sourceBlock;
- uint32_t destinationBlock;
- uint32_t flags;
- uint64_t counter;
-};
-
-struct gcov_block_info
-{
- uint32_t id;
- uint32_t flags;
- uint32_t numberOfLines;
- uint64_t counter;
- char sourceFileName[FILE_NAME_LENGTH];
- std::list<uint32_t> lines;
-};
-
-typedef std::list<gcov_arc_info> arcs_t;
-typedef std::list<gcov_arc_info>::iterator arcs_iterator_t;
-typedef std::list<gcov_block_info> blocks_t;
-typedef std::list<gcov_block_info>::iterator blocks_iterator_t;
-
- /*! @class GcovFunctionData
- *
- * This is the specification of the GcovFunctionData class.
- */
- class GcovFunctionData {
-
- public:
-
- /*!
- * This method constructs a GcovFunctionData instance.
- */
- GcovFunctionData();
-
- /*!
- * This method destructs a GcovFunctionData instance.
- */
- virtual ~GcovFunctionData();
-
- /*!
- * This method stores checksum related to function
- *
- * @param[in] chk stores the checksum value
- */
- void setChecksum(
- const uint32_t chk
- );
-
- /*!
- * This method stores id of function
- *
- * @param[in] idNumber stores the id value
- */
- void setId(
- const uint32_t idNumber
- );
-
- /*!
- * This method stores checksum related to function
- *
- * @param[in] lineNo passes number of the line begining the function
- */
- void setFirstLineNumber(
- const uint32_t lineNo
- );
-
- /*!
- * This method stores name of the function and ties it to its
- * unified coverage map.
- *
- * @param[in] functionName passes name of the the function
- *
- * @return Returns TRUE if the method succeeded and FALSE if it failed.
- */
- bool setFunctionName(
- const char* fcnName
- );
-
- /*!
- * This method stores name of the source file where function is located
- *
- * @param[in] fileName passes name of the the file
- *
- * @return Returns TRUE if the method succeeded and FALSE if it failed.
- */
- bool setFileName(
- const char* fileName
- );
-
- /*!
- * This method stores name of the source file where block is located
- *
- * @param[in] block identifies block
- * @param[in] fileName passes name of the the file
- *
- * @return Returns TRUE if the method succeeded and FALSE if it failed.
- */
- void setBlockFileName(
- const blocks_iterator_t block,
- const char* fileName
- );
-
- /*!
- * This method returns arcs list
- */
- arcs_t getArcs() const;
-
- /*!
- * This method returns blocks list
- */
- blocks_t getBlocks() const;
-
- /*!
- * This method returns checksum
- */
- uint32_t getChecksum() const;
-
- /*!
- * This method returns id
- */
- uint32_t getId() const;
-
- /*!
- * This method returns counters
- *
- * @param[out] counterValues array of counter values
- * @param[out] countersFound used to return counters number
- * @param[out] countersSum used to return sum counters values
- * @param[out] countersMax used to return max counter value
- */
- void getCounters( uint64_t* counterValues, uint32_t &countersFound, uint64_t &countersSum, uint64_t &countersMax );
-
- /*!
- * This method adds new arc to arc list
- *
- * @param[in] source passes source block number
- * @param[in] destination passes destination block number
- */
- void addArc(
- uint32_t source,
- uint32_t destination,
- uint32_t flags
- );
-
- /*!
- * This method adds new arc to arc list
- *
- * @param[in] block identifies block
- * @param[in] line passes the line number
- */
- void addBlockLine(
- const blocks_iterator_t block,
- const uint32_t line
- );
-
- /*!
- * This method finds block by its ID
- *
- * @param[in] id passes block id number
- *
- * @return Returns iterator to a matching block or NULL for error.
- */
- blocks_iterator_t findBlockById(
- const uint32_t id
- );
-
- /*!
- * This method adds new block to block list
- *
- * @param[in] id passes block id number
- * @param[in] flags passes per block flags
- * @param[in] sourceFileName passes containing file name
- */
- void addBlock(
- const uint32_t id,
- const uint32_t flags,
- const char * sourceFileName
- );
-
- /*!
- * This method prints info about function
- */
- void printFunctionInfo( FILE * textFile, uint32_t function_number );
-
- /*!
- * This method prints info about coverage of this function
- */
- void printCoverageInfo( FILE * textFile, uint32_t function_number );
-
- /*!
- * This method prints info about chosen arc in arcs list
- *
- * @param[in] textFile specifies output file
- * @param[in] arc passes iterator identifying arc
- */
- void printArcInfo(
- FILE * textFile,
- arcs_iterator_t arc
- );
-
- /*!
- * This method prints info about chosen block in blocks list
- *
- * @param[in] block passes iterator identifying block
- */
- void printBlockInfo(
- FILE * textFile,
- blocks_iterator_t block
- );
-
- /*!
- * This method calculates values of arc counters
- */
- bool processFunctionCounters( void );
-
- private:
-
- uint32_t id;
- uint32_t checksum;
- uint32_t firstLineNumber;
- uint32_t numberOfBlocks;
- uint32_t numberOfArcs;
- arcs_t arcs;
- blocks_t blocks;
- char functionName[FUNCTION_NAME_LENGTH];
- char sourceFileName[FILE_NAME_LENGTH];
-
- /*!
- * This member contains the unified or merged coverage map
- * and symbol info for the symbol.
- */
- Coverage::CoverageMapBase* coverageMap;
- Coverage::SymbolInformation* symbolInfo;
-
- /*!
- * This method creates list of taken/not taken values
- * for branches
- *
- * @param[in] taken used to return taken counts list
- * @param[in] notTaken used to return not taken counts list
- */
- bool processBranches(
- std::list<uint64_t> * taken ,
- std::list<uint64_t> * notTaken
- );
- };
-
-}
-#endif