Public Member Functions | Protected Attributes | Private Attributes | Friends

alize::SegAbstract Class Reference

#include <SegAbstract.h>

Inheritance diagram for alize::SegAbstract:
Inheritance graph
[legend]
Collaboration diagram for alize::SegAbstract:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SegAbstract (SegServer &ss, unsigned long lc, const String &s, const String &sn)
virtual ~SegAbstract ()
virtual unsigned long begin () const =0
virtual unsigned long length () const =0
unsigned long labelCode () const
const Stringstring () const
XListlist ()
const XListlist () const
const StringsourceName () const
void setLabelCode (unsigned long lc)
void setString (const String &s)
void setSourceName (const String &sn)
SegServergetServer () const
virtual void rewind () const
virtual SeggetSeg () const =0
virtual String getClassName () const =0
virtual String toString () const =0
void addOwner (const K &, SegAbstract &o)
void removeOwner (const K &, SegAbstract &o)
void removeAllOwners (const K &)
virtual void getExtremeBoundaries (const K &, unsigned long &b, unsigned long &e, bool &isDefined) const =0

Protected Attributes

unsigned long _labelCode
String _string
String _srcName
XList _list
unsigned long _current

Private Attributes

SegServer_pServer
RefVector< SegAbstract_ownersVect

Friends

class TestSeg
class TestSegCluster
class TestSegServer

Detailed Description

Abstract base class for classes Seg and SegCluster

Author:
Frederic Wils frederic.wils@lia.univ-avignon.fr
Version:
1.0
Date:
2004

Definition at line 85 of file SegAbstract.h.


Constructor & Destructor Documentation

SegAbstract::SegAbstract ( SegServer ss,
unsigned long  lc,
const String s,
const String sn 
) [explicit]

Definition at line 65 of file SegAbstract.cpp.

References rewind().

SegAbstract::~SegAbstract (  ) [virtual]

Definition at line 114 of file SegAbstract.cpp.


Member Function Documentation

void SegAbstract::addOwner ( const K ,
SegAbstract o 
)
virtual unsigned long alize::SegAbstract::begin (  ) const [pure virtual]

Implemented in alize::Seg, and alize::SegCluster.

String SegAbstract::getClassName (  ) const [pure virtual]

Returns the name of the class

Returns:
the name of the class of the object as a String

Implements alize::Object.

Implemented in alize::Seg, and alize::SegCluster.

Definition at line 112 of file SegAbstract.cpp.

virtual void alize::SegAbstract::getExtremeBoundaries ( const K ,
unsigned long &  b,
unsigned long &  e,
bool &  isDefined 
) const [pure virtual]

Implemented in alize::Seg, and alize::SegCluster.

virtual Seg* alize::SegAbstract::getSeg (  ) const [pure virtual]

Gets the next segment (sequential read)
See method rewind()

Returns:
a pointer to the segment if it exists; NULL otherwise

Implemented in alize::Seg, and alize::SegCluster.

SegServer & SegAbstract::getServer (  ) const

Returns a reference to the owner (a segment server) of this object

Returns:
a reference to the owner (a segment server) of this object

Definition at line 89 of file SegAbstract.cpp.

References _pServer.

Referenced by alize::SegCluster::add(), alize::Seg::duplicate(), alize::SegServer::matchingSegAbstract(), and alize::Seg::merge().

unsigned long SegAbstract::labelCode (  ) const

Returns the label code of this object (segment or cluster)

Returns:
the label code of this object (segment or cluster)

Definition at line 79 of file SegAbstract.cpp.

References _labelCode.

virtual unsigned long alize::SegAbstract::length (  ) const [pure virtual]

Implemented in alize::Seg, and alize::SegCluster.

XList & SegAbstract::list (  )

Returns a reference to the list associated to this object (segment or cluster)

Returns:
a reference to the list associated to this object (segment or cluster)

Definition at line 83 of file SegAbstract.cpp.

References _list.

Referenced by alize::SegCluster::duplicate(), alize::Seg::duplicate(), and alize::Seg::merge().

const XList & SegAbstract::list (  ) const

Returns a constant reference to the list associated to this constant object (segment or cluster)

Returns:
a constant reference the list associated to this constant object (segment or cluster)

Definition at line 85 of file SegAbstract.cpp.

References _list.

void SegAbstract::removeAllOwners ( const K  )
void SegAbstract::removeOwner ( const K ,
SegAbstract o 
)

Definition at line 100 of file SegAbstract.cpp.

References _ownersVect, and alize::RefVector< T >::removeObject().

Referenced by alize::SegCluster::remove().

void SegAbstract::rewind (  ) const [virtual]

Sets the first segment to become the current segment (sequential read)

Reimplemented in alize::SegCluster.

Definition at line 110 of file SegAbstract.cpp.

References _current.

Referenced by SegAbstract().

void SegAbstract::setLabelCode ( unsigned long  lc )

Sets the label code of this object (segment or cluster)

Parameters:
lcthe label code

Definition at line 91 of file SegAbstract.cpp.

References _labelCode.

void SegAbstract::setSourceName ( const String sn )

Sets the source name of this object (segment or cluster)

Parameters:
snthe source name (a string)

Definition at line 95 of file SegAbstract.cpp.

References _srcName.

void SegAbstract::setString ( const String s )

Sets the string data of this object (segment or cluster)

Parameters:
sthe string

Definition at line 93 of file SegAbstract.cpp.

References _string.

const String & SegAbstract::sourceName (  ) const

Returns the srcName data of this object (segment or cluster)

Returns:
the srcName data of this object (segment or cluster)

Definition at line 87 of file SegAbstract.cpp.

References _srcName.

const String & SegAbstract::string (  ) const

Returns the string associated to this object (segment or cluster)

Returns:
the string associated to this object (segment or cluster)

Definition at line 81 of file SegAbstract.cpp.

References _string.

virtual String alize::SegAbstract::toString (  ) const [pure virtual]

This method is frequently overridden in the derived classes. If it is not, it returns the name of the class of the object and the address of the object

Returns:
a description of the object

Reimplemented from alize::Object.

Implemented in alize::Seg, and alize::SegCluster.


Friends And Related Function Documentation

friend class TestSeg [friend]

Reimplemented in alize::Seg.

Definition at line 87 of file SegAbstract.h.

friend class TestSegCluster [friend]

Reimplemented in alize::Seg, and alize::SegCluster.

Definition at line 88 of file SegAbstract.h.

friend class TestSegServer [friend]

Reimplemented in alize::Seg, and alize::SegCluster.

Definition at line 89 of file SegAbstract.h.


Member Data Documentation

unsigned long alize::SegAbstract::_current [mutable, protected]

Definition at line 176 of file SegAbstract.h.

Referenced by alize::Seg::getSeg(), and rewind().

unsigned long alize::SegAbstract::_labelCode [protected]

Definition at line 175 of file SegAbstract.h.

Referenced by alize::Seg::duplicate(), list(), and alize::Seg::merge().

Definition at line 181 of file SegAbstract.h.

Referenced by addOwner(), removeAllOwners(), and removeOwner().

Definition at line 180 of file SegAbstract.h.

Referenced by getServer().


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