REMORA
Regional Modeling of Oceans Refined Adaptively
Loading...
Searching...
No Matches
REMORA_TimeInterpolatedData.H
Go to the documentation of this file.
1
#ifndef REMORA_TIME_INTERP_DATA_H_
2
#define REMORA_TIME_INTERP_DATA_H_
3
4
#include <AMReX_MultiFab.H>
5
#include <AMReX_Vector.H>
6
#include <AMReX_REAL.H>
7
8
struct
TimeInterpolatedData
{
9
TimeInterpolatedData
() {}
10
11
TimeInterpolatedData
(amrex::Real time) :
m_time
(time) {}
12
13
~TimeInterpolatedData
() {
14
clear
();
15
}
16
17
void
set_time
(amrex::Real time) {
18
m_time
= time;
19
}
20
21
amrex::Real
get_time
() {
return
m_time
; }
22
23
void
add_var
(amrex::MultiFab* var_data,
int
own_data) {
24
m_data
.push_back(var_data);
25
m_owns_data
.push_back(own_data);
26
}
27
28
amrex::MultiFab&
get_var
(
int
var_idx) {
29
return
*
m_data
[var_idx];
30
}
31
32
int
num_vars
() {
return
m_data
.size(); }
33
34
void
clear
() {
35
// clear all data owned by this object
36
for
(
int
i = 0; i <
num_vars
(); ++i) {
37
if
(
m_owns_data
[i] ==
owning
) {
38
m_data
[i]->clear();
39
delete
m_data
[i];
40
}
41
}
42
43
// clear internal memory
44
m_data
.clear();
45
m_owns_data
.clear();
46
m_time
= 0.;
47
}
48
49
const
int
owning
= 1;
50
const
int
non_owning
= 0;
51
52
private
:
53
amrex::Vector<amrex::MultiFab*>
m_data
;
54
amrex::Vector<int>
m_owns_data
;
55
amrex::Real
m_time
;
56
};
57
58
#endif
TimeInterpolatedData
Definition
REMORA_TimeInterpolatedData.H:8
TimeInterpolatedData::set_time
void set_time(amrex::Real time)
Definition
REMORA_TimeInterpolatedData.H:17
TimeInterpolatedData::non_owning
const int non_owning
Definition
REMORA_TimeInterpolatedData.H:50
TimeInterpolatedData::add_var
void add_var(amrex::MultiFab *var_data, int own_data)
Definition
REMORA_TimeInterpolatedData.H:23
TimeInterpolatedData::get_time
amrex::Real get_time()
Definition
REMORA_TimeInterpolatedData.H:21
TimeInterpolatedData::get_var
amrex::MultiFab & get_var(int var_idx)
Definition
REMORA_TimeInterpolatedData.H:28
TimeInterpolatedData::clear
void clear()
Definition
REMORA_TimeInterpolatedData.H:34
TimeInterpolatedData::num_vars
int num_vars()
Definition
REMORA_TimeInterpolatedData.H:32
TimeInterpolatedData::m_owns_data
amrex::Vector< int > m_owns_data
Definition
REMORA_TimeInterpolatedData.H:54
TimeInterpolatedData::m_data
amrex::Vector< amrex::MultiFab * > m_data
Definition
REMORA_TimeInterpolatedData.H:53
TimeInterpolatedData::m_time
amrex::Real m_time
Definition
REMORA_TimeInterpolatedData.H:55
TimeInterpolatedData::TimeInterpolatedData
TimeInterpolatedData(amrex::Real time)
Definition
REMORA_TimeInterpolatedData.H:11
TimeInterpolatedData::~TimeInterpolatedData
~TimeInterpolatedData()
Definition
REMORA_TimeInterpolatedData.H:13
TimeInterpolatedData::owning
const int owning
Definition
REMORA_TimeInterpolatedData.H:49
TimeInterpolatedData::TimeInterpolatedData
TimeInterpolatedData()
Definition
REMORA_TimeInterpolatedData.H:9
Source
BoundaryConditions
REMORA_TimeInterpolatedData.H
Generated by
1.9.8