3 modified files
lcio/src/cpp/src/TESTS
diff -u -r1.3 -r1.4
--- test_trackerhit.cc 17 Jun 2010 12:29:00 -0000 1.3
+++ test_trackerhit.cc 15 Nov 2010 16:58:01 -0000 1.4
@@ -13,6 +13,8 @@
#include "IMPL/TrackerHitImpl.h"
#include "IMPL/LCFlagImpl.h"
+//#include "UTIL/Operators.h"
+
//#include <iostream>
using namespace std ;
@@ -63,6 +65,10 @@
trkHit->setEDepError( (i+j)*.3 ) ;
double pos[3] = { i, j, i*j } ;
trkHit->setPosition( pos ) ;
+
+ float cov[3] = { i, j, i+j } ;
+ trkHit->setCovMatrix( cov );
+
trkHits->addElement( trkHit ) ;
}
evt->addCollection( trkHits , "TrackerHits") ;
@@ -100,6 +106,8 @@
TrackerHit* trkHit = dynamic_cast<TrackerHit*>(trkHits->getElementAt(j)) ;
+ //std::cout << *trkHit << std::endl ;
+
//MYTEST( trkHit->getEDep() , i*j*117. , "EDep" ) ;
MYTEST( trkHit->getdEdx() , i*j*117. , "dEdx" ) ;
// remove float converstion and check what happens ;)
@@ -112,6 +120,13 @@
MYTEST( pos[1] , j , " pos[1] " ) ;
MYTEST( pos[2] , i*j , " pos[2] " ) ;
+
+ const FloatVec& cov = trkHit->getCovMatrix() ;
+
+ MYTEST( cov[0] , i , " cov[0] " ) ;
+ MYTEST( cov[1] , j , " cov[1] " ) ;
+ MYTEST( cov[2] , i+j , " cov[2] " ) ;
+
}
}
lcRdr->close() ;
lcio/src/cpp/src/UTIL
diff -u -r1.68 -r1.69
--- LCTOOLS.cc 18 Jun 2010 13:43:14 -0000 1.68
+++ LCTOOLS.cc 15 Nov 2010 16:58:02 -0000 1.69
@@ -430,7 +430,7 @@
int nPrint = nHits > MAX_HITS ? MAX_HITS : nHits ;
std::cout << endl
- << " [ id ] | position (x,y,z) | time |type | EDep | EDepError"
+ << " [ id ] | position (x,y,z) | time |type | EDep | EDepError | cov(x,x), cov(y,x), cov(y,y), cov(z,x), cov(z,y), cov(z,z)"
<< endl
<< endl ;
@@ -444,7 +444,7 @@
// rawHitId = hit->getRawDataHit()->id() ;
//printf(" [%8.8x] | (%5.3e,%5.3e,%5.3e) | %5.3e | %5.3e | [%d] | %4.3e | %4.3e \n"
- printf(" [%8.8x] | (%5.3e,%5.3e,%5.3e) | %5.3e | [%d] | %4.3e | %4.3e \n"
+ printf(" [%8.8x] | (%5.3e,%5.3e,%5.3e) | %5.3e | [%d] | %4.3e | %4.3e |"
, hit->id()
, hit->getPosition()[0]
, hit->getPosition()[1]
@@ -456,6 +456,12 @@
, hit->getEDepError()
) ;
+ for( unsigned int j=0; j < (hit->getCovMatrix().size()-1); j++ ){
+ printf(" %4.2e,", hit->getCovMatrix()[j] ) ;
+ }
+ printf( " %4.2e\n", hit->getCovMatrix()[ hit->getCovMatrix().size() ] ) ;
+
+
const LCObjectVec& rawHits = hit->getRawHits() ;
cout << " rawHits: " ;
try{
lcio/src/cpp/src/UTIL
diff -u -r1.10 -r1.11
--- Operators.cc 24 Sep 2010 11:13:20 -0000 1.10
+++ Operators.cc 15 Nov 2010 16:58:02 -0000 1.11
@@ -2191,6 +2191,16 @@
out << setw(30) << left << "E_deposited " << setfill(' ') << right << setw(40) << hit->getEDep() << endl;
out << setw(30) << left << "Time " << setfill(' ') << right << setw(40) << hit->getTime() << endl;
out << setw(30) << left << "Type " << setfill(' ') << right << setw(40) << hit->getType() << endl;
+
+ out << "Covariance of the position (x,y,z):" << endl ;
+ out << " cov(x,x) , cov(y,x) , cov(y,y) , cov(z,x) , cov(z,y) , cov(z,z)" << endl ;
+
+ out << " " << scientific << setprecision(2) ;
+ for( unsigned int i=0 ; i < (hit->getCovMatrix().size() - 1) ; i++ ){
+ out << hit->getCovMatrix()[i] << " , ";
+ }
+ out << hit->getCovMatrix()[ hit->getCovMatrix().size() ] << endl ;
+
out << noshowpos;
setflags(out, flags);
CVSspam 0.2.8