24 #ifndef SKA_CHEETAH_PSRDADA_SIGPROCDADASTREAM_H 25 #define SKA_CHEETAH_PSRDADA_SIGPROCDADASTREAM_H 28 #include "panda/Producer.h" 29 #include "cheetah/data/TimeFrequency.h" 30 #include "cheetah/sigproc/SigProcHeader.h" 31 #include "cheetah/psrdada/DadaReadClient.h" 32 #include "cheetah/psrdada/Config.h" 47 class SigProcDadaStream :
public ska::panda::Producer<SigProcDadaStream, data::TimeFrequency<Cpu, uint8_t>>
50 typedef data::TimeFrequency<Cpu, uint8_t> ChunkType;
53 SigProcDadaStream(Config
const& config);
75 void transfer_header_info(ChunkType& chunk);
76 void handle_new_sequence(std::istream& in,std::exception_ptr eptr);
77 void handle_new_sequence(std::istream& in,std::shared_ptr<ChunkType> chunk, ChunkType::Iterator it, std::exception_ptr eptr);
78 void new_chunk_process(std::shared_ptr<bool> stopped);
79 bool do_process(std::shared_ptr<bool> stopped, std::shared_ptr<ChunkType> chunk,ChunkType::Iterator it);
82 Config
const& _config;
83 panda::Engine& _engine;
84 sigproc::SigProcHeader _header;
85 DadaReadClient _client;
86 utils::ModifiedJulianClock::time_point _start_time;
94 #endif //ENABLE_PSRDADA 96 #endif // SKA_CHEETAH_PSTDADA_SIGPROCDADASTREAM_H Some limits and constants for FLDO.