#ifndef ROOT_THaPrintOption
#define ROOT_THaPrintOption
#include "Rtypes.h"
class TString;
Option_t* const kPRINTLINE = "LINE";
Option_t* const kPRINTSTATS = "STATS";
class THaPrintOption {
public:
THaPrintOption();
THaPrintOption( const char* string );
THaPrintOption( const THaPrintOption& opt );
THaPrintOption& operator=( const THaPrintOption& rhs );
THaPrintOption& operator=( const char* rhs );
THaPrintOption& operator=( const TString& rhs );
virtual ~THaPrintOption();
Int_t GetNOptions() const { return fNTokens; }
const char* GetOption( Int_t i = 0 ) const;
Int_t GetValue( Int_t i = 0 ) const;
Bool_t IsLine() const;
const char* Data() const { return fString; }
operator const char*() const { return Data(); }
const char* operator[]( Int_t i ) const { return GetOption(i); }
const char* operator()( Int_t i ) const { return GetOption(i); }
protected:
char* fString;
char* fTokenStr;
Bool_t fParsed;
Int_t fNTokens;
char** fTokens;
Int_t* fParam;
char* fEmpty;
virtual void Parse();
ClassDef(THaPrintOption,0)
};
inline
const char* THaPrintOption::GetOption( Int_t i ) const
{
return ( i>=0 && i<fNTokens && fTokens ) ? fTokens[i] : fEmpty;
}
inline
Int_t THaPrintOption::GetValue( Int_t i ) const
{
return ( i>=0 && i<fNTokens && fParam ) ? fParam[i] : 0;
}
inline
Bool_t THaPrintOption::IsLine() const
{
const char* opt = GetOption();
return ( !strcmp( opt, kPRINTLINE ) || !strcmp( opt, kPRINTSTATS ));
}
#endif
Last change: Sat Nov 7 21:26:49 2009
Last generated: 2009-11-07 21:26
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.