Pointwise Plugin SDK
CaeUnsBlock.h
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * CaeUnsBlock class
4  *
5  * (C) 2021 Cadence Design Systems, Inc. All rights reserved worldwide.
6  *
7  ***************************************************************************/
8 
9 #if !defined(PWGM_HIDE_UNSTRUCTURED_API)
10 
11 #ifndef _CAEUNSBLOCK_H_
12 #define _CAEUNSBLOCK_H_
13 
14 
15 #include "apiGridModel.h"
16 #include "apiPWP.h"
17 #include "CaeGridModel.h"
18 #include "CaeUnsElementGroup.h"
19 #include "CaeUnsGridModel.h"
20 
21 
68 class CaeUnsBlock : public CaeBlock, public CaeUnsElementGroup {
69 public:
70 
72 
78  }
79 
81 
85  CaeUnsBlock(PWGM_HBLOCK block) : CaeBlock(block) {
86  }
87 
89 
93  CaeUnsBlock(const CaeUnsBlock &src) : CaeBlock(src) {
94  }
95 
97 
101  CaeUnsBlock(const CaeBlock &src) : CaeBlock(src) {
102  }
103 
105 
112  CaeBlock(model, ndx) {
113  }
114 
116  virtual ~CaeUnsBlock() {
117  }
118 
122  }
123 
124 protected:
125 
128  virtual PWP_UINT32 elementCountImpl(PWGM_ELEMCOUNTS *pDetails = 0) const {
129  return PwBlkElementCount(block_, pDetails);
130  }
131 
132  virtual PWGM_HELEMENT enumElementsImpl(PWP_UINT32 ndx) const {
133  return PwBlkEnumElements(block_, ndx);
134  }
137 };
138 
139 #endif // _CAEUNSBLOCK_H_
140 
141 #endif // PWGM_HIDE_UNSTRUCTURED_API
CaeGridModel.h
PWGM_HELEMENT
Grid element handle declaration.
Definition: apiGridModel.h:427
CaeUnsBlock
The unstructured block class.
Definition: CaeUnsBlock.h:68
CaeUnsBlock::CaeUnsBlock
CaeUnsBlock(PWGM_HBLOCK block)
Block handle constructor.
Definition: CaeUnsBlock.h:85
CaeUnsBlock::CaeUnsBlock
CaeUnsBlock(const CaeUnsGridModel &model, PWP_UINT32 ndx=0)
Model and block index constructor.
Definition: CaeUnsBlock.h:111
CaeUnsBlock::model
CaeUnsGridModel model() const
Gets the unstructured grid model of which this block is a member.
Definition: CaeUnsBlock.h:120
PWP_UINT32
unsigned int PWP_UINT32
32-bit unsigned integer
Definition: apiPWP.h:210
CaeUnsElementGroup.h
CaeUnsGridModel
The unstructured grid model class.
Definition: CaeUnsGridModel.h:176
PwBlkEnumElements
PWGM_HELEMENT PwBlkEnumElements(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block elements.
Definition: apiGridModel.cxx:317
CaeBlock::block_
PWGM_HBLOCK block_
The bound PWGM_HBLOCK.
Definition: CaeGridModel.h:415
apiGridModel.h
Pointwise Grid Model API Specification (PWGM-API)
PwBlkElementCount
PWP_UINT32 PwBlkElementCount(PWGM_HBLOCK block, PWGM_ELEMCOUNTS *pCounts)
Get the number of block elements.
Definition: apiGridModel.cxx:309
CaeUnsBlock::CaeUnsBlock
CaeUnsBlock(const CaeBlock &src)
CaeBlock constructor.
Definition: CaeUnsBlock.h:101
CaeUnsElementGroup
The unstructured element group class.
Definition: CaeUnsElementGroup.h:44
CaeUnsBlock::CaeUnsBlock
CaeUnsBlock(const CaeUnsBlock &src)
Copy constructor.
Definition: CaeUnsBlock.h:93
CaeUnsBlock::CaeUnsBlock
CaeUnsBlock()
Default constructor.
Definition: CaeUnsBlock.h:77
PWGM_HBLOCK_MODEL
#define PWGM_HBLOCK_MODEL(h)
gets the element's parent PWGM_HGRIDMODEL handle
Definition: apiGridModel.h:368
CaeUnsBlock::~CaeUnsBlock
virtual ~CaeUnsBlock()
Destructor.
Definition: CaeUnsBlock.h:116
CaeUnsElementGroup::enumElementsImpl
virtual PWGM_HELEMENT enumElementsImpl(PWP_UINT32 ndx) const =0
Get an element in the group.
PWGM_HBLOCK
An opaque handle to a grid block element.
Definition: apiGridModel.h:345
PWGM_ELEMCOUNTS
Element count information.
Definition: apiGridModel.h:774
CaeUnsGridModel.h
apiPWP.h
Pointwise Plugin API (PWP-API)
CaeUnsElementGroup::elementCountImpl
virtual PWP_UINT32 elementCountImpl(PWGM_ELEMCOUNTS *pDetails) const =0
Get the number of elements in the group.
CaeBlock
The grid block base class.
Definition: CaeGridModel.h:174