REMORA
Energy Research and Forecasting: An Atmospheric Modeling Code
TimeInterpolatedData Struct Reference

#include <TimeInterpolatedData.H>

Collaboration diagram for TimeInterpolatedData:

Public Member Functions

 TimeInterpolatedData ()
 
 TimeInterpolatedData (amrex::Real time)
 
 ~TimeInterpolatedData ()
 
void set_time (amrex::Real time)
 
amrex::Real get_time ()
 
void add_var (amrex::MultiFab *var_data, int own_data)
 
amrex::MultiFab & get_var (int var_idx)
 
int num_vars ()
 
void clear ()
 

Public Attributes

const int owning = 1
 
const int non_owning = 0
 

Private Attributes

amrex::Vector< amrex::MultiFab * > m_data
 
amrex::Vector< int > m_owns_data
 
amrex::Real m_time
 

Constructor & Destructor Documentation

◆ TimeInterpolatedData() [1/2]

TimeInterpolatedData::TimeInterpolatedData ( )
inline
9 {}

◆ TimeInterpolatedData() [2/2]

TimeInterpolatedData::TimeInterpolatedData ( amrex::Real  time)
inline
11 : m_time(time) {}
amrex::Real m_time
Definition: TimeInterpolatedData.H:55

◆ ~TimeInterpolatedData()

TimeInterpolatedData::~TimeInterpolatedData ( )
inline
13  {
14  clear();
15  }
void clear()
Definition: TimeInterpolatedData.H:34
Here is the call graph for this function:

Member Function Documentation

◆ add_var()

void TimeInterpolatedData::add_var ( amrex::MultiFab *  var_data,
int  own_data 
)
inline
23  {
24  m_data.push_back(var_data);
25  m_owns_data.push_back(own_data);
26  }
amrex::Vector< int > m_owns_data
Definition: TimeInterpolatedData.H:54
amrex::Vector< amrex::MultiFab * > m_data
Definition: TimeInterpolatedData.H:53

Referenced by REMORA::GetDataAtTime().

Here is the caller graph for this function:

◆ clear()

void TimeInterpolatedData::clear ( )
inline
34  {
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  }
int num_vars()
Definition: TimeInterpolatedData.H:32
const int owning
Definition: TimeInterpolatedData.H:49

Referenced by ~TimeInterpolatedData().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_time()

amrex::Real TimeInterpolatedData::get_time ( )
inline
21 { return m_time; }

Referenced by REMORA::FillCoarsePatch().

Here is the caller graph for this function:

◆ get_var()

amrex::MultiFab& TimeInterpolatedData::get_var ( int  var_idx)
inline
28  {
29  return *m_data[var_idx];
30  }

Referenced by REMORA::GetDataAtTime().

Here is the caller graph for this function:

◆ num_vars()

int TimeInterpolatedData::num_vars ( )
inline
32 { return m_data.size(); }

Referenced by clear().

Here is the caller graph for this function:

◆ set_time()

void TimeInterpolatedData::set_time ( amrex::Real  time)
inline
17  {
18  m_time = time;
19  }

Referenced by REMORA::GetDataAtTime().

Here is the caller graph for this function:

Member Data Documentation

◆ m_data

amrex::Vector<amrex::MultiFab*> TimeInterpolatedData::m_data
private

Referenced by add_var(), clear(), get_var(), and num_vars().

◆ m_owns_data

amrex::Vector<int> TimeInterpolatedData::m_owns_data
private

Referenced by add_var(), and clear().

◆ m_time

amrex::Real TimeInterpolatedData::m_time
private

Referenced by clear(), get_time(), and set_time().

◆ non_owning

const int TimeInterpolatedData::non_owning = 0

Referenced by REMORA::GetDataAtTime().

◆ owning

const int TimeInterpolatedData::owning = 1

Referenced by clear(), and REMORA::GetDataAtTime().


The documentation for this struct was generated from the following file: