nidas v1.2.3
|
Pure virtual interface for a source of Samples. More...
#include <SampleSource.h>
Pure virtual interface for a source of Samples.
Implementations of SampleSource typically maintain a list of SampleClients. When a SampleSource has a Sample ready, it will call the receive method of all its SampleClients. SampleClients register/unregister with a SampleSource via the addSampleClient/removeSampleClient methods.
|
inlinevirtual |
|
pure virtual |
Add a SampleClient of all Samples to this SampleSource.
The pointer to the SampleClient must remain valid, until after it is removed.
)
Implemented in nidas::dynld::SampleInputStream, nidas::core::DSMSensor, nidas::core::SampleSourceSupport, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::dynld::AsciiOutput::connect(), nidas::core::SampleArchiver::connect(), nidas::dynld::SampleProcessor::connect(), nidas::core::SampleArchiver::connectSource(), and nidas::dynld::SampleProcessor::connectSource().
|
pure virtual |
Add a SampleClient to this SampleSource.
The pointer to the SampleClient must remain valid, until after it is removed.
)
Implemented in nidas::dynld::SampleInputStream, nidas::core::SamplePipeline, nidas::core::SampleSourceSupport, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::dynld::raf::SyncRecordSource, nidas::dynld::StatisticsCruncher, nidas::core::DSMSensor, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SampleSorter, and nidas::dynld::raf::SyncRecordGenerator.
Referenced by nidas::dynld::StatisticsCruncher::attach(), nidas::dynld::raf::CVIProcessor::attachLVInput(), nidas::core::NearestResamplerAtRate::connect(), nidas::core::SampleAverager::connect(), and nidas::core::NearestResampler::connect().
Add a SampleTag to this SampleSource.
This SampleSource does not own the SampleTag.
nidas::util::InvalidParameterException |
Implemented in nidas::dynld::SampleInputStream, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordSource, nidas::dynld::StatisticsCruncher, and nidas::core::DSMSensor.
Referenced by nidas::core::SamplePipeline::addSampleTag(), and nidas::dynld::RawSampleService::schedule().
Request that this SampleSource flush it's samples.
One must think about whether to call flush() on SampleClients of this SampleSource. A SampleClient may have multiple SampleSources and a flush() of it when one SampleSource() is done may not be what is wanted.
)
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleArchiver, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::CVIProcessor, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, nidas::dynld::SampleProcessor, nidas::dynld::StatisticsCruncher, nidas::dynld::StatisticsProcessor, nidas::core::Resampler, and nidas::core::SampleThread.
How many SampleClients are currently in my list.
)
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::core::SamplePipeline::getClientCount().
|
pure virtual |
Several objects in NIDAS can be both a SampleSource of raw Samples and processed Samples.
SampleClients use this method to get a pointer to whatever sample source they are interested in. Derived classes can return NULL if they are not a SampleSource of processed samples.
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::core::SampleArchiver::connectSource(), nidas::dynld::raf::CVIProcessor::connectSource(), nidas::dynld::SampleProcessor::connectSource(), nidas::dynld::StatisticsProcessor::connectSource(), and nidas::core::SampleArchiver::disconnectSource().
|
pure virtual |
Several objects in NIDAS can be both a SampleSource of raw Samples and processed Samples.
SampleClients use this method to get a pointer to whatever sample source they are interested in. Derived classes can return NULL if they are not a SampleSource of raw samples.
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::core::SamplePipeline::connect(), nidas::core::SampleArchiver::connectSource(), nidas::core::SamplePipeline::disconnect(), and nidas::core::SampleArchiver::disconnectSource().
|
pure virtual |
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::core::SamplePipeline::getSampleStats(), nidas::core::SampleArchiver::printStatus(), nidas::dynld::raf::SyncRecordGenerator::printStatus(), and nidas::dynld::RawSampleService::printStatus().
|
pure virtual |
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::dynld::StatisticsCruncher::connect(), nidas::dynld::raf::CVIProcessor::connectSource(), and nidas::core::SamplePipeline::getSampleTagIterator().
|
pure virtual |
What SampleTags am I a SampleSource for?
Implemented in nidas::core::DSMSensor, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, nidas::dynld::SampleInputStream, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::dynld::StatisticsCruncher::attach(), nidas::core::NearestResamplerAtRate::connect(), nidas::core::SampleAverager::connect(), nidas::core::NearestResampler::connect(), nidas::core::SampleArchiver::connectSource(), nidas::dynld::SampleProcessor::connectSource(), nidas::dynld::StatisticsProcessor::connectSource(), nidas::core::SamplePipeline::getSampleTags(), and nidas::dynld::RawSampleService::schedule().
|
pure virtual |
Remove a SampleClient from this SampleSource.
)
Implemented in nidas::dynld::SampleInputStream, nidas::core::DSMSensor, nidas::core::SampleSourceSupport, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::dynld::raf::SyncRecordGenerator, nidas::dynld::raf::SyncRecordSource, and nidas::dynld::StatisticsCruncher.
Referenced by nidas::core::RemoteSerialConnection::close(), nidas::core::DSMEngine::closeOutputs(), nidas::core::SampleArchiver::disconnect(), nidas::dynld::SampleProcessor::disconnect(), nidas::core::SampleArchiver::~SampleArchiver(), and nidas::dynld::SampleProcessor::~SampleProcessor().
|
pure virtual |
Remove a SampleClient for a given SampleTag from this SampleSource.
The pointer to the SampleClient must remain valid, until after it is removed.
)
Implemented in nidas::dynld::SampleInputStream, nidas::core::SamplePipeline, nidas::core::SampleSourceSupport, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::dynld::raf::SyncRecordSource, nidas::dynld::StatisticsCruncher, nidas::core::DSMSensor, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SampleSorter, and nidas::dynld::raf::SyncRecordGenerator.
)
Implemented in nidas::dynld::SampleInputStream, nidas::core::NearestResampler, nidas::core::NearestResamplerAtRate, nidas::core::SampleAverager, nidas::core::SampleBuffer, nidas::core::SampleIOProcessor, nidas::core::SamplePipeline, nidas::core::SampleSorter, nidas::core::SampleSourceSupport, nidas::dynld::raf::SyncRecordSource, nidas::dynld::StatisticsCruncher, and nidas::core::DSMSensor.
Referenced by nidas::core::SamplePipeline::removeSampleTag().