LCOV - code coverage report
Current view: top level - util/cgm - MemoryBlock.hpp (source / functions) Hit Total Coverage
Test: coverage_sk.info Lines: 0 11 0.0 %
Date: 2020-06-30 00:58:45 Functions: 0 5 0.0 %
Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : //-       Class: MemoryBlock
       2                 :            : //-       Owner: Jim Hipp
       3                 :            : //- Description: MemoryBlock provides stack storage for block or "Chunk"
       4                 :            : //-              memory allocated with overloaded 'new' operators in classes
       5                 :            : //-              utilizing a MemoryManager object.
       6                 :            : //- Checked By: 
       7                 :            : //-    Version:
       8                 :            : 
       9                 :            : #ifndef MEMORY_BLOCK_HPP
      10                 :            : #define MEMORY_BLOCK_HPP
      11                 :            : 
      12                 :            : #include <cstdlib>
      13                 :            : #include "CGMUtilConfigure.h"
      14                 :            : 
      15                 :            : class CUBIT_UTIL_EXPORT MemoryBlock
      16                 :            : {
      17                 :            :   private:
      18                 :            : 
      19                 :            :     char*        block;
      20                 :            :     int          size;
      21                 :            :     MemoryBlock* next;
      22                 :            :     //- block is the pointer to the beginning of the memory block of objects
      23                 :            :     //- of type char, size is the size of the memory block, and next is a
      24                 :            :     //- pointer to the next MemoryBlock object.
      25                 :            : 
      26                 :            :   public:
      27                 :            : 
      28                 :          0 :     MemoryBlock (MemoryBlock* Head, char* Block, int Size)
      29                 :          0 :     : block(Block), size(Size), next(Head) {}
      30                 :            :     //- Constructor: performs initialization assignment
      31                 :            : 
      32                 :            :    ~MemoryBlock();
      33                 :            :     //- Destructor: performs recursive delete of MemoryBlock stack
      34                 :            : 
      35                 :            :     int get_memory_allocation();
      36                 :            :     //- returns total amount of allocated memory (bytes)
      37                 :            : 
      38                 :            :     MemoryBlock* next_block() const;
      39                 :            :     void         next_block(MemoryBlock* next_block);
      40                 :            :     //- retreive / set next pointer
      41                 :            : 
      42                 :            :     int block_size() const;
      43                 :            :     //- get block_size
      44                 :            : 
      45                 :            :     char* get_block() const;
      46                 :            :     //- get block
      47                 :            : };
      48                 :            : 
      49                 :          0 : inline MemoryBlock* MemoryBlock::next_block() const
      50                 :            : {
      51                 :          0 :   return next;
      52                 :            : }
      53                 :            : 
      54                 :          0 : inline void         MemoryBlock::next_block(MemoryBlock* nxt_blck)
      55                 :            : {
      56                 :          0 :   next = nxt_blck;
      57                 :          0 : }
      58                 :            : 
      59                 :          0 : inline int          MemoryBlock::block_size() const
      60                 :            : {
      61                 :          0 :   return size;
      62                 :            : }
      63                 :            : 
      64                 :          0 : inline char*        MemoryBlock::get_block() const
      65                 :            : {
      66                 :          0 :   return block;
      67                 :            : }
      68                 :            : 
      69                 :            : #endif // MEMORY_BLOCK_HPP
      70                 :            : 

Generated by: LCOV version 1.11