COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
ActionDirector.hpp
Go to the documentation of this file.
1 // Copyright (C) 2010-2013 von Karman Institute for Fluid Dynamics, Belgium
2 //
3 // This software is distributed under the terms of the
4 // GNU Lesser General Public License version 3 (LGPLv3).
5 // See doc/lgpl.txt and doc/gpl.txt for the license text.
6 
7 #ifndef cf3_solver_ActionDirector_hpp
8 #define cf3_solver_ActionDirector_hpp
9 
11 
12 #include "mesh/Region.hpp"
13 
14 #include "solver/LibSolver.hpp"
15 
16 namespace cf3 {
17 
18 namespace mesh { class Mesh; }
19 namespace physics { class PhysModel; }
20 
21 namespace solver {
22 
23 class Solver;
24 class Time;
25 
27 
29 
30 public: // functions
31 
34  ActionDirector ( const std::string& name );
35 
37  virtual ~ActionDirector();
38 
40  static std::string type_name () { return "ActionDirector"; }
41 
43 
44 
47 
49  mesh::Mesh& mesh();
50 
52  physics::PhysModel& physical_model();
53 
55 
56 
57 protected: // functions
58 
59  void config_regions();
60 
61 protected: // data
62 
69 
73 
75  std::vector< Handle< mesh::Region > > m_loop_regions;
76 
78  virtual void on_regions_set();
79 
80 };
81 
83 
84 } // solver
85 } // cf3
86 
87 #endif // cf3_solver_ActionDirector_hpp
std::string name(ComponentWrapper &self)
Handle< mesh::Mesh > m_mesh
mesh where this action data resides
Safe pointer to an object. This is the supported method for referring to components.
Definition: Handle.hpp:39
#define solver_API
Definition: LibSolver.hpp:22
Handle< physics::PhysModel > m_physical_model
physical model used by this action
static std::string type_name()
Get the class name.
Top-level namespace for coolfluid.
Definition: Action.cpp:18
Handle< solver::Solver > m_solver
link back to the solver
std::vector< Handle< mesh::Region > > m_loop_regions
regions of the mesh to loop over
Handle< solver::Time > m_time
Send comments to:
COOLFluiD Web Admin