Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
cheetah
candidate_pipeline
ProcessingPipeline.h
1
/*
2
* The MIT License (MIT)
3
*
4
* Copyright (c) 2016 The SKA organisation
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
#ifndef SKA_CHEETAH_CANDIDATE_PIPELINE_PROCESSINGPIPELINE_H
25
#define SKA_CHEETAH_CANDIDATE_PIPELINE_PROCESSINGPIPELINE_H
26
#include "cheetah/pipeline/DataExport.h"
27
#include "cheetah/data/SpCandidateData.h"
28
29
namespace
ska
{
30
namespace
cheetah {
31
namespace
candidate_pipeline {
32
38
template
<
typename
NumericalT>
39
class
ProcessingPipeline
40
{
41
public
:
42
typedef
pipeline::DataExport<NumericalT>
Exporter
;
43
typedef
data::TimeFrequency<Cpu, NumericalT>
TimeFrequencyType
;
44
typedef
data::SpCandidateData<TimeFrequencyType>
SpCandidateDataType
;
45
46
public
:
47
ProcessingPipeline
(Exporter& exporter);
48
virtual
~
ProcessingPipeline
() =
default
;
49
virtual
void
operator()(SpCandidateDataType&)=0;
50
51
Exporter& out();
52
53
private
:
54
Exporter& _exporter;
55
};
56
57
58
}
// namespace candidate_pipeline
59
}
// namespace cheetah
60
}
// namespace ska
61
#include "detail/ProcessingPipeline.cpp"
62
63
#endif // SKA_CHEETAH_CANDIDATE_PIPELINE_PROCESSINGPIPELINE_H
ska::cheetah::pipeline::DataExport< NumericalT >
ska::cheetah::data::TimeFrequency
Definition:
FrequencyTime.h:44
ska
Some limits and constants for FLDO.
Definition:
Brdz.h:35
ska::cheetah::candidate_pipeline::ProcessingPipeline
base class for all Processing Pipelines
Definition:
ProcessingPipeline.h:39
ska::cheetah::data::SpCandidateData
SpCandidates associated with a single data chank.
Definition:
SpCandidateData.h:43
Generated on Mon May 30 2022 15:36:01 for Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline by
1.8.13