cgma
|
00001 //- Class: CAEntityId 00002 //- Owner: Dong Zhu 00003 //- Description: Cubit attribute for entity Ids. 00004 //- Checked by: 00005 //- Version: 00006 00007 #ifndef CA_ENTITY_ID_HPP 00008 #define CA_ENTITY_ID_HPP 00009 00010 #include "CubitAttrib.hpp" 00011 #include "CubitDefines.h" 00012 #include "CADefines.hpp" 00013 00014 class RefEntity; 00015 00016 class CUBIT_GEOM_EXPORT CAEntityId : public CubitAttrib 00017 { 00018 private: 00019 00020 int entityId; 00021 //- entity id 00022 00023 int boundingUid; 00024 //- uid of bounding entity; for vertices, this entity is the 00025 //- start vertex 00026 00027 CubitSense boundingSense; 00028 //- for surfaces, the sense of the surface wrt the bounding entity 00029 00030 CubitVector *boundingXYZ; 00031 //- for single vertex curves, the xyz value of s=1/3; needed to 00032 //- determine sense for these curves 00033 00034 public: 00035 00036 virtual ~CAEntityId(); 00037 00038 CAEntityId (RefEntity*, const CubitSimpleAttrib &); 00039 //- create a CAEID from a simple attribute 00040 00041 CubitStatus actuate(); 00042 00043 CubitStatus update(); 00044 00045 CubitStatus reset() {return CUBIT_SUCCESS;}; 00046 //- don't need an active reset function since there aren't any 00047 //- lists on this CA 00048 00049 void merge_owner(CubitAttrib *deletable_attrib); 00050 00051 CubitSimpleAttrib cubit_simple_attrib(); 00052 00053 int int_attrib_type() {return CA_ENTITY_ID;} 00054 00055 int id() {return entityId;} 00056 00057 void print(); 00058 00059 }; 00060 00061 CubitAttrib* CAEntityId_creator(RefEntity* entity, const CubitSimpleAttrib &p_csa); 00062 00063 #endif 00064