CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
ICgemDigitizerSvc.h
Go to the documentation of this file.
1#ifndef ICGEMDIGITIZERSVC_H_
2#define ICGEMDIGITIZERSVC_H_
3#include "GaudiKernel/IInterface.h"
4#include "GaudiKernel/Kernel.h"
5#include <vector>
6// Declaration of the interface ID
7static const InterfaceID IID_ICgemDigitizerSvc("ICgemDigitizerSvc",1,0);
8
9class ICgemDigitizerSvc : virtual public IInterface {
10public:
11 static const InterfaceID& interfaceID() { return IID_ICgemDigitizerSvc; }
12
13 /* particle = 0,1,2,3,4 (e,mu,pi,K,p) */
14 /* p: momentum (GeV/c) */
15 /* trkPosIn & trkPosOut: starting & exit positions (x,y,z) of the track segment in drift area */
16 virtual StatusCode setTrack(int layer, int particle, int charge, double p, double trkPosIn[], double trkPosOut[]) = 0;
17 virtual StatusCode setTrack(int layer, std::vector<int>particle, std::vector<int> charge, std::vector<double> p, std::vector<std::vector<double> > trkPosIn, std::vector<std::vector<double> > trkPosOut) = 0;
18
19 /* output info of fired strips */
20 virtual int getNXstrips() const = 0;
21 virtual int getNVstrips() const = 0;
22 virtual int getXstripID(int n) const = 0;
23 virtual int getVstripID(int n) const = 0;
24 virtual double getXstripQ(int n) const = 0;
25 virtual double getVstripQ(int n) const = 0;
26 virtual double getXstripT(int n) const = 0;
27 virtual double getVstripT(int n) const = 0;
28};
29
30#endif // ICGEMDIGITIZERSVC_H
const Int_t n
virtual double getXstripT(int n) const =0
virtual double getVstripQ(int n) const =0
virtual int getVstripID(int n) const =0
virtual StatusCode setTrack(int layer, int particle, int charge, double p, double trkPosIn[], double trkPosOut[])=0
virtual double getXstripQ(int n) const =0
virtual int getNXstrips() const =0
static const InterfaceID & interfaceID()
virtual int getXstripID(int n) const =0
virtual double getVstripT(int n) const =0
virtual int getNVstrips() const =0
virtual StatusCode setTrack(int layer, std::vector< int >particle, std::vector< int > charge, std::vector< double > p, std::vector< std::vector< double > > trkPosIn, std::vector< std::vector< double > > trkPosOut)=0