#include <AsciiData.hh>
Inheritance diagram for EMCDIGI:
Public Member Functions | |
EMCDIGI () | |
EMCDIGI () | |
bool | initialized () const |
bool | initialized () const |
void | set_initialized () |
void | set_initialized () |
void | unset_initalized () |
void | unset_initalized () |
Public Attributes | |
int | nDigi |
std::vector< EmcDigiType > | digiCol |
std::vector< EmcDigiType > | digiCol |
Protected Member Functions | |
void | check_start_tag (std::istream &is, const char *tag) |
void | check_start_tag (std::istream &is, const char *tag) |
void | check_end_tag (std::istream &is, const char *tag) |
void | check_end_tag (std::istream &is, const char *tag) |
Friends | |
std::istream & | operator>> (std::istream &, EMCDIGI &x) |
std::ostream & | operator<< (std::ostream &, const EMCDIGI &x) |
std::istream & | operator>> (std::istream &, EMCDIGI &x) |
std::ostream & | operator<< (std::ostream &, const EMCDIGI &x) |
Definition at line 318 of file AsciiData.hh.
EMCDIGI::EMCDIGI | ( | ) | [inline] |
EMCDIGI::EMCDIGI | ( | ) | [inline] |
void Tagged::check_end_tag | ( | std::istream & | is, | |
const char * | tag | |||
) | [protected, inherited] |
void Tagged::check_end_tag | ( | std::istream & | is, | |
const char * | tag | |||
) | [inline, protected, inherited] |
Definition at line 108 of file dmplib.hh.
References deljobs::string.
00109 { 00110 char c; 00111 is >> c; 00112 if(c != '}') 00113 throw AsciiNoEndChar(); 00114 00115 std::string in_tag; 00116 is >> in_tag; 00117 if(in_tag != tag) 00118 throw AsciiWrongEndTag(tag, in_tag); 00119 }
void Tagged::check_start_tag | ( | std::istream & | is, | |
const char * | tag | |||
) | [protected, inherited] |
void Tagged::check_start_tag | ( | std::istream & | is, | |
const char * | tag | |||
) | [inline, protected, inherited] |
Definition at line 81 of file dmplib.hh.
References Tagged::set_initialized(), and deljobs::string.
00082 { 00083 // read input, check for '{' character 00084 char c; 00085 if(!(is >> c) || (c != '{')) { 00086 throw AsciiNoStartChar(); 00087 } 00088 00089 // compare tags 00090 std::string in_tag; 00091 is >> in_tag; 00092 if(in_tag != tag) 00093 throw AsciiWrongStartTag(tag, in_tag); 00094 00095 // check for empty block 00096 is >> c; 00097 if(c == '}') { 00098 is >> in_tag; 00099 if(in_tag != tag) 00100 throw AsciiWrongEndTag(tag, in_tag); 00101 } else { 00102 is.putback(c); 00103 set_initialized(); 00104 } 00105 }
bool Tagged::initialized | ( | ) | const [inherited] |
bool Tagged::initialized | ( | ) | const [inline, inherited] |
Definition at line 63 of file dmplib.hh.
References Tagged::m_initialized.
00064 { 00065 return m_initialized; 00066 }
void Tagged::set_initialized | ( | ) | [inherited] |
void Tagged::set_initialized | ( | ) | [inline, inherited] |
Definition at line 69 of file dmplib.hh.
References Tagged::m_initialized.
Referenced by Tagged::check_start_tag(), main(), BesAsciiIO::SaveAsciiEvents(), and BesAsciiIO::SaveHitAsciiEvents().
00070 { 00071 m_initialized = true; 00072 }
void Tagged::unset_initalized | ( | ) | [inherited] |
void Tagged::unset_initalized | ( | ) | [inline, inherited] |
Definition at line 75 of file dmplib.hh.
References Tagged::m_initialized.
00076 { 00077 m_initialized = false; 00078 }
std::ostream& operator<< | ( | std::ostream & | os, | |
const EMCDIGI & | x | |||
) | [friend] |
Definition at line 649 of file AsciiData.cc.
00650 { 00651 os << std::endl << "{ EMCDIGI" << std::endl; 00652 if(x.initialized()) { 00653 os << " " << x.nDigi; 00654 {for(int i = 0; i < x.nDigi; i++) { 00655 os << " " << x.digiCol[i]; 00656 }} 00657 } 00658 os << std::endl << "} EMCDIGI" << std::endl; 00659 return os; 00660 }
std::ostream& operator<< | ( | std::ostream & | os, | |
const EMCDIGI & | x | |||
) | [friend] |
Definition at line 649 of file AsciiData.cc.
00650 { 00651 os << std::endl << "{ EMCDIGI" << std::endl; 00652 if(x.initialized()) { 00653 os << " " << x.nDigi; 00654 {for(int i = 0; i < x.nDigi; i++) { 00655 os << " " << x.digiCol[i]; 00656 }} 00657 } 00658 os << std::endl << "} EMCDIGI" << std::endl; 00659 return os; 00660 }
std::istream& operator>> | ( | std::istream & | is, | |
EMCDIGI & | x | |||
) | [friend] |
Definition at line 636 of file AsciiData.cc.
00637 { 00638 x.check_start_tag(is,"EMCDIGI"); 00639 if(!x.initialized()) return is; 00640 is >> x.nDigi; 00641 x.digiCol.resize(x.nDigi); 00642 {for(int i = 0; i < x.nDigi; i++) { 00643 is >> x.digiCol[i]; 00644 }} 00645 x.check_end_tag(is, "EMCDIGI"); 00646 return is; 00647 }
std::istream& operator>> | ( | std::istream & | is, | |
EMCDIGI & | x | |||
) | [friend] |
Definition at line 636 of file AsciiData.cc.
00637 { 00638 x.check_start_tag(is,"EMCDIGI"); 00639 if(!x.initialized()) return is; 00640 is >> x.nDigi; 00641 x.digiCol.resize(x.nDigi); 00642 {for(int i = 0; i < x.nDigi; i++) { 00643 is >> x.digiCol[i]; 00644 }} 00645 x.check_end_tag(is, "EMCDIGI"); 00646 return is; 00647 }
std::vector<EmcDigiType> EMCDIGI::digiCol |
Definition at line 274 of file AsciiData.h.
std::vector<EmcDigiType> EMCDIGI::digiCol |
int EMCDIGI::nDigi |