GeometryDrawingOptions.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 /// \file GeometryDrawingOptions.h
3 /// \brief Global drawing options that apply to all displays
4 /// \author messier@indiana.edu
5 /// \version $Id: GeometryDrawingOptions.h,v 1.8 2012-12-05 02:24:46 bckhouse Exp $
6 ///
7 #ifndef EVD_GEOMETRYDRAWINGOPTIONS_H
8 #define EVD_GEOMETRYDRAWINGOPTIONS_H
9 #ifndef __CINT__
10 
11 #include <vector>
12 #include <string>
13 
14 #include "fhiclcpp/ParameterSet.h"
19 
20 namespace evd {
21  /// \brief Global drawing options that apply to all displays
23  {
24  public:
25 
26  explicit GeometryDrawingOptions(fhicl::ParameterSet const& pset,
29 
30  void reconfigure(fhicl::ParameterSet const& pset) override;
31 
32  // Geometry Drawing Options
33 
34  /// How to zoom the display
35  int fZoom;
36  static const int kZOOM_NONE = 0;
37  static const int kZOOM_HITS = 1;
38  static const int kZOOM_TRUTH = 2;
39  static const int kZOOM_SLICE = 3;
40  static const int kZOOM_SLICEBOX = 4;
41  static const int kZOOM_PARTIAL = 5;
42  // if zoom partial is chosen, you can set the z upper bound with fZRange
43  float fZRange;
44  /// Which outlines to draw
45  int fOutline;
46  static const int kOUTLINE_DETECTOR = 1<<0;
47  static const int kOUTLINE_FIDUCIAL_USER = 1<<1;
48  static const int kOUTLINE_GRID = 1<<2;
49  static const int kOUTLINE_DCMS = 1<<3;
50  static const int kOUTLINE_CELLS = 1<<4;
51  static const int kOUTLINE_BADBOX = 1<<5;
52  // If fiducial-users is chosen, fFiducialBounds defines the bounds of
53  // the box. The first three numbers are low x,y,z and the next three
54  // are upper x,y,z.
55  std::vector<float> fFiducialBounds;
56  std::vector<float> fSliceBoxSize;
57 
58  /// Reverse the sense of any of the coordinate axes?
59  int fFlip;
60  static const int kFLIP_X = 1<<0;
61  static const int kFLIP_Y = 1<<1;
62  static const int kFLIP_Z = 1<<2;
63 
64  /// Which labels to draw?
65  int fLabel;
66  static const int kLABEL_PLANECELL = 1<<0;
67  static const int kLABEL_COMPASS = 1<<1;
68 
69  /// Dim disabled channels? What colors?
73 
76 
77  /// View angles for 3D
78  double fTheta, fPhi, fPsi;
79  };
80 }
81 #endif // __CINT__
83 #endif
84 ////////////////////////////////////////////////////////////////////////
int fLabel
Which labels to draw?
void reconfigure(fhicl::ParameterSet const &pset) override
double fTheta
View angles for 3D.
#define DECLARE_ART_SERVICE(svc, scope)
Definition: ServiceMacros.h:91
GeometryDrawingOptions(fhicl::ParameterSet const &pset, art::ActivityRegistry &reg)
std::vector< float > fFiducialBounds
nova event display
Global drawing options that apply to all displays.
int fZoom
How to zoom the display.
Interface class to services that are intended to be reconfigurable through the event display...
std::vector< float > fSliceBoxSize
int fFlip
Reverse the sense of any of the coordinate axes?
int fDimDisabled
Dim disabled channels? What colors?
int fOutline
Which outlines to draw.