BOSS 7.0.1
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/MdcPatRec/TrkBase/TrkBase-00-01-12/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/TrkHitOnTrk.h"
16#include "TrkBase/TrkErrCode.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
37{
38public:
39 virtual ~TrkHitOnTrkUpdater() = 0;
40protected:
41 TrkErrCode updateMeasurement(TrkHitOnTrk &hot, const TrkDifTraj* traj=0, bool maintainAmbiguity=false) const
42 { return hot.updateMeasurement(traj,maintainAmbiguity);}
43// allow subclasses (essentially TrkReps) to set hot activity directly
44 void setActivity(TrkHitOnTrk& hot,bool active) const {
45 hot.setActive(active); }
46// allow changing the parent to which a hot is assigned
47 void setParent(TrkHitOnTrk& hot,TrkRep* parent) const {
48 hot._parentRep = parent;
49 }
50
51 TrkBase::Functors::updateMeasurement updateMeasurement( const TrkDifTraj* traj=0, bool maintainAmbiguity=false) const
52 { return TrkBase::Functors::updateMeasurement(traj,maintainAmbiguity); }
54 { return TrkBase::Functors::setParent(parent); }
56 { return TrkBase::Functors::setActive(active); }
57
58
59};
60
61#endif
TrkBase::Functors::updateMeasurement updateMeasurement(const TrkDifTraj *traj=0, bool maintainAmbiguity=false) 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