Gaudi Framework, version v20r4

Generated: 8 Jan 2009

TupleDecorator.cpp

Go to the documentation of this file.
00001 // $Id: TupleDecorator.cpp,v 1.7 2007/08/07 14:05:33 marcocle Exp $
00002 // ============================================================================
00003 // Include files 
00004 // ============================================================================
00005 // CLHEP
00006 // ============================================================================/
00007 #include "CLHEP/Matrix/GenMatrix.h"
00008 #include "CLHEP/Matrix/Matrix.h"
00009 #include "CLHEP/Matrix/Vector.h"
00010 // ============================================================================/
00011 // GaudiAlg
00012 // ============================================================================
00013 #include "GaudiAlg/TupleObj.h"
00014 #include "GaudiAlg/Tuple.h"
00015 // ============================================================================
00016 // GaudiPython
00017 // ============================================================================
00018 #include "GaudiPython/Vector.h"
00019 #include "GaudiPython/TupleDecorator.h"
00020 // ===========================================================================
00026 // ============================================================================
00027 namespace 
00028 {
00029   // ==========================================================================
00030   template <class TYPE> 
00031   inline StatusCode _fill ( const Tuples::Tuple& tuple ,
00032                             const std::string&   name  ,  
00033                             const TYPE&          value ) 
00034   { 
00035     return tuple.valid() ? tuple->column(name,value) : StatusCode::FAILURE ; 
00036   } 
00037 } 
00038 // ============================================================================
00039 INTuple* GaudiPython::TupleDecorator::nTuple 
00040 ( const Tuples::Tuple& tuple ) 
00041 {
00042   if ( !tuple.valid() ) { return 0 ; }
00043   return tuple->tuple() ;
00044 }
00045 // ============================================================================
00046 NTuple::Tuple* GaudiPython::TupleDecorator::ntuple 
00047 ( const Tuples::Tuple& tuple ) 
00048 {
00049   if ( !tuple.valid() ) { return 0 ; }
00050   return tuple->tuple() ;
00051 }
00052 // ============================================================================
00053 bool        GaudiPython::TupleDecorator::valid 
00054 ( const Tuples::Tuple& tuple ) { return tuple.valid() ; }
00055 // ============================================================================
00056 StatusCode  GaudiPython::TupleDecorator::write  
00057 ( const Tuples::Tuple& tuple ) 
00058 {
00059   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00060   return tuple->write(); 
00061 } 
00062 // ============================================================================
00063 StatusCode GaudiPython::TupleDecorator::column 
00064 ( const Tuples::Tuple& tuple , 
00065   const std::string&   name  , 
00066   const int            value ) 
00067 { return _fill ( tuple , name , value ) ; } 
00068 // ============================================================================
00069 StatusCode GaudiPython::TupleDecorator::column 
00070 ( const Tuples::Tuple& tuple , 
00071   const std::string&   name  , 
00072   const int            value , 
00073   const int            minv  , 
00074   const int            maxv  ) 
00075 {
00076   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00077   return tuple -> column ( name , value , minv , maxv ) ;
00078 }
00079 // ============================================================================
00080 StatusCode GaudiPython::TupleDecorator::column 
00081 ( const Tuples::Tuple& tuple , 
00082   const std::string&   name  , 
00083   const double         value ) 
00084 { return _fill ( tuple , name , value ) ; } 
00085 // ============================================================================
00086 StatusCode GaudiPython::TupleDecorator::column 
00087 ( const Tuples::Tuple& tuple , 
00088   const std::string&   name  , 
00089   const bool           value ) 
00090 { return _fill ( tuple , name , value ) ; } 
00091 // ============================================================================
00092 StatusCode GaudiPython::TupleDecorator::column
00093 ( const Tuples::Tuple&  tuple , 
00094   const std::string&    name  , 
00095   IOpaqueAddress*       value ) 
00096 {
00097   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00098   return tuple->column( name , value ) ;
00099 } 
00100 // ============================================================================
00101 StatusCode GaudiPython::TupleDecorator::column 
00102 ( const Tuples::Tuple&        tuple , 
00103   const std::string&          name  ,
00104   const Gaudi::LorentzVector& value ) 
00105 { return _fill ( tuple , name , value ) ; }
00106 // ============================================================================
00107 StatusCode GaudiPython::TupleDecorator::column 
00108 ( const Tuples::Tuple&               tuple ,
00109   const std::string&                 name  ,
00110   const Gaudi::PtEtaPhiEVector&      value ) 
00111 { return _fill ( tuple , name , value ) ; }
00112 // ============================================================================
00113 StatusCode GaudiPython::TupleDecorator::column 
00114 ( const Tuples::Tuple&               tuple ,
00115   const std::string&                 name  ,
00116   const Gaudi::XYZVector&            value ) 
00117 { return _fill ( tuple , name , value ) ; }
00118 // ============================================================================
00119 StatusCode GaudiPython::TupleDecorator::column 
00120 ( const Tuples::Tuple&               tuple ,
00121   const std::string&                 name  ,
00122   const Gaudi::Polar3DVector&        value ) 
00123 { return _fill ( tuple , name , value ) ; }
00124 // ============================================================================
00125 StatusCode GaudiPython::TupleDecorator::column 
00126 ( const Tuples::Tuple&               tuple ,
00127   const std::string&                 name  ,
00128   const Gaudi::RhoEtaPhiVector&      value ) 
00129 { return _fill ( tuple , name , value ) ; }
00130 // ============================================================================
00131 StatusCode GaudiPython::TupleDecorator::column 
00132 ( const Tuples::Tuple&               tuple ,
00133   const std::string&                 name  ,
00134   const Gaudi::RhoZPhiVector&        value ) 
00135 { return _fill ( tuple , name , value ) ; }
00136 // ============================================================================
00137 StatusCode GaudiPython::TupleDecorator::column 
00138 ( const Tuples::Tuple&               tuple ,
00139   const std::string&                 name  ,
00140   const Gaudi::XYZPoint&             value ) 
00141 { return _fill ( tuple , name , value ) ; }
00142 // ============================================================================
00143 StatusCode GaudiPython::TupleDecorator::column 
00144 ( const Tuples::Tuple&               tuple ,
00145   const std::string&                 name  ,
00146   const Gaudi::Polar3DPoint&         value ) 
00147 { return _fill ( tuple , name , value ) ; }
00148 // ============================================================================
00149 StatusCode GaudiPython::TupleDecorator::column 
00150 ( const Tuples::Tuple&               tuple ,
00151   const std::string&                 name  ,
00152   const Gaudi::RhoEtaPhiPoint&       value ) 
00153 { return _fill ( tuple , name , value ) ; }
00154 // ============================================================================
00155 StatusCode GaudiPython::TupleDecorator::column 
00156 ( const Tuples::Tuple&               tuple ,
00157   const std::string&                 name  ,
00158   const Gaudi::RhoZPhiPoint&         value ) 
00159 { return _fill ( tuple , name , value ) ; }
00160 // ============================================================================
00161 StatusCode GaudiPython::TupleDecorator::farray
00162 ( const Tuples::Tuple&       tuple  , 
00163   const std::string&         name   ,
00164   const std::vector<double>& data   ,
00165   const std::string&         length , 
00166   const size_t               maxv   ) 
00167 {
00168   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00169   return tuple->farray( name , data.begin() , data.end() , length , maxv ) ;
00170 } 
00171 // ============================================================================
00172 StatusCode GaudiPython::TupleDecorator::farray
00173 ( const Tuples::Tuple&       tuple  , 
00174   const std::string&         name   ,
00175   const CLHEP::HepVector&    data   ,
00176   const std::string&         length , 
00177   const size_t               maxv   ) 
00178 {  
00179   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00180   // use the trick!
00181   const double* begin = &(data[0]);
00182   const double* end   =   begin + data.num_row() ;
00183   return tuple->farray ( name , begin , end , length , maxv ) ;
00184 } 
00185 // ============================================================================
00186 StatusCode GaudiPython::TupleDecorator::fmatrix
00187 ( const Tuples::Tuple&           tuple  , 
00188   const std::string&             name   ,
00189   const GaudiPython::Matrix&     data   , 
00190   const Tuples::TupleObj::MIndex cols   , // fixed !!!
00191   const std::string&             length , 
00192   const size_t                   maxv   ) 
00193 {
00194   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00195   if ( !data.empty() && cols != data.front().size() ) 
00196   { return tuple -> 
00197       Error  ("GP:fmatrix(1): mismatch in matrix dimensions!" ) ; }    
00198   return tuple->fmatrix( name , data , data.size() , cols , length , maxv ) ;
00199 } 
00200 // ============================================================================
00201 StatusCode GaudiPython::TupleDecorator::fmatrix
00202 ( const Tuples::Tuple&           tuple  , 
00203   const std::string&             name   ,
00204   const CLHEP::HepGenMatrix&     data   , 
00205   const Tuples::TupleObj::MIndex cols   , // fixed !!!
00206   const std::string&             length , 
00207   const size_t                   maxv   ) 
00208 {
00209   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00210   if ( cols != data.num_col() ) 
00211   { return tuple -> 
00212       Error  ("GP:fmatrix(2): mismatch in matrix dimensions!" ) ; }    
00213   return tuple->fmatrix( name , data , data.num_row() , cols , length , maxv ) ;
00214 } 
00215 // ============================================================================
00216 StatusCode GaudiPython::TupleDecorator::fmatrix 
00217 ( const Tuples::Tuple&                     tuple  , 
00218   const std::string&                       name   , 
00219   const GaudiUtils::VectorMap<int,double>& info   , 
00220   const std::string&                       length , 
00221   const size_t                             maxv   ) 
00222 {
00223   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00224   return tuple->fmatrix ( name , info , length , maxv ) ;
00225 } 
00226 // ============================================================================
00227 StatusCode GaudiPython::TupleDecorator::array
00228 ( const Tuples::Tuple&       tuple  , 
00229   const std::string&         name   ,
00230   const std::vector<double>& data   )
00231 {
00232   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00233   return tuple->array ( name , data.begin() , data.end() ) ;
00234 } 
00235 // ============================================================================
00236 StatusCode GaudiPython::TupleDecorator::array
00237 ( const Tuples::Tuple&       tuple  , 
00238   const std::string&         name   , 
00239   const CLHEP::HepVector&    data   ) 
00240 {
00241   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00242   return tuple->array( name , data , data.num_row() ) ;
00243 } 
00244 // ============================================================================
00245 StatusCode GaudiPython::TupleDecorator::array
00246 ( const Tuples::Tuple&        tuple  , 
00247   const std::string&          name   ,
00248   const Gaudi::Vector1&       data   )
00249 {
00250   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00251   return tuple->array( name , data ) ;
00252 } 
00253 // ============================================================================
00254 StatusCode GaudiPython::TupleDecorator::array
00255 ( const Tuples::Tuple&        tuple  , 
00256   const std::string&          name   ,
00257   const Gaudi::Vector2&       data   )
00258 {
00259   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00260   return tuple->array( name , data ) ;
00261 } 
00262 // ============================================================================
00263 StatusCode GaudiPython::TupleDecorator::array
00264 ( const Tuples::Tuple&        tuple  , 
00265   const std::string&          name   ,
00266   const Gaudi::Vector3&       data   )
00267 {
00268   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00269   return tuple->array( name , data.begin() , data.begin() + 3  ) ;
00270 } 
00271 // ============================================================================
00272 StatusCode GaudiPython::TupleDecorator::array
00273 ( const Tuples::Tuple&        tuple  , 
00274   const std::string&          name   ,
00275   const Gaudi::Vector4&       data   )
00276 {
00277   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00278   // return tuple->array( name , data ) ;
00279   return tuple->array( name , data.begin() , data.begin()+4 ) ;
00280 } 
00281 // ============================================================================
00282 StatusCode GaudiPython::TupleDecorator::array
00283 ( const Tuples::Tuple&        tuple  , 
00284   const std::string&          name   ,
00285   const Gaudi::Vector5&       data   )
00286 {
00287   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00288   return tuple->array( name , data ) ;
00289 } 
00290 // ============================================================================
00291 StatusCode GaudiPython::TupleDecorator::array
00292 ( const Tuples::Tuple&        tuple  , 
00293   const std::string&          name   ,
00294   const Gaudi::Vector6&       data   )
00295 {
00296   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00297   return tuple->array( name , data ) ;
00298 } 
00299 // ============================================================================
00300 StatusCode GaudiPython::TupleDecorator::array
00301 ( const Tuples::Tuple&        tuple  , 
00302   const std::string&          name   ,
00303   const Gaudi::Vector7&       data   )
00304 {
00305   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00306   return tuple->array( name , data ) ;
00307 } 
00308 // ============================================================================
00309 StatusCode GaudiPython::TupleDecorator::array
00310 ( const Tuples::Tuple&        tuple  , 
00311   const std::string&          name   ,
00312   const Gaudi::Vector8&       data   )
00313 {
00314   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00315   return tuple->array( name , data ) ;
00316 } 
00317 // ============================================================================
00318 StatusCode GaudiPython::TupleDecorator::array
00319 ( const Tuples::Tuple&        tuple  , 
00320   const std::string&          name   ,
00321   const Gaudi::Vector9&       data   )
00322 {
00323   if ( !tuple.valid() ) { return StatusCode::FAILURE ; } 
00324   return tuple->array( name , data ) ;
00325 } 
00326 // ============================================================================
00327 StatusCode GaudiPython::TupleDecorator::matrix
00328 ( const Tuples::Tuple&            tuple , 
00329   const std::string&              name   , 
00330   const GaudiPython::Matrix&      data  , 
00331   const Tuples::TupleObj::MIndex  cols  )  // fixed !!!
00332 {
00333   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }  
00334   if ( data.empty()   ) 
00335   { return tuple -> 
00336       Warning ("GP:matrix(1): empty fixed matrix, skip matrix "    ) ; }
00337   if ( cols != data.front().size() ) 
00338   { return tuple -> 
00339       Error  ("GP:matrix(1): mismatch in fixed matrix dimensions!" ) ; }    
00340   return tuple -> matrix ( name , data , data.size() , cols  ) ;
00341 } 
00342 // ============================================================================
00343 StatusCode GaudiPython::TupleDecorator::matrix
00344 ( const Tuples::Tuple&            tuple , 
00345   const std::string&              name   , 
00346   const CLHEP::HepGenMatrix&      data  ) 
00347 {
00348   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00349   if ( 1 > data.num_col()   ) 
00350   { return tuple -> 
00351       Error  ("GP:matrix(2): illegal fixed matrix num_col" ) ; }    
00352   if ( 1 > data.num_row()   ) 
00353   { return tuple -> 
00354       Error  ("GP:matrix(2): illegal fixed matrix num_row" ) ; }    
00355   return tuple->matrix( name , data , data.num_row() , data.num_col() ) ;  
00356 } 
00357 // ============================================================================
00358 StatusCode GaudiPython::TupleDecorator::matrix
00359 ( const Tuples::Tuple&    tuple , 
00360   const std::string&      name  , 
00361   const Gaudi::Matrix1x1& data  ) 
00362 {
00363   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00364   return tuple->matrix ( name , data ) ;
00365 } 
00366 // ============================================================================
00367 StatusCode GaudiPython::TupleDecorator::matrix
00368 ( const Tuples::Tuple&    tuple , 
00369   const std::string&      name  , 
00370   const Gaudi::Matrix2x2& data  ) 
00371 {
00372   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00373   return tuple->matrix ( name , data ) ;
00374 } 
00375 // ============================================================================
00376 StatusCode GaudiPython::TupleDecorator::matrix
00377 ( const Tuples::Tuple&    tuple , 
00378   const std::string&      name  , 
00379   const Gaudi::Matrix3x3& data  ) 
00380 {
00381   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00382   return tuple->matrix ( name , data ) ;
00383 } 
00384 // ============================================================================
00385 StatusCode GaudiPython::TupleDecorator::matrix
00386 ( const Tuples::Tuple&    tuple , 
00387   const std::string&      name  , 
00388   const Gaudi::Matrix4x4& data  ) 
00389 {
00390   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00391   return tuple->matrix ( name , data ) ;
00392 } 
00393 // ============================================================================
00394 StatusCode GaudiPython::TupleDecorator::matrix
00395 ( const Tuples::Tuple&    tuple , 
00396   const std::string&      name  , 
00397   const Gaudi::Matrix5x5& data  ) 
00398 {
00399   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00400   return tuple->matrix ( name , data ) ;
00401 } 
00402 // ============================================================================
00403 StatusCode GaudiPython::TupleDecorator::matrix
00404 ( const Tuples::Tuple&    tuple , 
00405   const std::string&      name  , 
00406   const Gaudi::Matrix6x6& data  ) 
00407 {
00408   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00409   return tuple->matrix ( name , data ) ;
00410 } 
00411 // ============================================================================
00412 StatusCode GaudiPython::TupleDecorator::matrix
00413 ( const Tuples::Tuple&    tuple , 
00414   const std::string&      name  , 
00415   const Gaudi::Matrix7x7& data  ) 
00416 {
00417   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00418   return tuple->matrix ( name , data ) ;
00419 } 
00420 // ============================================================================
00421 StatusCode GaudiPython::TupleDecorator::matrix
00422 ( const Tuples::Tuple&    tuple , 
00423   const std::string&      name  , 
00424   const Gaudi::Matrix8x8& data  ) 
00425 {
00426   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00427   return tuple->matrix ( name , data ) ;
00428 } 
00429 // ============================================================================
00430 StatusCode GaudiPython::TupleDecorator::matrix
00431 ( const Tuples::Tuple&    tuple , 
00432   const std::string&      name  , 
00433   const Gaudi::Matrix9x9& data  ) 
00434 {
00435   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00436   return tuple->matrix ( name , data ) ;
00437 } 
00438 // ============================================================================
00439 StatusCode GaudiPython::TupleDecorator::matrix
00440 ( const Tuples::Tuple&    tuple , 
00441   const std::string&      name  , 
00442   const Gaudi::Matrix1x3& data  ) 
00443 {
00444   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00445   return tuple->matrix ( name , data ) ;
00446 } 
00447 // ============================================================================
00448 StatusCode GaudiPython::TupleDecorator::matrix
00449 ( const Tuples::Tuple&    tuple , 
00450   const std::string&      name  , 
00451   const Gaudi::Matrix1x5& data  ) 
00452 {
00453   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00454   return tuple->matrix ( name , data ) ;
00455 } 
00456 // ============================================================================
00457 StatusCode GaudiPython::TupleDecorator::matrix
00458 ( const Tuples::Tuple&    tuple , 
00459   const std::string&      name  , 
00460   const Gaudi::Matrix1x6& data  ) 
00461 {
00462   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00463   return tuple->matrix ( name , data ) ;
00464 } 
00465 // ============================================================================
00466 StatusCode GaudiPython::TupleDecorator::matrix
00467 ( const Tuples::Tuple&    tuple , 
00468   const std::string&      name  , 
00469   const Gaudi::Matrix4x3& data  ) 
00470 {
00471   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00472   return tuple->matrix ( name , data ) ;
00473 } 
00474 // ============================================================================
00475 StatusCode GaudiPython::TupleDecorator::matrix
00476 ( const Tuples::Tuple&    tuple , 
00477   const std::string&      name  , 
00478   const Gaudi::Matrix3x4& data  ) 
00479 {
00480   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00481   return tuple->matrix ( name , data ) ;
00482 } 
00483 // ============================================================================
00484 StatusCode GaudiPython::TupleDecorator::matrix
00485 ( const Tuples::Tuple&    tuple , 
00486   const std::string&      name  , 
00487   const Gaudi::Matrix3x5& data  ) 
00488 {
00489   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00490   return tuple->matrix ( name , data ) ;
00491 } 
00492 // ============================================================================
00493 StatusCode GaudiPython::TupleDecorator::matrix
00494 ( const Tuples::Tuple&    tuple , 
00495   const std::string&      name  , 
00496   const Gaudi::Matrix3x6& data  ) 
00497 {
00498   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00499   return tuple->matrix ( name , data ) ;
00500 } 
00501 // ============================================================================
00502 StatusCode GaudiPython::TupleDecorator::matrix
00503 ( const Tuples::Tuple&    tuple , 
00504   const std::string&      name  , 
00505   const Gaudi::Matrix2x3& data  ) 
00506 {
00507   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00508   return tuple->matrix ( name , data ) ;
00509 } 
00510 // ============================================================================
00511 StatusCode GaudiPython::TupleDecorator::matrix
00512 ( const Tuples::Tuple&    tuple , 
00513   const std::string&      name  , 
00514   const Gaudi::Matrix3x2& data  ) 
00515 {
00516   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00517   return tuple->matrix ( name , data ) ;
00518 } 
00519 // ============================================================================
00520 StatusCode GaudiPython::TupleDecorator::matrix
00521 ( const Tuples::Tuple&       tuple , 
00522   const std::string&         name  , 
00523   const Gaudi::SymMatrix1x1& data  ) 
00524 {
00525   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00526   return tuple->matrix ( name , data ) ;
00527 } 
00528 // ============================================================================
00529 StatusCode GaudiPython::TupleDecorator::matrix
00530 ( const Tuples::Tuple&       tuple , 
00531   const std::string&         name  , 
00532   const Gaudi::SymMatrix2x2& data  ) 
00533 {
00534   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00535   return tuple->matrix ( name , data ) ;
00536 } 
00537 // ============================================================================
00538 StatusCode GaudiPython::TupleDecorator::matrix
00539 ( const Tuples::Tuple&       tuple , 
00540   const std::string&         name  , 
00541   const Gaudi::SymMatrix3x3& data  ) 
00542 {
00543   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00544   return tuple->matrix ( name , data ) ;
00545 } 
00546 // ============================================================================
00547 StatusCode GaudiPython::TupleDecorator::matrix
00548 ( const Tuples::Tuple&       tuple , 
00549   const std::string&         name  , 
00550   const Gaudi::SymMatrix4x4& data  ) 
00551 {
00552   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00553   return tuple->matrix ( name , data ) ;
00554 } 
00555 // ============================================================================
00556 StatusCode GaudiPython::TupleDecorator::matrix
00557 ( const Tuples::Tuple&       tuple , 
00558   const std::string&         name  , 
00559   const Gaudi::SymMatrix5x5& data  ) 
00560 {
00561   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00562   return tuple->matrix ( name , data ) ;
00563 } 
00564 // ============================================================================
00565 StatusCode GaudiPython::TupleDecorator::matrix
00566 ( const Tuples::Tuple&       tuple , 
00567   const std::string&         name  , 
00568   const Gaudi::SymMatrix6x6& data  ) 
00569 {
00570   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00571   return tuple->matrix ( name , data ) ;
00572 } 
00573 // ============================================================================
00574 StatusCode GaudiPython::TupleDecorator::matrix
00575 ( const Tuples::Tuple&       tuple , 
00576   const std::string&         name  , 
00577   const Gaudi::SymMatrix7x7& data  ) 
00578 {
00579   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00580   return tuple->matrix ( name , data ) ;
00581 } 
00582 // ============================================================================
00583 StatusCode GaudiPython::TupleDecorator::matrix
00584 ( const Tuples::Tuple&       tuple , 
00585   const std::string&         name  , 
00586   const Gaudi::SymMatrix8x8& data  ) 
00587 {
00588   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00589   return tuple->matrix ( name , data ) ;
00590 } 
00591 // ============================================================================
00592 StatusCode GaudiPython::TupleDecorator::matrix
00593 ( const Tuples::Tuple&       tuple , 
00594   const std::string&         name  , 
00595   const Gaudi::SymMatrix9x9& data  ) 
00596 {
00597   if ( !tuple.valid() ) { return StatusCode::FAILURE ; }
00598   return tuple->matrix ( name , data ) ;
00599 } 
00600 // ============================================================================
00601 Tuples::Tuple GaudiPython::TupleAlgDecorator::nTuple 
00602 ( const GaudiTupleAlg&     algo  ,
00603   const std::string&       title ,      
00604   const CLID&              clid  ) 
00605 {
00606   return algo.nTuple ( title , clid ) ;
00607 } 
00608 // ============================================================================
00609 Tuples::Tuple GaudiPython::TupleAlgDecorator::nTuple 
00610 ( const GaudiTupleAlg&     algo  ,
00611   const GaudiAlg::TupleID& ID    , 
00612   const std::string&       title ,      
00613   const CLID&              clid  ) 
00614 {
00615   return algo.nTuple ( ID , title , clid ) ;
00616 } 
00617 // ============================================================================
00618 Tuples::Tuple GaudiPython::TupleAlgDecorator::nTuple 
00619 ( const GaudiTupleAlg&     algo  ,
00620   const int                ID    , 
00621   const std::string&       title ,      
00622   const CLID&              clid  ) 
00623 {
00624   return algo.nTuple ( ID , title , clid ) ;
00625 } 
00626 // ============================================================================
00627 Tuples::Tuple GaudiPython::TupleAlgDecorator::nTuple 
00628 ( const GaudiTupleAlg&     algo  ,
00629   const std::string&       ID    , 
00630   const std::string&       title ,      
00631   const CLID&              clid  ) 
00632 {
00633   return algo.nTuple ( ID , title , clid ) ;
00634 } 
00635 // ============================================================================
00636 Tuples::Tuple GaudiPython::TupleAlgDecorator::evtCol 
00637 ( const GaudiTupleAlg&     algo  ,
00638   const std::string&       title ,      
00639   const CLID&              clid  ) 
00640 {
00641   return algo.evtCol ( title , clid ) ;
00642 } 
00643 // ============================================================================
00644 Tuples::Tuple GaudiPython::TupleAlgDecorator::evtCol 
00645 ( const GaudiTupleAlg&     algo  ,
00646   const GaudiAlg::TupleID& ID    , 
00647   const std::string&       title ,      
00648   const CLID&              clid  ) 
00649 {
00650   return algo.evtCol ( ID , title , clid ) ;
00651 } 
00652 // ============================================================================
00653 Tuples::Tuple GaudiPython::TupleAlgDecorator::evtCol 
00654 ( const GaudiTupleAlg&     algo  ,
00655   const int                ID    , 
00656   const std::string&       title ,      
00657   const CLID&              clid  ) 
00658 {
00659   return algo.evtCol ( ID , title , clid ) ;
00660 } 
00661 // ============================================================================
00662 Tuples::Tuple GaudiPython::TupleAlgDecorator::evtCol 
00663 ( const GaudiTupleAlg&     algo  ,
00664   const std::string&       ID    , 
00665   const std::string&       title ,      
00666   const CLID&              clid  ) 
00667 {
00668   return algo.evtCol ( ID , title , clid ) ;
00669 } 
00670 // ============================================================================
00671 // The END 
00672 // ============================================================================

Generated at Thu Jan 8 17:44:22 2009 for Gaudi Framework, version v20r4 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004