Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Operators.cc

Go to the documentation of this file.
00001 #include "UTIL/Operators.h"
00002 
00003 ////////////////////////////////////////////////////////////////////////////////
00004 // EXP: UNDER DEVELOPMENT!!!
00005 ////////////////////////////////////////////////////////////////////////////////
00006 
00007 using namespace std;
00008 using namespace EVENT;
00009 
00010 namespace UTIL{
00011 
00012 /* 
00013   // EXP: INDEX MAP - UNDER DEVELOPMENT
00014   
00015   std::ostream& operator<<( std::ostream& out, const UTIL::lcio_short<EVENT::Vertex, EVENT::LCCollection>& sV){
00016     const EVENT::Vertex* v = sV.obj;
00017     const EVENT::LCCollection* col = sV.cobj;
00018     
00019     //TODO: PROBLEM HERE!!!
00020     UTIL::IndexMap im(col,"AlgorithmNames","AlgorithmTypes");
00021     
00022     out << setfill('0');
00023     out << " [" << setw(8) << hex << v->id() << "] | " << v->isPrimary()<< " | ";
00024     out << setfill(' ') << setw(17) << left << im.decode( v->getAlgorithmType() ) << " | ";
00025     
00026     out << setfill('0') << right << scientific << setprecision(3) << v->getChi2() << " | " << v->getProbability() << " | " <<
00027         v->getPosition()[0] << "," <<
00028         v->getPosition()[1] << "," <<
00029         v->getPosition()[2] << " | [" ;
00030 
00031 //    for(int i=0;i<VTXCOVMATRIX;i++)
00032 //      out << v->getCovMatrix()[i] << (i<(VTXCOVMATRIX-1)?",":" | [");
00033     out << setw(3) << v->getParameters().size() << "] | [";
00034     out << setw(8) << hex << (v->getAssociatedParticle()!=NULL?v->getAssociatedParticle()->id():0) << "]\n";
00035     
00036     return out;
00037 
00038   }
00039 */
00040 
00041   std::ostream& operator<<( std::ostream& out, const UTIL::lcio_short<EVENT::Vertex>& sV){
00042     const EVENT::Vertex* v = sV.obj;
00043     
00044     out << setfill('0');
00045     out << " [" << setw(8) << hex << v->id() << "] | " << v->isPrimary()<< " | ";
00046     out << setfill(' ') << setw(17) << left << v->getAlgorithmType() << " | ";
00047     
00048     out << setfill('0') << right << scientific << setprecision(3) << v->getChi2() << " | " << v->getProbability() << " | " <<
00049         v->getPosition()[0] << "," <<
00050         v->getPosition()[1] << "," <<
00051         v->getPosition()[2] << " | [" ;
00052 
00053     out << setw(3) << v->getParameters().size() << "] | [";
00054     out << setw(8) << hex << (v->getAssociatedParticle()!=NULL?v->getAssociatedParticle()->id():0) << "]\n";
00055     
00056     return out;
00057 
00058   }
00059  
00060   std::ostream& operator<<( std::ostream& out, const EVENT::Vertex* v){
00061     
00062     out << setfill('0');
00063     out << "Vertex ID:\t\t[" << setw(8) << hex << v->id() << "]" << endl;
00064     out << "Is Primary Vertex:\t" << (v->isPrimary() ? "yes":"no") << endl;
00065     out << "Algorithm Type:\t" << v->getAlgorithmType() << endl;
00066     out << scientific << setprecision(5);
00067     out << "Chi2:\t\t\t" << v->getChi2() << endl;
00068     out << "Probability:\t\t" << v->getProbability() << endl;
00069     out << "Position (x, y, z):\t" <<
00070         v->getPosition()[0] <<", "<<
00071         v->getPosition()[1] <<", "<<
00072         v->getPosition()[2] << endl;
00073     
00074     out << "Covariance Matrix:\t";
00075     for(unsigned int i=0; i<v->getCovMatrix().size(); i++)
00076       out << v->getCovMatrix()[i] << (i<(v->getCovMatrix().size()-1)?", ":"\n");
00077     
00078     out << "Parameters:";
00079     if(v->getParameters().size()==0){
00080       out << "\t\t[Empty]" << endl;
00081     }
00082     else { out << endl; }
00083     for(unsigned int i=0; i < v->getParameters().size(); i++){
00084       out << "   Parameter [";
00085       out << setw(3) << i << "]:\t";
00086       out << scientific << setprecision(5) << v->getParameters()[i] << endl;
00087     }
00088     
00089     out << "Associated Reconstructed Particle ID:\t["; 
00090     out << setw(8) << hex << (v->getAssociatedParticle()!=NULL?v->getAssociatedParticle()->id():0) <<"]\n\n";
00091    
00092     return out;
00093   }
00094   
00095   const std::string& header(const EVENT::Vertex* v){
00096     
00097     static std::string _vtxh(
00098       "\n    [id]    |pri|     alg. type     |    chi2   |    prob.  |      position ( x, y, z)      | [par] |  [idRecP]  \n");
00099     _vtxh+=tail(v);
00100     return _vtxh;
00101   }
00102   
00103   const std::string& tail(const EVENT::Vertex* v){
00104     
00105     static std::string _vtxt(
00106         "------------|---|-------------------|-----------|-----------|-------------------------------|-------|------------\n");
00107     return _vtxt;
00108   }
00109 
00110 //deprecated
00111 /*
00112   std::string brief(const EVENT::Vertex* v){
00113     std::string str;
00114     char buffer[256];
00115           
00116     sprintf( buffer, " [%8.8x] | %1d | %4.2e | %4.2e | %5.3e, %5.3e, %5.3e | "
00117       , v->id()
00118       , v->isPrimary()
00119       , v->getChi2()
00120       , v->getProbability()
00121       , v->getPosition()[0]
00122       , v->getPosition()[1]
00123       , v->getPosition()[2]
00124     ) ;
00125 
00126     for(int i=0; i<VTXCOVMATRIX; i++)
00127       sprintf( buffer, "%s%5.3e%s", buffer, v->getCovMatrix()[i], (i<(VTXCOVMATRIX-1) ? ", ":" |") ) ;
00128     
00129     sprintf( buffer, "%s [%8.8x]\n", buffer, (v->getAssociatedParticle()!=NULL? v->getAssociatedParticle()->id(): 0) ) ;
00130     
00131     str = buffer;
00132     return str;
00133   }
00134 */
00135 
00136 } // namespace
00137  

Generated on Sun Jun 3 06:32:05 2007 for A TPC Tracking Environment by  doxygen 1.3.9.1