35 #ifndef PatchDataUser_hpp 
   36 #define PatchDataUser_hpp 
   39 #include "MsqError.hpp" 
   42 #ifndef MSQ_USE_OLD_C_HEADERS 
   58   class PatchDataParameters
 
   85                         int patch_param1=0, 
int patch_param2=0);
 
  155                                 int param1=0, 
int param2=0) {
 
  204     virtual msq_std::string 
get_name() = 0;
 
  228         MSQ_SETERR(err)(
"VERTICES_ON_ELEMENT_PATCH not supported yet.",
 
  235         if (patch_param1 < 0)
 
  237           MSQ_SETERR(err)(
"ELEMENTS_ON_VERTEX_PATCH not supported yet.",
 
  297       MSQ_SETERR(err)(
"Trying to set a global patch whereas the " 
  298                   "PatchType is set to something else\n." 
  299                   "Consider using the function no_global_patch().",
 
  309 #endif //  PatchDataUser_hpp 
void set_global_patch(PatchData *pd, MsqError &err)
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. 
 
void set_patch_type(PatchData::PatchType patch_type, MsqError &err, int patch_param1=0, int patch_param2=0)
Tells the MeshSet what kind of data the patches should include. 
 
void add_culling_method(enum PatchData::culling_method cm)
Sets on the culling method passed as argument. 
 
virtual void set_patch_type(PatchData::PatchType patch_type, MsqError &err, int param1=0, int param2=0)
Sets the Patch Type. 
 
long unsigned int cullingMethodBits
type of cullings are contained in this bitset. 
 
Used to hold the error state and return it to the application. 
 
PatchDataParameters & get_all_parameters()
Returns the PatchDataParameters object. 
 
requested functionality is not (yet) implemented 
 
void remove_culling_method(enum PatchData::culling_method cm)
Sets off the culling method passed as argument. 
 
void add_culling_method(enum PatchData::culling_method cm)
Sets on a culling criterion. 
 
This should be the parent class of all algorithms retrieving information from a MeshSet object...
 
long unsigned int get_culling_method_bits()
Returns the bitset containing culling methods flags. 
 
void set_global_patch(PatchData *pd, MsqError &err)
Sets the Global Patch, so that it can be use by contiguoug PatchDataUser. 
 
void set_all_parameters(PatchDataParameters ¶ms)
 
PatchData * globalPatch
Allows storage of global patch through successive PatchDataUsers. 
 
void no_global_patch()
Sets the Global Patch pointer to NULL. 
 
PatchDataParameters(const PatchDataParameters &A)
 
PatchDataParameters mParams
Contains Patch parameters. 
 
int get_nb_layers(MsqError &err)
Returns number of layers (if relevant for partition algorythm). 
 
int get_nb_layers(MsqError &err)
Returns numbers of layers for local patch. 
 
int mParam2
For general use in conjunction with PatchType. 
 
#define MSQ_SETERR(err)
Macro to set error - use err.clear() to clear. 
 
long unsigned int get_culling_method_bits()
returns the bitset. 
 
PatchData::PatchType get_patch_type()
Returns the Patch Type. 
 
PatchType
Tells MeshSet how to retrieve the mesh entities that will be stored in PatchData. ...
 
void set_global_patch_type()
 
void no_culling_method()
No culling performed (sets off all culling criteria). 
 
void remove_culling_method(enum PatchData::culling_method cm)
Sets off a certain culling criteria. 
 
void set_element_on_vertex_patch_type(unsigned num_layers)
 
virtual msq_std::string get_name()=0
Returns the algorithm name. 
 
PatchData * get_global_patch()
Returns the Global Patch. 
 
virtual double loop_over_mesh(MeshSet &ms, MsqError &err)=0
This is the "run" function of PatchDataUser. It can do anything really. 
 
PatchData::PatchType get_patch_type()
Returns Patch Type (local around vertices, local around elements, global) 
 
void no_culling_method()
Sets off all culling methods. 
 
object is in an invalid state 
 
virtual enum AlgorithmType get_algorithm_type()=0
Return the algorithm type (to avoid RTTI use). 
 
PatchData * get_global_patch()
Returns the Global Patch. 
 
The MeshSet class stores one or more Mesquite::Mesh pointers and manages access to the mesh informati...
 
PatchData::PatchType mType
see the enum ... 
 
void no_global_patch()
Sets the Global Patch pointer to NULL.