/[PAMELA software]/PamCut/Collections/SmartBlindCollection/SmartBlindCollection.h
ViewVC logotype

Contents of /PamCut/Collections/SmartBlindCollection/SmartBlindCollection.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations) (download)
Tue Jun 16 16:44:59 2009 UTC (15 years, 5 months ago) by pam-fi
Branch: MAIN
Changes since 1.2: +3 -2 lines
File MIME type: text/plain
Bug in actions handling fixed.

1 /*
2 * SmartBlindCollection.h
3 *
4 * Created on: 16-mag-2009
5 * Author: Nicola Mori
6 */
7
8 /*! @file SmartBlindCollection.h The SmartBlindCollection class definition file */
9
10 #ifndef SMARTBLINDCOLLECTION_H_
11 #define SMARTBLINDCOLLECTION_H_
12
13 #include "../SmartCollection/SmartCollection.h"
14
15 /*! @brief A blind collection class designed to use CollectionAction objects.
16 *
17 * The SmartBlindCollection class is designed to handle CollectionAction objects. These
18 * defines the procedures to do when an event is selected or discarded.
19 * This collection differs from SmartCollection only because it is blind, ie., it will apply
20 * all the cuts to each events, even if some of them fail (see #BlindCutCollection to get
21 * more info about blind collections). In current implementation, after a cut has failed, it
22 * will call OnBad for all the actions that come after that cut (also the ones at the end of
23 * successive bunches), regardless if, for example, in a certain subsequent bunch all the
24 * cuts are satisfied.
25 */
26 class SmartBlindCollection: public SmartCollection {
27
28 public:
29
30 /*! @brief Constructor.
31 *
32 * @param collectionName The collection's name.
33 */
34 SmartBlindCollection(const char* collectionName) :
35 SmartCollection(collectionName){
36 }
37
38 /*! @brief Destructor. */
39 ~SmartBlindCollection() {
40 }
41
42 /*! Applies the cuts and executes the actions.
43 *
44 * When cuts are applied, a SmartBlindCollection will also execute the actions at the end
45 * of the bunches of cuts.
46 *
47 * @param event The event to analyze.
48 */
49 int ApplyCut(PamLevel2 *event);
50 };
51
52 #endif /* SMARTBLINDCOLLECTION_H_ */

  ViewVC Help
Powered by ViewVC 1.1.23