Loading...
Searching...
No Matches
Field.hpp
Go to the documentation of this file.
1// This code is based on Jet framework.
2// Copyright (c) 2018 Doyub Kim
3// CubbyFlow is voxel-based fluid simulation engine for computer games.
4// Copyright (c) 2020 CubbyFlow Team
5// Core Part: Chris Ohk, Junwoo Hwang, Jihong Sin, Seungwoo Yoo
6// AI Part: Dongheon Cho, Minseo Kim
7// We are making my contributions/submissions to this project solely in our
8// personal capacity and are not conveying any rights to any intellectual
9// property of any third parties.
10
11#ifndef CUBBYFLOW_FIELD_HPP
12#define CUBBYFLOW_FIELD_HPP
13
14#include <memory>
15
16namespace CubbyFlow
17{
19template <size_t N>
20class Field
21{
22 public:
24 Field() = default;
25
27 virtual ~Field() = default;
28
30 Field(const Field&) = default;
31
33 Field(Field&&) noexcept = default;
34
36 Field& operator=(const Field&) = default;
37
39 Field& operator=(Field&&) noexcept = default;
40};
41
43using Field2 = Field<2>;
44
46using Field3 = Field<3>;
47
49using Field2Ptr = std::shared_ptr<Field2>;
50
52using Field3Ptr = std::shared_ptr<Field3>;
53} // namespace CubbyFlow
54
55#endif
Abstract base class for N-D fields.
Definition Field.hpp:21
Field(Field &&) noexcept=default
Default move constructor.
virtual ~Field()=default
Default virtual destructor.
Field()=default
Default constructor.
Field(const Field &)=default
Default copy constructor.
Definition pybind11Utils.hpp:21
std::shared_ptr< Field2 > Field2Ptr
Shared pointer type for Field2.
Definition Field.hpp:49
std::shared_ptr< Field3 > Field3Ptr
Shared pointer type for Field3.
Definition Field.hpp:52