gramods
Loading...
Searching...
No Matches
io_size.hh
1
2#ifndef GRAMODS_CORE_SIZE
3#define GRAMODS_CORE_SIZE
4
5#include <gmCore/config.hh>
6#include <array>
7#include <iostream>
8
9BEGIN_NAMESPACE_GMCORE;
10
12typedef std::array<size_t, 2> size2;
13
15typedef std::array<size_t, 3> size3;
16
18typedef std::array<size_t, 4> size4;
19
20END_NAMESPACE_GMCORE;
21
22BEGIN_NAMESPACE_GRAMODS;
23
25inline std::istream& operator>> (std::istream &in, gramods::gmCore::size2 &s) {
26 in >> s[0] >> s[1];
27 return in;
28}
29
31inline std::istream& operator>> (std::istream &in, gramods::gmCore::size3 &s) {
32 in >> s[0] >> s[1] >> s[2];
33 return in;
34}
35
37inline std::istream& operator>> (std::istream &in, gramods::gmCore::size4 &s) {
38 in >> s[0] >> s[1] >> s[2] >> s[3];
39 return in;
40}
41
43inline std::ostream& operator<< (std::ostream &out, gramods::gmCore::size2 &s) {
44 out << s[0] << " " << s[1];
45 return out;
46}
47
49inline std::ostream& operator<< (std::ostream &out, gramods::gmCore::size3 &s) {
50 out << s[0] << " " << s[1] << " " << s[2];
51 return out;
52}
53
55inline std::ostream& operator<< (std::ostream &out, gramods::gmCore::size4 &s) {
56 out << s[0] << " " << s[1] << " " << s[2] << " " << s[3];
57 return out;
58}
59
60END_NAMESPACE_GRAMODS;
61
62#endif
std::array< size_t, 4 > size4
Array of 4 size_t.
Definition io_size.hh:18
std::array< size_t, 3 > size3
Array of 3 size_t.
Definition io_size.hh:15
std::array< size_t, 2 > size2
Array of 2 size_t.
Definition io_size.hh:12