Top level in 3-layer abstraction of selection. Implements physical sorting of the set of oidT's pointing to records. Also implements combinatorial operations as a set. Handle class for OOF_recordSelectionRep which implements the actual operations.
|
combinatorial operators |
| virtual void | difference_with (const OOF_Selection *) |
| virtual void | intersection_with (const OOF_Selection *) |
| virtual void | intersection_with (oidT) |
| virtual void | union_with (const OOF_Selection *) |
| virtual void | union_with_no_overlap (const OOF_Selection *) |
| virtual void | union_with (oidT) |
| | Implement optimal union_with when combining just one OID on rhs.
|
| virtual void | invert () |
local combinatorial implementations |
| void | difference_with (const OOF_recordSelection &) |
| void | intersection_with (const OOF_recordSelection &) |
| void | union_with (const OOF_recordSelection &) |
| | Implement union_with set operation on current selection with state changes.
|
| void | union_with_no_overlap (const OOF_recordSelection &) |
| | Dangerous implementation with no checking.
|
reflective operators |
| EselectionState | state () const |
| unsigned long | oneRecOffset () const |
| virtual bool | isEmpty () const |
| virtual bool | isAllRecs () const |
| virtual bool | contains (oidT) const |
| virtual bool | find (oidT item, unsigned long &foundAt) const |
| virtual const dbTable * | prototypicalTable () const |
change state |
| void | selectNone () |
| void | selectOneRec (unsigned long) |
| void | selectSome () |
| void | selectAll () |
access operators |
| unsigned long & | operator[] (unsigned long) |
| unsigned long & | operator[] (long) |
| unsigned long & | operator() () |
| unsigned long | value (unsigned long) const |
| void | append (oidT) |
| unsigned long | appendNewRecord (bool appendIt) |
| | returns new synthetic record number
|
| void | deleteCurrent () |
| void | deleteItem (unsigned long index) |
| void | updateCurrent (unsigned long) |
| unsigned long | iter () const |
| | current position in selection
|
| unsigned long | current () const |
| | value of current item
|
iterator protocol |
| void | start () |
| bool | more () const |
| void | prev () |
| void | next () |
| virtual unsigned long | count () const |
| void | gotoRecord (unsigned long) |
Public Types |
| enum | EselectionState { empty,
oneRec,
someRecs,
allRecs
} |
Public Member Functions |
| | OOF_recordSelection (dbTable *prototypicalTable) |
| | OOF_recordSelection (unsigned long numSlots, dbTable *prototypicalTable) |
| | OOF_recordSelection (const EselectionState, unsigned long numSlots, dbTable *prototypicalTable) |
| | OOF_recordSelection (unsigned long numSlots, unsigned int expansionChunk, dbTable *prototypicalTable) |
| | OOF_recordSelection (const OOF_recordSelection &) |
| virtual | ~OOF_recordSelection () |
| virtual OOF_Selection * | clone () const |
| void | describeState (std::ostream &os) const |
| void | describeRecsRep (std::ostream &) const |
| void | resetFakeNewRecordOffSet () |
| OOF_recordSelection & | operator= (const OOF_recordSelection &) |
| void | copyFrom (const OOF_recordSelection &, dbTable::selSharingT) |
| virtual void | setSortOrder (dbSorter *adoptSorter) |
| virtual dbSorter * | sorter () const |
| unsigned long * | allocSelection (unsigned long numSlots) |
| unsigned long * | allocConsumedSelection (unsigned long numSlots) |
| void | expandToInclude (unsigned long numSlots) |
| void | adopt (OOF_recordSelection &) |
| void | copyContents (const OOF_recordSelection &) |
| void | aboutToDirtySelection () |