Purpose:
|
Defines the master object from which all subtype objects must be derived.
|
|
Derivation:
|
subtype_object : ACIS_OBJECT : -
|
|
Filename:
|
kern/kernel/kernutil/subtype/subtype.hxx
|
|
Description:
|
This class defines the master object from which all subtype objects must be derived. This object contains a use count (in case the object is shareable) and defines two virtual functions and a destructor.
|
|
Constructor:
|
public: subtype_object::subtype_object
();
|
|
|
C++ constructor, creating a
subtype_object.
|
|
|
|
|
Destructor:
|
public: virtual subtype_object::~subtype_object
();
|
|
|
C++ destructor, deleting a
subtype_object. and all those objects that need it.
|
|
|
|
Methods:
|
public: void subtype_object::add_ref
();
|
|
|
Use count manipulation.
|
|
|
|
|
|
|
public: virtual void subtype_object::debug
(
|
|
|
char const*,
|
// leader for second and
|
|
|
|
|
// subsequent lines of
|
|
|
|
|
// output
|
|
|
logical,
|
// TRUE for brief output
|
|
|
|
|
// FALSE for full output
|
|
|
FILE*
|
// file name
|
|
|
|
= debug_file_ptr
|
|
|
) const = 0;
|
|
|
Writes the
subtype_object in readable form for debugging. If
logical is
TRUE, brief output is produced; if
logical is
FALSE, long output is produced.
|
|
|
|
|
|
|
public: logical subtype_object::mult_ref
() const;
|
|
|
Returns
TRUE if there is more than one reference; otherwise, it returns
FALSE.
|
|
|
|
|
|
|
public: logical subtype_object::operator!=
(
|
|
|
subtype_object const& rhs
|
// subtype-object
|
|
|
) const;
|
|
|
TRUE if two subtype objects are not the same. Use this method for sharing on restoration of old save files.
|
|
|
|
|
|
|
public: virtual logical subtype_object::operator==
(
|
|
|
subtype_object const&
|
// subtype-object
|
|
|
) const;
|
|
|
Determines if two subtype objects are the same. Use this method for sharing on restoration of old save files.
|
|
|
|
|
|
|
public: int subtype_object::ref_count
();
|
|
|
Returns the use count.
|
|
|
|
|
|
|
public: void subtype_object::remove_ref
();
|
|
|
Removes a reference.
|
|
|
|
|
|
|
public: virtual void subtype_object::save
() const;
|
|
|
Saves a subtype object with identifier and brackets, and enters it in the current tag table. If it is already there, just puts out a reference.
|
|
|
|
|
|
|
public: virtual void
|
|
|
subtype_object::save_data () const = 0;
|
|
|
Saves the information for the
subtype_object to a save file.
|
|
|
|
|
|
|
public: virtual int
|
|
|
subtype_object::type () const = 0;
|
|
|
Returns the type of
subtype_object.
|
|
|
|
|
|
|
public: virtual char const*
|
|
|
subtype_object::type_name () const = 0;
|
|
|
Returns a pointer to a static string, which is the externally-meaningful type name for this subtype.
|
|
|
|
|
|
|
public: virtual logical
|
|
|
subtype_object::unknown_type () const;
|
|
|
Returns
TRUE if this object type is unknown to the system; otherwise, it returns
FALSE. This method returns
FALSE as the default, so except for the system unknown subtype, the method should be omitted from derived class definitions.
|
|
Internal Use:
|
full_size
|