Ipopt  trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Attributes
Ipopt::Journal Class Reference

Journal class (part of the Journalist implementation.). More...

#include <IpJournalist.hpp>

+ Inheritance diagram for Ipopt::Journal:

List of all members.

Public Member Functions

 Journal (const std::string &name, EJournalLevel default_level)
 Constructor.
virtual ~Journal ()
 Destructor.
virtual std::string Name ()
 Get the name of the Journal.
virtual void SetPrintLevel (EJournalCategory category, EJournalLevel level)
 Set the print level for a particular category.
virtual void SetAllPrintLevels (EJournalLevel level)
 Set the print level for all category.
Journal Output Methods. These methods are called by the

Journalist who first checks if the output print level and category are acceptable.

Calling the Print methods explicitly (instead of through the Journalist will output the message regardless of print level and category. You should use the Journalist to print & flush instead

virtual bool IsAccepted (EJournalCategory category, EJournalLevel level) const
 Ask if a particular print level/category is accepted by the journal.
virtual void Print (EJournalCategory category, EJournalLevel level, const char *str)
 Print to the designated output location.
virtual void Printf (EJournalCategory category, EJournalLevel level, const char *pformat, va_list ap)
 Printf to the designated output location.
virtual void FlushBuffer ()
 Flush output buffer.

Protected Member Functions

Implementation version of Print methods. Derived classes

should overload the Impl methods.

virtual void PrintImpl (EJournalCategory category, EJournalLevel level, const char *str)=0
 Print to the designated output location.
virtual void PrintfImpl (EJournalCategory category, EJournalLevel level, const char *pformat, va_list ap)=0
 Printf to the designated output location.
virtual void FlushBufferImpl ()=0
 Flush output buffer.

Private Member Functions

Default Compiler Generated Methods

(Hidden to avoid implicit creation/calling).

These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.

 Journal ()
 Default Constructor.
 Journal (const Journal &)
 Copy Constructor.
void operator= (const Journal &)
 Overloaded Equals Operator.

Private Attributes

std::string name_
 Name of the output location.
Index print_levels_ [J_LAST_CATEGORY]
 vector of integers indicating the level for each category

Detailed Description

Journal class (part of the Journalist implementation.).

This class is the base class for all Journals. It controls the acceptance criteria for print statements etc. Derived classes like the FileJournal - output those messages to specific locations

Definition at line 273 of file IpJournalist.hpp.


Constructor & Destructor Documentation

Ipopt::Journal::Journal ( const std::string &  name,
EJournalLevel  default_level 
)

Constructor.

virtual Ipopt::Journal::~Journal ( ) [virtual]

Destructor.

Ipopt::Journal::Journal ( ) [private]

Default Constructor.

Ipopt::Journal::Journal ( const Journal ) [private]

Copy Constructor.


Member Function Documentation

virtual std::string Ipopt::Journal::Name ( ) [virtual]

Get the name of the Journal.

virtual void Ipopt::Journal::SetPrintLevel ( EJournalCategory  category,
EJournalLevel  level 
) [virtual]

Set the print level for a particular category.

virtual void Ipopt::Journal::SetAllPrintLevels ( EJournalLevel  level) [virtual]

Set the print level for all category.

virtual bool Ipopt::Journal::IsAccepted ( EJournalCategory  category,
EJournalLevel  level 
) const [virtual]

Ask if a particular print level/category is accepted by the journal.

virtual void Ipopt::Journal::Print ( EJournalCategory  category,
EJournalLevel  level,
const char *  str 
) [inline, virtual]

Print to the designated output location.

Definition at line 311 of file IpJournalist.hpp.

virtual void Ipopt::Journal::Printf ( EJournalCategory  category,
EJournalLevel  level,
const char *  pformat,
va_list  ap 
) [inline, virtual]

Printf to the designated output location.

Definition at line 318 of file IpJournalist.hpp.

virtual void Ipopt::Journal::FlushBuffer ( ) [inline, virtual]

Flush output buffer.

Definition at line 325 of file IpJournalist.hpp.

virtual void Ipopt::Journal::PrintImpl ( EJournalCategory  category,
EJournalLevel  level,
const char *  str 
) [protected, pure virtual]

Print to the designated output location.

Implemented in Ipopt::StreamJournal, Ipopt::FileJournal, IpoptRJournal, and Ipopt::MatlabJournal.

virtual void Ipopt::Journal::PrintfImpl ( EJournalCategory  category,
EJournalLevel  level,
const char *  pformat,
va_list  ap 
) [protected, pure virtual]

Printf to the designated output location.

Implemented in Ipopt::StreamJournal, Ipopt::FileJournal, IpoptRJournal, and Ipopt::MatlabJournal.

virtual void Ipopt::Journal::FlushBufferImpl ( ) [protected, pure virtual]

Flush output buffer.

Implemented in Ipopt::StreamJournal, Ipopt::FileJournal, IpoptRJournal, and Ipopt::MatlabJournal.

void Ipopt::Journal::operator= ( const Journal ) [private]

Overloaded Equals Operator.


Member Data Documentation

std::string Ipopt::Journal::name_ [private]

Name of the output location.

Definition at line 368 of file IpJournalist.hpp.

vector of integers indicating the level for each category

Definition at line 371 of file IpJournalist.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines