LCOV - code coverage report
Current view: top level - geom/cgm - TDCAGE.hpp (source / functions) Hit Total Coverage
Test: coverage_sk.info Lines: 11 11 100.0 %
Date: 2020-06-30 00:58:45 Functions: 6 6 100.0 %
Branches: 5 10 50.0 %

           Branch data     Line data    Source code
       1                 :            : //- Class:          TDCAGE
       2                 :            : //- Descpription:   Stores data used in the CAGenesisEntity attribute
       3                 :            : //- Owner:          Tim Tautges
       4                 :            : //- Checked by:
       5                 :            : //- Version: 
       6                 :            : 
       7                 :            : #ifndef TDCAGE_HPP
       8                 :            : #define TDCAGE_HPP
       9                 :            : 
      10                 :            : #include "ToolData.hpp"
      11                 :            : #include "MemoryManager.hpp"
      12                 :            : #include "DLIList.hpp"
      13                 :            : #include "CGMGeomConfigure.h"
      14                 :            : 
      15                 :            : class RefGroup;
      16                 :            : class RefEntity;
      17                 :            : 
      18                 :            : class CUBIT_GEOM_EXPORT TDCAGE : public ToolData 
      19                 :            : {
      20                 :            : private:
      21                 :            : 
      22                 :            :   static MemoryManager memoryManager;
      23                 :            :   //- memory management object
      24                 :            : 
      25                 :            :   int uniqueId;
      26                 :            : 
      27                 :            :   DLIList<RefGroup *> groupList;
      28                 :            :     //- keeps group pointers for group/sequence # pairs
      29                 :            : 
      30                 :            :   DLIList<int> sequenceList;
      31                 :            :     //- keeps sequence #'s for group/sequence # pairs
      32                 :            : 
      33                 :            : public:
      34                 :            : 
      35                 :            :   TDCAGE(int unique_id);
      36                 :            : 
      37                 :            :   ~TDCAGE();
      38                 :            : 
      39                 :            :   static int is_cage(const ToolData* td);
      40                 :            :   
      41                 :         22 :   int unique_id() {return uniqueId;}
      42                 :            :   void unique_id(int id) {uniqueId = id;}
      43                 :            :     //- get/set unique id
      44                 :            : 
      45                 :        132 :   SetDynamicMemoryAllocation(memoryManager)
      46                 :            : //- class specific new and delete operators
      47                 :            :     
      48                 :            :   static void set_memory_allocation_increment( int increment = 0 )
      49                 :            :   {memoryManager.set_memory_allocation_increment(increment);}
      50                 :            :   //- set block memory size increment
      51                 :            : 
      52                 :            :   static void destroy_memory()
      53                 :            :   {memoryManager.destroy_memory();}
      54                 :            :   //- destroy all memory allocated to this object
      55                 :            : 
      56                 :            :   static int group_sequence_number(RefGroup *group, const RefEntity *entity);
      57                 :            :     //- return the sequence number of the given entity in the given group
      58                 :            : 
      59                 :            :   int td_sequence_number(const RefGroup *group);
      60                 :            :     //- given a group, return the sequence number paired with that group
      61                 :            : 
      62                 :            :   void insert_group(RefGroup *group, const int seq_num);
      63                 :            :     //- add the group/sequence number pair to the lists
      64                 :            : 
      65                 :            :   static void insert_entity(RefEntity *entity, const int seq_num,
      66                 :            :                             RefGroup *into_group);
      67                 :            :     //- insert the entity into the group following the sequence number
      68                 :            :     //- given
      69                 :            : 
      70                 :            :   void initialize_group_sequence_list(RefEntity *entity);
      71                 :            :     //- get the groups owning entity and build the sequence lists
      72                 :            : };
      73                 :            : 
      74 [ +  - ][ +  - ]:         88 : inline TDCAGE::TDCAGE(int unique_id) : ToolData()
      75                 :            : {
      76                 :         44 :   uniqueId = unique_id;
      77                 :         44 : }
      78                 :            : 
      79 [ +  - ][ +  - ]:         66 : inline TDCAGE::~TDCAGE()
      80                 :            : {
      81                 :            :   //- empty
      82         [ -  + ]:         44 : }
      83                 :            : 
      84                 :         11 : inline void TDCAGE::insert_group(RefGroup *group, const int seq_num) 
      85                 :            : {
      86                 :         11 :   groupList.append(group);
      87                 :         11 :   sequenceList.append(seq_num);
      88                 :         11 : }
      89                 :            : 
      90                 :            : #endif // TD_CAGE_HPP
      91                 :            :     

Generated by: LCOV version 1.11