| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

TemporalObjectList< TYPE > Class Template Reference

#include <TemporalObjectList.h>

Inheritance diagram for TemporalObjectList< TYPE >:

[legend]
Collaboration diagram for TemporalObjectList< TYPE >:
[legend]
List of all members.

Public Types

typedef TYPE contained_type
typedef std::list< TYPE
* >::value_type 
value_type
typedef std::list< TYPE
* >::reference 
reference
typedef std::list< TYPE
* >::const_reference 
const_reference
typedef std::list< TYPE
* >::iterator 
iterator
typedef std::list< TYPE
* >::const_iterator 
const_iterator
typedef std::list< TYPE
* >::reverse_iterator 
reverse_iterator
typedef std::list< TYPE
* >::const_reverse_iterator 
const_reverse_iterator
typedef std::vector< TYPE
* >::pointer 
pointer
typedef std::vector< TYPE
* >::const_pointer 
const_pointer
typedef size_t size_type

Public Member Functions

 TemporalObjectList ()
 Default Constructor.
virtual ~TemporalObjectList ()
 Default Destructor.
virtual std::ostream & fillStream (std::ostream &s) const
 Fill the ASCII output stream.
virtual const TimeStampearliest () const
 Retrieve const The earliest time of the existence of the object.
void setEarliest (const TimeStamp &value)
 Update The earliest time of the existence of the object.
const TimeStamplatest () const
 Retrieve const The latest time of the existence of the object.
void setLatest (const TimeStamp &value)
 Update The latest time of the existence of the object.
virtual long add (ContainedObject *pObject)
 Add an object to the container.
void setRegistry (IRegistry *pRegistry)
IRegistryregistry () const
LinkManagerlinkMgr () const
unsigned char version () const
void setVersion (unsigned char vsn)
unsigned long refCount () const
virtual const CLIDclID () const
ObjectList< TYPE >::iterator begin ()
ObjectList< TYPE >::const_iterator begin () const
ObjectList< TYPE >::iterator end ()
ObjectList< TYPE >::const_iterator end () const
ObjectList< TYPE >::reverse_iterator rbegin ()
ObjectList< TYPE >::const_reverse_iterator rbegin () const
ObjectList< TYPE >::reverse_iterator rend ()
ObjectList< TYPE >::const_reverse_iterator rend () const
ObjectList< TYPE >::size_type size () const
virtual ObjectList< TYPE
>::size_type 
numberOfObjects () const
ObjectList< TYPE >::size_type max_size () const
bool empty () const
ObjectList< TYPE >::reference front ()
ObjectList< TYPE >::const_reference front () const
ObjectList< TYPE >::reference back ()
ObjectList< TYPE >::const_reference back () const
void push_back (typename ObjectList< TYPE >::const_reference value)
void pop_back ()
virtual long remove (ContainedObject *value)
ObjectList< TYPE >::iterator insert (typename ObjectList< TYPE >::iterator position, typename ObjectList< TYPE >::const_reference value)
void erase (typename ObjectList< TYPE >::iterator position)
void erase (typename ObjectList< TYPE >::iterator first, typename ObjectList< TYPE >::iterator last)
void clear ()
virtual long index (const ContainedObject *obj) const
virtual ContainedObjectcontainedObject (long dist) const
virtual unsigned long addRef ()
virtual unsigned long release ()
const std::string & name () const
virtual StreamBufferserialize (StreamBuffer &s)
virtual StreamBufferserialize (StreamBuffer &s) const

Static Public Member Functions

static void * operator new (size_t size)
 operator new
static void * operator new (size_t size, void *pObj)
 placement operator new it is needed by libstdc++ 3.2.3 (e.g.
static void operator delete (void *p)
 operator delete
static void operator delete (void *p, void *pObj)
 placement operator delete not sure if really needed, but it does not harm
static const CLIDclassID ()

Private Attributes

TimeStamp m_earliest
 The earliest time of the existence of the object.
TimeStamp m_latest
 The latest time of the existence of the object.

Friends

friend std::ostream & operator<< (std::ostream &s, const DataObject &obj)

Detailed Description

template<class TYPE>
class TemporalObjectList< TYPE >

Definition at line 19 of file TemporalObjectList.h.


Constructor & Destructor Documentation

template<class TYPE>
TemporalObjectList< TYPE >::TemporalObjectList (  )  [inline]

Default Constructor.

Definition at line 25 of file TemporalObjectList.h.

template<class TYPE>
virtual TemporalObjectList< TYPE >::~TemporalObjectList (  )  [inline, virtual]

Default Destructor.

Definition at line 29 of file TemporalObjectList.h.

00029 {}


Member Function Documentation

template<class TYPE>
std::ostream & TemporalObjectList< TYPE >::fillStream ( std::ostream &  s  )  const [virtual]

Fill the ASCII output stream.

Reimplemented from ObjectList< TYPE >.

Definition at line 95 of file TemporalObjectList.h.

00096 {
00097   DayaBay::ITemporal::fillStream(s);
00098   s << "{ " << "earliest :      " << m_earliest << std::endl
00099             << "latest :        " << m_latest << std::endl << " }";
00100   return s;
00101 }

template<class TYPE>
const TimeStamp & TemporalObjectList< TYPE >::earliest (  )  const [virtual]

Retrieve const The earliest time of the existence of the object.

Implements DayaBay::ITemporal.

Definition at line 105 of file TemporalObjectList.h.

00106 {
00107   return m_earliest;
00108 }

template<class TYPE>
void TemporalObjectList< TYPE >::setEarliest ( const TimeStamp value  )  [virtual]

Update The earliest time of the existence of the object.

Implements DayaBay::ITemporal.

Definition at line 111 of file TemporalObjectList.h.

00112 {
00113   m_earliest = value;
00114 }

template<class TYPE>
const TimeStamp & TemporalObjectList< TYPE >::latest (  )  const [virtual]

Retrieve const The latest time of the existence of the object.

Implements DayaBay::ITemporal.

Definition at line 117 of file TemporalObjectList.h.

00118 {
00119   return m_latest;
00120 }

template<class TYPE>
void TemporalObjectList< TYPE >::setLatest ( const TimeStamp value  )  [virtual]

Update The latest time of the existence of the object.

Implements DayaBay::ITemporal.

Definition at line 123 of file TemporalObjectList.h.

00124 {
00125   m_latest = value;
00126 }

template<class TYPE>
long TemporalObjectList< TYPE >::add ( ContainedObject pObject  )  [virtual]

Add an object to the container.

Reimplemented from ObjectList< TYPE >.

Definition at line 129 of file TemporalObjectList.h.

00130 {
00131   try {
00132     long result = ObjectList<TYPE>::add(pObject);
00133     if (-1 == result) {
00134       return result;
00135     }
00136 
00137     ITemporal* temporal = dynamic_cast<ITemporal*>(pObject);
00138     if (0 != temporal) {
00139       if (temporal->earliest() < earliest()) {
00140         setEarliest(temporal->earliest());
00141       }
00142       if (temporal->latest() > latest()) {
00143         setLatest(temporal->latest());
00144       }
00145     }
00146 
00147     return result;
00148   }
00149   catch (...) {
00150   }
00151   return -1;
00152 }

template<class TYPE>
static void* TemporalObjectList< TYPE >::operator new ( size_t  size  )  [inline, static]

operator new

Reimplemented from DayaBay::ITemporal.

Definition at line 55 of file TemporalObjectList.h.

00056     {
00057       return ( sizeof(TemporalObjectList) == size ? 
00058                boost::singleton_pool<TemporalObjectList, sizeof(TemporalObjectList)>::malloc() :
00059                ::operator new(size) );
00060     }

template<class TYPE>
static void* TemporalObjectList< TYPE >::operator new ( size_t  size,
void *  pObj 
) [inline, static]

placement operator new it is needed by libstdc++ 3.2.3 (e.g.

in std::vector) it is not needed in libstdc++ >= 3.4

Reimplemented from DayaBay::ITemporal.

Definition at line 65 of file TemporalObjectList.h.

00066     {
00067       return ::operator new (size,pObj);
00068     }

template<class TYPE>
static void TemporalObjectList< TYPE >::operator delete ( void *  p  )  [inline, static]

operator delete

Reimplemented from DayaBay::ITemporal.

Definition at line 71 of file TemporalObjectList.h.

00072     {
00073       boost::singleton_pool<TemporalObjectList, sizeof(TemporalObjectList)>::is_from(p) ?
00074         boost::singleton_pool<TemporalObjectList, sizeof(TemporalObjectList)>::free(p) :
00075         ::operator delete(p);
00076     }

template<class TYPE>
static void TemporalObjectList< TYPE >::operator delete ( void *  p,
void *  pObj 
) [inline, static]

placement operator delete not sure if really needed, but it does not harm

Reimplemented from DayaBay::ITemporal.

Definition at line 80 of file TemporalObjectList.h.

00081     {
00082       ::operator delete (p, pObj);
00083     }


Member Data Documentation

template<class TYPE>
TimeStamp TemporalObjectList< TYPE >::m_earliest [private]

The earliest time of the existence of the object.

Definition at line 89 of file TemporalObjectList.h.

template<class TYPE>
TimeStamp TemporalObjectList< TYPE >::m_latest [private]

The latest time of the existence of the object.

Definition at line 90 of file TemporalObjectList.h.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:38:35 2011 for DataUtilities by doxygen 1.4.7