Loading...
Searching...
No Matches
casacore::LoggerHolderRep Class Reference
tables package (libcasa_tables) » LogTables_module » LogTables_module_internal_classes

Representation of the class holding a hierarchy of loggers. More...

`#include <LoggerHolder.h>`

## Public Types

typedef LoggerHolderIterator | const_iterator
| Define the STL-style iterators.

## Public Member Functions

| LoggerHolderRep (Bool nullSink)
| Create with a NullSink or MemoryLogSink (default).
| LoggerHolderRep (const String &logTableName, Bool isWritable)
| Create with a TableLogSink.
| LoggerHolderRep (const LoggerHolderRep &)
| Copy constructor.
| ~LoggerHolderRep ()
LoggerHolderRep & | operator= (const LoggerHolderRep &)
| Assignment.
void | addParent (const LoggerHolder &)
| Add a logger from a parent.
void | append (const LoggerHolder &other)
| Append the entries of the other logger to this one.
void | reopenRW ()
| Reopen a readonly logtable for read/write (if needed).
void | reopen ()
| Reopen the log table if needed (after a tempClose).
void | tempClose (Bool closeParents=True)
| Temporarily close all log tables.
void | unlock ()
| Unlock the log table.
void | flush ()
| Flush the log table.
void | resync ()
| Resync the log table (if needed).
Bool | isTempClosed () const
| Is the log table temporarily closed?
LogIO & | logio ()
| Get access to the logger.
LogSink & | sink ()
| Get access to the log sink (reopen the log table if needed).
void | clear ()
| Clear the log.
void | removeParents ()
| Remove all parents.
const Block< LoggerHolder > & | parents () const
| Return the block of parents.
const_iterator | begin () const
| Get the begin and end iterator object.
const_iterator | end () const

## Private Member Functions

void | doReopen ()
| Do the actual reopen.

## Private Attributes

Block< LoggerHolder > | itsParents
LogSink | itsSink
LogIO | itsLogger
String | itsTableName
TableLogSink * | itsTablePtr
Bool | itsIsWritable
Bool | itsIsClosed

## Detailed Description

Representation of the class holding a hierarchy of loggers.

### Intended use:

Internal

### Review Status

Test programs:
  tLoggerHolder

### Prerequisite

- LogIO

### Synopsis

The LoggerHolderRep class is the reference counted implementation of LoggerHolder. See that class for more information.

### Motivation

Reference counting was needed to be able to keep a LoggerHolder object after the (ImageInterface) object containing it is gone.

Definition at line 238 of file LoggerHolder.h.

## Member Typedef Documentation

## const_iterator

typedef LoggerHolderIterator casacore::LoggerHolderRep::const_iterator

Define the STL-style iterators.

Only a const forward iterator is available. It makes it possible to iterate through all messages in the logger.

LoggerHolder logger("log.name", False)
for (LoggerHolder::const_iterator iter=arr.begin();
iter!=arr.end(); iter++) {
cout << iter.message() << endl;
}
casacore::LoggerHolder
Definition LoggerHolder.h:118
casacore::LoggerHolder::const_iterator
LoggerHolderIterator const_iterator
Define the STL-style iterators.
Definition LoggerHolder.h:198
casacore::False
const Bool False
Definition aipstype.h:42

STL-style typedefs.

Definition at line 320 of file LoggerHolder.h.

## Constructor & Destructor Documentation

## LoggerHolderRep() [1/3]

casacore::LoggerHolderRep::LoggerHolderRep | ( | Bool | nullSink | ) |

Create with a NullSink or MemoryLogSink (default).

Referenced by LoggerHolderRep(), and operator=().

## LoggerHolderRep() [2/3]

casacore::LoggerHolderRep::LoggerHolderRep | ( | const String & | logTableName,
|  | Bool | isWritable )

Create with a TableLogSink.

## LoggerHolderRep() [3/3]

casacore::LoggerHolderRep::LoggerHolderRep | ( | const LoggerHolderRep & |  | ) |

Copy constructor.

References LoggerHolderRep().

## ~LoggerHolderRep()

casacore::LoggerHolderRep::~LoggerHolderRep | ( |  | ) |

## Member Function Documentation

## addParent()

void casacore::LoggerHolderRep::addParent | ( | const LoggerHolder & |  | ) |

Add a logger from a parent.

## append()

void casacore::LoggerHolderRep::append | ( | const LoggerHolder & | other | ) |

Append the entries of the other logger to this one.

## begin()

const_iterator casacore::LoggerHolderRep::begin | ( |  | ) | const

Get the begin and end iterator object.

## clear()

void casacore::LoggerHolderRep::clear | ( |  | ) |

Clear the log.

It removes the parents and removes all messages from the sink.

## doReopen()

void casacore::LoggerHolderRep::doReopen | ( |  | ) |

private

Do the actual reopen.

Referenced by reopen().

## end()

const_iterator casacore::LoggerHolderRep::end | ( |  | ) | const

## flush()

void casacore::LoggerHolderRep::flush | ( |  | ) |

Flush the log table.

## isTempClosed()

Bool casacore::LoggerHolderRep::isTempClosed | ( |  | ) | const

inline

Is the log table temporarily closed?

Definition at line 283 of file LoggerHolder.h.

References itsIsClosed.

## logio()

LogIO & casacore::LoggerHolderRep::logio | ( |  | ) |

Get access to the logger.

It assumes that it will be used to post a message, so it reopens the log table for read/write if needed).

## operator=()

LoggerHolderRep & casacore::LoggerHolderRep::operator= | ( | const LoggerHolderRep & |  | ) |

Assignment.

It removes the current parents.

References LoggerHolderRep().

## parents()

const Block< LoggerHolder > & casacore::LoggerHolderRep::parents | ( |  | ) | const

inline

Return the block of parents.

Definition at line 304 of file LoggerHolder.h.

References itsParents.

## removeParents()

void casacore::LoggerHolderRep::removeParents | ( |  | ) |

Remove all parents.

## reopen()

void casacore::LoggerHolderRep::reopen | ( |  | ) |

inline

Reopen the log table if needed (after a tempClose).

Definition at line 266 of file LoggerHolder.h.

References doReopen(), and itsIsClosed.

## reopenRW()

void casacore::LoggerHolderRep::reopenRW | ( |  | ) |

Reopen a readonly logtable for read/write (if needed).

## resync()

void casacore::LoggerHolderRep::resync | ( |  | ) |

Resync the log table (if needed).

## sink()

LogSink & casacore::LoggerHolderRep::sink | ( |  | ) |

Get access to the log sink (reopen the log table if needed).

It is not assumed you want to write. If you want to do that, you should first call reopenRW() to ensure you can write.

## tempClose()

void casacore::LoggerHolderRep::tempClose | ( | Bool | closeParents = True | ) |

Temporarily close all log tables.

By default the possible parent log tables are also closed.

References casacore::True.

## unlock()

void casacore::LoggerHolderRep::unlock | ( |  | ) |

Unlock the log table.

## Member Data Documentation

## itsIsClosed

Bool casacore::LoggerHolderRep::itsIsClosed

private

Definition at line 337 of file LoggerHolder.h.

Referenced by isTempClosed(), and reopen().

## itsIsWritable

Bool casacore::LoggerHolderRep::itsIsWritable

private

Definition at line 336 of file LoggerHolder.h.

## itsLogger

LogIO casacore::LoggerHolderRep::itsLogger

private

Definition at line 333 of file LoggerHolder.h.

## itsParents

Block<LoggerHolder> casacore::LoggerHolderRep::itsParents

private

Definition at line 331 of file LoggerHolder.h.

Referenced by parents().

## itsSink

LogSink casacore::LoggerHolderRep::itsSink

private

Definition at line 332 of file LoggerHolder.h.

## itsTableName

String casacore::LoggerHolderRep::itsTableName

private

Definition at line 334 of file LoggerHolder.h.

## itsTablePtr

TableLogSink* casacore::LoggerHolderRep::itsTablePtr

private

Definition at line 335 of file LoggerHolder.h.

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

- tables/LogTables/LoggerHolder.h