43 #ifndef STATUSATTRIB_HH_ 44 #define STATUSATTRIB_HH_ 48 #include "../Core/OpenVolumeMeshProperty.hh" 49 #include "../Core/OpenVolumeMeshHandle.hh" 50 #include "OpenVolumeMeshStatus.hh" 51 #include "../Core/PropertyDefines.hh" 52 #include "OpenVolumeMesh/Config/Export.hh" 81 return he_status_[_h];
85 return he_status_[_h];
97 return hf_status_[_h];
101 return hf_status_[_h];
105 return c_status_[_h];
109 return c_status_[_h];
122 typedef VertexPropertyT<OpenVolumeMeshStatus>::const_iterator const_vstatus_iterator;
123 typedef VertexPropertyT<OpenVolumeMeshStatus>::iterator vstatus_iterator;
124 typedef EdgePropertyT<OpenVolumeMeshStatus>::const_iterator const_estatus_iterator;
125 typedef EdgePropertyT<OpenVolumeMeshStatus>::iterator estatus_iterator;
126 typedef HalfEdgePropertyT<OpenVolumeMeshStatus>::const_iterator const_hestatus_iterator;
127 typedef HalfEdgePropertyT<OpenVolumeMeshStatus>::iterator hestatus_iterator;
128 typedef FacePropertyT<OpenVolumeMeshStatus>::const_iterator const_fstatus_iterator;
129 typedef FacePropertyT<OpenVolumeMeshStatus>::iterator fstatus_iterator;
130 typedef HalfFacePropertyT<OpenVolumeMeshStatus>::const_iterator const_hfstatus_iterator;
131 typedef HalfFacePropertyT<OpenVolumeMeshStatus>::iterator hfstatus_iterator;
132 typedef CellPropertyT<OpenVolumeMeshStatus>::const_iterator const_cstatus_iterator;
133 typedef CellPropertyT<OpenVolumeMeshStatus>::iterator cstatus_iterator;
136 VertexPropertyT<OpenVolumeMeshStatus>::const_iterator vstatus_begin()
const {
137 return v_status_.begin();
139 VertexPropertyT<OpenVolumeMeshStatus>::iterator vstatus_begin() {
140 return v_status_.begin();
142 VertexPropertyT<OpenVolumeMeshStatus>::const_iterator vstatus_end()
const {
143 return v_status_.end();
145 VertexPropertyT<OpenVolumeMeshStatus>::iterator vstatus_end() {
146 return v_status_.end();
149 EdgePropertyT<OpenVolumeMeshStatus>::const_iterator estatus_begin()
const {
150 return e_status_.begin();
152 EdgePropertyT<OpenVolumeMeshStatus>::iterator estatus_begin() {
153 return e_status_.begin();
155 EdgePropertyT<OpenVolumeMeshStatus>::const_iterator estatus_end()
const {
156 return e_status_.end();
158 EdgePropertyT<OpenVolumeMeshStatus>::iterator estatus_end() {
159 return e_status_.end();
162 HalfEdgePropertyT<OpenVolumeMeshStatus>::const_iterator hestatus_begin()
const {
163 return he_status_.begin();
165 HalfEdgePropertyT<OpenVolumeMeshStatus>::iterator hestatus_begin() {
166 return he_status_.begin();
168 HalfEdgePropertyT<OpenVolumeMeshStatus>::const_iterator hestatus_end()
const {
169 return he_status_.end();
171 HalfEdgePropertyT<OpenVolumeMeshStatus>::iterator hestatus_end() {
172 return he_status_.end();
175 FacePropertyT<OpenVolumeMeshStatus>::const_iterator fstatus_begin()
const {
176 return f_status_.begin();
178 FacePropertyT<OpenVolumeMeshStatus>::iterator fstatus_begin() {
179 return f_status_.begin();
181 FacePropertyT<OpenVolumeMeshStatus>::const_iterator fstatus_end()
const {
182 return f_status_.end();
184 FacePropertyT<OpenVolumeMeshStatus>::iterator fstatus_end() {
185 return f_status_.end();
188 HalfFacePropertyT<OpenVolumeMeshStatus>::const_iterator hfstatus_begin()
const {
189 return hf_status_.begin();
191 HalfFacePropertyT<OpenVolumeMeshStatus>::iterator hfstatus_begin() {
192 return hf_status_.begin();
194 HalfFacePropertyT<OpenVolumeMeshStatus>::const_iterator hfstatus_end()
const {
195 return hf_status_.end();
197 HalfFacePropertyT<OpenVolumeMeshStatus>::iterator hfstatus_end() {
198 return hf_status_.end();
201 CellPropertyT<OpenVolumeMeshStatus>::const_iterator cstatus_begin()
const {
202 return c_status_.begin();
204 CellPropertyT<OpenVolumeMeshStatus>::iterator cstatus_begin() {
205 return c_status_.begin();
207 CellPropertyT<OpenVolumeMeshStatus>::const_iterator cstatus_end()
const {
208 return c_status_.end();
210 CellPropertyT<OpenVolumeMeshStatus>::iterator cstatus_end() {
211 return c_status_.end();
230 void garbage_collection(
bool _preserveManifoldness =
false);
256 template<
typename std_API_Container_VHandlePointer,
257 typename std_API_Container_HHandlePointer,
258 typename std_API_Container_HFHandlePointer,
259 typename std_API_Container_CHandlePointer>
260 void garbage_collection(
261 std_API_Container_VHandlePointer& vh_to_update,
262 std_API_Container_HHandlePointer& hh_to_update,
263 std_API_Container_HFHandlePointer& hfh_to_update,
264 std_API_Container_CHandlePointer& ch_to_update,
265 bool _preserveManifoldness =
false);
269 void mark_higher_dim_entities();
284 #if defined(INCLUDE_TEMPLATES) && !defined(STATUSATTRIBT_CC) 285 #include "StatusAttribT_impl.hh" Stores statuses like selected, tagged, deleted, hidden.