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

  ViewVC Help
Powered by ViewVC 1.1.23