matio-cpp  v0.2.5
A C++ wrapper of the matio library, with memory ownership handling, to read and write .mat files.
ExogenousConversions.h File Reference
#include <matioCpp/ForwardDeclarations.h>
#include <matioCpp/EigenConversions.h>
#include <matioCpp/Element.h>
#include <matioCpp/Struct.h>
#include <matioCpp/CellArray.h>
#include <matioCpp/Span.h>
#include <matioCpp/Vector.h>
#include <matioCpp/MultiDimensionalArray.h>
#include <visit_struct/visit_struct_intrusive.hpp>
#include "impl/ExogenousConversionHelpers.tpp"
#include "impl/ExogenousConversions.tpp"
+ Include dependency graph for ExogenousConversions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  matioCpp::is_make_variable_callable< Class, typename >
 is_make_variable_callable is a template utility to check if the make_variable works for a give type More...
 
struct  matioCpp::is_make_variable_callable< Class, matioCpp::SpanUtils::void_t< decltype(matioCpp::make_variable(std::declval< std::string >(), std::declval< Class >()))> >
 
struct  matioCpp::make_variable_output< Class >
 make_variable_output is a template utility to check the type that make_variable would output. More...
 

Namespaces

 matioCpp
 

Functions

template<class Vector , typename = typename std::enable_if_t<is_vector_compatible<Vector>::value && !std::is_same<Vector, std::string>::value>>
matioCpp::Vector< typename std::remove_cv_t< typename matioCpp::SpanUtils::container_data< Vector >::type > > matioCpp::make_variable (const std::string &name, const Vector &input)
 Conversion from a generic vector to a matioCpp::Vector. More...
 
matioCpp::String matioCpp::make_variable (const std::string &name, const std::string &input)
 Conversion from a std::string to a matioCpp::String. More...
 
matioCpp::Vector< matioCpp::LogicalmatioCpp::make_variable (const std::string &name, const std::vector< bool > &input)
 Conversion from a boolean vector to a matioCpp::Vector<matioCpp::Logical> More...
 
template<typename type , typename = typename std::enable_if<std::is_fundamental<type>::value && !std::is_same<type, bool>::value>::type>
matioCpp::Element< type > matioCpp::make_variable (const std::string &name, const type &input)
 Conversion from a fundamental type to the corresponding matioCpp::Element. More...
 
matioCpp::Element< matioCpp::LogicalmatioCpp::make_variable (const std::string &name, bool input)
 Conversion from a boolean to a matioCpp::Element<matioCpp::Logical> More...
 
matioCpp::CellArray matioCpp::make_variable (const std::string &name, const std::vector< std::string > &input)
 Conversion from a vector of strings to a matioCpp::CellArray containing the input strings. More...
 
template<typename Struct , typename = typename std::enable_if_t<visit_struct::traits::is_visitable<Struct>::value>>
matioCpp::Struct matioCpp::make_variable (const std::string &name, const Struct &input)
 Conversion from a visitable struct to a matioCpp::Struct. More...
 
template<class iterator , typename = typename std::enable_if_t<is_pair_iterator_string<iterator>::value>>
matioCpp::Struct matioCpp::make_struct (const std::string &name, iterator begin, iterator end)
 Create a matioCpp::Struct starting from the begin and end iterators of a map-like container The dereferenced value of the iterator has to be a pair (like with std::maps and std::unordered_map) with the key being a string. More...
 
template<class iterator , typename std::enable_if_t< is_pair_iterator_string< iterator >::value > * = nullptr>
matioCpp::CellArray matioCpp::make_cell_array (const std::string &name, const iterator &begin, const iterator &end)
 Create a matioCpp::CellArray starting from the begin and end iterators of a container. More...
 
template<class iterator , typename std::enable_if_t<!is_pair< decltype(*std::declval< iterator >())>::value , * = nullptr>
matioCpp::CellArray matioCpp::make_cell_array (const std::string &name, const iterator &begin, const iterator &end)
 Create a matioCpp::CellArray starting from the begin and end iterators of a container. More...