CLAM::SegmentSMSMorph Class Reference

#include <SegmentSMSMorph.hxx>

List of all members.

Public Member Functions

 SegmentSMSMorph ()
 Base constructor of class.
 SegmentSMSMorph (const SegmentSMSMorphConfig &c)
 Constructor with an object of SegmentTransformationConfig class by parameter.
const char * GetClassName () const
 This method returns the name of the object.
const ProcessingConfigGetConfig () const
 Configuration getter.
bool ConcreteConfigure (const ProcessingConfig &c)
 Configuration change method.
bool ConcreteStart ()
 Overriding default method to initialize input frame counter.
 ~SegmentSMSMorph ()
 Destructor of the class.
bool Do (const Segment &in1, Segment &out)
 Unsupervised Do function, receives a Segment as input and output.
bool Do (const Segment &in1, Segment &in2, Segment &out)
bool Do (const Frame &in1, Frame &out)
bool Do ()
 Supervised mode execution method (using ports).
virtual bool UpdateControlValueFromBPF (TData pos)
 Method to update the Amount control from an existing BPF configured in the configuration phase.
void SetSegmentToMorph (Segment &segmentToMorph)

Public Attributes

bool mUseGlobalFactor
FloatInControl mHybBPF
bool mUseSynchronizeTime
FloatInControl mSynchronizeTime
bool mUseSinAmp
FloatInControl mHybSinAmp
bool mUseSinSpectralShape
FloatInControl mHybSinSpectralShape
FloatInControl mHybSinShapeW1
FloatInControl mHybSinShapeW2
bool mUsePitch
FloatInControl mHybPitch
bool mUseSinFreq
FloatInControl mHybSinFreq
bool mUseResAmp
FloatInControl mHybResAmp
bool mUseResSpectralShape
FloatInControl mHybResSpectralShape
FloatInControl mHybResShapeW1
FloatInControl mHybResShapeW2

Protected Member Functions

void UpdateFrameInterpolatorFactors (bool useFrameFactor)
bool FindInterpolatedFrameFromSegment2Morph (Frame &interpolatedFrame)
void UpdateSpectralShape (const BPF &weightBPF1, const BPF &weightBPF2, TData interpFactor, Spectrum &spectralShape)
void InitializeFactorsToUse ()
bool LoadSDIF (std::string fileName, Segment &segment)

Protected Attributes

SDIFIn mSDIFReader
SegmentSMSMorphConfig mConfig
 Internally stored configuration.
SegmentmpInput2
 Input Port.
bool mHarmSpectralShapeMorph
bool mHaveInternalSegment
Segment mSegment
Spectrum mSpectralShape
Spectrum mResSpectralShape
FrameInterpolator mPO_FrameInterpolator
 Child processings.

Detailed Description

Todo:
: introduce interpolation of spectral shapes, before that, interpolations may be extracted to external Processing's

Definition at line 37 of file SegmentSMSMorph.hxx.


Constructor & Destructor Documentation

CLAM::SegmentSMSMorph::SegmentSMSMorph (  ) 

Base constructor of class.

Calls Configure method with a SegmentTransformationConfig initialised by default

Definition at line 35 of file SegmentSMSMorph.cxx.

CLAM::SegmentSMSMorph::SegmentSMSMorph ( const SegmentSMSMorphConfig c  ) 

Constructor with an object of SegmentTransformationConfig class by parameter.

Parameters:
c SegmentTransformationConfig object created by the user

Definition at line 64 of file SegmentSMSMorph.cxx.

CLAM::SegmentSMSMorph::~SegmentSMSMorph (  )  [inline]

Destructor of the class.

Definition at line 62 of file SegmentSMSMorph.hxx.


Member Function Documentation

bool CLAM::SegmentSMSMorph::ConcreteConfigure ( const ProcessingConfig c  )  [virtual]

Configuration change method.

Note that the Amount Control is initialized from the the values in the configuration. Appart from that the member boolean variable that indicates whether a BPF is used is also initialized and the On/Off control also.

Parameters:
The ProcessingConfig object
Returns:
True if the cast has been commited correctly

Reimplemented from CLAM::SegmentTransformation.

Definition at line 95 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::ConcreteStart ( void   )  [virtual]

Overriding default method to initialize input frame counter.

Reimplemented from CLAM::SegmentTransformation.

Definition at line 138 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::Do (  )  [inline, virtual]

Supervised mode execution method (using ports).

Returns:
A boolean telling whether it has been output

Reimplemented from CLAM::SegmentTransformation.

Definition at line 69 of file SegmentSMSMorph.hxx.

References CLAM_ASSERT.

bool CLAM::SegmentSMSMorph::Do ( const Frame in1,
Frame out 
) [virtual]

Reimplemented from CLAM::SegmentTransformation.

Definition at line 159 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::Do ( const Segment in1,
Segment in2,
Segment out 
)

Definition at line 220 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::Do ( const Segment in,
Segment out 
) [virtual]

Unsupervised Do function, receives a Segment as input and output.

This overload is the one called from the supervised Do(). Note that if BPF parameter is used, the Amount control is also updated.

Parameters:
input the Segment that is input to the transformation
out the Segment that is output from the transformation.
Returns:
Boolean value, whether the process has finished successfully or not.

Reimplemented from CLAM::SegmentTransformation.

Definition at line 214 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::FindInterpolatedFrameFromSegment2Morph ( Frame interpolatedFrame  )  [protected]

Definition at line 196 of file SegmentSMSMorph.cxx.

const char* CLAM::SegmentSMSMorph::GetClassName (  )  const [inline, virtual]

This method returns the name of the object.

Returns:
Char pointer with the name of object

Reimplemented from CLAM::SegmentTransformation.

Definition at line 51 of file SegmentSMSMorph.hxx.

const ProcessingConfig& CLAM::SegmentSMSMorph::GetConfig (  )  const [inline, virtual]

Configuration getter.

Gets the configuration parameters used to create the object.

Returns:
Const reference to the configuration object. The usual way to perform a configuration change in the processing object is to take a copy of this reference, to change it and to send it with the Configure method. If not overriden, it returns a NullProcessingConfig.

Reimplemented from CLAM::SegmentTransformation.

Definition at line 53 of file SegmentSMSMorph.hxx.

References mConfig.

void CLAM::SegmentSMSMorph::InitializeFactorsToUse (  )  [protected]

Definition at line 288 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::LoadSDIF ( std::string  fileName,
Segment segment 
) [protected]

Definition at line 352 of file SegmentSMSMorph.cxx.

void CLAM::SegmentSMSMorph::SetSegmentToMorph ( Segment segmentToMorph  ) 

Definition at line 375 of file SegmentSMSMorph.cxx.

bool CLAM::SegmentSMSMorph::UpdateControlValueFromBPF ( TData  pos  )  [virtual]

Method to update the Amount control from an existing BPF configured in the configuration phase.

Reimplemented from CLAM::SegmentTransformation.

Definition at line 228 of file SegmentSMSMorph.cxx.

void CLAM::SegmentSMSMorph::UpdateFrameInterpolatorFactors ( bool  useFrameFactor = false  )  [protected]

Definition at line 144 of file SegmentSMSMorph.cxx.

void CLAM::SegmentSMSMorph::UpdateSpectralShape ( const BPF weightBPF1,
const BPF weightBPF2,
TData  interpFactor,
Spectrum spectralShape 
) [protected]

Definition at line 312 of file SegmentSMSMorph.cxx.


Member Data Documentation

Internally stored configuration.

Reimplemented from CLAM::SegmentTransformation.

Definition at line 117 of file SegmentSMSMorph.hxx.

Referenced by GetConfig().

Definition at line 125 of file SegmentSMSMorph.hxx.

Definition at line 126 of file SegmentSMSMorph.hxx.

Definition at line 80 of file SegmentSMSMorph.hxx.

Definition at line 94 of file SegmentSMSMorph.hxx.

Definition at line 100 of file SegmentSMSMorph.hxx.

Definition at line 104 of file SegmentSMSMorph.hxx.

Definition at line 105 of file SegmentSMSMorph.hxx.

Definition at line 103 of file SegmentSMSMorph.hxx.

Definition at line 86 of file SegmentSMSMorph.hxx.

Definition at line 97 of file SegmentSMSMorph.hxx.

Definition at line 90 of file SegmentSMSMorph.hxx.

Definition at line 91 of file SegmentSMSMorph.hxx.

Definition at line 89 of file SegmentSMSMorph.hxx.

Input Port.

Note that all SegmentTransformations will have segment as input and output, regartheless on what particular "unwrapped" Processing Data they implement the transformation. Here we add a second segment for the sound to morph.

Definition at line 123 of file SegmentSMSMorph.hxx.

Child processings.

Definition at line 136 of file SegmentSMSMorph.hxx.

Definition at line 131 of file SegmentSMSMorph.hxx.

Definition at line 116 of file SegmentSMSMorph.hxx.

Definition at line 128 of file SegmentSMSMorph.hxx.

Definition at line 130 of file SegmentSMSMorph.hxx.

Definition at line 83 of file SegmentSMSMorph.hxx.

Definition at line 79 of file SegmentSMSMorph.hxx.

Definition at line 93 of file SegmentSMSMorph.hxx.

Definition at line 99 of file SegmentSMSMorph.hxx.

Definition at line 102 of file SegmentSMSMorph.hxx.

Definition at line 85 of file SegmentSMSMorph.hxx.

Definition at line 96 of file SegmentSMSMorph.hxx.

Definition at line 88 of file SegmentSMSMorph.hxx.

Definition at line 82 of file SegmentSMSMorph.hxx.


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.3