MURE
Loading...
Searching...
No Matches
SurfaceCard.hxx
Go to the documentation of this file.
1/*
2 This file is part of MURE,
3 Copyright (C) 2007-2021 MURE developers.
4
5 MURE is free software: you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 MURE is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with MURE. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#ifndef _SURFACECARD_HXX_
20#define _SURFACECARD_HXX_
21
27#include <fstream> // for std
28#include <string> // for string
29#include <vector> // for vector
30
31using namespace std;
32
34
42{
43 public:
48 SurfaceCard(const SurfaceCard &s);
49 virtual SurfaceCard *Clone() = 0;
50 virtual ~SurfaceCard();
51
52 void AddArgument(double arg);
53 vector < double > GetArgument()
54 {
55 return fArguments;
56 }
57 void SetMCCode(string code)
58 {
59 fMCCode = code;
60 }
61 string GetMCCode()
62 {
63 return fMCCode;
64 }
65
66 void SetArea(double a)
67 {
68 fArea = a;
69 }
70 double GetArea()
71 {
72 return fArea;
73 }
74 int GetNref()
75 {
76 return fNref;
77 }
78 void AddNref(int inc = 1)
79 {
80 fNref += inc;
81 }
82 void PrintDebug();
87 bool operator== (SurfaceCard &S);
89 {
90 return fNumber;
91 }
92 void SetNumber(int n)
93 {
94 fNumber = n;
95 }
96 virtual string GetId(int sign = 1) const = 0;
97
98
99 protected:
101 string fMCCode;
102 vector < double > fArguments;
103 double fArea;
104 int fNref;
105};
106
107#endif
#define sign(a)
Definition GenericReactorAssembly.cxx:43
SurfaceCard class is used to define geometrical math surface for MC output format.
Definition SurfaceCard.hxx:42
int fNumber
number of the surface in MC code
Definition SurfaceCard.hxx:100
virtual SurfaceCard * Clone()=0
string fMCCode
the Surface code (Px, Cz, ..)
Definition SurfaceCard.hxx:101
string GetMCCode()
Definition SurfaceCard.hxx:61
double GetArea()
Definition SurfaceCard.hxx:70
double fArea
Area of the Surface (from MC run)
Definition SurfaceCard.hxx:103
int GetNumber()
Definition SurfaceCard.hxx:88
virtual ~SurfaceCard()
destructor.
Definition SurfaceCard.cxx:56
virtual string GetId(int sign=1) const =0
void AddArgument(double arg)
Add argument "arg", i.e. surface parameters.
Definition SurfaceCard.cxx:62
void SetMCCode(string code)
Definition SurfaceCard.hxx:57
void SetArea(double a)
Definition SurfaceCard.hxx:66
int GetNref()
Definition SurfaceCard.hxx:74
vector< double > fArguments
Argument list of the surface.
Definition SurfaceCard.hxx:102
vector< double > GetArgument()
Definition SurfaceCard.hxx:53
void PrintDebug()
for debug only
Definition SurfaceCard.cxx:67
SurfaceCard()
Definition SurfaceCard.cxx:48
bool operator==(SurfaceCard &S)
Definition SurfaceCard.cxx:76
void AddNref(int inc=1)
Definition SurfaceCard.hxx:78
int fNref
Number of times this surface is referenced.
Definition SurfaceCard.hxx:104
void SetNumber(int n)
Definition SurfaceCard.hxx:92
the namespace of the Standard C++

MURE Project, documentation generated by Doxygen 1.9.7 - Fri Jan 19 2024