source: trunk/source/interfaces/html/G4VBasicShell_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.5 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>G4VBasicShell.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>G4VBasicShell.hh</h1><a href="G4VBasicShell_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: G4VBasicShell.hh,v 1.7 2006/06/29 19:10:03 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 G4VBasicShell_H</span>
3900032 <span class="preprocessor"></span><span class="preprocessor">#define G4VBasicShell_H 1</span>
4000033 <span class="preprocessor"></span>
4100034 <span class="keyword">class </span>G4UIcommandTree;
4200035 <span class="keyword">class </span>G4UIcommand;
4300036
4400037 <span class="preprocessor">#include "G4UIsession.hh"</span>
4500038 <span class="preprocessor">#include "globals.hh"</span>
4600039
4700040 <span class="comment">// Class description :</span>
4800041 <span class="comment">//</span>
4900042 <span class="comment">//  G4VBasicShell : a base class to extract common things to various</span>
5000043 <span class="comment">// sessions. </span>
5100044 <span class="comment">//</span>
5200045 <span class="comment">//  It handles "seek" completion logic, help logic.</span>
5300046 <span class="comment">//  VBasicShell handles also commands like "cd, ls, pwd"</span>
5400047 <span class="comment">// without passing by a Geant4 "intercom" command. This feature,</span>
5500048 <span class="comment">// which is similar to a UNIX shell one, had given.</span>
5600049 <span class="comment">// its name to the class.</span>
5700050 <span class="comment">//</span>
5800051 <span class="comment">// Class description - end :</span>
5900052
60<a name="l00053"></a><a class="code" href="classG4VBasicShell.html">00053</a> <span class="keyword">class </span><a class="code" href="classG4VBasicShell.html">G4VBasicShell</a> : <span class="keyword">public</span> G4UIsession
6100054 {
6200055   <span class="keyword">public</span>:
6300056     <a class="code" href="classG4VBasicShell.html#a0">G4VBasicShell</a>();
6400057     <span class="keyword">virtual</span> <a class="code" href="classG4VBasicShell.html#a1">~G4VBasicShell</a>();
6500058
6600059     <span class="keyword">virtual</span> G4UIsession* <a class="code" href="classG4VBasicShell.html#a2">SessionStart</a>() = 0;
6700060     <span class="comment">// null should be returned for interactive session</span>
6800061
6900062     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#a3">PauseSessionStart</a>(G4String Prompt) = 0;
7000063     <span class="comment">// Prompt string can be ignored</span>
7100064
7200065   <span class="keyword">protected</span>:
7300066     G4String <a class="code" href="classG4VBasicShell.html#b0">ModifyToFullPathCommand</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aCommandLine);
7400067     <span class="comment">// convert "BeamOn 10" to "/run/BeamOn 10" if the</span>
7500068     <span class="comment">// current working directory is "/run/"</span>
7600069
7700070     G4String <a class="code" href="classG4VBasicShell.html#b1">GetCurrentWorkingDirectory</a>();
7800071     <span class="comment">// directory string starts with '/' and ends with '/'</span>
7900072
8000073     G4bool <a class="code" href="classG4VBasicShell.html#b2">ChangeDirectory</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* newDir);
8100074     <span class="comment">// change directory to newDir</span>
8200075     <span class="comment">// false will be returned if the target directory doesn't exist</span>
8300076
8400077     G4UIcommandTree* <a class="code" href="classG4VBasicShell.html#b3">FindDirectory</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* dirName);
8500078     <span class="comment">// find G4UIcommandTree object</span>
8600079     <span class="comment">// null returned if the taregt does not exist</span>
8700080
8800081     G4UIcommand* <a class="code" href="classG4VBasicShell.html#b4">FindCommand</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* commandName);
8900082     <span class="comment">// find G4UIcommand object</span>
9000083     <span class="comment">// null returned if the target does not exist</span>
9100084
9200085     G4String <a class="code" href="classG4VBasicShell.html#b5">Complete</a>(G4String);
9300086     <span class="comment">// command completion</span>
9400087     G4String <a class="code" href="classG4VBasicShell.html#b6">FindMatchingPath</a>(G4UIcommandTree*,G4String);
9500088
9600090     <span class="comment">// Methods involving an interactive G4cout //</span>
9700092 <span class="comment"></span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b7">ExecuteCommand</a>(G4String);
9800093     <span class="keyword">virtual</span> G4bool <a class="code" href="classG4VBasicShell.html#b8">GetHelpChoice</a>(G4int&amp;) = 0;
9900094     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b9">ExitHelp</a>() = 0;
10000095     <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b10">ApplyShellCommand</a>(G4String,G4bool&amp;,G4bool&amp;);
10100096     <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b11">ShowCurrent</a>(G4String);
10200097     <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b12">ChangeDirectoryCommand</a>(G4String);
10300098     <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b13">ListDirectory</a>(G4String);
10400099     <span class="keywordtype">void</span> <a class="code" href="classG4VBasicShell.html#b14">TerminalHelp</a>(G4String);
10500100
10600101   <span class="keyword">private</span>:
107<a name="l00102"></a><a class="code" href="classG4VBasicShell.html#r0">00102</a>     G4String <a class="code" href="classG4VBasicShell.html#r0">currentDirectory</a>;
10800103
10900104     G4String <a class="code" href="classG4VBasicShell.html#d0">ModifyPath</a>(G4String tempPath);
11000105 };
11100106
11200107 <span class="preprocessor">#endif</span>
11300108 <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.