BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkHitOnTrkUpdater.h
Go to the documentation of this file.
1#ifndef TRKHITONTRKUPDATER_H
2#define TRKHITONTRKUPDATER_H
3
4//--------------------------------------------------------------------------
5//
6// Environment:
7// This software was developed for the BaBar collaboration. If you
8// use all or part of it, please give an appropriate acknowledgement.
9//
10// Copyright Information:
11// Copyright (C) 2000 University of California, San Diego
12//
13//------------------------------------------------------------------------
14
15#include "TrkBase/TrkErrCode.h"
16#include "TrkBase/TrkHitOnTrk.h"
17
18/**
19 * TrkHitOnTrkUpdater.
20 * this class regulates access to some protected functions
21 * in TrkHitOnTrk: only classes inheriting from this one can
22 * modify the status of a TrkHitOnTrk
23 *
24 *
25 * This software was developed for the BaBar collaboration. If you
26 * use all or part of it, please give an appropriate acknowledgement.
27 *
28 * Copyright (C) 2000 University of California, San Diego
29 *
30 * @version $Id: TrkHitOnTrkUpdater.h,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $
31 *
32 * @author (Gerhard Raven) (based on an idea of Steve Schaffner)
33 */
34#include "TrkBase/TrkFunctors.h"
35
37public:
38 virtual ~TrkHitOnTrkUpdater() = 0;
39
40protected:
42 bool maintainAmbiguity = false ) const {
43 return hot.updateMeasurement( traj, maintainAmbiguity );
44 }
45 // allow subclasses (essentially TrkReps) to set hot activity directly
46 void setActivity( TrkHitOnTrk& hot, bool active ) const { hot.setActive( active ); }
47 // allow changing the parent to which a hot is assigned
48 void setParent( TrkHitOnTrk& hot, TrkRep* parent ) const { hot._parentRep = parent; }
49
51 updateMeasurement( const TrkDifTraj* traj = 0, bool maintainAmbiguity = false ) const {
52 return TrkBase::Functors::updateMeasurement( traj, maintainAmbiguity );
53 }
55 return TrkBase::Functors::setParent( parent );
56 }
58 return TrkBase::Functors::setActive( active );
59 }
60};
61
62#endif
TrkBase::Functors::updateMeasurement updateMeasurement(const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
TrkBase::Functors::setActive setActive(bool active) const
TrkBase::Functors::setParent setParent(TrkRep *parent) const
TrkErrCode updateMeasurement(TrkHitOnTrk &hot, const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
virtual ~TrkHitOnTrkUpdater()=0
virtual TrkErrCode updateMeasurement(const TrkDifTraj *traj, bool maintainAmbiguity)=0