FEAT
3
Finite Element Analysis Toolbox
Loading...
Searching...
No Matches
base.hpp
Go to the documentation of this file.
1
// FEAT3: Finite Element Analysis Toolbox, Version 3
2
// Copyright (C) 2010 by Stefan Turek & the FEAT group
3
// FEAT3 is released under the GNU General Public License version 3,
4
// see the file 'copyright.txt' in the top level directory for details.
5
6
#pragma once
7
16
// includes, FEAT
17
#include <
kernel/base_header.hpp
>
18
19
namespace
FEAT
20
{
24
namespace
LAFEM
25
{
29
enum class
FileMode
30
{
31
fm_exp
= 0,
32
fm_dv
,
33
fm_mtx
,
34
fm_ell
,
35
fm_csr
,
36
fm_coo
,
37
fm_bm
,
38
fm_dm
,
39
fm_sv
,
40
fm_svb
,
41
fm_dvb
,
42
fm_bcsr
,
43
fm_cscr
,
44
fm_binary
45
};
46
50
enum class
CloneMode
51
{
52
Shallow
= 0,
53
Layout
,
54
Weak
,
55
Deep
,
56
Allocate
,
57
};
58
62
enum class
SparseLayoutId
63
{
64
lt_csr
= 0,
65
lt_cscr
,
66
lt_coo
,
67
lt_ell
,
68
lt_banded
69
};
70
84
enum class
Perspective
85
{
86
native
= 0,
87
pod
88
};
89
94
enum class
CompressionModes
: uint64_t
95
{
96
None
= 0x0000000000000000,
97
elements_mask
= 0x00000000000000F0,
98
indices_mask = 0x000000000000000F,
100
compression_off
= 0x0000000000000011,
102
elements_off
= 0x0000000000000010,
103
elements_zlib
= 0x0000000000000040,
104
elements_zfp
= 0x0000000000000080,
106
indices_off
= 0x0000000000000001,
107
indices_zlib
= 0x0000000000000004,
108
};
//enum class type
109
111
inline
CompressionModes
operator&
(
CompressionModes
a,
CompressionModes
b)
112
{
113
return
(
CompressionModes
)(((uint64_t)a) & ((uint64_t)b));
114
}
115
117
inline
CompressionModes
operator|
(
CompressionModes
a,
CompressionModes
b)
118
{
119
return
(
CompressionModes
)(((uint64_t)a) | ((uint64_t)b));
120
}
121
122
// Has to be a multiple of 4096 due to clang restrains
124
constexpr
std::size_t
FileOutStreamBufferSize
= 16777216u;
125
}
// namespace LAFEM
126
}
// namespace FEAT
base_header.hpp
FEAT Kernel base header.
FEAT::LAFEM::CompressionModes
CompressionModes
Definition:
base.hpp:95
FEAT::LAFEM::CompressionModes::elements_off
@ elements_off
FEAT::LAFEM::CompressionModes::elements_zlib
@ elements_zlib
FEAT::LAFEM::CompressionModes::None
@ None
FEAT::LAFEM::CompressionModes::elements_zfp
@ elements_zfp
FEAT::LAFEM::CompressionModes::compression_off
@ compression_off
FEAT::LAFEM::CompressionModes::indices_zlib
@ indices_zlib
FEAT::LAFEM::CompressionModes::elements_mask
@ elements_mask
FEAT::LAFEM::CompressionModes::indices_off
@ indices_off
FEAT::LAFEM::FileOutStreamBufferSize
constexpr std::size_t FileOutStreamBufferSize
OutStreamBufferSize.
Definition:
base.hpp:124
FEAT::LAFEM::SparseLayoutId
SparseLayoutId
Definition:
base.hpp:63
FEAT::LAFEM::SparseLayoutId::lt_csr
@ lt_csr
FEAT::LAFEM::SparseLayoutId::lt_coo
@ lt_coo
FEAT::LAFEM::SparseLayoutId::lt_cscr
@ lt_cscr
FEAT::LAFEM::SparseLayoutId::lt_banded
@ lt_banded
FEAT::LAFEM::SparseLayoutId::lt_ell
@ lt_ell
FEAT::LAFEM::Perspective
Perspective
Definition:
base.hpp:85
FEAT::LAFEM::Perspective::native
@ native
FEAT::LAFEM::Perspective::pod
@ pod
FEAT::LAFEM::operator&
CompressionModes operator&(CompressionModes a, CompressionModes b)
bit-wise AND operator for CompressionModes
Definition:
base.hpp:111
FEAT::LAFEM::CloneMode
CloneMode
Definition:
base.hpp:51
FEAT::LAFEM::CloneMode::Deep
@ Deep
FEAT::LAFEM::CloneMode::Weak
@ Weak
FEAT::LAFEM::CloneMode::Shallow
@ Shallow
FEAT::LAFEM::CloneMode::Allocate
@ Allocate
FEAT::LAFEM::CloneMode::Layout
@ Layout
FEAT::LAFEM::FileMode
FileMode
Definition:
base.hpp:30
FEAT::LAFEM::FileMode::fm_dv
@ fm_dv
FEAT::LAFEM::FileMode::fm_binary
@ fm_binary
FEAT::LAFEM::FileMode::fm_exp
@ fm_exp
FEAT::LAFEM::FileMode::fm_csr
@ fm_csr
FEAT::LAFEM::FileMode::fm_bm
@ fm_bm
FEAT::LAFEM::FileMode::fm_svb
@ fm_svb
FEAT::LAFEM::FileMode::fm_sv
@ fm_sv
FEAT::LAFEM::FileMode::fm_ell
@ fm_ell
FEAT::LAFEM::FileMode::fm_dvb
@ fm_dvb
FEAT::LAFEM::FileMode::fm_dm
@ fm_dm
FEAT::LAFEM::FileMode::fm_cscr
@ fm_cscr
FEAT::LAFEM::FileMode::fm_coo
@ fm_coo
FEAT::LAFEM::FileMode::fm_bcsr
@ fm_bcsr
FEAT::LAFEM::FileMode::fm_mtx
@ fm_mtx
FEAT::LAFEM::operator|
CompressionModes operator|(CompressionModes a, CompressionModes b)
bit-wise OR operator for Pack::Type
Definition:
base.hpp:117
FEAT
FEAT namespace.
Definition:
adjactor.hpp:12
kernel
lafem
base.hpp
Generated by
1.9.5