#include <law_data.hxx>


Public Member Functions | |
| void | add () |
Increments the use count of this law_data. | |
| int | date () |
Returns the version of ACIS in which this law_data class first appeared. | |
| virtual law_data * | deep_copy (base_pointer_map *pm=NULL) const |
| Creates a copy of an item that does not share any data with the original. | |
| law_law_data (law *in_data) | |
Constructs a law_law_data. | |
| int | ref_count () |
Returns the use count of this law_data. | |
| void | remove () |
Decrements the use count of this law_data, and deletes the law_data when the count drops to zero. | |
| virtual law_data * | restore () |
Returns NULL. | |
| void | save () |
Saves the law_data with its encapsulated data. | |
| law_data * | set_domain (SPAinterval *new_domain) |
Sets the domain of this law_data to the given interval. | |
| char * | string (law_symbol_type type, int &count, law_data_node *&ldn) |
Returns a string that represents this law_data. | |
| const char * | symbol (law_symbol_type type) |
Returns the string that represents this law_data's symbol. | |
| ~law_law_data () | |
| Applications are required to call this destructor for their law data types. | |
Role: This is a law data class that holds a pointer to a law.
| law_law_data::~law_law_data | ( | ) |
Applications are required to call this destructor for their law data types.
| law_law_data::law_law_data | ( | law * | in_data | ) |
Constructs a law_law_data.
Role: The constructor method for creating a law_data wrapper to a law.
| in_data | pointer to sublaw. |
| void law_data::add | ( | ) | [inherited] |
| int law_law_data::date | ( | ) | [virtual] |
| virtual law_data* law_law_data::deep_copy | ( | base_pointer_map * | pm = NULL |
) | const [virtual] |
Creates a copy of an item that does not share any data with the original.
Role: Allocates new storage for all member data and any pointers. Returns a pointer to the copied item.
In a deep copy, all the information about the copied item is self-contained in a new memory block. By comparison, a shallow copy stores only the first instance of the item in memory, and increments the reference count for each copy.
The pointer_map keeps a list of all pointers in the original object that have already been deep-copied. For example, a deep_copy of a complex model results in self contained data, but identical sub-parts within the model are allowed to share a single set of data.
| pm | list of items within the entity that are already deep copied. |
Implements law_data.
| int law_data::ref_count | ( | ) | [inline, inherited] |
Returns the use count of this law_data.
| void law_data::remove | ( | ) | [inherited] |
| virtual law_data* law_data::restore | ( | ) | [virtual, inherited] |
Returns NULL.
| void law_law_data::save | ( | ) | [virtual] |
| law_data* law_law_data::set_domain | ( | SPAinterval * | new_domain | ) | [virtual] |
| char* law_law_data::string | ( | law_symbol_type | type, | |
| int & | count, | |||
| law_data_node *& | ldn | |||
| ) | [virtual] |
Returns a string that represents this law_data.
Role: The law function is composed of its symbol, associated parentheses, and the strings associated with its sublaws. It is provided as a user-friendly interface to laws. A derived class must override this function to be able to save a law_data.
| type | type of symbol - standard ACIS type. | |
| count | count. | |
| ldn | law data node. |
Reimplemented from law_data.
| const char* law_law_data::symbol | ( | law_symbol_type | type | ) | [virtual] |
Returns the string that represents this law_data's symbol.
Role: This is a pure virtual method, forcing derived classes to define their own versions of this method. Hence, this method is called from the derived class and not from this abstract class.
| type | type of symbol - standard ACIS type. |
Implements law_data.