ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4VRTScanner.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4VRTScanner.hh
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 //
27 //
28 //
29 
30 #ifndef G4VRTScanner_H
31 #define G4VRTScanner_H 1
32 
33 // class description:
34 //
35 // G4VRTScanner
36 // Interface class for provider of a sequence of window coordinates.
37 
38 #include "globals.hh"
39 
40 class G4VRTScanner {
41 
42 public: // with description
43 
44  G4VRTScanner();
45  virtual ~G4VRTScanner();
46 
47  virtual const G4String& GetGSName() const = 0;
48  // Get name that acts as graphics system name.
49 
50  virtual const G4String& GetGSNickname() const = 0;
51  // Get name that acts as graphics system nickname. It is this that
52  // the user specifies on the /vis/open and /vis/sceneHandler/create
53  // commands.
54 
55  virtual void Initialize(G4int nRow, G4int nColumn) = 0;
56  // Intialises scanner for window with nRow rows and nColumn columns.
57 
58  virtual G4bool Coords(G4int& iRow, G4int& iColumn) = 0;
59  // Supplies coordinate (iRow,iColumn) and returns false when the
60  // sequence has finished, i.e., on the call *after* suplying the
61  // last valid coordinate.
62 
63  virtual void Draw
64  (unsigned char red, unsigned char green, unsigned char blue);
65  // Draw coloured square at current position.
66 
67 };
68 
69 inline
70 void G4VRTScanner::Draw(unsigned char, unsigned char, unsigned char) {}
71 
72 #endif