Analysis  version 7.0 - august 2014
GEVPlotProperties.hh
Go to the documentation of this file.
1 //======================================================================
2 /*! \file GEVPlotProperties.hh
3  *
4  * Déclaration de la classe GEVPlotProperties, qui définit les
5  * propriétés de tracé d'un spectre dans une zone graphique donnée.
6  *
7  */
8 //======================================================================
9 
10 
11 #ifndef GEV_PLOT_PROPERTIES_HH
12 #define GEV_PLOT_PROPERTIES_HH
13 
14 #include "EventCommon.hh"
15 #include "GEVPreferences.hh"
16 
17 // includes ROOT
18 #include <TAttLine.h>
19 #include <TAttFill.h>
20 #include <TAttMarker.h>
21 
22 
23 //======================================================================
24 /*! \class GEVPlotProperties
25  *
26  * Cette classe contient l'ensemble des informations relatives au
27  * tracé d'un spectre dans une zone graphique donnée (un même spectre
28  * peut être affiché dans plusieurs zones avec des propriétés
29  * différentes):
30  * - attributs de ligne
31  * - attributs de remplissage
32  * - options de tracé * * La plupart des options de tracé concernent les spectres bidimensionnels * et certaines ne peuvent être utilisées que lorsqu'un seul spectre est * tracé dans la zone graphique. */ class GEVPlotProperties: public TAttLine, public TAttFill, public TAttMarker { friend class GEVPad; //---------------------------------------------------------------------- /*! \object_doc */ GObject(GEVPlotProperties); //---------------------------------------------------------------------- /* /// Identification des options (cas de spectres bidim principalement) enum SpectrumPlotOptions { // options 1D plotHist = 0x00000000, plotVect = 0x00000001, plotMarker = 0x00000002, plot1DOptions = 0x000000FF, // masque des options 1D // options 2D plotScatter = 0x00000000, plotColor = 0x00000100, plotCont = 0x00000200, plotSurf = 0x00001000, plotSurfCol = 0x00002000, plotSurfShade = 0x00003000, plotLego = 0x00004000, plotLegoCol = 0x00005000, plot2DOptions = 0x0000FF00, // masque des options 2D plot3DOptions = 0x0000F000, // masque des options de tracé en 3D plotMultiple = 0x00000F0F, // masque des options valides pour tracés multiples plotMultiple2D = 0x0000000F // masque des options valides pour tracés avec plusieurs spectres 2D }; */ /// Identification des modes de mise à l'échelle enum SpectrumPlotScaling { scaleNone = 0, scaleNormalize = 1, scaleFactor = 2, scaleMaximum = 3 }; protected: Int_t scale_mode; ///< Option d'échelle Double_t scale_value; ///< Valeur du paramètre d'échelle UInt_t plot_options; ///< Options de tracé //---------------------------------------------------------------------- // Constructeur, destructeur, affectation public: GEVPlotProperties ( ); GEVPlotProperties ( const GEVPlotProperties & original ); GEVPlotProperties & operator = ( const GEVPlotProperties & original ); virtual ~GEVPlotProperties ( ); void SetPlotOptions ( const UInt_t opts ); UInt_t GetPlotOptions ( ) const; void SetScalingMode ( const Int_t m = 0 ); Int_t GetScalingMode ( ) const; void SetScalingValue ( const Double_t sc = 1. ); Double_t GetScalingValue ( ) const; //---------------------------------------------------------------------- // pour ROOT... public: /*! Définition à usage de ROOT... */ ClassDef(GEVPlotProperties,0); } ; //---------------------------------------------------------------------- // METHODES INLINE //---------------------------------------------------------------------- /*! Retourne les options de tracé de l'histogramme associé au spectre. */ inline UInt_t GEVPlotProperties::GetPlotOptions ( ) const { return (plot_options); } /*! Définit les options de tracé de l'histogramme associé au spectre. * \param opts options */ inline void GEVPlotProperties::SetPlotOptions ( const UInt_t opts ) { plot_options = opts; } //---------------------------------------------------------------------- /*! Retourne vrai s'il faut appliquer un facteur d'échelle au tracé. */ inline Int_t GEVPlotProperties::GetScalingMode ( ) const { return (scale_mode); } /*! Définit s'il faut appliquer un facteur d'échelle au tracé. * \param m type de facteur d'échelle */ inline void GEVPlotProperties::SetScalingMode ( const Int_t m ) { scale_mode = m; } /*! Retourne le paramètre d'échelle pour le tracé du spectre. */ inline Double_t GEVPlotProperties::GetScalingValue ( ) const { return (scale_value); } /*! Définit le paramètre d'échelle pour le tracé du spectre. * \param sc paramètre d'échelle */ inline void GEVPlotProperties::SetScalingValue ( const Double_t sc ) { scale_value = sc; } //====================================================================== #endif
33  *
34  * La plupart des options de tracé concernent les spectres bidimensionnels
35  * et certaines ne peuvent être utilisées que lorsqu'un seul spectre est
36  * tracé dans la zone graphique.
37  */
38 class GEVPlotProperties: public TAttLine, public TAttFill, public TAttMarker
39 {
40  friend class GEVPad;
41 
42 //----------------------------------------------------------------------
43  /*! \object_doc */
45 //----------------------------------------------------------------------
46 
47 /*
48  /// Identification des options (cas de spectres bidim principalement)
49  enum SpectrumPlotOptions
50  {
51  // options 1D
52  plotHist = 0x00000000,
53  plotVect = 0x00000001,
54  plotMarker = 0x00000002,
55  plot1DOptions = 0x000000FF, // masque des options 1D
56 
57  // options 2D
58  plotScatter = 0x00000000,
59  plotColor = 0x00000100,
60  plotCont = 0x00000200,
61  plotSurf = 0x00001000,
62  plotSurfCol = 0x00002000,
63  plotSurfShade = 0x00003000,
64  plotLego = 0x00004000,
65  plotLegoCol = 0x00005000,
66  plot2DOptions = 0x0000FF00, // masque des options 2D
67  plot3DOptions = 0x0000F000, // masque des options de tracé en 3D
68 
69  plotMultiple = 0x00000F0F, // masque des options valides pour tracés multiples
70  plotMultiple2D = 0x0000000F // masque des options valides pour tracés avec plusieurs spectres 2D
71  };
72 */
73 
74  /// Identification des modes de mise à l'échelle
76  {
77  scaleNone = 0,
78  scaleNormalize = 1,
79  scaleFactor = 2,
80  scaleMaximum = 3
81  };
82 
83  protected:
84 
85  Int_t scale_mode; ///< Option d'échelle
86  Double_t scale_value; ///< Valeur du paramètre d'échelle
87 
88  UInt_t plot_options; ///< Options de tracé
89 
90 //----------------------------------------------------------------------
91 // Constructeur, destructeur, affectation
92  public:
93 
95  GEVPlotProperties ( const GEVPlotProperties & original );
96  GEVPlotProperties & operator = ( const GEVPlotProperties & original );
97  virtual ~GEVPlotProperties ( );
98 
99 
100  void SetPlotOptions ( const UInt_t opts );
101  UInt_t GetPlotOptions ( ) const;
102 
103  void SetScalingMode ( const Int_t m = 0 );
104  Int_t GetScalingMode ( ) const;
105  void SetScalingValue ( const Double_t sc = 1. );
106  Double_t GetScalingValue ( ) const;
107 
108 
109 //----------------------------------------------------------------------
110 // pour ROOT...
111  public:
112  /*! Définition à usage de ROOT... */
114 } ;
115 
116 
117 //----------------------------------------------------------------------
118 // METHODES INLINE
119 //----------------------------------------------------------------------
120 
121 /*! Retourne les options de tracé de l'histogramme associé au spectre.
122  */
123 inline UInt_t GEVPlotProperties::GetPlotOptions ( ) const
124  { return (plot_options); }
125 
126 /*! Définit les options de tracé de l'histogramme associé au spectre.
127  * \param opts options
128  */
129 inline void GEVPlotProperties::SetPlotOptions ( const UInt_t opts )
130  { plot_options = opts; }
131 
132 //----------------------------------------------------------------------
133 
134 /*! Retourne vrai s'il faut appliquer un facteur d'échelle au tracé. */ inline Int_t GEVPlotProperties::GetScalingMode ( ) const { return (scale_mode); } /*! Définit s'il faut appliquer un facteur d'échelle au tracé. * \param m type de facteur d'échelle */ inline void GEVPlotProperties::SetScalingMode ( const Int_t m ) { scale_mode = m; } /*! Retourne le paramètre d'échelle pour le tracé du spectre. */ inline Double_t GEVPlotProperties::GetScalingValue ( ) const { return (scale_value); } /*! Définit le paramètre d'échelle pour le tracé du spectre. * \param sc paramètre d'échelle */ inline void GEVPlotProperties::SetScalingValue ( const Double_t sc ) { scale_value = sc; } //====================================================================== #endif
135  */
136 inline Int_t GEVPlotProperties::GetScalingMode ( ) const
137  { return (scale_mode); }
138 
139 /*! Définit s'il faut appliquer un facteur d'échelle au tracé. * \param m type de facteur d'échelle */ inline void GEVPlotProperties::SetScalingMode ( const Int_t m ) { scale_mode = m; } /*! Retourne le paramètre d'échelle pour le tracé du spectre. */ inline Double_t GEVPlotProperties::GetScalingValue ( ) const { return (scale_value); } /*! Définit le paramètre d'échelle pour le tracé du spectre. * \param sc paramètre d'échelle */ inline void GEVPlotProperties::SetScalingValue ( const Double_t sc ) { scale_value = sc; } //====================================================================== #endif
140  * \param m type de facteur d'échelle
141  */
142 inline void GEVPlotProperties::SetScalingMode ( const Int_t m )
143  { scale_mode = m; }
144 
145 /*! Retourne le paramètre d'échelle pour le tracé du spectre.
146  */
147 inline Double_t GEVPlotProperties::GetScalingValue ( ) const
148  { return (scale_value); }
149 
150 /*! Définit le paramètre d'échelle pour le tracé du spectre.
151  * \param sc paramètre d'échelle
152  */
153 inline void GEVPlotProperties::SetScalingValue ( const Double_t sc )
154  { scale_value = sc; }
155 
156 
157 //======================================================================
158 #endif
virtual ~GEVPlotProperties()
Definition: GEVPlotProperties.cpp:72
GEVPlotProperties()
Definition: GEVPlotProperties.cpp:16
UInt_t GetPlotOptions() const
Definition: GEVPlotProperties.hh:123
Definition: GEVPlotProperties.hh:38
SpectrumPlotScaling
Identification des modes de mise à l&#39;échelle.
Definition: GEVPlotProperties.hh:75
ClassDef(GEVPlotProperties, 0)
UInt_t plot_options
Options de tracé
Definition: GEVPlotProperties.hh:88
Definition: GEVPad.hh:62
void SetPlotOptions(const UInt_t opts)
Definition: GEVPlotProperties.hh:129
void SetScalingMode(const Int_t m=0)
Definition: GEVPlotProperties.hh:142
GObject(GEVPlotProperties)
Double_t GetScalingValue() const
Definition: GEVPlotProperties.hh:147
GEVPlotProperties & operator=(const GEVPlotProperties &original)
Definition: GEVPlotProperties.cpp:53
Int_t scale_mode
Option d&#39;échelle.
Definition: GEVPlotProperties.hh:85
void SetScalingValue(const Double_t sc=1.)
Definition: GEVPlotProperties.hh:153
Int_t GetScalingMode() const
Definition: GEVPlotProperties.hh:136
Double_t scale_value
Valeur du paramètre d&#39;échelle.
Definition: GEVPlotProperties.hh:86