Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends

Strat::LevelSet Class Reference

Set of Stratigraphic levels. More...

Inheritance diagram for Strat::LevelSet:
CallBacker

List of all members.

Public Member Functions

 LevelSet ()
 LevelSet (const LevelSet &)
virtual ~LevelSet ()
LevelSetoperator= (const LevelSet &)
bool isEmpty () const
int size () const
const ObjectSet< Level > & levels () const
void setEmpty ()
bool isPresent (const char *nm) const
bool isPresent (Level::ID id) const
int indexOf (const char *nm) const
int indexOf (Level::ID id) const
Levelget (const char *nm)
const Levelget (const char *nm) const
Levelget (Level::ID id)
const Levelget (Level::ID id) const
Leveladd (const char *lvlnm, const Color &c)
Levelinsert (const char *lvlnm, const Color &c, int idx=-1)
Levelset (const char *lvlnm, const Color &c)
void remove (Level::ID)
Leveladd (const Level &)
 copy stuff, but new ID/name
void add (const BufferStringSet &, const TypeSet< Color > &)
int notifLvlIdx () const
 if < 0 then more than one level have changed
bool store (Repos::Source) const
bool needStore () const
bool readFrom (const char *)
bool writeTo (const char *) const
Repos::Source readOldRepos ()

Public Attributes

Notifier< LevelSetlevelAdded
Notifier< LevelSetlevelChanged
Notifier< LevelSetlevelToBeRemoved

Protected Member Functions

LevelgetNew (const Level *lvl=0) const
Levelset (const char *, const Color &, int)
int gtIdxOf (const char *, Level::ID) const
LevelgtLvl (const char *, Level::ID) const
void addLvl (Level *)
void getLevelsFrom (const LevelSet &)
void makeMine (Level &)
void readPars (ascistream &, bool)
void lvlChgCB (CallBacker *cb)
void lvlRemCB (CallBacker *cb)
void notif (CallBacker *, bool)

Static Protected Member Functions

static bool haveCurSet ()

Protected Attributes

ObjectSet< Levellvls_
int notiflvlidx_
Level::ID lastlevelid_
bool ischanged_

Friends

class LevelSetMgr

Detailed Description

Set of Stratigraphic levels.

Manages not only the units, but also their IDs. The set will not allow adding levels with the same name; the result is that you simply set the existing one to new values.


Constructor & Destructor Documentation

Strat::LevelSet::LevelSet (  ) 
Strat::LevelSet::LevelSet ( const LevelSet  ) 
virtual Strat::LevelSet::~LevelSet (  )  [virtual]

Member Function Documentation

Level* Strat::LevelSet::add ( const char *  lvlnm,
const Color c 
) [inline]
Level* Strat::LevelSet::add ( const Level  ) 

copy stuff, but new ID/name

void Strat::LevelSet::add ( const BufferStringSet ,
const TypeSet< Color > &   
)
void Strat::LevelSet::addLvl ( Level  )  [protected]
const Level* Strat::LevelSet::get ( const char *  nm  )  const [inline]
Level* Strat::LevelSet::get ( const char *  nm  )  [inline]
const Level* Strat::LevelSet::get ( Level::ID  id  )  const [inline]
Level* Strat::LevelSet::get ( Level::ID  id  )  [inline]
void Strat::LevelSet::getLevelsFrom ( const LevelSet  )  [protected]
Level* Strat::LevelSet::getNew ( const Level lvl = 0  )  const [protected]
int Strat::LevelSet::gtIdxOf ( const char *  ,
Level::ID   
) const [protected]
Level* Strat::LevelSet::gtLvl ( const char *  ,
Level::ID   
) const [protected]
static bool Strat::LevelSet::haveCurSet (  )  [static, protected]
int Strat::LevelSet::indexOf ( const char *  nm  )  const [inline]
int Strat::LevelSet::indexOf ( Level::ID  id  )  const [inline]
Level* Strat::LevelSet::insert ( const char *  lvlnm,
const Color c,
int  idx = -1 
) [inline]
bool Strat::LevelSet::isEmpty (  )  const [inline]
bool Strat::LevelSet::isPresent ( const char *  nm  )  const [inline]
bool Strat::LevelSet::isPresent ( Level::ID  id  )  const [inline]
const ObjectSet<Level>& Strat::LevelSet::levels (  )  const [inline]
void Strat::LevelSet::lvlChgCB ( CallBacker cb  )  [inline, protected]
void Strat::LevelSet::lvlRemCB ( CallBacker cb  )  [inline, protected]
void Strat::LevelSet::makeMine ( Level  )  [protected]
bool Strat::LevelSet::needStore (  )  const [inline]
void Strat::LevelSet::notif ( CallBacker ,
bool   
) [protected]
int Strat::LevelSet::notifLvlIdx (  )  const [inline]

if < 0 then more than one level have changed

LevelSet& Strat::LevelSet::operator= ( const LevelSet  ) 
bool Strat::LevelSet::readFrom ( const char *   ) 
Repos::Source Strat::LevelSet::readOldRepos (  ) 
void Strat::LevelSet::readPars ( ascistream ,
bool   
) [protected]
void Strat::LevelSet::remove ( Level::ID   ) 
Level* Strat::LevelSet::set ( const char *  lvlnm,
const Color c 
) [inline]
Level* Strat::LevelSet::set ( const char *  ,
const Color ,
int   
) [protected]
void Strat::LevelSet::setEmpty (  )  [inline]
int Strat::LevelSet::size (  )  const [inline]
bool Strat::LevelSet::store ( Repos::Source   )  const
bool Strat::LevelSet::writeTo ( const char *   )  const

Friends And Related Function Documentation

friend class LevelSetMgr [friend]

Member Data Documentation

bool Strat::LevelSet::ischanged_ [protected]
int Strat::LevelSet::notiflvlidx_ [mutable, protected]