stencil/converters.hpp
Go to the documentation of this file.
1 
8 /*****************************************************************************
9 ** Ifdefs
10 *****************************************************************************/
11 
12 #ifndef ECL_CONTAINERS_STENCIL_CONVERTERS_HPP_
13 #define ECL_CONTAINERS_STENCIL_CONVERTERS_HPP_
14 
15 /*****************************************************************************
16 ** Includes
17 *****************************************************************************/
18 
19 #include <ecl/config/macros.hpp>
22 #include "stencil.hpp"
23 
24 /*****************************************************************************
25 ** Namespaces
26 *****************************************************************************/
27 
28 namespace ecl {
29 
30 /*****************************************************************************
31 ** Forware Declarations
32 *****************************************************************************/
33 
34 template<typename Type, std::size_t Size> class Array;
35 
36 /*****************************************************************************
37 ** Interface [Array]
38 *****************************************************************************/
39 
43 template <typename Integral, std::size_t Size>
44 class ECL_PUBLIC Converter < Stencil< Array<char,Size> >, Integral > : public converters::IntegralToByteArray< Stencil< Array<char,Size> >, Integral > {};
45 
49 template <typename Integral, std::size_t Size>
50 class ECL_PUBLIC Converter < Stencil< Array<unsigned char,Size> >, Integral > : public converters::IntegralToByteArray< Stencil< Array<unsigned char,Size> >, Integral > {};
51 
55 template <typename Integral, std::size_t Size>
56 class ECL_PUBLIC Converter < Stencil< Array<signed char,Size> >, Integral > : public converters::IntegralToByteArray< Stencil< Array<signed char,Size> >, Integral > {};
57 
61 template <typename Integral, std::size_t Size>
62 class ECL_PUBLIC Converter <Integral, Stencil< Array<char,Size> > > : public converters::FromByteArray< Integral, Stencil< Array<char,Size> > > {};
63 
67 template <typename Integral, std::size_t Size>
68 class ECL_PUBLIC Converter <Integral, Stencil< Array<unsigned char,Size> > > : public converters::FromByteArray< Integral, Stencil< Array<unsigned char,Size> > > {};
69 
73 template <typename Integral, std::size_t Size>
74 class ECL_PUBLIC Converter <Integral, Stencil< Array<signed char,Size> > > : public converters::FromByteArray< Integral, Stencil< Array<signed char,Size> > > {};
75 
79 template <>
80 class ECL_PUBLIC Converter< Stencil< std::vector<unsigned char> >, unsigned int > : public converters::IntegralToByteArray< Stencil< std::vector<unsigned char> >, unsigned int > {};
81 
85 template <>
86 class ECL_PUBLIC Converter< Stencil< std::vector<unsigned char> >, int > : public converters::IntegralToByteArray< Stencil< std::vector<unsigned char> >, int > {};
87 
91 template <>
92 class ECL_PUBLIC Converter< Stencil< std::vector<unsigned char> >, long > : public converters::IntegralToByteArray< Stencil< std::vector<unsigned char> >, long > {};
93 
97 template <>
98 class ECL_PUBLIC Converter< Stencil< std::vector<unsigned char> >, long long > : public converters::IntegralToByteArray< Stencil< std::vector<unsigned char> >, long long > {};
99 
103 template <typename Integral>
104 class ECL_PUBLIC Converter <Integral, Stencil< const unsigned char* > > : public converters::FromByteArray< Integral, Stencil< const unsigned char* > > {};
105 
106 
107 } // namespace ecl
108 
109 #endif /* ECL_CONTAINERS_STENCIL_CONVERTERS_HPP_ */
to_byte_array.hpp
stencil.hpp
Windows over ecl type containers.
ecl::Stencil
A safe windowing class that opens onto array-like containers.
Definition: stencil/formatters.hpp:46
from_byte_array.hpp
ecl::Array
Fixed size container with a few bells and whistles.
Definition: array_no_mem_check.hpp:112
macros.hpp
ecl
Embedded control libraries.
ecl::Converter
ECL_PUBLIC
#define ECL_PUBLIC


ecl_containers
Author(s): Daniel Stonier
autogenerated on Wed Mar 2 2022 00:16:34