TEXT_ANNOTATION
List of: Classes
Subjects: Feature Naming, SAT Save and Restore
Contents: Kernel

Purpose: Defines a simple annotation attribute for testing annotations.

Derivation: TEXT_ANNOTATION : ANNOTATION : ENTITY : ACIS_OBJECT : -

SAT Identifier: "text"

Filename: kern/kernel/kerndata/data/textannotation.hxx

Constructor: public: TEXT_ANNOTATION::TEXT_ANNOTATION ();


C++ allocation constructor requests memory for this object but does not populate it. 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.






public: TEXT_ANNOTATION::TEXT_ANNOTATION (


const char* s // text to use


);


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 TEXT_ANNOTATION::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 TEXT_ANNOTATION::


~TEXT_ANNOTATION ();


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 TEXT_ANNOTATION(...) then later x->lose.)



Methods: public: virtual void TEXT_ANNOTATION::debug_ent (


FILE* // output file pointer


) const;


Outputs the entity debug information to the specified file.






public: virtual ENTITY*&


TEXT_ANNOTATION::find_entity_ref_by_name (


const char* name, // name of entity


logical& isInput // false to get entity




// true to set entity


);


Re-implements get_entity_by_name and set_entity_by_name so they don't have to be virtual stacks. The default for isInput is FALSE.






public: virtual ENTITY*


TEXT_ANNOTATION::get_entity_by_name (


const char* name // name of entity


);


Returns a pointer to entity specified by the given name.






public: virtual int TEXT_ANNOTATION::identity (


int
// level



= 0


) const;


If level is unspecified or 0, returns the type identifier ATTRIB_SYS_TYPE. If level is specified, returns ATTRIB_SYS_TYPE for that level of derivation from ENTITY. The level of this class is defined as ATTRIB_SYS_LEVEL.






public: virtual void TEXT_ANNOTATION::inputs (


ENTITY_LIST& list, // input list


logical no_tags // use tags or not



= TRUE


) const;


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






protected: void


TEXT_ANNOTATION::internal_set_string (


const char* s // text string


);


Sets the string for a TEXT_ANNOTATION entity without backing up.






public: virtual logical


TEXT_ANNOTATION::is_deepcopyable (


) const;


Returns TRUE if this can be deep copied.






public: virtual logical


TEXT_ANNOTATION::is_entity_by_name (


const char* name, // name of entity


ENTITY* entity // pointer to entity


);


Returns TRUE if the named entity is the given entity.






public: virtual const char*


TEXT_ANNOTATION::member_name (


const ENTITY* entity // entity with name


) const;


Returns the name of the member.






public: virtual void TEXT_ANNOTATION::outputs (


ENTITY_LIST& list // list of outputs


) const;


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






public: void TEXT_ANNOTATION::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.


for(int i = num_ents; i--; ) The num_ents is defined as part of an enumeration and is a data element of the class.

read_ptr This is a pointer to a class data element which is defined as part of an enumeration.

TEXT_ANNOTATION::restore_extra Call the restore_extra method for this class, if it exists.






public: void TEXT_ANNOTATION::restore_extra ();


The TEXT_ANNOTATION_RESTORE_EXTRA_DEF macro expands to the restore_extra 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.


read_string


Text annotation data.






public: virtual void


TEXT_ANNOTATION::set_entity_by_name (


const char* name, // name for entity


ENTITY* value // pointer to entity


);


Specifies the name for the entity.






public: void TEXT_ANNOTATION::set_string (


const char* s // text string


);


Stores a text string as annotation data.






public: const char* TEXT_ANNOTATION::string () const;


Returns the string that is stored as the annotation data.






public: virtual const char*


TEXT_ANNOTATION::type_name () const;


Returns the string "text".

Internal Use: copy_extra, debug_extra, full_size, hook_members, lose_input_tags, lose_lists, member_lost, member_lost_internal, save, save_common, save_extra, unhook_members




Related Fncs: is_TEXT_ANNOTATION
PDF/KERN/38CLT.PDF
HTM/DATA/KERN/KERN/38CLT/0005.HTM