This file is indexed.

/usr/include/IGSTK/igstkFLTKWidget.h is in libigstk4-dev 4.4.0-6.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
/*=========================================================================

  Program:   Image Guided Surgery Software Toolkit
  Module:    $RCSfile: igstkFLTKWidget.h,v $
  Language:  C++
  Date:      $Date: 2008-02-11 01:41:50 $
  Version:   $Revision: 1.1 $

  Copyright (c) ISC  Insight Software Consortium.  All rights reserved.
  See IGSTKCopyright.txt or http://www.igstk.org/copyright.htm for details.

     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/
#ifndef __igstkFLTKWidget_h
#define __igstkFLTKWidget_h

#ifdef _MSC_VER
#pragma warning ( disable : 4018 )
//Warning about: identifier was truncated to '255' characters in the debug
//information (MVC6.0 Debug)
#pragma warning( disable : 4284 )
#endif

class vtkRenderer;
class vtkRenderWindowInteractor;

// FLTK headers
#include <FL/Fl.H>
#include <FL/Fl_Gl_Window.H>

// IGSTK headers
#include "igstkView.h"
#include "igstkViewProxy.h"

namespace igstk {
/** \class FLTKWidget
 * 
 * \brief Display IGSTK graphical representation in a FLTK window.
 * 
 * This class is useful to develop FLTK based IGSTK application. Using this
 * class, graphical represenation of a surgical scene can be displayed in
 * FLTK window. FLTK mouse events are captured and translated into VTK events.
 * \image html igstkFLTKWidget.png  "State Machine Diagram"
 * \image latex igstkFLTKWidget.eps "State Machine Diagram" 
 *
 * \sa QTWidget
 * \sa View
 *
 * \ingroup View
 *
 *
 */
class FLTKWidget : public Fl_Gl_Window
{

public:
    
  typedef FLTKWidget          Self;
  typedef Fl_Gl_Window        Superclass;

  typedef View                ViewType;

  igstkTypeMacro( FLTKWidget, Fl_Gl_Window );
  
  /** Declarations needed for the State Machine */
  igstkStateMachineMacro();

  /** Print the object information in a stream. */
  void Print( std::ostream& os, ::itk::Indent indent=0) const;

  /** Set up variables, types and methods related to the Logger */
  igstkLoggerMacro()

  /** Set view */
  void RequestSetView( const ViewType * view );

  /** Disable user interactions with the window via mouse and keyboard */
  void RequestDisableInteractions();

  /** Enable user interactions with the window via mouse and keyboard */
  void RequestEnableInteractions();

  /** Get render window interactor */
  vtkRenderWindowInteractor * GetRenderWindowInteractor() const;

  typedef ViewProxy< FLTKWidget > ProxyType;

  friend class ViewProxy< FLTKWidget >;

  FLTKWidget( int x, int y, int w, int h, const char *l="");
  virtual ~FLTKWidget( void );

protected:

  // Fl_Gl_Window overrides
  void flush(void);
  void draw( void );
  void hide( void );
  void resize( int x, int y, int w, int h );
  virtual int  handle( int event );
   
private:

  /** Report any invalid request to the logger */
  void ReportInvalidRequestProcessing();

  /** Report Invalid view connected */
  void ReportInvalidViewConnectedProcessing();

  /** Process a valid view component that is connected to the widget */ 
  void ConnectViewProcessing();

  /** Disable keyboard and mouse interactions */
  void DisableInteractionsProcessing();

  /** Enable keyboard and mouse interactions */
  void EnableInteractionsProcessing();

  /** Set VTK renderer. This method is used in
   *  Connect() method in ViewProxy */
  void SetRenderer( vtkRenderer * renderer );

  /** Set VTK render window interactor. this method
    * is used in connect() method in ViewProxy class */
  void SetRenderWindowInteractor( vtkRenderWindowInteractor * interactor );

  /** Set render window ID */
  void SetRenderWindowID();

private:

  bool                            m_InteractionHandling;
  
  ViewType::Pointer               m_View; 

  ProxyType                       m_ProxyView;

  vtkRenderer                   * m_Renderer; 

  bool                            m_RenderWindowIDSet;

  vtkRenderWindowInteractor     * m_RenderWindowInteractor; 

  /** States for the State Machine */
  igstkDeclareStateMacro( Idle );
  igstkDeclareStateMacro( ViewConnected );

  /** Inputs to the State machine */
  igstkDeclareInputMacro( ValidView );
  igstkDeclareInputMacro( InValidView );
  igstkDeclareInputMacro( EnableInteractions );
  igstkDeclareInputMacro( DisableInteractions );


};

std::ostream& operator<<(std::ostream& os, const FLTKWidget& o);

} // end namespace igstk

#endif