Free Electron
XRayOp.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __oplab_XRayOp_h__
8 #define __oplab_XRayOp_h__
9 namespace fe
10 {
11 namespace ext
12 {
13 
14 /**************************************************************************//**
15  @brief Operator to look inside primitives
16 
17  @ingroup oplab
18 *//***************************************************************************/
19 class FE_DL_EXPORT XRayOp:
20  public OperatorSurfaceCommon,
21  public Initialize<XRayOp>
22 {
23  public:
24 
25  XRayOp(void):
26  m_brushed(FALSE) {}
27 
28 virtual ~XRayOp(void) {}
29 
30  void initialize(void);
31 
32  //* As HandlerI
33 virtual void handle(Record& a_rSignal);
34 
35  private:
36  sp<DrawMode> m_spSolid;
37 
38  Array< sp<SurfaceI> > m_surfaceArray;
39  sp<DrawI> m_spRayTrace;
40  WindowEvent m_event;
41 
42  BWORD m_brushed;
43 };
44 
45 } /* namespace ext */
46 } /* namespace fe */
47 
48 #endif /* __oplab_XRayOp_h__ */
Operator to look inside primitives.
Definition: XRayOp.h:19
kernel
Definition: namespace.dox:3
Per-class participation in the Initialized <> mechanism.
Definition: Initialized.h:117
Generalized windowing event.
Definition: WindowEvent.h:43
Partial Generic SurfaceI Implemention.
Definition: OperatorSurfaceCommon.h:20
Wrapper for std::vector.
Definition: Array.h:21
Reference to an instance of a Layout.
Definition: RecordSB.h:35