/data3/calcul/jacquem/working_dir/Micromegas/micromegasFrameWork/lcio/src/cpp/src/CPPFORT/lcclu.cc File Reference

#include "CPPFORT/lcclu.h"
#include "lcio.h"
#include "IMPL/ClusterImpl.h"
#include <iostream>

Include dependency graph for lcclu.cc:

Go to the source code of this file.

Functions

PTRTYPE lcclucreate ()
int lccludelete (PTRTYPE cluster)
int lccluid (PTRTYPE cluster)
int lcclugettype (PTRTYPE cluster)
float lcclugetenergy (PTRTYPE cluster)
int lcclugetposition (PTRTYPE cluster, float *pos)
int lcclugetpositionerror (PTRTYPE cluster, float poserr[6])
float lcclugetitheta (PTRTYPE cluster)
float lcclugetiphi (PTRTYPE cluster)
int lcclugetdirectionerror (PTRTYPE cluster, float direrr[3])
PTRTYPE lcclugetshape (PTRTYPE cluster)
PTRTYPE lcclugetparticleids (PTRTYPE cluster)
PTRTYPE lcclugetclusters (PTRTYPE cluster)
PTRTYPE lcclugetcalorimeterhits (PTRTYPE cluster)
PTRTYPE lcclugetsubdetectorenergies (PTRTYPE cluster)
int lcclugethitcontributions (PTRTYPE cluster, float *weights, int *nweights)
int lcclusettypebit (PTRTYPE cluster, int bit, int val)
int lcclusetenergy (PTRTYPE cluster, float energy)
int lcclusetposition (PTRTYPE cluster, float pos[3])
int lcclusetpositionerror (PTRTYPE cluster, float errpos[3])
int lcclusetitheta (PTRTYPE cluster, float theta)
int lcclusetiphi (PTRTYPE cluster, float phi)
int lcclusetdirectionerror (PTRTYPE cluster, float errdir[3])
int lcclusetshape (PTRTYPE cluster, PTRTYPE vector)
int lccluaddparticleid (PTRTYPE cluster, PTRTYPE pid)
int lccluaddcluster (PTRTYPE cluster, PTRTYPE clus)
int lccluaddhit (PTRTYPE cluster, PTRTYPE calohit, float weight)
int lcclusetsubdetectorenergies (PTRTYPE cluster, float *floatv, const int nfloatv)


Function Documentation

PTRTYPE lcclucreate (  ) 

Definition at line 12 of file lcclu.cc.

00012                      {
00013   ClusterImpl* clu = new ClusterImpl ;
00014   return C2F_POINTER( LCObject*, clu ) ;
00015 }

int lccludelete ( PTRTYPE  cluster  ) 

Definition at line 16 of file lcclu.cc.

00016                                   {
00017   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00018   delete clu ;
00019   return LCIO::SUCCESS ;
00020 }

int lccluid ( PTRTYPE  cluster  ) 

Definition at line 25 of file lcclu.cc.

00025                                 {
00026   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00027   return clu->id() ;
00028 }

int lcclugettype ( PTRTYPE  cluster  ) 

Definition at line 30 of file lcclu.cc.

00030                                      {
00031   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00032   return clu->getType() ;
00033 }

float lcclugetenergy ( PTRTYPE  cluster  ) 

Definition at line 40 of file lcclu.cc.

00040                                         {
00041   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00042   return clu->getEnergy() ;
00043 }

int lcclugetposition ( PTRTYPE  cluster,
float *  pos 
)

Definition at line 45 of file lcclu.cc.

00045                                                      {
00046   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00047   for( int i=0 ; i<3 ;  *pos++ = clu->getPosition()[i++]  ) ;
00048   return LCIO::SUCCESS ;
00049 }

int lcclugetpositionerror ( PTRTYPE  cluster,
float  poserr[6] 
)

Definition at line 51 of file lcclu.cc.

00051                                                                {
00052   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00053   for( int i=0 ; i<6 ;  *poserr++ = clu->getPositionError()[i++]  ) ;
00054   return LCIO::SUCCESS ;
00055 }

float lcclugetitheta ( PTRTYPE  cluster  ) 

Definition at line 57 of file lcclu.cc.

00057                                         {
00058   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00059   return clu->getITheta() ;
00060 }

float lcclugetiphi ( PTRTYPE  cluster  ) 

Definition at line 62 of file lcclu.cc.

00062                                       {
00063   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00064   return clu->getIPhi() ;
00065 }

int lcclugetdirectionerror ( PTRTYPE  cluster,
float  direrr[3] 
)

Definition at line 67 of file lcclu.cc.

00067                                                                 {
00068   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00069   for( int i=0 ; i<3 ;  *direrr++ = clu->getDirectionError()[i++]  ) ;
00070   return LCIO::SUCCESS ;
00071 }

PTRTYPE lcclugetshape ( PTRTYPE  cluster  ) 

Definition at line 85 of file lcclu.cc.

00085                                           {
00086   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00087   const FloatVec& shape = clu->getShape();
00088   return reinterpret_cast<PTRTYPE>( &shape );
00089 }

PTRTYPE lcclugetparticleids ( PTRTYPE  cluster  ) 

Definition at line 91 of file lcclu.cc.

00091                                                {
00092   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00093   const ParticleIDVec& idvect = clu->getParticleIDs();
00094   return reinterpret_cast<PTRTYPE>( &idvect );
00095 }

PTRTYPE lcclugetclusters ( PTRTYPE  cluster  ) 

Definition at line 97 of file lcclu.cc.

00097                                             {
00098   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00099   const ClusterVec& idvect = clu->getClusters();
00100   return reinterpret_cast<PTRTYPE>( &idvect );
00101 }

PTRTYPE lcclugetcalorimeterhits ( PTRTYPE  cluster  ) 

Definition at line 103 of file lcclu.cc.

00103                                                    {
00104   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00105   const CalorimeterHitVec& idvect = clu->getCalorimeterHits();
00106   return reinterpret_cast<PTRTYPE>( &idvect );
00107 }

PTRTYPE lcclugetsubdetectorenergies ( PTRTYPE  cluster  ) 

Definition at line 109 of file lcclu.cc.

00109                                                        {
00110   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00111   const FloatVec& idvect = clu->getSubdetectorEnergies();
00112   return reinterpret_cast<PTRTYPE>( &idvect );
00113 }

int lcclugethitcontributions ( PTRTYPE  cluster,
float *  weights,
int *  nweights 
)

Definition at line 115 of file lcclu.cc.

00115                                                                                {
00116   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00117   int ntot = *nweights -1 ;
00118   for(unsigned int l=0;l<clu->getCalorimeterHits().size();l++){
00119     if ( l > (unsigned)ntot ) {
00120       std::cout << "LCCluster: in getHitContributions more than " << ntot << "weights to store" << std::endl ;
00121       return LCIO::ERROR ;
00122     }
00123     *weights++ = clu->getHitContributions()[l] ;
00124   }
00125   *nweights = (int)(clu->getCalorimeterHits().size() + 1);
00126   return LCIO::SUCCESS ;
00127 }

int lcclusettypebit ( PTRTYPE  cluster,
int  bit,
int  val 
)

Definition at line 137 of file lcclu.cc.

00137                                                          {
00138   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00139   clu->setTypeBit( bit , val ) ;
00140   return LCIO::SUCCESS ;
00141 }

int lcclusetenergy ( PTRTYPE  cluster,
float  energy 
)

Definition at line 143 of file lcclu.cc.

00143                                                     {
00144   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00145   clu->setEnergy( energy ) ;
00146   return LCIO::SUCCESS ;
00147 }

int lcclusetposition ( PTRTYPE  cluster,
float  pos[3] 
)

Definition at line 149 of file lcclu.cc.

00149                                                       {
00150   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00151   clu->setPosition( pos ) ;
00152   return LCIO::SUCCESS ;
00153 }

int lcclusetpositionerror ( PTRTYPE  cluster,
float  errpos[3] 
)

Definition at line 156 of file lcclu.cc.

00156                                                               {
00157   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00158   clu->setPositionError( errpos ) ;
00159   return LCIO::SUCCESS ;
00160 }

int lcclusetitheta ( PTRTYPE  cluster,
float  theta 
)

Definition at line 162 of file lcclu.cc.

00162                                                   {
00163   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00164   clu->setITheta( theta ) ;
00165   return LCIO::SUCCESS ;
00166 }

int lcclusetiphi ( PTRTYPE  cluster,
float  phi 
)

Definition at line 168 of file lcclu.cc.

00168                                                {
00169   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00170   clu->setIPhi( phi ) ;
00171   return LCIO::SUCCESS ;
00172 }

int lcclusetdirectionerror ( PTRTYPE  cluster,
float  errdir[3] 
)

Definition at line 174 of file lcclu.cc.

00174                                                                {
00175   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00176   clu->setDirectionError( errdir ) ;
00177   return LCIO::SUCCESS ;
00178 }

int lcclusetshape ( PTRTYPE  cluster,
PTRTYPE  vector 
)

Definition at line 180 of file lcclu.cc.

00180                                                      {
00181   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00182   FloatVec* shape =  reinterpret_cast<FloatVec*>(vector) ;
00183   clu->setShape( *shape ) ;
00184   return LCIO::SUCCESS ;
00185 }

int lccluaddparticleid ( PTRTYPE  cluster,
PTRTYPE  pid 
)

Definition at line 206 of file lcclu.cc.

00206                                                       {
00207   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00208   ParticleID* cpid = f2c_pointer<ParticleID,LCObject>( pid ) ;
00209   clu->addParticleID( cpid ) ;
00210   return LCIO::SUCCESS ;
00211 }

int lccluaddcluster ( PTRTYPE  cluster,
PTRTYPE  clus 
)

Definition at line 213 of file lcclu.cc.

00213                                                     {
00214   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00215   Cluster* cclus = f2c_pointer<Cluster,LCObject>( clus ) ;
00216   clu->addCluster( cclus ) ;
00217   return LCIO::SUCCESS ;
00218 }

int lccluaddhit ( PTRTYPE  cluster,
PTRTYPE  calohit,
float  weight 
)

Definition at line 220 of file lcclu.cc.

00220                                                                   {
00221   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00222   CalorimeterHit* ccalh = f2c_pointer<CalorimeterHit,LCObject>( calohit ) ;
00223   clu->addHit( ccalh, weight ) ;
00224   return LCIO::SUCCESS ;
00225 }

int lcclusetsubdetectorenergies ( PTRTYPE  cluster,
float *  floatv,
const int  nfloatv 
)

Definition at line 227 of file lcclu.cc.

00227                                                                                      {
00228   ClusterImpl* clu = f2c_pointer<ClusterImpl,LCObject>( cluster ) ;
00229   FloatVec& floatvec =  clu->subdetectorEnergies() ;
00230   floatvec.resize( nfloatv ) ;
00231   for(int j=0;j<nfloatv;j++) {
00232     floatvec[j] =  floatv[j]  ;
00233   }
00234   return LCIO::SUCCESS ;
00235 
00236 }


Generated on Mon Jan 7 13:16:37 2013 for MicromegasFramework by  doxygen 1.4.7