Virtual Testbed
Ship dynamics simulator for extreme conditions
src
vtestbed
core
calm_sea_generator.hh
1
#ifndef VTESTBED_CORE_CALM_SEA_GENERATOR_HH
2
#define VTESTBED_CORE_CALM_SEA_GENERATOR_HH
3
4
#include <vtestbed/core/wavy_surface_generator.hh>
5
6
namespace
vtb
{
7
8
namespace
core {
9
17
template
<
class
T,
int
N>
18
class
Calm_sea_generator
:
public
Wavy_surface_generator
<T,N> {
19
20
private
:
21
using
base_type
=
Wavy_surface_generator<T,N>
;
22
23
public
:
24
using
typename
base_type::grid_type
;
25
using
typename
base_type::array_type;
26
27
public
:
28
29
void
generate(
const
grid_type
& grid, array_type& result)
override
;
30
31
};
32
33
template
<
class
T,
int
N>
34
inline
std::unique_ptr<Wavy_surface_generator<T,N>
>
35
make_calm_sea_generator() {
36
return
std::unique_ptr<Wavy_surface_generator<T,N>
>(
new
Calm_sea_generator<T,N>
);
37
}
38
39
}
40
41
}
42
43
#endif // vim:filetype=cpp
vtb::core::Grid
A region defined by start and end index and lower and upper bound for each dimension.
Definition:
core/grid.hh:25
vtb
Main namespace.
Definition:
convert.hh:9
std::unique_ptr
vtb::core::Wavy_surface_generator
Base class for wavy surface generators.
Definition:
core/types.hh:50
vtb::core::Calm_sea_generator
Calm sea generator.
Definition:
calm_sea_generator.hh:18
Generated by
1.8.15