SWEEP_ANNO_VERTEX_TOP
List of: Classes
Subjects: Feature Naming, SAT Save and Restore, Sweeping
Contents: Sweeping

Purpose: Defines annotation relating to the vertices at the top of a sweep.

Derivation: SWEEP_ANNO_VERTEX_TOP : SWEEP_ANNOTATION : ANNOTATION : ENTITY : ACIS_OBJECT : -

SAT Identifier: "sweep_anno_vertex_top"

Filename: swp/sweep/sg_husk/sweep/swp_anno.hxx

Description: This annotation identifies the top (ending) topology created from a profile vertex during sweeping.


Inputs:



Profile - vertex



Path - edge


Outputs:



Right_top_edge - edge



Left_top_edge - edge



Right_top_vertex - vertex



Left_top_vertex - vertex



Mid_top_vertex - vertex

References: KERN ENTITY

Data: protected ENTITY* ents[e_num_datums];

Array of entities.


protected enum;

Can have the values e_right_top_edge, e_left_top_edge, e_right_top_vertex, e_left_top_vertex, e_mid_top_vertex, and e_num_datums.


protected static annotation_descriptor descriptors[];

Array of descriptors for the sweep annotation.


protected static const int num_ents;

Number of entities in the array.


protected logical unhooked_out_is_ee[e_num_datums];

This is a logical for internal use only indicating when the unhooked output entity ents[i] is an EE_LIST. It has no meaning when the ANNOTATION members are hooked (when the ANNOTATION logical members_are_hooked is TRUE) and when ents[i] is an input to the ANNOTATION.

Constructor: public: SWEEP_ANNO_VERTEX_TOP::


SWEEP_ANNO_VERTEX_TOP (


ENTITY* path // sweep path



= NULL,


ENTITY* profile_vertex // profile vertex



= NULL,


EDGE* right_top_edge // right top edge



= NULL,


EDGE* left_top_edge // left top edge



= NULL,


VERTEX* right_top_vertex // right top vertex



= NULL,


VERTEX* left_top_vertex // left top vertex



= NULL,


VERTEX* mid_top_vertex // mid top vertex



= NULL


);


C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments. Applications should call this constructor only with the overloaded new operator, because this reserves the memory on the heap, a requirement to support roll back and history management.




Destructor: public: virtual void SWEEP_ANNO_VERTEX_TOP::lose ();


Posts a delete bulletin to the bulletin board indicating the instance is no longer used in the active model. The lose methods for attached attributes are also called.






protected: virtual


SWEEP_ANNO_VERTEX_TOP::~SWEEP_ANNO_VERTEX_TOP ();


This C++ destructor should never be called directly. Instead, applications should use the overloaded lose method inherited from the ENTITY class, because this supports history management. (For example, x=new SWEEP_ANNO_VERTEX_TOP(...) then later x->lose.)



Methods: public: virtual void


SWEEP_ANNO_VERTEX_TOP::debug_ent (


FILE* // file pointer


) const;


Prints the type and address of this object, roll back pointer, attributes, and any unknown subtype information to the specified file. Refer to the ENTITY class for more details.






public: virtual ENTITY*& SWEEP_ANNO_VERTEX_TOP::


find_entity_ref_by_name(


const char* name, // name of entity


logical& isInput // flag to tell if item




// is input


);


Implements get_entity_by_name and set_entity_by_name so they don't have to be virtual stacks.






public: virtual ENTITY*


SWEEP_ANNO_VERTEX_TOP::get_entity_by_name (


const char* name // name of entity


);


Returns a pointer to entity specified by the given name.






public: virtual int SWEEP_ANNO_VERTEX_TOP::identity (


int
// level



= 0


) const;


If level is unspecified or 0, returns the type identifier SWEEP_ANNO_VERTEX_TYPE. If level is specified, returns <class>_TYPE for that level of derivation from ENTITY. The level of this class is defined as SWEEP_ANNO_VERTEX_LEVEL.






public: virtual void


SWEEP_ANNO_VERTEX_TOP::inputs (


ENTITY_LIST& list, // input list


logical no_tags // tags or not



= TRUE


) const;


Returns a list of entities that are the inputs to the modeling operation.






public:virtual logical


SWEEP_ANNO_VERTEX_TOP::is_deepcopyable () const ;


Returns TRUE if this can be deep copied.






public: virtual logical SWEEP_ANNO_VERTEX_TOP::


is_entity_by_name (


const char* name, // name of entity


ENTITY* entity // pointer to entity


);


Returns TRUE if the named entity is the current entity.






public: logical SWEEP_ANNO_VERTEX_TOP::is_top (


const ENTITY* entity // entity to test


) const;


Determines whether or not the specified entity is the top vertex.






public: ENTITY*


SWEEP_ANNO_VERTEX_TOP::left_top_edge () const;


Returns a pointer to the left top edge.






public: ENTITY*


SWEEP_ANNO_VERTEX_TOP::left_top_vertex () const;


Returns a pointer to the left top vertex.






public: virtual const char*


SWEEP_ANNO_VERTEX_TOP::member_name (


const ENTITY* entity // entity with name


) const;


Returns the name of the member.






public: ENTITY*


SWEEP_ANNO_VERTEX_TOP::mid_top_vertex () const;


Returns a pointer to the mid top vertex.






public: virtual void SWEEP_ANNO_VERTEX_TOP::outputs (


ENTITY_LIST& list // output list


) const;


Returns an entity list that is the output results of the modeling operation.






public: void SWEEP_ANNO_VERTEX_TOP::remove_mid_top_vertex (


VERTEX* v // vertex to remove


);


Remove unnecessary annotation on mid vertex.






public: void


SWEEP_ANNO_VERTEX_TOP::restore_common ();


The RESTORE_DEF macro expands to the restore_common method, which is used in reading information from a SAT file. This method is never called directly. It is called by a higher hierarchical function if an item in the SAT file is determined to be of this class type. An instance of this class will already have been created through the allocation constructor. This method then populates the class instance with the appropriate data from the SAT file.


No data



This class does not save any data.






public: ENTITY*


SWEEP_ANNO_VERTEX_TOP::right_top_edge () const;


Returns a pointer to the top right edge.






public: ENTITY*


SWEEP_ANNO_VERTEX_TOP::right_top_vertex () const;


Returns a pointer to the right top vertex.






public: virtual void


SWEEP_ANNO_VERTEX_TOP::set_entity_by_name (


const char* name, // name of entity


ENTITY* value // entity pointer


);


Specifies the name for the entity.






public: void


SWEEP_ANNO_VERTEX_TOP::set_left_top_edge (


EDGE* v // pointer to edge


);


Specifies the left top edge.






public: void


SWEEP_ANNO_VERTEX_TOP::set_left_top_vertex (


VERTEX* v // pointer to vertex


);


Specifies the left top vertex.






public: void


SWEEP_ANNO_VERTEX_TOP::set_mid_top_vertex (


VERTEX* v // pointer to vertex


);


Specifies the mid top vertex.






public: void


SWEEP_ANNO_VERTEX_TOP::set_right_top_edge (


EDGE* v // pointer to edge


);


Specifies the right top edge.






public: void


SWEEP_ANNO_VERTEX_TOP::set_right_top_vertex (


VERTEX* v // pointer to vertex


);


Specifies the right top vertex.






public: virtual const char*


SWEEP_ANNO_VERTEX_TOP::type_name () const;


Returns the string "sweep_anno_vertex_top".

Internal Use: add_left_top_edge, add_left_top_vertex, add_right_top_edge, add_right_top_vertex, hook_members, lose_input_tags, lose_lists, member_lost, member_lost_internal, merge_member, save, save_common, split_member, unhook_members




Related Fncs: is_SWEEP_ANNO_VERTEX_TOP
PDF/SWP/04CL.PDF
HTM/DATA/SWP/SWP/04CL/0006.HTM