ENSDF++ 1.1
An easy, fast and simple way to run querys towards the ENSDF database, written in C++.
VerbosePrinterEventEnabled.cpp
Go to the documentation of this file.
00001 #include "VerbosePrinterEventEnabled.h"
00002 
00003 VerbosePrinterEventEnabled::VerbosePrinterEventEnabled()
00004 {
00005   myPrinter = NULL;
00006 }
00007 
00008 VerbosePrinterEventEnabled::~VerbosePrinterEventEnabled()
00009 {
00010   removeListener();
00011 }
00012 
00013 void VerbosePrinterEventEnabled::registerListener(VerbosePrinter * Listener)
00014 {
00015   myPrinter = Listener;
00016   if(myPrinter!=NULL)
00017     {
00018       myPrinter->registerConnectedEventClass(this);
00019     }
00020   for(list<VerbosePrinterEventEnabled *>::iterator it = children.begin(); it!=children.end(); it++)
00021     {
00022       if((*it)!=NULL)
00023         (*it)->registerListener(Listener);
00024     }
00025 }
00026 
00027 void VerbosePrinterEventEnabled::removeListener()
00028 {
00029   if(myPrinter!=NULL)
00030     {
00031       myPrinter->unRegisterConnectedEventClass(this);
00032     }
00033   myPrinter = NULL;
00034 }
00035 
00036 void VerbosePrinterEventEnabled::registerChild(VerbosePrinterEventEnabled * child)
00037 {
00038   children.push_back(child);
00039 }
00040 
00041 bool VerbosePrinterEventEnabled::vPrint(int verbosityLevel, const char* message, ...) const
00042 {
00043   if(myPrinter!=NULL)
00044     {
00045       va_list args;
00046       va_start(args, message);
00047       myPrinter->va_print(verbosityLevel, message, args);
00048       va_end(args);
00049       return true;
00050     }
00051   return false;
00052 }
 All Classes Files Functions Variables Enumerations Enumerator Defines

Back to the main page of the Precalibrated Ion Beam Identification Detector project

Created by Rikard Lundmark