RISA
|
This class controls the ReceiverModule objects. More...
#include <Receiver.h>
Public Types | |
using | manager_type = glados::cuda::HostMemoryManager< unsigned short, glados::cuda::async_copy_policy > |
Public Member Functions | |
Receiver (const std::string &address, const std::string &configPath) | |
auto | loadImage () -> glados::Image< manager_type > |
loadImage is called, when the software pipeline is able to process a new image More... | |
auto | run () -> void |
Private Member Functions | |
auto | readConfig (const std::string &configFile) -> bool |
Private Attributes | |
std::vector< ReceiverModule > | modules_ |
std::map< unsigned int, std::vector< unsigned short > > | buffers_ |
one input buffer for each detector module More... | |
std::vector< std::thread > | moduleThreads_ |
stores the ReceiverModule threads More... | |
OnlineReceiverNotification | notification_ |
performs the synchronization between the Receiver and the ReceiverModules, to know when a complete sinogramm is ready More... | |
std::array< std::atomic< int >, 27 > | lastEntry_ |
stores the last indices of the received sinogramms More... | |
int | numberOfDetectorModules_ |
the number of detector modules More... | |
int | numberOfDetectors_ |
the number of detectors in the fan beam sinogram More... | |
int | numberOfProjections_ |
the number of projections in the fan beam sinogram More... | |
unsigned int | memoryPoolIndex_ |
unsigned int | bufferSize_ |
This class controls the ReceiverModule objects.
It gets notified, when a new sinogram arrived. If all ReceiverModules notified this class, it pushes the complete sinogram through the software pipeline. (If the pipeline is reader, otherwise it skips sinogramms).
Definition at line 48 of file Receiver.h.
using risa::Receiver::manager_type = glados::cuda::HostMemoryManager<unsigned short, glados::cuda::async_copy_policy> |
Definition at line 51 of file Receiver.h.
risa::Receiver::Receiver | ( | const std::string & | address, |
const std::string & | configPath | ||
) |
Definition at line 34 of file Receiver.cpp.
auto risa::Receiver::loadImage | ( | ) | -> glados::Image<manager_type> |
loadImage is called, when the software pipeline is able to process a new image
Definition at line 69 of file Receiver.cpp.
|
private |
Definition at line 89 of file Receiver.cpp.
auto risa::Receiver::run | ( | ) | -> void |
Definition at line 65 of file Receiver.cpp.
|
private |
one input buffer for each detector module
Definition at line 66 of file Receiver.h.
|
private |
Definition at line 80 of file Receiver.h.
|
private |
stores the last indices of the received sinogramms
Definition at line 72 of file Receiver.h.
|
private |
Definition at line 78 of file Receiver.h.
|
private |
Definition at line 64 of file Receiver.h.
|
private |
stores the ReceiverModule threads
Definition at line 68 of file Receiver.h.
|
private |
performs the synchronization between the Receiver and the ReceiverModules, to know when a complete sinogramm is ready
Definition at line 70 of file Receiver.h.
|
private |
the number of detector modules
Definition at line 74 of file Receiver.h.
|
private |
the number of detectors in the fan beam sinogram
Definition at line 75 of file Receiver.h.
|
private |
the number of projections in the fan beam sinogram
Definition at line 76 of file Receiver.h.