//------------------------------------------------------------------------------ // Application task example -- // (C) Piero Giubilato 2008-2010, Berkeley Lab -- //------------------------------------------------------------------------------ //______________________________________________________________________________ // {Trace} // [File name] "task_Demo.h" // [Author] "Piero Giubilato" // [Version] "1.0" // [Modified by] "Piero Giubilato" // [Last revision] "09 Feb 2009" // [Language] "C++" // [Compiler] "Visual C++ 8.x 9.x" // [Member of] "Cool SEAL" // [Project] "SEAL" // [Description] "Application task example" // [Key documentation] // "Visual C++ Reference Help" // {Trace} //______________________________________________________________________________ // Overloading check #ifndef task_Demo_H #define task_Demo_H // Standard components //#include #include // Root components #include // Application components // Data #include "data_Burst.h" #include "geom_Frame.h" // GUI #include "gui_Form.h" #include "gui_Button.h" #include "gui_Combo.h" #include "gui_CoolButton.h" #include "gui_Numeric.h" #include "gui_Menu.h" #include "gui_Map.h" //______________________________________________________________________________ class task_Demo: public task_Object { private: // DATA objects std::vector detector_List;// Detector description data_Burst* burst_Raw; // Raw data container data_Frame* frame_Pedestal; // Pedestals data_Frame* frame_Noise; // Pedestals // GUI objects gui_CoolButton* btn_Run; // Run button gui_CoolButton* btn_Quit; // Quit button std::vector btn_Comm; // Communication buttons std::vector lbl_Desk; // Generic label std::vector cmb_Det; // Detector options combo gui_Menu* mnu_Test; // Test menu gui_Map* map_Signal; // Signal Map gui_Map* map_Reference; // Reference Map // Setup/Cleanup functions void detector_Setup(UInt_t dSize = 128); void data_Setup(geom_Frame* detector, UInt_t fr_Count = 1); void comm_Setup(data_Burst* burst); void gui_Setup(); void delete_All(); // Data acquisition/analysis void data_Acquire(); // GUI objects calback target functions (can be either public or private) void btn_quit_Evn(const int arg); // Handles btn_Quit press void btn_run_Evn(const int arg); // Handles btn_Run press void btn_comm_Evn(const int arg); // Handles btn_Arry[i] press // Special private memebers task_Demo(const task_Demo&) {} const task_Demo& operator=(const task_Demo&) {return *this;} public: // Special members task_Demo(); ~task_Demo(); // Run! UInt_t run(); // Static handler (Callback can handle static target function as well) static void static_Evn(const int arg); }; // Overloading check #endif