Main changes:
[u/mrichter/AliRoot.git] / MUON / AliMUONMchViewApplication.h
1 #ifndef ALIMUONMCHVIEWAPPLICATION_H
2 #define ALIMUONMCHVIEWAPPLICATION_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice                               */
6
7 // $Id$
8
9 /// \ingroup graphics
10 /// \class AliMUONMchViewApplication
11 /// \brief Main class for the mchview program
12 ///
13 // Author Laurent Aphecetche, Subatech
14
15 #ifndef ROOT_TRint
16 #   include <TRint.h>
17 #endif
18
19 class AliMUONPainterMasterFrame;
20 class TDirectory;
21 class TGMainFrame;
22
23 class AliMUONMchViewApplication : public TRint
24 {
25 public:
26   AliMUONMchViewApplication(const char* name, int* argc, char** argv, 
27                             UInt_t w=0, UInt_t h=0, UInt_t ox=0, UInt_t oy=0);
28   virtual ~AliMUONMchViewApplication();
29
30   void HandleMenu(Int_t i);
31
32   /// Return the version number of the mchview application
33   static const char* Version() { return "0.97"; }
34   
35   /// Return the SVN revision  and version number of the mchview application
36   static const char* FullVersion() { return Form("mchview Version %s ($Id$)",Version()); }
37   
38   void Open(const char* filename);
39
40 private:
41   /// Not implemented
42   AliMUONMchViewApplication(const AliMUONMchViewApplication& rhs);
43   /// Not implemented
44   AliMUONMchViewApplication& operator=(const AliMUONMchViewApplication& rhs);
45   
46   void CompareData();  
47   void CreateMenuBar(UInt_t w);
48   void Save();
49   void Save(const char* filename);
50   void Open();
51   void PrintAs();
52   void ReleaseNotes();
53   void ReadDir(TDirectory& dir);
54         
55 private:
56   TGMainFrame* fMainFrame; ///< pointer to our mainframe
57   AliMUONPainterMasterFrame* fPainterMasterFrame; ///< pointer to our main object
58   
59   static const Int_t fgkFILESAVEAS; ///< File/Save As... menu
60   static const Int_t fgkFILEOPEN; ///< File/Open... menu
61   static const Int_t fgkFILEEXIT; ///< File/Exit menu
62   static const Int_t fgkFILEPRINTAS; ///< File/Print As... menu
63   static const Int_t fgkABOUT; ///< About menu
64   static const Int_t fgkCOMPAREDATA; ///< Tools/Compare Data menu
65   
66   static const char* fgkFileTypes[]; ///< For the open menu
67   
68   ClassDef(AliMUONMchViewApplication,4) // mchview application
69 };
70
71 #endif