///Set the input of rechit blocks
Bool_t SetInput(AliHLTInt32_t ddl, const AliHLTMUONRecHitStruct *data, AliHLTInt32_t size);
///Main method to run and compute the tracks
- Bool_t Run(int iEvent,AliHLTMUONMansoTrackStruct *data, AliHLTUInt32_t& size);
+ Bool_t Run(AliHLTEventID_t iEvent,AliHLTMUONTrackStruct *data, AliHLTUInt32_t& size);
///To be called once from DoInit method of component
Bool_t Init();
///Max number of points per chamber
int MaxNofPointsPerCh(){return fgkMaxNofPointsPerCh;}
+ ///Set for fast tracking bypass default Kalman tracking
+ void FastTracking(Bool_t isFast){fFastTracking = isFast;}
+ ///Getter for fast tracking
+ Bool_t FastTracking(){return fFastTracking;}
protected:
static const Int_t fgkMaxNofCh ; /// maximum number of chambrs
static const Int_t fgkMaxNofTracks; /// maximum number of allowed tracks
static const Int_t fgkMaxNofConnectedTracks; /// maximum number of back to front connected tracks
+ static const Int_t fgkMaxNofTriggers; /// maximum number of triggers (condition comes from simulation prediction)
AliMUONGeometryTransformer *fChamberGeometryTransformer; /// Pointer to AliMUONGeometryTransformer
AliHLTMUONRecHitStruct ***fChPoint; /// array of pointer to rechit data
Int_t fNofConnected ; /// number of connected track segments
AliHLTUInt32_t fNofTracks; /// number of connected track segments
DetElemList fDetElemList; ///Map for valid detelem
-
-
+ Bool_t fFastTracking ; ///flag for fast tracking avoiding kalman
+ Int_t fNofInputs; /// Nof inputs
+ Int_t fNofTriggerInputs; /// Nof inputs
+ Int_t fNofTrackerInputs; /// Nof inputs
+ Bool_t fIsMagfield ; /// checks the status of magfield
+
+ /// Cross Check the inputs
+ Bool_t CheckInput(AliHLTEventID_t iEvent);
/// Slat Track segments
Bool_t SlatTrackSeg();
/// Calculate preliminary momentum
void PropagateTracks(Double_t charge, Float_t& px, Float_t& py, Float_t& pz,
Float_t& xr, Float_t& yr, Float_t& zr, Float_t zprop);
/// extrapolate to origin
- Bool_t ExtrapolateToOrigin(Bool_t extrap);
+ Bool_t ExtrapolateToOrigin();
/// Clean after each run
Bool_t Clear();
/// Helix3 method of track extrapolation through mag field
inline void OneStepHelix3(Double_t field, Double_t step, const Double_t *vect, Double_t *vout) const;
/// Fill the tracks to output pointer
- Bool_t FillOutData(AliHLTMUONMansoTrackStruct *data, AliHLTUInt32_t& size);
+ Bool_t FillOutData(AliHLTMUONTrackStruct *data, AliHLTUInt32_t& size);
};
#endif // ALIHLTMUONMANSOTRACKERFSM_H