/[PAMELA software]/PamCut/CollectionActions/RefitTrackAction/RefitTrackAction.h
ViewVC logotype

Contents of /PamCut/CollectionActions/RefitTrackAction/RefitTrackAction.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.2.1 - (show annotations) (download)
Tue May 11 15:16:15 2010 UTC (14 years, 6 months ago) by pam-fi
Branch: V8
Changes since 1.1: +65 -0 lines
File MIME type: text/plain
Added to repository.

1 /*
2 * RefitTrackAction.h
3 *
4 * Created on: 10/may/2010
5 * Author: N. Mori
6 */
7
8 #ifndef REFITTRACKACTION_H_
9 #define REFITTRACKACTION_H_
10
11 #include "../CollectionAction/CollectionAction.h"
12 #include <TRandom3.h>
13
14 /*! @brief Track refitting.
15 *
16 * This action refits the TRK track using only level 2 data. This means that it will use the same
17 * clusters which are associated to the track, with the possibility to mask or shift some of them.
18 * For a complete reprocess and fit use #ReprocessTrackAction.
19 */
20 class RefitTrackAction: public CollectionAction {
21 public:
22
23 /*! @brief Constructor
24 *
25 * @param actionName The action's name.
26 * @param spreadX The width of the gaussian spread applied to all the X view coordinates, in cm.
27 * @param spreadY The width of the gaussian spread applied to all the Y view coordinates, in cm.
28 * @param maskedViews The excluded views. 0 means that all the views will be used, while #T6X means that the
29 * X view of the last tracker plane will be ignored. For other combinations, sum up the values
30 * defined in #TRKLAYERS: T1X + T1Y will exclude the whole first plane, for example.
31 *
32 */
33 RefitTrackAction(const char *actionName, float spreadX = 0., float spreadY = 0., int maskedViews = 0) :
34 CollectionAction(actionName), _spreadX(spreadX), _spreadY(spreadY), _maskedViews(maskedViews) {
35
36 }
37
38 /*! @brief Destructor. */
39 ~RefitTrackAction() {
40 }
41
42 /* @brief The refitting procedure.
43 *
44 * This will refit the tracker track introducing the mask and spreads defined in the constructor.
45 */
46 void OnGood(PamLevel2 *event);
47
48 /*! @brief The finalization procedure. */
49 void Finalize() {
50
51 }
52
53 private:
54
55 float _spreadX, _spreadY;
56 int _maskedViews;
57
58 static TRandom3 *_r3;
59 static long int _currEvent;
60
61 float _xmBackup[6], _ymBackup[6];
62 int _layerXBackup[6], _layerYBackup[6];
63 };
64
65 #endif /* REFITTRACKACTION_H_ */

  ViewVC Help
Powered by ViewVC 1.1.23