source: trunk/source/interfaces/html/G4UIterminal_8hh-source.html @ 818

Last change on this file since 818 was 571, checked in by garnier, 17 years ago

r581@mac-90108: laurentgarnier | 2007-08-17 17:30:26 +0200
deplacement de frame

  • Property svn:mime-type set to text/html
File size: 9.6 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>G4UIterminal.hh Source File</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5</head><body>
6<!-- Generated by Doxygen 1.3.4 -->
7<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
8<h1>G4UIterminal.hh</h1><a href="G4UIterminal_8hh.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">//</span>
900002 <span class="comment">// ********************************************************************</span>
1000003 <span class="comment">// * License and Disclaimer                                           *</span>
1100004 <span class="comment">// *                                                                  *</span>
1200005 <span class="comment">// * The  Geant4 software  is  copyright of the Copyright Holders  of *</span>
1300006 <span class="comment">// * the Geant4 Collaboration.  It is provided  under  the terms  and *</span>
1400007 <span class="comment">// * conditions of the Geant4 Software License,  included in the file *</span>
1500008 <span class="comment">// * LICENSE and available at  http://cern.ch/geant4/license .  These *</span>
1600009 <span class="comment">// * include a list of copyright holders.                             *</span>
1700010 <span class="comment">// *                                                                  *</span>
1800011 <span class="comment">// * Neither the authors of this software system, nor their employing *</span>
1900012 <span class="comment">// * institutes,nor the agencies providing financial support for this *</span>
2000013 <span class="comment">// * work  make  any representation or  warranty, express or implied, *</span>
2100014 <span class="comment">// * regarding  this  software system or assume any liability for its *</span>
2200015 <span class="comment">// * use.  Please see the license in the file  LICENSE  and URL above *</span>
2300016 <span class="comment">// * for the full disclaimer and the limitation of liability.         *</span>
2400017 <span class="comment">// *                                                                  *</span>
2500018 <span class="comment">// * This  code  implementation is the result of  the  scientific and *</span>
2600019 <span class="comment">// * technical work of the GEANT4 collaboration.                      *</span>
2700020 <span class="comment">// * By using,  copying,  modifying or  distributing the software (or *</span>
2800021 <span class="comment">// * any work based  on the software)  you  agree  to acknowledge its *</span>
2900022 <span class="comment">// * use  in  resulting  scientific  publications,  and indicate your *</span>
3000023 <span class="comment">// * acceptance of all terms of the Geant4 Software license.          *</span>
3100024 <span class="comment">// ********************************************************************</span>
3200025 <span class="comment">//</span>
3300026 <span class="comment">//</span>
3400027 <span class="comment">// $Id: G4UIterminal.hh,v 1.9 2006/06/29 19:09:39 gunter Exp $</span>
3500028 <span class="comment">// GEANT4 tag $Name: geant4-08-01-patch-01 $</span>
3600029 <span class="comment">//</span>
3700030
3800031 <span class="preprocessor">#ifndef G4UIterminal_h</span>
3900032 <span class="preprocessor"></span><span class="preprocessor">#define G4UIterminal_h 1</span>
4000033 <span class="preprocessor"></span>
4100034 <span class="preprocessor">#include &lt;fstream&gt;</span>
4200035 <span class="preprocessor">#include "G4UImanager.hh"</span>
4300036 <span class="preprocessor">#include "<a class="code" href="G4VBasicShell_8hh.html">G4VBasicShell.hh</a>"</span>
4400037 <span class="preprocessor">#include "<a class="code" href="G4VUIshell_8hh.html">G4VUIshell.hh</a>"</span>
4500038
4600039 <span class="comment">//</span>
4700040 <span class="comment">//   Description:</span>
4800041 <span class="comment">//</span>
4900042 <span class="comment">//   This class inherits the class G4UIsession.</span>
5000043 <span class="comment">//   This is the class to use a character-terminal sesion.</span>
5100044 <span class="comment">//</span>
5200045 <span class="comment">//   Usage:  </span>
5300046 <span class="comment">//       G4UIsession* terminalSession = new G4UIterminal; </span>
5400047 <span class="comment">//   or  G4UIsession* terminalSession = new G4UIterminal(new your-shell); </span>
5500048 <span class="comment">//</span>
5600049 <span class="comment">//     A character-terminal session  "terminalSession" is instantiated.</span>
5700050 <span class="comment">//     G4cout stream is redirected by default to the constructed instance.</span>
5800051 <span class="comment">//</span>
5900052 <span class="comment">//   terminalSession-&gt; SessionStart(); // "terminalSession" is started.</span>
6000053 <span class="comment">//   delete terminalSession;           // "terminalSession"  is deleted.</span>
6100054 <span class="comment">//</span>
6200055 <span class="comment">//</span>
6300056 <span class="comment">//   In default(no arguments are given), csh-like shell is instantiated.</span>
6400057 <span class="comment">//   If you want to use another shell (e.g. tcsh-like), you can give</span>
6500058 <span class="comment">//   your favorite shell in an argument of the constructor.</span>
6600059 <span class="comment">//</span>
6700060 <span class="comment">//   Which shell? / How to define your own shell?</span>
6800061 <span class="comment">//   Currently two kinds of shells,</span>
6900062 <span class="comment">//                   G4UIcsh / G4UItcsh</span>
7000063 <span class="comment">//   , are presented. </span>
7100064 <span class="comment">//   They inherit the abstract base class, G4VUIshell.</span>
7200065 <span class="comment">//   In order to define your own shell, </span>
7300066 <span class="comment">//     - Define your own shell class derived from G4VUIshell.</span>
7400067 <span class="comment">//     - Implement GetCommandLine() method (pure virtual).</span>
7500068 <span class="comment">//     - Add more functionality, if need.</span>
7600069 <span class="comment">//</span>
7700070 <span class="comment">//   For more detail, see source codes.</span>
7800071 <span class="comment">//</span>
7900072
80<a name="l00073"></a><a class="code" href="classG4UIterminal.html">00073</a> <span class="keyword">class </span><a class="code" href="classG4UIterminal.html">G4UIterminal</a> : <span class="keyword">public</span> <a class="code" href="classG4VBasicShell.html">G4VBasicShell</a> {
8100074 <span class="keyword">private</span>:
82<a name="l00075"></a><a class="code" href="classG4UIterminal.html#r0">00075</a>   G4UImanager* <a class="code" href="classG4UIterminal.html#r0">UI</a>;
8300076   <span class="comment">// shell</span>
84<a name="l00077"></a><a class="code" href="classG4UIterminal.html#r1">00077</a>   <a class="code" href="classG4VUIshell.html">G4VUIshell</a>* <a class="code" href="classG4UIterminal.html#r1">shell</a>;
8500078
8600079   <span class="comment">// program states</span>
87<a name="l00080"></a><a class="code" href="classG4UIterminal.html#r2">00080</a>   G4bool <a class="code" href="classG4UIterminal.html#r2">iExit</a>;
88<a name="l00081"></a><a class="code" href="classG4UIterminal.html#r3">00081</a>   G4bool <a class="code" href="classG4UIterminal.html#r3">iCont</a>;
8900082
9000083 <span class="keyword">public</span>:
9100084   <a class="code" href="classG4UIterminal.html#a0">G4UIterminal</a>(<a class="code" href="classG4VUIshell.html">G4VUIshell</a>* aShell=0);
9200085   <a class="code" href="classG4UIterminal.html#a1">~G4UIterminal</a>();
9300086
9400087   <span class="keywordtype">void</span> <a class="code" href="classG4UIterminal.html#a2">SetPrompt</a>(<span class="keyword">const</span> G4String&amp; prompt);
9500088
9600089 <span class="keyword">private</span>:
9700090   <span class="keywordtype">void</span> <a class="code" href="classG4UIterminal.html#d0">ExecuteCommand</a>(G4String aCommand);
9800091   G4String <a class="code" href="classG4UIterminal.html#d1">GetCommand</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* msg=0);
9900092   G4bool <a class="code" href="classG4UIterminal.html#d2">GetHelpChoice</a>(G4int&amp; aInt);
10000093   <span class="keywordtype">void</span> <a class="code" href="classG4UIterminal.html#d3">ExitHelp</a>();
10100094   
10200095 <span class="keyword">public</span>:
10300096   <span class="comment">// These methods are implementation of corresponding virtual methods</span>
10400097   <span class="comment">// of G4UIsession class.</span>
10500098   <span class="keyword">virtual</span> G4UIsession* <a class="code" href="classG4UIterminal.html#a3">SessionStart</a>(); 
10600099   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classG4UIterminal.html#a4">PauseSessionStart</a>(G4String msg);
10700100   <span class="keyword">virtual</span> G4int <a class="code" href="classG4UIterminal.html#a5">ReceiveG4cout</a>(G4String coutString);
10800101   <span class="keyword">virtual</span> G4int <a class="code" href="classG4UIterminal.html#a6">ReceiveG4cerr</a>(G4String cerrString);
10900102
11000103 };
11100104
11200105 <span class="preprocessor">#endif</span>
11300106 <span class="preprocessor"></span>
114</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jun 22 11:07:02 2007 by
115<a href="http://www.doxygen.org/index.html">
116<img src="doxygen.png" alt="doxygen" align="middle" border=0 > 
117</a>1.3.4 </small></address>
118</body>
119</html>
Note: See TracBrowser for help on using the repository browser.