CppAD: A C++ Algorithmic Differentiation Package
20171217
|
Vector of sets of positive integers, each set stored as a size_t vector. More...
Public Types | |
typedef sparse_sizevec_const_iterator | const_iterator |
declare a const iterator More... | |
Public Member Functions | |
void | add_element (size_t i, size_t element) |
Add one element to a set. More... | |
void | assignment (size_t this_target, size_t other_source, const sparse_sizevec &other) |
Assign one set equal to another set. More... | |
void | binary_intersection (size_t this_target, size_t this_left, size_t other_right, const sparse_sizevec &other) |
Assign a set equal to the intersection of two other sets. More... | |
void | binary_union (size_t this_target, size_t this_left, size_t other_right, const sparse_sizevec &other) |
Assign a set equal to the union of two other sets. More... | |
void | clear (size_t target) |
Assign the empty set to one of the sets. More... | |
size_t | end (void) const |
Fetch end for this vector of sets object. More... | |
bool | is_element (size_t i, size_t element) const |
Check if an element is in a set. More... | |
size_t | memory (void) const |
Amount of memory used by this vector of sets. More... | |
size_t | n_set (void) const |
Fetch n_set for vector of sets object. More... | |
size_t | number_elements (size_t i) const |
Return number of elements in a set. More... | |
void | operator= (const sparse_sizevec &other) |
Assignement operator. More... | |
void | post_element (size_t i, size_t element) |
Post an element for delayed addition to a set. More... | |
void | print (void) const |
Print the vector of sets (used for debugging) More... | |
void | process_post (size_t i) |
process post entries for a specific set. More... | |
void | resize (size_t n_set, size_t end) |
Start a new vector of sets. More... | |
sparse_sizevec (void) | |
Default constructor (no sets) More... | |
sparse_sizevec (const sparse_sizevec &v) | |
Using copy constructor is a programing (not user) error. More... | |
~sparse_sizevec (void) | |
Destructor. More... | |
Private Member Functions | |
void | binary_union (size_t target, size_t left, const pod_vector< size_t > &right) |
Assign a set equal to the union of a set and a vector;. More... | |
void | check_data_structure (void) |
Checks data structure (effectively const, but modifies and restores values) More... | |
void | collect_garbage (void) |
Does garbage collection when indicated. More... | |
size_t | drop (size_t i) |
drop a set. More... | |
size_t | is_subset (size_t one_this, size_t two_other, const sparse_sizevec &other) const |
Check if one of two sets is a subset of the other set. More... | |
size_t | reference_count (size_t i) const |
Counts references to a set. More... | |
Private Attributes | |
pod_vector< size_t > | data_ |
The data for all the singly linked lists. More... | |
size_t | data_not_used_ |
number of elements in data_ that have been allocated and are no longer being used. More... | |
size_t | end_ |
Possible elements in each set are 0, 1, ..., end_ - 1;. More... | |
pod_vector< size_t > | post_ |
Vectors of elements that have not yet been added to corresponding sets. More... | |
pod_vector< size_t > | start_ |
Starting point for i-th set is start_[i]. More... | |
Friends | |
class | sparse_sizevec_const_iterator |
Vector of sets of positive integers, each set stored as a size_t vector.
All the public members for this class are also in the sparse_pack and sparse_list classes. This defines the CppAD vector_of_sets concept.
Definition at line 34 of file sparse_sizevec.hpp.