astrotypes
0.0
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
src
cpp
pss
astrotypes
sigproc
detail
HeaderFieldDataType.cpp
Go to the documentation of this file.
1
/*
2
* MIT License
3
*
4
* Copyright (c) 2018 PulsarSearchSoft
5
*
6
* Permission is hereby granted, free of charge, to any person obtaining a copy
7
* of this software and associated documentation files (the "Software"), to deal
8
* in the Software without restriction, including without limitation the rights
9
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
* copies of the Software, and to permit persons to whom the Software is
11
* furnished to do so, subject to the following conditions:
12
*
13
* The above copyright notice and this permission notice shall be included in all
14
* copies or substantial portions of the Software.
15
*
16
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
* SOFTWARE.
23
*/
24
#include "
pss/astrotypes/sigproc/HeaderField.h
"
25
#include "
HeaderFieldDataType.h
"
26
27
28
namespace
pss
{
29
namespace
astrotypes {
30
namespace
sigproc {
31
32
33
template
<
typename
T>
34
HeaderFieldDataType<T>::HeaderFieldDataType
(
SigProcLabel
const
& header_label,
Header
& header)
35
:
BaseT
(header_label, header)
36
, _header(header)
37
{
38
}
39
40
template
<
typename
T>
41
HeaderFieldDataType<T>::HeaderFieldDataType
(
SigProcLabel
const
& header_label,
Header
& header, T
const
& to_copy)
42
:
BaseT
(header_label, header, to_copy)
43
, _header(header)
44
{
45
}
46
47
template
<
typename
T>
48
HeaderFieldDataType<T>::HeaderFieldDataType
(
SigProcLabel
const
& header_label,
Header
& header,
HeaderFieldDataType
const
& h)
49
:
BaseT
(header_label, header, h)
50
, _header(header)
51
{
52
}
53
54
template
<
typename
T>
55
HeaderFieldDataType<T>::~HeaderFieldDataType
()
56
{
57
}
58
59
template
<
typename
T>
60
HeaderFieldDataType<T>
&
HeaderFieldDataType<T>::operator=
(T
const
& var)
61
{
62
BaseT::operator=(var);
63
return
*
this
;
64
}
65
66
template
<
typename
T>
67
unsigned
HeaderFieldDataType<T>::read
(std::istream & is)
68
{
69
70
decltype(this->_var) var = this->_var;
71
unsigned
size = BaseT::read(is);
72
if
(this->_var != var) {
73
_header.updated_data_type();
74
}
75
return
size;
76
}
77
78
}
// namespace sigproc
79
}
// namespace astrotypes
80
}
// namespace pss
HeaderField.h
pss
Definition:
DataBuffer.cpp:26
pss::astrotypes::sigproc::HeaderFieldDataType::read
unsigned read(std::istream &is) override
read into variable
Definition:
HeaderFieldDataType.cpp:67
pss::astrotypes::sigproc::HeaderFieldDataType::HeaderFieldDataType
HeaderFieldDataType(SigProcLabel const &header_label, Header &header)
Definition:
HeaderFieldDataType.cpp:34
pss::astrotypes::sigproc::Header
Store SigProc header information.
Definition:
Header.h:73
pss::astrotypes::sigproc::HeaderFieldDataType
Specilist class for the sigproc data type variable.
Definition:
HeaderFieldDataType.h:39
pss::astrotypes::sigproc::HeaderFieldDataType::~HeaderFieldDataType
~HeaderFieldDataType()
Definition:
HeaderFieldDataType.cpp:55
pss::astrotypes::sigproc::HeaderFieldDataType::operator=
HeaderFieldDataType & operator=(T const &var)
Definition:
HeaderFieldDataType.cpp:60
pss::astrotypes::sigproc::HeaderField
Definition:
HeaderField.h:84
pss::astrotypes::sigproc::SigProcLabel
Definition:
SigProcVariable.h:83
HeaderFieldDataType.h
Generated on Fri Sep 13 2019 10:37:55 for astrotypes by
1.8.9.1