Code_TYMPAN  4.4.0
Industrial site acoustic simulation
TYTrajet9613Solver.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) <2012-2024> <EDF-DTG> <FRANCE>
3  * This file is part of Code_TYMPAN (R).
4  * Code_TYMPAN (R) is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  * Code_TYMPAN (R) is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  * You should have received a copy of the GNU General Public License along
13  * with Code_TYMPAN (R). If not, see <https://www.gnu.org/licenses/>.
14  */
15 
16 #ifndef __TY_TRAJET_9613SOLVER__
17 #define __TY_TRAJET_9613SOLVER__
18 
25 #include <gtest/gtest_prod.h>
26 
37 {
38 
39  // Methods
40 public:
48 
53  virtual ~TYTrajet9613Solver();
54 
58  bool operator==(const TYTrajet9613Solver& other) const;
60  bool operator!=(const TYTrajet9613Solver& other) const;
61 
66  void reset() override;
67 
73  size_t getNbChemins()
74  {
75  return _chemins.size();
76  }
77 
84  {
85  return _chemins;
86  }
87 
94  {
95  return _cheminsDirect;
96  }
97 
102  void addChemin(const TYChemin9613Solver& chemin);
103 
108  void addCheminDirect(const TYChemin9613Solver& chemin);
109 
116  {
117  return _chemins.at(index);
118  }
119 
130  {
131  return _sLP;
132  }
133 
144  {
145  return _sLP.toTOct().toGPhy();
146  }
147  const OSpectre getSpectre() const
148  {
149  return _sLP.toTOct().toGPhy();
150  }
151 
152  void build_tab_rays();
153 
154 public:
155  // Members
156 protected:
159 
162 
166 };
167 #endif // __TY_TRAJET_9613SOLVER__
All base classes related to 3D manipulation.
std::deque< TYChemin9613Solver > TYTabChemin9613Solver
TYChemin collection.
OSpectreAbstract & toGPhy() const
Converts to physical quantity.
Definition: spectre.cpp:641
OSpectreAbstract & toTOct() const
Converts to one-third Octave.
Definition: spectre.cpp:708
Representation of one of the most optimal path between source and receptor: S—>R. The class TYChemin ...
This class TYTrajet (journey) links a couple Source-Receptor and a collection of paths,...
size_t getNbChemins()
Return the number of path in *this (in addition to the direct path).
virtual ~TYTrajet9613Solver()
Destructor.
TYTrajet9613Solver(tympan::AcousticSource &asrc_, tympan::AcousticReceptor &arcpt_)
Constructor.
void addCheminDirect(const TYChemin9613Solver &chemin)
Add a new path to the array of direct paths.
OSpectreOctave & getSpectreOct()
Get the spectrum in octave band at the receptor point Used to compute the pressure spectrum in octave...
OSpectre getSpectre()
Get the spectrum in third-octave band at the receptor point Used to build the result matrix by TYSolv...
void addChemin(const TYChemin9613Solver &chemin)
Add a new path.
TYTabChemin9613Solver _chemins
Paths collection.
void reset() override
Reset method.
TYTrajet9613Solver & operator=(const TYTrajet9613Solver &other)
Operator =.
bool operator==(const TYTrajet9613Solver &other) const
Operator ==.
TYTabChemin9613Solver _cheminsDirect
Direct paths collection (without obstacles)
TYTabChemin9613Solver & getChemins()
Return the collection of paths of *this.
TYTabChemin9613Solver & getCheminsDirect()
Return an array of the direct paths.
TYChemin9613Solver getChemin(int index)
Return a path thanks to its index.
const OSpectre getSpectre() const
bool operator!=(const TYTrajet9613Solver &other) const
Operator !=.
This class TYTrajet (journey) links a couple Source-Receptor and a collection of paths,...
Definition: TYTrajet.h:33
Describes an acoustic receptor.
Definition: entities.hpp:403
Describes an acoustic source.
Definition: entities.hpp:381
This file provides the declaration of the entities of the model, which inherit from BaseEntity.