00001 /* 00002 * CollectionAction.h 00003 * 00004 * Created on: 13-mag-2009 00005 * Author: Nicola Mori 00006 */ 00007 00010 #ifndef COLLECTIONACTION_H_ 00011 #define COLLECTIONACTION_H_ 00012 00013 #include <PamLevel2.h> 00014 00030 class CollectionAction { 00031 public: 00032 00037 CollectionAction(const char *actionName) : 00038 _actionName(actionName) { 00039 } 00041 virtual ~CollectionAction() { 00042 00043 } 00044 00055 virtual void Setup(PamLevel2 *events) { 00056 } 00057 00065 virtual void OnGood(PamLevel2 *event) = 0; 00066 00078 virtual void OnBad(PamLevel2 *event, int selectionResult) { 00079 } 00080 00086 virtual void Finalize() = 0; 00087 00089 const char *GetName(){ 00090 return _actionName; 00091 } 00092 00093 private: 00094 const char* _actionName; 00095 }; 00096 00097 #endif /* COLLECTIONACTION_H_ */