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

Annotation of /PamCut/Collections/SmartBlindCollection/SmartBlindCollection.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download)
Tue Jun 16 16:44:59 2009 UTC (15 years, 6 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 pam-fi 1.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 pam-fi 1.2 #include "../SmartCollection/SmartCollection.h"
14 pam-fi 1.1
15     /*! @brief A blind collection class designed to use CollectionAction objects.
16     *
17     * The SmartBlindCollection class is designed to handle CollectionAction objects. These
18 pam-fi 1.2 * 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 pam-fi 1.3 * 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 pam-fi 1.1 */
26 pam-fi 1.2 class SmartBlindCollection: public SmartCollection {
27 pam-fi 1.1
28     public:
29    
30     /*! @brief Constructor.
31     *
32     * @param collectionName The collection's name.
33     */
34     SmartBlindCollection(const char* collectionName) :
35 pam-fi 1.2 SmartCollection(collectionName){
36 pam-fi 1.1 }
37    
38     /*! @brief Destructor. */
39 pam-fi 1.2 ~SmartBlindCollection() {
40 pam-fi 1.1 }
41    
42 pam-fi 1.2 /*! Applies the cuts and executes the actions.
43 pam-fi 1.1 *
44 pam-fi 1.2 * When cuts are applied, a SmartBlindCollection will also execute the actions at the end
45     * of the bunches of cuts.
46 pam-fi 1.1 *
47 pam-fi 1.2 * @param event The event to analyze.
48 pam-fi 1.1 */
49 pam-fi 1.2 int ApplyCut(PamLevel2 *event);
50 pam-fi 1.1 };
51    
52     #endif /* SMARTBLINDCOLLECTION_H_ */

  ViewVC Help
Powered by ViewVC 1.1.23