// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> void AmplitudeProcessor::setHint(ProcessingHint hint, double value) { WaveformProcessor::setHint(hint, value); switch ( hint ) { case Distance: if ( (value < _config.minimumDistance) || (value > _config.maximumDistance) ) setStatus(DistanceOutOfRange, value); else { double length = timeWindowLength(value); if ( length != _config.signalEnd ) { _config.signalEnd = length; computeTimeWindow(); // When we are already finished, make sure the current amplitude // will be send immediately if ( _trigger + Core::TimeSpan(_config.signalEnd) <= dataTimeWindow().endTime() && _stream.lastRecord ) process(_stream.lastRecord.get()); } } break; case Depth: if ( (value < _config.minimumDepth) || (value > _config.maximumDepth) ) setStatus(DepthOutOfRange, value); // To be defined break; } }
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AmplitudeProcessor_Mjma::AmplitudeProcessor_Mjma(const Core::Time& trigger) : AmplitudeProcessor(trigger, "Mjma") { setSignalEnd(150.); setMinSNR(0); setMaxDist(20); setMaxDepth(20); computeTimeWindow(); }
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AmplitudeProcessor_msbb::AmplitudeProcessor_msbb(const Core::Time& trigger, double duration) : AmplitudeProcessor(trigger, "Ms(BB)") { setSignalEnd(3600.); setMinSNR(0); setMinDist(2); setMaxDist(160); setMaxDepth(100); computeTimeWindow(); }