entity_notification_handler
List of: Classes
Subjects: Callbacks, History and Roll
Contents: Kernel

Purpose: Allows an application to notify its sub-systems of ENTITY events.

Derivation: entity_notification_handler : ACIS_OBJECT : -

Filename: kern/kernel/geomhusk/ent_not.hxx

Description: The entity_notification_handler provides an interface to allow an application to decide what to do when ENTITYs are created, deleted or changed either during a roll or not. A derived version of this class uses the information to connect a PART_CONTEXT with a PART. The PART_CONTEXT can then decide how the ENTITYs will be displayed.

References: KERN ENTITY_LIST

Data: protected ENTITY_LIST roll_list;

Location to store ENTITYs during a roll operation. This allows the application to delay the processing of ENTITYs until after the roll has occurred.

Constructor: public: entity_notification_handler::


entity_notification_handler ();


C++ constructor, creating an entity_notification_handler.




Destructor: public: virtual entity_notification_handler::


~entity_notification_handler ();


C++ destructor, deleting an entity_notification_handler.



Methods: public: virtual void entity_notification_handler::after_roll ()= 0;


Clears the roll_list after the roll operation. The derived classes must decide how the rolled ENTITYs should be processed.






public: virtual void


entity_notification_handler::before_roll ();


Clears the roll_list in preparation for the roll operation.






public: virtual void


entity_notification_handler::create_entity (


ENTITY* ent // entity to be created


)= 0;


Notifies the handler of an entity update event, to allow the handler to decide what to do when a given entity event has occurred.






public: virtual void


entity_notification_handler::delete_entity (


ENTITY* ent // entity to be deleted


)= 0;


Notifies the handler of an entity delete event, to allow the handler to decide what to do when a given entity event has occurred.






public: virtual void


entity_notification_handler::remove_roll_entity (


ENTITY* ent // entity to remove


);


Removes the ENTITY from the roll_list.






public: virtual void


entity_notification_handler::roll_create (


ENTITY* ent // entity to be created


);


Stores the ENTITY given into a list, to be handled at a later time.






public: virtual void


entity_notification_handler::roll_delete (


ENTITY* ent // entity to be deleted


);


Stores the ENTITY given into a list, to be handled at a later time.






public: virtual void


entity_notification_handler::roll_update (


ENTITY* ent // entity to be updated


);


Adds the given ENTITY to the roll_list.






public: virtual void


entity_notification_handler::update_entity (


ENTITY* ent // entity to be updated


)= 0;


Notifies the handler of an entity update event, to allow the handler to decide what to do when a given entity event has occurred.
PDF/KERN/31CLE.PDF
HTM/DATA/KERN/KERN/31CLE/0012.HTM