LRAUV  revA
FlexArray< T > Class Template Reference

Simple class providing a flexible size array of pointers. More...

#include <DataReader.h>

Inheritance diagram for FlexArray< T >:
Collaboration diagram for FlexArray< T >:

Public Member Functions

 FlexArray (const bool deleteOnCleanup, const unsigned int initialCapacity=32, const unsigned int maxCapacity=16384)
 
 ~FlexArray ()
 
void freeItem (void *item)
 
void set (const unsigned int index, const T &item)
 
const T & get (int index=-1) const
 
T & operator[] (const unsigned int index)
 
int find (T item)
 
void insert (const unsigned int index, T item)
 
void push (T item)
 
peek (int index=-1)
 
pop (int index=-1)
 
pop (T item)
 
void setArraySize (const unsigned int newSize)
 
T * getArray ()
 
void setDoArrayDelete (bool doArrayDelete)
 
- Public Member Functions inherited from FlexArrayBase
 FlexArrayBase (const bool deleteOnCleanup, const unsigned int initialCapacity=32, const unsigned int maxCapacity=16384)
 
virtual ~FlexArrayBase ()
 
void clear ()
 
int getMinIndex () const
 
int getMaxIndex () const
 
bool isEmpty () const
 
unsigned int size () const
 
void set (const unsigned int index, const void *item)
 
int find (void *item) const
 
void insert (const unsigned int index, void *item)
 
void push (void *item)
 
const void * peek (int index=-1)
 
const void * pop (int index=-1)
 

Protected Attributes

nullItem_
 
T * tArray_
 
bool doArrayDelete_
 
- Protected Attributes inherited from FlexArrayBase
const unsigned int initialCapacity_
 
unsigned int size_
 
const bool deleteOnCleanup_
 
const unsigned int maxCapacity_
 
int minIndex_
 
int maxIndex_
 
const void ** array_
 

Private Member Functions

 FlexArray (const FlexArray< T > &old)
 

Additional Inherited Members

- Protected Member Functions inherited from FlexArrayBase
int getIndex (int index=-1) const
 
int resolveIndex (const unsigned int index)
 
void setArraySizeBase (const unsigned int newSize)
 

Detailed Description

template<typename T>
class FlexArray< T >

Simple class providing a flexible size array of pointers.

If you exceed the array limits, it doubles itself in size. It can act as an array, a list, or a stack

Constructor & Destructor Documentation

template<typename T>
FlexArray< T >::FlexArray ( const bool  deleteOnCleanup,
const unsigned int  initialCapacity = 32,
const unsigned int  maxCapacity = 16384 
)
inline
template<typename T>
FlexArray< T >::~FlexArray ( )
inline
template<typename T>
FlexArray< T >::FlexArray ( const FlexArray< T > &  old)
private

Member Function Documentation

template<typename T>
int FlexArray< T >::find ( item)
inline
template<typename T>
void FlexArray< T >::freeItem ( void *  item)
inlinevirtual

Reimplemented from FlexArrayBase.

template<typename T>
const T& FlexArray< T >::get ( int  index = -1) const
inline

Referenced by ScheduledItem::AddNext(), ConfigDataElement::ApplyConfigValues(), ScheduledItem::Clear(), CommandLine::commandHelp(), CommandLine::completeArg(), ParsedCommand::completeCommand(), EnvSimulator::configureSensors(), contains_chars(), DefinedBehavior::DefinedBehavior(), Slate::DeRegisterElementURI(), ScheduledItem::DoScheduled(), LuaAPI::Exec(), HDF5HasAttributes::finalize(), ComponentRegistry::Find(), ComponentRegistry::FindHandler(), DecimationLogManager::forceWrite(), HFRadarModelPoint::getAdjoining(), CommandSyntax::getArg(), Aggregate::getChild(), ConfigDataElement::GetConfigDataElement(), NavChartDb::getCoverage(), Slate::GetDataAccess(), Slate::GetElementURI(), DecimationLogManager::getFileWriter(), ComponentRegistry::GetIndexed(), LuaNode::getIndexedNode(), CommandLine::getLines(), Slate::GetName(), CommandSyntax::getRequiredArgSize(), Command::getSyntax(), HDF5Attribute::HDF5Attribute(), CommandSyntax::help(), Command::help(), DefinedBehavior::initialize(), ReadDataComponent::initializeReaders(), ComponentRegistry::Insert(), is_child(), DataElement::isOwnersActive(), DataElement::isOwnersFailed(), ReadDataComponent::isSatisfied(), DecimationLogManager::lockWrites(), FileLogReader::matchAndOpen(), ParsedCommand::matchCommand(), Method::Method(), Slate::RegisterCodedName(), Slate::RegisterDataAccess(), Slate::RegisterElementURI(), ComponentRegistry::Remove(), ReadDataComponent::requestData(), DecimationLogManager::resetDirectoryEntries(), DecimationLogManager::resetFileBases(), SendDataComponent::run(), HFRadarModelPoint::run(), Aggregate::run(), Unserialize::Run(), EncReader::scan(), ComponentRegistry::ShutdownThreads(), DecimationLogManager::splits(), ComponentRegistry::StartThreads(), FastMap_Test::testPutGetRandomDumpDuplicates(), Slate::Uninitialize(), DecimationLogManager::unlockWrites(), Slate::WriteDataAccessEntry(), Slate::WriteDirectory(), Slate::WriteElementURIEntry(), HDF5HasAttributes::writeHeader(), Slate::WriteNameEntry(), and DecimationLogManager::writeSyslog().

template<typename T>
T* FlexArray< T >::getArray ( )
inline

Referenced by Unserialize::Run().

template<typename T>
void FlexArray< T >::insert ( const unsigned int  index,
item 
)
inline
template<typename T>
T& FlexArray< T >::operator[] ( const unsigned int  index)
inline
template<typename T>
T FlexArray< T >::peek ( int  index = -1)
inline

Referenced by Command::addArg(), and EncReader::scan().

template<typename T>
T FlexArray< T >::pop ( item)
inline
template<typename T>
void FlexArray< T >::push ( item)
inline
template<typename T>
void FlexArray< T >::setArraySize ( const unsigned int  newSize)
inlinevirtual
template<typename T>
void FlexArray< T >::setDoArrayDelete ( bool  doArrayDelete)
inline

Member Data Documentation

template<typename T>
bool FlexArray< T >::doArrayDelete_
protected

The documentation for this class was generated from the following files: