Develop Biology
The language of life
|
#include <Arrangement.h>
Public Member Functions | |
Arrangement (const Index expectedSize=2) | |
virtual | ~Arrangement () |
ByteStream | Access (const Index index) |
const ByteStream | Access (const Index index) const |
Index | Add (const ByteStream content) |
virtual bool | AreEqual (Index internal, const ByteStream external) const |
bool | Erase (const Index index) |
virtual const std::size_t | GetStepSize () const |
virtual TYPE | OptimizedAccess (Index index) |
virtual const TYPE | OptimizedAccess (Index index) const |
Public Member Functions inherited from bio::Container | |
Container (const Container &other) | |
Container (const Index expectedSize=2, std::size_t stepSize=sizeof(ByteStream)) | |
virtual | ~Container () |
virtual ByteStream | Access (const Index index) |
virtual const ByteStream | Access (const Index index) const |
ByteStream | Access (const SmartIterator itt) |
virtual const ByteStream | Access (const SmartIterator itt) const |
virtual Index | Add (const ByteStream content) |
template<typename T > | |
std::vector< T > | AsVector () const |
virtual SmartIterator | Begin () const |
virtual void | Clear () |
virtual Iterator * | ConstructClassIterator (const Index index=InvalidIndex()) const |
virtual SmartIterator | End () const |
bool | Erase (const SmartIterator itt) |
virtual bool | Erase (Index index) |
virtual void | Expand () |
virtual Index | GetAllocatedSize () const |
virtual Index | GetBeginIndex () const |
virtual Index | GetCapacity () const |
virtual Index | GetEndIndex () const |
virtual Index | GetNumberOfElements () const |
bool | Has (const ByteStream content) const |
virtual void | Import (const Container *other) |
virtual Index | Insert (const ByteStream content, const Index index) |
virtual bool | IsAllocated (const Index index) const |
virtual bool | IsFree (const Index index) const |
virtual bool | IsInRange (const Index index) const |
virtual ByteStream | operator[] (const Index index) |
virtual const ByteStream | operator[] (const Index index) const |
virtual ByteStream | operator[] (const SmartIterator itt) |
virtual const ByteStream | operator[] (const SmartIterator itt) const |
Index | SeekTo (const ByteStream content) const |
Additional Inherited Members | |
Protected Member Functions inherited from bio::Container | |
virtual bool | AreEqual (Index internal, const ByteStream external) const |
virtual Index | GetNextAvailableIndex () |
virtual const std::size_t | GetStepSize () const |
Protected Attributes inherited from bio::Container | |
std::deque< Index > | m_deallocated |
Index | m_firstFree |
Index | m_size |
unsigned char * | m_store |
Iterator * | m_tempItt |
Arrangements provide a more memory-efficient interface of the Container interface for a single type.
TYPE |
Definition at line 35 of file Arrangement.h.
|
inline |
expectedSize |
Definition at line 43 of file Arrangement.h.
|
inlinevirtual |
Definition at line 55 of file Arrangement.h.
|
inlinevirtual |
Get access to an element. NOTE: THIS DOES NOT CHECK IF THE ELEMENT IsFree!!! Free checks can be done independently. This is done for speed.
index |
Reimplemented from bio::Container.
Definition at line 75 of file Arrangement.h.
References BIO_SANITIZE, bio::Container::IsAllocated(), and bio::Container::m_store.
Referenced by bio::physical::Arrangement< TYPE >::AreEqual(), and bio::physical::Arrangement< TYPE >::OptimizedAccess().
|
inlinevirtual |
Get access to an element. NOTE: THIS DOES NOT CHECK IF THE ELEMENT IsFree!!! Free checks can be done independently. This is done for speed.
index |
Reimplemented from bio::Container.
Definition at line 87 of file Arrangement.h.
References BIO_SANITIZE, bio::Container::IsAllocated(), and bio::Container::m_store.
|
inlinevirtual |
Adds content to *this.
content |
Reimplemented from bio::Container.
Definition at line 60 of file Arrangement.h.
References BIO_SANITIZE, bio::Container::GetNextAvailableIndex(), bio::InvalidIndex(), bio::ByteStream::Is(), and bio::Container::m_store.
Referenced by bio::chemical::Atom::FormBondImplementation().
|
inlinevirtual |
To make comparisons easier and reduce the work needed to optimize *this, children can define a comparison method which will be used for all searches.
internal | |
external |
Reimplemented from bio::Container.
Reimplemented in bio::physical::Line.
Definition at line 113 of file Arrangement.h.
References bio::physical::Arrangement< TYPE >::Access(), BIO_SANITIZE, and bio::ByteStream::Is().
|
inlinevirtual |
Removes content from *this.
index |
Reimplemented from bio::Container.
Definition at line 99 of file Arrangement.h.
References BIO_SANITIZE, bio::Container::IsAllocated(), bio::Container::m_deallocated, and bio::Container::m_store.
|
inlinevirtual |
Please override this to return the size of the type your Container interface is working with.
Reimplemented from bio::Container.
Definition at line 147 of file Arrangement.h.
|
inlinevirtual |
Convenience wrapper for accessing without casting.
index |
Definition at line 128 of file Arrangement.h.
References bio::physical::Arrangement< TYPE >::Access().
Referenced by bio::chemical::Atom::AsBonded(), bio::chemical::Atom::BreakBondImplementation(), bio::chemical::Atom::FormBondImplementation(), bio::chemical::Atom::GetBonded(), and bio::chemical::Atom::GetBondType().
|
inlinevirtual |
Convenience wrapper for accessing without casting.
index |
Definition at line 138 of file Arrangement.h.
References bio::physical::Arrangement< TYPE >::Access().