|
CLAM-Development
1.4.0
|
This class performs the interpolation of two SpectralPeakArray processing data objects. More...
#include <SpectralPeakArrayInterpolator.hxx>
Public Member Functions | |
| SpectralPeakArrayInterpolator (const PeaksInterpConfig &c=Config()) | |
| ~SpectralPeakArrayInterpolator () | |
| const ProcessingConfig & | GetConfig () const |
| Configuration getter. | |
| bool | Do (void) |
| Supervised mode execution method (using ports) | |
| bool | Do (const SpectralPeakArray &in1, const SpectralPeakArray &in2, SpectralPeakArray &out) |
| bool | Do (const SpectralPeakArray &in1, const SpectralPeakArray &in2, const Spectrum &spectralShape, SpectralPeakArray &out) |
| void | AttachSpectralShape (Spectrum &spec) |
Public Member Functions inherited from CLAM::Processing | |
| bool | Configure (const ProcessingConfig &config) |
| Configuration change method. | |
| void | Start (void) |
| Method to turn the object into running state. | |
| void | Stop (void) |
| Method to put the object out of running state When in execution mode, this method must be called before any further call to Configure() methods. | |
| Processing () | |
| virtual | ~Processing () |
| virtual bool | CanProcessInplace () |
| Override this method if your processing cannot process inplace. | |
| bool | CanConsumeAndProduce () |
| Check that Supervised Do() can be safely called. | |
| void | ConsumeAndProduce () |
| Acknoledges data tokens in published ports as read/writen by calling Produce() for all registered OutPorts and Consume() to all registered InPorts. | |
| std::string | GetExecStateString () const |
| bool | IsConfigured () const |
| bool | IsRunning () const |
| void | RegisterOutPort (OutPortBase *out) |
| void | RegisterInPort (InPortBase *in) |
| void | RegisterOutControl (OutControlBase *out) |
| void | RegisterInControl (InControlBase *in) |
| void | SetParent (Processing *p) |
| void | SetNetworkBackLink (Network *network) |
| virtual bool | ModifiesPortsAndControlsAtConfiguration () |
| This method is used to determine if a given processing can change its interface of ports/controls after its construction (i.e. | |
| bool | HasInPort (const std::string &name) |
| bool | HasOutPort (const std::string &name) |
| bool | HasInControl (const std::string &name) |
| bool | HasOutControl (const std::string &name) |
| InPortBase & | GetInPort (const std::string &name) |
| OutPortBase & | GetOutPort (const std::string &name) |
| InControlBase & | GetInControl (const std::string &name) |
| OutControlBase & | GetOutControl (const std::string &name) |
| InPortBase & | GetInPort (unsigned index) |
| OutPortBase & | GetOutPort (unsigned index) |
| InControlBase & | GetInControl (unsigned index) |
| OutControlBase & | GetOutControl (unsigned index) |
| unsigned | GetNInPorts () const |
| unsigned | GetNOutPorts () const |
| unsigned | GetNInControls () const |
| unsigned | GetNOutControls () const |
| const std::string & | GetConfigErrorMessage () const |
| Returns a string describing configuration errors if any. | |
| virtual bool | IsSyncSource () const |
| Wether the processing is a sync source such as audio i/o device, or an audio callback hook (i.e. | |
| virtual bool | SupportsVariableAudioSize () const |
| This method reports whether the processing supports dynamic buffer-size host. | |
Public Attributes | |
| FloatInControl | mMagInterpolationFactorCtl |
| Input control for interpolation factor. | |
| FloatInControl | mFreqInterpolationFactorCtl |
| FloatInControl | mPitchInterpolationFactorCtl |
| FloatInControl | mPitch1Ctl |
| Input controls for input pitch needed for harmonic interpolation. | |
| FloatInControl | mPitch2Ctl |
| FloatInControl | mIsHarmonicCtl |
| Input control for whether harmonic interpolation has to be performed. | |
| InPort< SpectralPeakArray > | mIn1 |
| Ports. | |
| InPort< SpectralPeakArray > | mIn2 |
| OutPort< SpectralPeakArray > | mOut |
| Spectrum * | mpSpectralShape |
Additional Inherited Members | |
Public Types inherited from CLAM::Processing | |
| enum | ExecState { Unconfigured = 0, Ready, Running } |
| Processing Object possible execution states. More... | |
Protected Member Functions inherited from CLAM::Processing | |
| virtual bool | ConcreteStart () |
| Processing objects have to redefine this method when starting them implies some internal changes. | |
| virtual bool | ConcreteStop () |
| Processing objects have to redefine this method when stoping them implies some internal changes. | |
| unsigned | BackendBufferSize () |
| Given by the NetworkPlayer (backend) if exists. | |
| unsigned | BackendSampleRate () |
| Given by the NetworkPlayer (backend) if exists. | |
| InControlRegistry & | GetInControls () |
| Accessor to published Controls manager. | |
| OutControlRegistry & | GetOutControls () |
| Accessor to published Controls manager. | |
| InPortRegistry & | GetInPorts () |
| Accessor to published Ports manager. | |
| OutPortRegistry & | GetOutPorts () |
| Accessor to published Portss manager. | |
| bool | AddConfigErrorMessage (const std::string &msg) |
| Use this method to append a configuration errors to the processing when implementing ConcreteConfigure. | |
| bool | AbleToExecute (void) const |
| In debug-mode checks that the processing is configured and started. | |
| template<typename ConcreteConfig > | |
| void | CopyAsConcreteConfig (ConcreteConfig &concrete, const ProcessingConfig &abstract) const |
| Helper template to convert a reference to a ProcessingConfig to the concrete ProcessingConfig specified on the first parameter. | |
| void | SetExecState (ExecState state) |
Protected Attributes inherited from CLAM::Processing | |
| ProcessingComposite * | mpParent |
| Pointer to the parent (composite) processing object, or 0. | |
| Network * | _network |
| The parent network if any. | |
This class performs the interpolation of two SpectralPeakArray processing data objects.
Definition at line 54 of file SpectralPeakArrayInterpolator.hxx.
| CLAM::SpectralPeakArrayInterpolator::SpectralPeakArrayInterpolator | ( | const PeaksInterpConfig & | c = Config() | ) |
Definition at line 45 of file SpectralPeakArrayInterpolator.cxx.
References CLAM::Processing::Configure().
|
inline |
Definition at line 69 of file SpectralPeakArrayInterpolator.hxx.
|
inline |
Definition at line 97 of file SpectralPeakArrayInterpolator.hxx.
References mpSpectralShape.
|
virtual |
Supervised mode execution method (using ports)
Implements CLAM::Processing.
Definition at line 314 of file SpectralPeakArrayInterpolator.cxx.
References CLAM::InPort< Token >::GetData(), CLAM::OutPort< Token >::GetData(), mIn1, mIn2, mOut, and mpSpectralShape.
Referenced by CLAM::FrameInterpolator::Do(), and CLAM::SMSMorph::Do().
| bool CLAM::SpectralPeakArrayInterpolator::Do | ( | const SpectralPeakArray & | in1, |
| const SpectralPeakArray & | in2, | ||
| SpectralPeakArray & | out | ||
| ) |
Definition at line 74 of file SpectralPeakArrayInterpolator.cxx.
References CLAM_DEBUG_ASSERT, CLAM::SpectralPeakArray::GetIndex(), CLAM::InControl< ControlDataType >::GetLastValue(), CLAM::SpectralPeakArray::GetnPeaks(), CLAM::SpectralPeakArray::GetPositionFromIndex(), CLAM::Processing::IsRunning(), mFreqInterpolationFactorCtl, mIsHarmonicCtl, mMagInterpolationFactorCtl, mPitch1Ctl, mPitch2Ctl, mPitchInterpolationFactorCtl, CLAM::SpectralPeakArray::SetnPeaks(), CLAM::SpectralPeakArray::TodB(), and CLAM::SpectralPeakArray::ToLinear().
| bool CLAM::SpectralPeakArrayInterpolator::Do | ( | const SpectralPeakArray & | in1, |
| const SpectralPeakArray & | in2, | ||
| const Spectrum & | spectralShape, | ||
| SpectralPeakArray & | out | ||
| ) |
Definition at line 206 of file SpectralPeakArrayInterpolator.cxx.
References CLAM_DEBUG_ASSERT, CLAM::InControl< ControlDataType >::GetLastValue(), CLAM::Spectrum::GetMag(), CLAM::SpectralPeakArray::GetnPeaks(), CLAM::Processing::IsRunning(), mFreqInterpolationFactorCtl, mIsHarmonicCtl, mPitch1Ctl, mPitch2Ctl, mPitchInterpolationFactorCtl, CLAM::SpectralPeakArray::SetnPeaks(), CLAM::SpectralPeakArray::TodB(), and CLAM::SpectralPeakArray::ToLinear().
|
inlinevirtual |
Configuration getter.
Gets the configuration parameters used to create the object.
Reimplemented from CLAM::Processing.
Definition at line 71 of file SpectralPeakArrayInterpolator.hxx.
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mFreqInterpolationFactorCtl |
Definition at line 80 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| InPort<SpectralPeakArray> CLAM::SpectralPeakArrayInterpolator::mIn1 |
| InPort<SpectralPeakArray> CLAM::SpectralPeakArrayInterpolator::mIn2 |
Definition at line 93 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mIsHarmonicCtl |
Input control for whether harmonic interpolation has to be performed.
Definition at line 89 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mMagInterpolationFactorCtl |
Input control for interpolation factor.
Definition at line 79 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| OutPort<SpectralPeakArray> CLAM::SpectralPeakArrayInterpolator::mOut |
Definition at line 94 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mPitch1Ctl |
Input controls for input pitch needed for harmonic interpolation.
Definition at line 85 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mPitch2Ctl |
Definition at line 86 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| FloatInControl CLAM::SpectralPeakArrayInterpolator::mPitchInterpolationFactorCtl |
Definition at line 81 of file SpectralPeakArrayInterpolator.hxx.
Referenced by Do().
| Spectrum* CLAM::SpectralPeakArrayInterpolator::mpSpectralShape |
Definition at line 96 of file SpectralPeakArrayInterpolator.hxx.
Referenced by AttachSpectralShape(), and Do().
1.8.1