/[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.2 - (show annotations) (download)
Fri Jun 5 13:14:34 2009 UTC (15 years, 6 months ago) by pam-fi
Branch: MAIN
Changes since 1.1: +15 -63 lines
File MIME type: text/plain
Changes to the handling of actions.

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, regardless if, for example,
23 * in a certain subsequent bunch all the cuts are satisfied.
24 */
25 class SmartBlindCollection: public SmartCollection {
26
27 public:
28
29 /*! @brief Constructor.
30 *
31 * @param collectionName The collection's name.
32 */
33 SmartBlindCollection(const char* collectionName) :
34 SmartCollection(collectionName){
35 }
36
37 /*! @brief Destructor. */
38 ~SmartBlindCollection() {
39 }
40
41 /*! Applies the cuts and executes the actions.
42 *
43 * When cuts are applied, a SmartBlindCollection will also execute the actions at the end
44 * of the bunches of cuts.
45 *
46 * @param event The event to analyze.
47 */
48 int ApplyCut(PamLevel2 *event);
49 };
50
51 #endif /* SMARTBLINDCOLLECTION_H_ */

  ViewVC Help
Powered by ViewVC 1.1.23