Geant4-11
source
visualization
HepRep
include
G4HepRepFileXMLWriter.hh
Go to the documentation of this file.
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
// File and Version Information:
29
//
30
// Description:
31
// Create a HepRep XML File (HepRep version 1).
32
//
33
// Environment:
34
// Software developed for the general High Energy Physics community.
35
//
36
// Author :
37
// J. Perl Original Author
38
//
39
// Copyright Information:
40
// Copyright (C) 2001 Stanford Linear Accelerator Center
41
//------------------------------------------------------------------------
42
#ifndef G4HepRepFileXMLWriter_hh
43
#define G4HepRepFileXMLWriter_hh
44
45
//#define G4HEPREPFILEDEBUG // Comment this out to suppress debug code.
46
47
#include "
globals.hh
"
48
#include <fstream>
49
50
class
G4HepRepFileXMLWriter
51
{
52
public
:
53
G4HepRepFileXMLWriter
();
54
55
void
addType
(
const
char
*
name
,
int
newTypeDepth);
56
void
addInstance
();
57
void
addPrimitive
();
58
void
addPoint
(
double
x,
double
y,
double
z);
59
60
void
addAttDef
(
const
char
*
name
,
const
char
* desc,
const
char
* type,
61
const
char
* extra);
62
63
void
addAttValue
(
const
char
*
name
,
const
char
* value);
64
65
void
addAttValue
(
const
char
*
name
,
double
value);
66
67
void
addAttValue
(
const
char
*
name
,
int
value);
68
69
void
addAttValue
(
const
char
*
name
,
bool
value);
70
71
void
addAttValue
(
const
char
*
name
,
double
value1,
double
value2,
72
double
value3);
73
74
void
open
(
const
char
* filespec);
75
void
close
();
76
77
void
endTypes
();
78
79
bool
isOpen
;
80
int
typeDepth
;
81
bool
inType
[50];
82
bool
inInstance
[50];
83
char
*
prevTypeName
[50];
84
85
private
:
86
std::ofstream
fout
;
87
88
void
init
();
89
90
bool
inPrimitive
;
91
bool
inPoint
;
92
93
void
endType
();
94
void
endInstance
();
95
void
endPrimitive
();
96
void
endPoint
();
97
98
void
indent
();
99
};
100
#endif
G4HepRepFileXMLWriter
Definition:
G4HepRepFileXMLWriter.hh:51
G4HepRepFileXMLWriter::addPrimitive
void addPrimitive()
Definition:
G4HepRepFileXMLWriter.cc:153
G4HepRepFileXMLWriter::G4HepRepFileXMLWriter
G4HepRepFileXMLWriter()
Definition:
G4HepRepFileXMLWriter.cc:47
G4HepRepFileXMLWriter::endInstance
void endInstance()
Definition:
G4HepRepFileXMLWriter.cc:408
G4HepRepFileXMLWriter::addAttValue
void addAttValue(const char *name, const char *value)
Definition:
G4HepRepFileXMLWriter.cc:242
G4HepRepFileXMLWriter::addPoint
void addPoint(double x, double y, double z)
Definition:
G4HepRepFileXMLWriter.cc:182
G4HepRepFileXMLWriter::indent
void indent()
Definition:
G4HepRepFileXMLWriter.cc:440
G4HepRepFileXMLWriter::isOpen
bool isOpen
Definition:
G4HepRepFileXMLWriter.hh:79
G4HepRepFileXMLWriter::fout
std::ofstream fout
Definition:
G4HepRepFileXMLWriter.hh:86
G4HepRepFileXMLWriter::inPoint
bool inPoint
Definition:
G4HepRepFileXMLWriter.hh:91
G4HepRepFileXMLWriter::close
void close()
Definition:
G4HepRepFileXMLWriter.cc:372
G4HepRepFileXMLWriter::inPrimitive
bool inPrimitive
Definition:
G4HepRepFileXMLWriter.hh:90
G4HepRepFileXMLWriter::inInstance
bool inInstance[50]
Definition:
G4HepRepFileXMLWriter.hh:82
G4HepRepFileXMLWriter::addType
void addType(const char *name, int newTypeDepth)
Definition:
G4HepRepFileXMLWriter.cc:71
G4HepRepFileXMLWriter::endTypes
void endTypes()
Definition:
G4HepRepFileXMLWriter.cc:389
G4HepRepFileXMLWriter::prevTypeName
char * prevTypeName[50]
Definition:
G4HepRepFileXMLWriter.hh:83
G4HepRepFileXMLWriter::endPrimitive
void endPrimitive()
Definition:
G4HepRepFileXMLWriter.cc:419
G4HepRepFileXMLWriter::addInstance
void addInstance()
Definition:
G4HepRepFileXMLWriter.cc:124
G4HepRepFileXMLWriter::typeDepth
int typeDepth
Definition:
G4HepRepFileXMLWriter.hh:80
G4HepRepFileXMLWriter::endType
void endType()
Definition:
G4HepRepFileXMLWriter.cc:396
G4HepRepFileXMLWriter::endPoint
void endPoint()
Definition:
G4HepRepFileXMLWriter.cc:430
G4HepRepFileXMLWriter::open
void open(const char *filespec)
Definition:
G4HepRepFileXMLWriter.cc:345
G4HepRepFileXMLWriter::init
void init()
Definition:
G4HepRepFileXMLWriter.cc:53
G4HepRepFileXMLWriter::addAttDef
void addAttDef(const char *name, const char *desc, const char *type, const char *extra)
Definition:
G4HepRepFileXMLWriter.cc:221
G4HepRepFileXMLWriter::inType
bool inType[50]
Definition:
G4HepRepFileXMLWriter.hh:81
globals.hh
G4InuclParticleNames::name
const char * name(G4int ptype)
Definition:
G4InuclParticleNames.hh:76
Generated by
1.9.3