CMS 3D CMS Logo

OptOUserDefined.h
Go to the documentation of this file.
1 // COCOA class header file
2 //Id: OptOUserDefined.h
3 //CAT: Model
4 //
5 // Base class to describe Optical Objects of type sensor 2D
6 //
7 // History: v1.0
8 // Pedro Arce
9 
10 #ifndef _OPTOUSERDEFINED_HH
11 #define _OPTOUSERDEFINED_HH
12 
15 class Measurement;
16 class LightRay;
17 
19 public:
20  //---------- Constructors / Destructor
23  : OpticalObject(parent, type, name, copy_data) {}
24  ~OptOUserDefined() override {}
25 
26 #ifdef COCOA_VIS
27  virtual void fillVRML() override;
28  virtual void fillIguana() override;
29 #endif
30  //---------- userDefinedBehaviour
31  void userDefinedBehaviour(LightRay& lightray, Measurement& meas, const ALIstring& behav) override;
32 };
33 
34 #endif
OptOUserDefined(OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data)
virtual void fillVRML()
Definition: OpticalObject.h:54
const ALIstring & name() const
Definition: OpticalObject.h:58
void userDefinedBehaviour(LightRay &lightray, Measurement &meas, const ALIstring &behav) override
bool ALIbool
Definition: CocoaGlobals.h:19
~OptOUserDefined() override
virtual void fillIguana()
Definition: OpticalObject.h:55
Measurement * meas()
std::string ALIstring
Definition: CocoaGlobals.h:9
const OpticalObject * parent() const
Definition: OpticalObject.h:60