Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4OpenInventorXtViewer Class Reference

#include <G4OpenInventorXtViewer.hh>

+ Inheritance diagram for G4OpenInventorXtViewer:

Public Member Functions

virtual void FinishView ()
 
virtual void SetView ()
 
 G4OpenInventorXtViewer (G4OpenInventorSceneHandler &scene, const G4String &name="")
 
void Initialise ()
 
virtual ~G4OpenInventorXtViewer ()
 
- Public Member Functions inherited from G4OpenInventorViewer
virtual void DrawView ()
 
virtual void ShowView ()
 
virtual void ClearView ()
 
virtual void SetView ()
 
virtual void KernelVisitDecision ()
 
 G4OpenInventorViewer (G4OpenInventorSceneHandler &scene, const G4String &name="")
 
virtual ~G4OpenInventorViewer ()
 
- Public Member Functions inherited from G4VViewer
 G4VViewer (G4VSceneHandler &, G4int id, const G4String &name="")
 
virtual ~G4VViewer ()
 
virtual void Initialise ()
 
virtual void ResetView ()
 
virtual void SetView ()=0
 
virtual void ClearView ()=0
 
virtual void DrawView ()=0
 
void RefreshView ()
 
virtual void ShowView ()
 
virtual void FinishView ()
 
std::vector< G4ThreeVectorComputeFlyThrough (G4Vector3D *)
 
const G4StringGetName () const
 
const G4StringGetShortName () const
 
void SetName (const G4String &)
 
G4int GetViewId () const
 
G4VSceneHandlerGetSceneHandler () const
 
const G4ViewParametersGetViewParameters () const
 
const G4ViewParametersGetDefaultViewParameters () const
 
G4double GetKernelVisitElapsedTimeSeconds () const
 
virtual const std::vector< G4ModelingParameters::VisAttributesModifier > * GetPrivateVisAttributesModifiers () const
 
void SetViewParameters (const G4ViewParameters &vp)
 
void SetDefaultViewParameters (const G4ViewParameters &vp)
 
const G4VisAttributesGetApplicableVisAttributes (const G4VisAttributes *) const
 
void SetNeedKernelVisit (G4bool need)
 
void NeedKernelVisit ()
 
void ProcessView ()
 

Protected Member Functions

virtual void ViewerRender ()
 
virtual SoCamera * GetCamera ()
 
Widget AddMenu (Widget, const G4String &, const G4String &)
 
void AddButton (Widget, const G4String &, XtCallbackProc)
 
- Protected Member Functions inherited from G4OpenInventorViewer
virtual void ViewerRender ()=0
 
virtual SoCamera * GetCamera ()=0
 
void Escape ()
 Menu items callbacks /////////////////////////////////////////////////////.
 
void WritePostScript (const G4String &file="g4out.ps")
 
void WritePDF (const G4String &file="g4out.pdf")
 
void WritePixmapPostScript (const G4String &file="g4out.ps")
 
void WriteInventor (const G4String &file="g4out.iv")
 
void SceneGraphStatistics ()
 
void EraseDetector ()
 
void EraseEvent ()
 
void SetPreviewAndFull ()
 
void SetPreview ()
 
void SetSolid ()
 
void SetWireFrame ()
 
void SetReducedWireFrame (bool)
 
void UpdateScene ()
 
G4String Help (const G4String &topic="controls")
 
- Protected Member Functions inherited from G4VViewer
void SetTouchable (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath)
 
void TouchableSetVisibility (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath, G4bool visibility)
 
void TouchableSetColour (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath, const G4Colour &)
 

Static Protected Member Functions

static void PostScriptCbk (Widget, XtPointer, XtPointer)
 
static void PixmapPostScriptCbk (Widget, XtPointer, XtPointer)
 
static void WriteInventorCbk (Widget, XtPointer, XtPointer)
 
static void EscapeCbk (Widget, XtPointer, XtPointer)
 
static void SceneGraphStatisticsCbk (Widget, XtPointer, XtPointer)
 
static void EraseDetectorCbk (Widget, XtPointer, XtPointer)
 
static void EraseEventCbk (Widget, XtPointer, XtPointer)
 
static void SetSolidCbk (Widget, XtPointer, XtPointer)
 
static void SetWireFrameCbk (Widget, XtPointer, XtPointer)
 
static void SetReducedWireFrameCbk (Widget, XtPointer, XtPointer)
 
static void SetFullWireFrameCbk (Widget, XtPointer, XtPointer)
 
static void UpdateSceneCbk (Widget, XtPointer, XtPointer)
 
static void HelpCbk (Widget, XtPointer, XtPointer)
 
static void HelpCancelCbk (Widget, XtPointer, XtPointer)
 
static void SetPreviewCbk (Widget, XtPointer, XtPointer)
 
static void SetPreviewAndFullCbk (Widget, XtPointer, XtPointer)
 
- Static Protected Member Functions inherited from G4OpenInventorViewer
static void SelectionCB (void *, SoPath *)
 

Protected Attributes

Widget fShell
 
SoXtExaminerViewer * fViewer
 
Widget fHelpForm
 
Widget fHelpText
 
- Protected Attributes inherited from G4OpenInventorViewer
G4OpenInventorSceneHandlerfG4OpenInventorSceneHandler
 
G4VInteractorManagerfInteractorManager
 
SoSelection * fSoSelection
 
Geant4_SoImageWriter * fSoImageWriter
 
Geant4_SoGL2PSAction * fGL2PSAction
 
SoNodeSensor * fGroupCameraSensor
 
- Protected Attributes inherited from G4VViewer
G4VSceneHandlerfSceneHandler
 
G4int fViewId
 
G4String fName
 
G4String fShortName
 
G4ViewParameters fVP
 
G4ViewParameters fDefaultVP
 
G4double fKernelVisitElapsedTimeSeconds = 999.
 
G4bool fNeedKernelVisit
 

Detailed Description

Definition at line 41 of file G4OpenInventorXtViewer.hh.

Constructor & Destructor Documentation

◆ G4OpenInventorXtViewer()

G4OpenInventorXtViewer::G4OpenInventorXtViewer ( G4OpenInventorSceneHandler scene,
const G4String name = "" 
)

Definition at line 65 of file G4OpenInventorXtViewer.cc.

68:G4OpenInventorViewer (sceneHandler, name)
69,fShell(0)
70,fViewer(0)
71,fHelpForm(0)
72,fHelpText(0)
73{
75 G4cout << "Window name: " << fName << G4endl;
76}
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
SoXtExaminerViewer * fViewer
G4String fName
Definition: G4VViewer.hh:218
static Verbosity GetVerbosity()

◆ ~G4OpenInventorXtViewer()

G4OpenInventorXtViewer::~G4OpenInventorXtViewer ( )
virtual

Definition at line 206 of file G4OpenInventorXtViewer.cc.

206 {
208 if(fViewer) {
209 fViewer->setSceneGraph(0);
210 //FIXME : SGI : the below "delete" block things.
211 //FIXME : CoinXt : the below "delete" crashe in ~SoXtRenderArea.
212 //FIXME : delete fViewer;
213 }
214 if(fShell) XtDestroyWidget(fShell);
215}
G4VInteractorManager * fInteractorManager
void RemoveShell(G4Interactor)

Member Function Documentation

◆ AddButton()

void G4OpenInventorXtViewer::AddButton ( Widget  aMenu,
const G4String aLabel,
XtCallbackProc  aCallback 
)
protected

Definition at line 262 of file G4OpenInventorXtViewer.cc.

267{
268 Widget widget = XmCreatePushButton(aMenu,(char*)aLabel.c_str(),NULL,0);
269 XtManageChild(widget);
270 XtAddCallback(widget,XmNactivateCallback,aCallback,(XtPointer)this);
271}

Referenced by Initialise().

◆ AddMenu()

Widget G4OpenInventorXtViewer::AddMenu ( Widget  aMenuBar,
const G4String aName,
const G4String aLabel 
)
protected

Definition at line 243 of file G4OpenInventorXtViewer.cc.

248{
249 // Pulldown menu :
250 Widget menu = XmCreatePulldownMenu(aMenuBar,(char*)aName.c_str(),NULL,0);
251 // Cascade button :
252 Arg args[2];
253 XmString cps =
254 XmStringLtoRCreate((char*)aLabel.c_str(),(char*)XmSTRING_DEFAULT_CHARSET);
255 XtSetArg (args[0],XmNlabelString,cps);
256 XtSetArg (args[1],XmNsubMenuId,menu);
257 Widget widget = XmCreateCascadeButton(aMenuBar,(char*)aName.c_str(),args,2);
258 XmStringFree (cps);
259 XtManageChild(widget);
260 return menu;
261}

Referenced by Initialise().

◆ EraseDetectorCbk()

void G4OpenInventorXtViewer::EraseDetectorCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 314 of file G4OpenInventorXtViewer.cc.

Referenced by Initialise().

◆ EraseEventCbk()

void G4OpenInventorXtViewer::EraseEventCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 320 of file G4OpenInventorXtViewer.cc.

321 {
323 This->EraseEvent();
324}

Referenced by Initialise().

◆ EscapeCbk()

void G4OpenInventorXtViewer::EscapeCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 284 of file G4OpenInventorXtViewer.cc.

285 {
287 This->Escape();
288}
void Escape()
Menu items callbacks /////////////////////////////////////////////////////.

Referenced by Initialise().

◆ FinishView()

void G4OpenInventorXtViewer::FinishView ( void  )
virtual

Reimplemented from G4VViewer.

Definition at line 217 of file G4OpenInventorXtViewer.cc.

217 {
218 if(!fViewer) return;
219 fViewer->viewAll();
220 fViewer->saveHomePosition();
221}

◆ GetCamera()

SoCamera * G4OpenInventorXtViewer::GetCamera ( )
protectedvirtual

Implements G4OpenInventorViewer.

Definition at line 238 of file G4OpenInventorXtViewer.cc.

238 {
239 if(!fViewer) return 0;
240 return fViewer->getCamera();
241}

◆ HelpCancelCbk()

void G4OpenInventorXtViewer::HelpCancelCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 273 of file G4OpenInventorXtViewer.cc.

274 {
276 XtUnmanageChild(This->fHelpForm);
277}

Referenced by Initialise().

◆ HelpCbk()

void G4OpenInventorXtViewer::HelpCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 368 of file G4OpenInventorXtViewer.cc.

369 {
371 XtManageChild(This->fHelpForm);
372 XmTextSetString(This->fHelpText,(char*)This->Help().c_str());
373}
G4String Help(const G4String &topic="controls")

Referenced by Initialise().

◆ Initialise()

void G4OpenInventorXtViewer::Initialise ( )
virtual

Reimplemented from G4VViewer.

Definition at line 79 of file G4OpenInventorXtViewer.cc.

79 {
80
81 G4String wName = fName;
82
83 Widget parent = (Widget)fInteractorManager->GetParentInteractor ();
84 int width = 600;
85 int height = 600;
86
87 if(!parent) {
88 // Check if user has specified an X-Windows-type geometry string...
89 char str[32];
90
91 G4String sgeometry = fVP.GetXGeometryString();
92 if(sgeometry.empty()) {
93 G4cout << "ERROR: Geometry string \""
94 << sgeometry
95 << "\" is empty. Using \"600x600\"."
96 << G4endl;
97 width = 600;
98 height = 600;
99 snprintf(str,sizeof str,"%dx%d",width,height);
100 sgeometry = str;
101 } else {
102 width = fVP.GetWindowSizeHintX();
103 height = fVP.GetWindowSizeHintX();
104 }
105
106 //Create a shell window :
107 G4String shellName = wName;
108 shellName += "_shell";
109 Arg args[10];
110 XtSetArg(args[0],XtNgeometry,XtNewString(sgeometry.c_str()));
111 XtSetArg(args[1],XtNborderWidth,0);
112 XtSetArg(args[2],XtNtitle,XtNewString(wName.c_str()));
113 fShell = XtAppCreateShell(shellName.c_str(),"Inventor",
114 topLevelShellWidgetClass,
115 SoXt::getDisplay(),
116 args,3);
117
118 XtSetArg(args[0],XmNtopAttachment ,XmATTACH_FORM);
119 XtSetArg(args[1],XmNleftAttachment ,XmATTACH_FORM);
120 XtSetArg(args[2],XmNrightAttachment ,XmATTACH_FORM);
121 XtSetArg(args[3],XmNbottomAttachment,XmATTACH_FORM);
122 Widget form = XmCreateForm (fShell,(char*)"form",args,4);
123 XtManageChild (form);
124
125 XtSetArg(args[0],XmNtopAttachment ,XmATTACH_FORM);
126 XtSetArg(args[1],XmNleftAttachment ,XmATTACH_FORM);
127 XtSetArg(args[2],XmNrightAttachment ,XmATTACH_FORM);
128 Widget menuBar = XmCreateMenuBar (form,(char*)"menuBar",args,3);
129 XtManageChild(menuBar);
130
131 {Widget menu = AddMenu(menuBar,"File","File");
132 AddButton(menu,"PS (gl2ps)",PostScriptCbk);
133 AddButton(menu,"PS (pixmap)",PixmapPostScriptCbk);
134 AddButton(menu,"IV",WriteInventorCbk);
135 AddButton(menu,"Escape",EscapeCbk);}
136
137 {Widget menu = AddMenu(menuBar,"Etc","Etc");
138 AddButton(menu,"Erase detector",EraseDetectorCbk);
139 AddButton(menu,"Erase event",EraseEventCbk);
140 AddButton(menu,"Set solid",SetSolidCbk);
141/* AddButton(menu,"Set (G4) wire frame",SetWireFrameCbk);*/
142 AddButton(menu,"Set (G4) reduced wire frame",SetReducedWireFrameCbk);
143 AddButton(menu,"Set (G4) full wire frame",SetFullWireFrameCbk);
144 AddButton(menu,"Visible mothers + invisible daughters",SetPreviewCbk);
145 AddButton(menu,"Visible mothers + visible daughters",SetPreviewAndFullCbk);
146 AddButton(menu,"Update scene",UpdateSceneCbk);
147 AddButton(menu,"Scene graph stats",SceneGraphStatisticsCbk);
148 }
149
150 {Widget menu = AddMenu(menuBar,"Help","Help");
151 AddButton(menu,"Controls",HelpCbk);}
152
153 fViewer = new SoXtExaminerViewer(form,wName.c_str(),TRUE);
154
155 XtSetArg(args[0],XmNtopAttachment ,XmATTACH_WIDGET);
156 XtSetArg(args[1],XmNtopWidget ,menuBar);
157 XtSetArg(args[2],XmNleftAttachment ,XmATTACH_FORM);
158 XtSetArg(args[3],XmNrightAttachment ,XmATTACH_FORM);
159 XtSetArg(args[4],XmNbottomAttachment,XmATTACH_FORM);
160 XtSetValues(fViewer->getWidget(),args,5);
161
162 fHelpForm = XmCreateFormDialog(fShell,(char*)"help",NULL,0);
163 XtSetArg(args[0],XmNleftAttachment ,XmATTACH_FORM);
164 XtSetArg(args[1],XmNrightAttachment ,XmATTACH_FORM);
165 XtSetArg(args[2],XmNbottomAttachment,XmATTACH_FORM);
166 Widget cancel = XmCreatePushButton(fHelpForm,(char*)"helpCancel",args,3);
167 XtAddCallback(cancel,XmNactivateCallback,HelpCancelCbk,(XtPointer)this);
168 XtManageChild(cancel);
169 XtSetArg(args[0],XmNtopAttachment ,XmATTACH_FORM);
170 XtSetArg(args[1],XmNleftAttachment ,XmATTACH_FORM);
171 XtSetArg(args[2],XmNrightAttachment ,XmATTACH_FORM);
172 XtSetArg(args[3],XmNbottomAttachment,XmATTACH_WIDGET);
173 XtSetArg(args[4],XmNbottomWidget ,cancel);
174 fHelpText = XmCreateScrolledText(fHelpForm,(char*)"helpText",args,5);
175 XtManageChild(fHelpText);
176
178
179 } else {
181 if(str!=0) wName = str;
182 fViewer = new SoXtExaminerViewer(parent,wName.c_str(),TRUE);
183 }
184
185 fViewer->setSize(SbVec2s(width,height));
186
187 // Have a GL2PS render action :
188 const SbViewportRegion& vpRegion = fViewer->getViewportRegion();
189 fGL2PSAction = new SoGL2PSAction(vpRegion);
190 fViewer->setGLRenderAction(fGL2PSAction);
191
192 // Else :
193 fViewer->setSceneGraph(fSoSelection);
194 fViewer->viewAll();
195 fViewer->saveHomePosition();
196 fViewer->setTitle(fName);
197 fViewer->show();
198 if(fShell) {
199 SoXt::show(fShell);
201 }
203 fViewer->setTransparencyType(SoGLRenderAction::SORTED_OBJECT_ADD);
204}
#define SoGL2PSAction
Definition: SoGL2PSAction.h:40
Geant4_SoGL2PSAction * fGL2PSAction
static void SetPreviewCbk(Widget, XtPointer, XtPointer)
static void SetReducedWireFrameCbk(Widget, XtPointer, XtPointer)
static void SceneGraphStatisticsCbk(Widget, XtPointer, XtPointer)
static void SetPreviewAndFullCbk(Widget, XtPointer, XtPointer)
static void EraseDetectorCbk(Widget, XtPointer, XtPointer)
static void PixmapPostScriptCbk(Widget, XtPointer, XtPointer)
static void SetFullWireFrameCbk(Widget, XtPointer, XtPointer)
static void PostScriptCbk(Widget, XtPointer, XtPointer)
static void WriteInventorCbk(Widget, XtPointer, XtPointer)
void AddButton(Widget, const G4String &, XtCallbackProc)
static void HelpCancelCbk(Widget, XtPointer, XtPointer)
static void EraseEventCbk(Widget, XtPointer, XtPointer)
static void UpdateSceneCbk(Widget, XtPointer, XtPointer)
static void EscapeCbk(Widget, XtPointer, XtPointer)
static void SetSolidCbk(Widget, XtPointer, XtPointer)
static void HelpCbk(Widget, XtPointer, XtPointer)
Widget AddMenu(Widget, const G4String &, const G4String &)
void SetCreatedInteractor(G4Interactor)
virtual void FlushAndWaitExecution()=0
G4Interactor GetParentInteractor()
void AddShell(G4Interactor)
G4ViewParameters fVP
Definition: G4VViewer.hh:220
const G4String & GetXGeometryString() const
unsigned int GetWindowSizeHintX() const
#define TRUE
Definition: globals.hh:41

◆ PixmapPostScriptCbk()

void G4OpenInventorXtViewer::PixmapPostScriptCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 296 of file G4OpenInventorXtViewer.cc.

297 {
299 This->WritePixmapPostScript();
300}
void WritePixmapPostScript(const G4String &file="g4out.ps")

Referenced by Initialise().

◆ PostScriptCbk()

void G4OpenInventorXtViewer::PostScriptCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 290 of file G4OpenInventorXtViewer.cc.

291 {
293 This->WritePostScript();
294}
void WritePostScript(const G4String &file="g4out.ps")

Referenced by Initialise().

◆ SceneGraphStatisticsCbk()

void G4OpenInventorXtViewer::SceneGraphStatisticsCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 302 of file G4OpenInventorXtViewer.cc.

303 {
305 This->SceneGraphStatistics();
306}

Referenced by Initialise().

◆ SetFullWireFrameCbk()

void G4OpenInventorXtViewer::SetFullWireFrameCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 344 of file G4OpenInventorXtViewer.cc.

345 {
347 This->SetReducedWireFrame(false);
348}

Referenced by Initialise().

◆ SetPreviewAndFullCbk()

void G4OpenInventorXtViewer::SetPreviewAndFullCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 362 of file G4OpenInventorXtViewer.cc.

363 {
365 This->SetPreviewAndFull();
366}

Referenced by Initialise().

◆ SetPreviewCbk()

void G4OpenInventorXtViewer::SetPreviewCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 356 of file G4OpenInventorXtViewer.cc.

357 {
359 This->SetPreview();
360}

Referenced by Initialise().

◆ SetReducedWireFrameCbk()

void G4OpenInventorXtViewer::SetReducedWireFrameCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 338 of file G4OpenInventorXtViewer.cc.

339 {
341 This->SetReducedWireFrame(true);
342}

Referenced by Initialise().

◆ SetSolidCbk()

void G4OpenInventorXtViewer::SetSolidCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 326 of file G4OpenInventorXtViewer.cc.

327 {
329 This->SetSolid();
330}

Referenced by Initialise().

◆ SetView()

void G4OpenInventorXtViewer::SetView ( )
virtual

Reimplemented from G4OpenInventorViewer.

Definition at line 223 of file G4OpenInventorXtViewer.cc.

223 {
225 if(!fViewer) return;
226 // Background.
228 fViewer->setBackgroundColor
229 (SbColor((float)b.GetRed(),(float)b.GetGreen(),(float)b.GetBlue()));
230}
G4double GetBlue() const
Definition: G4Colour.hh:154
G4double GetRed() const
Definition: G4Colour.hh:152
G4double GetGreen() const
Definition: G4Colour.hh:153
const G4Colour & GetBackgroundColour() const

◆ SetWireFrameCbk()

void G4OpenInventorXtViewer::SetWireFrameCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 332 of file G4OpenInventorXtViewer.cc.

333 {
335 This->SetWireFrame();
336}

◆ UpdateSceneCbk()

void G4OpenInventorXtViewer::UpdateSceneCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 350 of file G4OpenInventorXtViewer.cc.

351 {
353 This->UpdateScene();
354}

Referenced by Initialise().

◆ ViewerRender()

void G4OpenInventorXtViewer::ViewerRender ( )
protectedvirtual

Implements G4OpenInventorViewer.

Definition at line 233 of file G4OpenInventorXtViewer.cc.

233 {
234 if(!fViewer) return;
235 fViewer->render();
236}

◆ WriteInventorCbk()

void G4OpenInventorXtViewer::WriteInventorCbk ( Widget  ,
XtPointer  aData,
XtPointer   
)
staticprotected

Definition at line 308 of file G4OpenInventorXtViewer.cc.

309 {
311 This->WriteInventor();
312}
void WriteInventor(const G4String &file="g4out.iv")

Referenced by Initialise().

Member Data Documentation

◆ fHelpForm

Widget G4OpenInventorXtViewer::fHelpForm
protected

Definition at line 75 of file G4OpenInventorXtViewer.hh.

Referenced by HelpCancelCbk(), HelpCbk(), and Initialise().

◆ fHelpText

Widget G4OpenInventorXtViewer::fHelpText
protected

Definition at line 76 of file G4OpenInventorXtViewer.hh.

Referenced by HelpCbk(), and Initialise().

◆ fShell

Widget G4OpenInventorXtViewer::fShell
protected

Definition at line 73 of file G4OpenInventorXtViewer.hh.

Referenced by Initialise(), and ~G4OpenInventorXtViewer().

◆ fViewer

SoXtExaminerViewer* G4OpenInventorXtViewer::fViewer
protected

The documentation for this class was generated from the following files: