Tatooine
Public Types | Public Member Functions | Private Attributes | List of all members
tatooine::netcdf::variable< T > Class Template Reference

#include <netcdf.h>

Collaboration diagram for tatooine::netcdf::variable< T >:
[legend]

Public Types

using this_type = variable< T >
 
using value_type = T
 

Public Member Functions

 variable (std::shared_ptr< netCDF::NcFile > &file, std::shared_ptr< std::mutex > &mutex, netCDF::NcVar const &var)
 
 variable (variable const &)=default
 
 variable (variable &&) noexcept=default
 
auto operator= (variable const &) -> variable &=default
 
auto operator= (variable &&) noexcept -> variable &=default
 
auto write (std::vector< std::size_t > const &is, T const &t)
 
auto write (std::vector< std::size_t > const &is, std::vector< std::size_t > const &count, T const *const arr)
 
auto write (T const *const arr)
 
auto write (std::vector< T > const &arr)
 
auto write (range auto const r)
 
auto num_components () const
 
auto read () const
 
auto read (dynamic_multidim_array< T, x_fastest > &arr) const
 
auto read_chunked (std::size_t const chunk_size=10) const
 
auto read_chunked (std::vector< std::size_t > const &chunk_size) const
 
auto read (chunked_multidim_array< T, x_fastest > &arr) const
 
template<typename MemLoc , std::size_t... Resolution>
auto read (static_multidim_array< T, x_fastest, MemLoc, Resolution... > &arr) const
 
auto read (std::vector< T > &arr) const
 
auto read (T *const ptr) const
 
auto read_as_vector () const
 
auto read_single (std::vector< std::size_t > const &start_indices) const
 
auto read_single (integral auto const ... is) const
 
auto read_chunk (std::vector< std::size_t > start_indices, std::vector< std::size_t > counts) const
 
auto read_chunk (std::vector< std::size_t > start_indices, std::vector< std::size_t > counts, T *ptr) const
 
auto read_chunk (std::vector< std::size_t > const &start_indices, std::vector< std::size_t > const &counts, dynamic_multidim_array< T, x_fastest > &arr) const
 
template<typename MemLoc , std::size_t... Resolution>
auto read_chunk (static_multidim_array< T, x_fastest, MemLoc, Resolution... > &arr, integral auto const ... start_indices) const
 
template<typename MemLoc , std::size_t... Resolution>
auto read_chunk (std::vector< std::size_t > const &start_indices, static_multidim_array< T, x_fastest, MemLoc, Resolution... > &arr) const
 
auto read_chunk (std::vector< std::size_t > const &start_indices, std::vector< std::size_t > const &counts, std::vector< T > &arr) const
 
auto is_null () const
 
auto num_dimensions () const
 
auto size (std::size_t i) const
 
auto dimension_name (std::size_t i) const
 
auto size () const
 
auto name () const
 

Private Attributes

std::shared_ptr< netCDF::NcFile > m_file
 
std::shared_ptr< std::mutex > m_mutex
 
netCDF::NcVar m_var
 

Member Typedef Documentation

◆ this_type

template<typename T >
using tatooine::netcdf::variable< T >::this_type = variable<T>

◆ value_type

template<typename T >
using tatooine::netcdf::variable< T >::value_type = T

Constructor & Destructor Documentation

◆ variable() [1/3]

template<typename T >
tatooine::netcdf::variable< T >::variable ( std::shared_ptr< netCDF::NcFile > &  file,
std::shared_ptr< std::mutex > &  mutex,
netCDF::NcVar const &  var 
)
inline

◆ variable() [2/3]

template<typename T >
tatooine::netcdf::variable< T >::variable ( variable< T > const &  )
default

◆ variable() [3/3]

template<typename T >
tatooine::netcdf::variable< T >::variable ( variable< T > &&  )
defaultnoexcept

Member Function Documentation

◆ dimension_name()

template<typename T >
auto tatooine::netcdf::variable< T >::dimension_name ( std::size_t  i) const
inline

◆ is_null()

template<typename T >
auto tatooine::netcdf::variable< T >::is_null ( ) const
inline

◆ name()

template<typename T >
auto tatooine::netcdf::variable< T >::name ( ) const
inline

◆ num_components()

template<typename T >
auto tatooine::netcdf::variable< T >::num_components ( ) const
inline

◆ num_dimensions()

template<typename T >
auto tatooine::netcdf::variable< T >::num_dimensions ( ) const
inline

◆ operator=() [1/2]

template<typename T >
auto tatooine::netcdf::variable< T >::operator= ( variable< T > &&  ) -> variable &=default
defaultnoexcept

◆ operator=() [2/2]

template<typename T >
auto tatooine::netcdf::variable< T >::operator= ( variable< T > const &  ) -> variable &=default
default

◆ read() [1/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read ( ) const
inline

◆ read() [2/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read ( chunked_multidim_array< T, x_fastest > &  arr) const
inline

◆ read() [3/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read ( dynamic_multidim_array< T, x_fastest > &  arr) const
inline

◆ read() [4/6]

template<typename T >
template<typename MemLoc , std::size_t... Resolution>
auto tatooine::netcdf::variable< T >::read ( static_multidim_array< T, x_fastest, MemLoc, Resolution... > &  arr) const
inline

◆ read() [5/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read ( std::vector< T > &  arr) const
inline

◆ read() [6/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read ( T *const  ptr) const
inline

◆ read_as_vector()

template<typename T >
auto tatooine::netcdf::variable< T >::read_as_vector ( ) const
inline

◆ read_chunk() [1/6]

template<typename T >
template<typename MemLoc , std::size_t... Resolution>
auto tatooine::netcdf::variable< T >::read_chunk ( static_multidim_array< T, x_fastest, MemLoc, Resolution... > &  arr,
integral auto const ...  start_indices 
) const
inline

◆ read_chunk() [2/6]

template<typename T >
template<typename MemLoc , std::size_t... Resolution>
auto tatooine::netcdf::variable< T >::read_chunk ( std::vector< std::size_t > const &  start_indices,
static_multidim_array< T, x_fastest, MemLoc, Resolution... > &  arr 
) const
inline

◆ read_chunk() [3/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunk ( std::vector< std::size_t > const &  start_indices,
std::vector< std::size_t > const &  counts,
dynamic_multidim_array< T, x_fastest > &  arr 
) const
inline

◆ read_chunk() [4/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunk ( std::vector< std::size_t > const &  start_indices,
std::vector< std::size_t > const &  counts,
std::vector< T > &  arr 
) const
inline

◆ read_chunk() [5/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunk ( std::vector< std::size_t >  start_indices,
std::vector< std::size_t >  counts 
) const
inline

◆ read_chunk() [6/6]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunk ( std::vector< std::size_t >  start_indices,
std::vector< std::size_t >  counts,
T *  ptr 
) const
inline

◆ read_chunked() [1/2]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunked ( std::size_t const  chunk_size = 10) const
inline

◆ read_chunked() [2/2]

template<typename T >
auto tatooine::netcdf::variable< T >::read_chunked ( std::vector< std::size_t > const &  chunk_size) const
inline

◆ read_single() [1/2]

template<typename T >
auto tatooine::netcdf::variable< T >::read_single ( integral auto const ...  is) const
inline

◆ read_single() [2/2]

template<typename T >
auto tatooine::netcdf::variable< T >::read_single ( std::vector< std::size_t > const &  start_indices) const
inline

◆ size() [1/2]

template<typename T >
auto tatooine::netcdf::variable< T >::size ( ) const
inline

◆ size() [2/2]

template<typename T >
auto tatooine::netcdf::variable< T >::size ( std::size_t  i) const
inline

◆ write() [1/5]

template<typename T >
auto tatooine::netcdf::variable< T >::write ( range auto const  r)
inline

◆ write() [2/5]

template<typename T >
auto tatooine::netcdf::variable< T >::write ( std::vector< std::size_t > const &  is,
std::vector< std::size_t > const &  count,
T const *const  arr 
)
inline

◆ write() [3/5]

template<typename T >
auto tatooine::netcdf::variable< T >::write ( std::vector< std::size_t > const &  is,
T const &  t 
)
inline

◆ write() [4/5]

template<typename T >
auto tatooine::netcdf::variable< T >::write ( std::vector< T > const &  arr)
inline

◆ write() [5/5]

template<typename T >
auto tatooine::netcdf::variable< T >::write ( T const *const  arr)
inline

Member Data Documentation

◆ m_file

template<typename T >
std::shared_ptr<netCDF::NcFile> tatooine::netcdf::variable< T >::m_file
mutableprivate

◆ m_mutex

template<typename T >
std::shared_ptr<std::mutex> tatooine::netcdf::variable< T >::m_mutex
mutableprivate

◆ m_var

template<typename T >
netCDF::NcVar tatooine::netcdf::variable< T >::m_var
private

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