DD::Image::OpMessageHandler Class Reference

This component of an op handles its messages to the user. More...

List of all members.

Public Member Functions

void addMessage (const OpMessage &lrMessage, Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees)
void removeMessage (const OpMessage &lrMessage, Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees)
void removeMessage (OpMessage::ID lID, Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees)
void clearAllMessages (Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees)
void clearMessagesFromSource (Op *lpSourceOp, OpMessage::Source lSource, const std::vector< OpTree * > &lrAffectedTrees)
void markMessagesAsOld ()
 Marks all current messages as old, for potential clearing later.
void clearOldMessages (Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees)
 Clears any messages that are marked as old.
void notifyChildrenChanged (Op *lpSourceOp, const std::vector< OpTree * > &lrAffectedTrees) const
 Notify all observers that this op's vector of children has changed (which affects what messages apply to)
bool hasMessage () const
bool hasError () const
int getNumMessages () const
int getNumErrors () const
const OpMessagegetFirstMessage () const
const OpMessagegetLatestMessage () const
const OpMessagegetFirstError () const
const OpMessagegetLatestError () const
std::string getDebugInfo () const
 Debugging info: returns information on current messages.
std::string getDetailedDebugInfo () const

Static Public Member Functions

static void AddObserver (OpMessageObserver *lpObserver)
static void RemoveObserver (OpMessageObserver *lpObserver)
static void IgnoreErrors ()
static void ObserveErrors ()

Detailed Description

This component of an op handles its messages to the user.


Member Function Documentation

void OpMessageHandler::addMessage ( const OpMessage lrMessage,
Op lpSourceOp,
const std::vector< OpTree * > &  lrAffectedTrees 
)

addMessage only actually adds a new message if it is unique - i. e. if its data (other than the ID) doesn't match any message currently present.

References DD::Image::GetOpText(), DD::Image::gOpManager, DD::Image::OpMessage::isEquivalentTo(), and DD::Image::OpMessageObserver::kMC_Set.

Referenced by DD::Image::Op::critical(), DD::Image::Op::debug(), DD::Image::Op::error(), and DD::Image::Op::warning().