SLIP  1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Typedefs | Functions
HyperVolume.hpp File Reference

Provides a class to manipulate 4d dynamic and generic containers. More...

#include <iostream>
#include <iomanip>
#include <fstream>
#include <iterator>
#include <cassert>
#include <numeric>
#include <algorithm>
#include <cmath>
#include <vector>
#include <string>
#include <cstddef>
#include "Matrix4d.hpp"
#include "stride_iterator.hpp"
#include "apply.hpp"
#include "iterator4d_box.hpp"
#include "iterator4d_range.hpp"
#include <boost/serialization/access.hpp>
#include <boost/serialization/split_member.hpp>
#include <boost/serialization/version.hpp>
Include dependency graph for HyperVolume.hpp:

Go to the source code of this file.

Classes

class  slip::HyperVolume< T >
 Numerical container class This is a four-dimensional dynamic and generic container. This container satisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the triple bracket element access. Data are stored using a Matrix4d class. It extends the interface of Matrix4d adding image read/write operations. These operations are done using the ImageMagick library. More...
 
class  slip::Matrix4d< Block >
 Numerical matrix4d class. This container statisfies the RandomAccessContainer concepts of the STL except the simple bracket which is replaced by a double bracket. It extends the interface of Array4d adding arithmetical: +=, -=, *=, /=,+,-,/,*... and mathematical operators : min, max, abs, sqrt, cos, acos, sin, asin, tan, atan, exp, log, cosh, sinh, tanh, log10, sum, apply... More...
 
class  slip::HyperVolume< T >
 Numerical container class This is a four-dimensional dynamic and generic container. This container satisfies the BidirectionnalContainer concepts of the STL. It is also an 4d extension of the RandomAccessContainer concept. That is to say the bracket element access is replaced by the triple bracket element access. Data are stored using a Matrix4d class. It extends the interface of Matrix4d adding image read/write operations. These operations are done using the ImageMagick library. More...
 

Namespaces

 slip
 This namespace corresponds to the kernel of the Simple Library on Image Processing (SLIP). That is to say that it contains the data structures and the algorithms needed by these data strucutres.
 

Typedefs

typedef slip::HyperVolume< double > slip::HyperVolume_d
 double alias More...
 
typedef slip::HyperVolume< float > slip::HyperVolume_f
 float alias More...
 
typedef slip::HyperVolume< long > slip::HyperVolume_l
 long alias More...
 
typedef slip::HyperVolume
< unsigned long > 
slip::HyperVolume_ul
 unsigned long alias More...
 
typedef slip::HyperVolume< short > slip::HyperVolume_s
 short alias More...
 
typedef slip::HyperVolume
< unsigned short > 
slip::HyperVolume_us
 unsigned long alias More...
 
typedef slip::HyperVolume< int > slip::HyperVolume_i
 int alias More...
 
typedef slip::HyperVolume
< unsigned int > 
slip::HyperVolume_ui
 unsigned int alias More...
 
typedef slip::HyperVolume< char > slip::HyperVolume_c
 char alias More...
 
typedef slip::HyperVolume
< unsigned char > 
slip::HyperVolume_uc
 unsigned char alias More...
 

Functions

template<typename T >
std::ostream & slip::operator<< (std::ostream &out, const slip::HyperVolume< T > &a)
 
template<typename T >
HyperVolume< T > slip::operator+ (const HyperVolume< T > &M1, const HyperVolume< T > &M2)
 pointwise addition of two HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator+ (const HyperVolume< T > &M1, const T &val)
 addition of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator+ (const T &val, const HyperVolume< T > &M1)
 addition of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator- (const HyperVolume< T > &M1, const HyperVolume< T > &M2)
 pointwise substraction of two HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator- (const HyperVolume< T > &M1, const T &val)
 substraction of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator- (const T &val, const HyperVolume< T > &M1)
 substraction of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator* (const HyperVolume< T > &M1, const HyperVolume< T > &M2)
 pointwise multiplication of two HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator* (const HyperVolume< T > &M1, const T &val)
 multiplication of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator* (const T &val, const HyperVolume< T > &M1)
 multiplication of a scalar to each element of a HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator/ (const HyperVolume< T > &M1, const HyperVolume< T > &M2)
 pointwise division of two HyperVolume More...
 
template<typename T >
HyperVolume< T > slip::operator/ (const HyperVolume< T > &M1, const T &val)
 division of a scalar to each element of a HyperVolume More...
 
template<typename T >
T & slip::min (const HyperVolume< T > &M1)
 
template<typename T >
T & slip::max (const HyperVolume< T > &M1)
 
template<typename T >
HyperVolume< T > slip::abs (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::sqrt (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::cos (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::acos (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::sin (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::asin (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::tan (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::atan (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::exp (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::log (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::cosh (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::sinh (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::tanh (const HyperVolume< T > &M)
 
template<typename T >
HyperVolume< T > slip::log10 (const HyperVolume< T > &M)
 
EqualityComparable functions
template<typename T >
bool slip::operator== (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 
template<typename T >
bool slip::operator!= (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 
LessThanComparable functions
template<typename T >
bool slip::operator< (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 
template<typename T >
bool slip::operator> (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 
template<typename T >
bool slip::operator<= (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 
template<typename T >
bool slip::operator>= (const slip::HyperVolume< T > &x, const slip::HyperVolume< T > &y)
 

Detailed Description

Provides a class to manipulate 4d dynamic and generic containers.

Version
Fluex 1.0
Date
2013/07/12
Author
Denis Arrivault <denis.arrivault_AT_inria.fr>

Definition in file HyperVolume.hpp.