#include <Segment.hxx>
A Segment is basically an ordered list of Frames (
Definition at line 50 of file Segment.hxx.
Public Member Functions | |
DYNAMIC_TYPE_USING_INTERFACE (Segment, 8, ProcessingData) | |
DYN_ATTRIBUTE (0, public, TTime, BeginTime) | |
Begin time in miliseconds. | |
DYN_ATTRIBUTE (1, public, TTime, EndTime) | |
End time in miliseconds. | |
DYN_ATTRIBUTE (2, private, bool, prHoldsData) | |
DYN_ATTRIBUTE (3, private, List< Frame >, prFramesArray) | |
DYN_ATTRIBUTE (4, public, Audio, Audio) | |
DYN_ATTRIBUTE (5, public, List< Segment >, Children) | |
DYN_ATTRIBUTE (6, public, TData, SamplingRate) | |
DYN_ATTRIBUTE (7, public, std::string, Id) | |
void | AddFramesArray () |
void | RemoveFramesArray () |
void | SetFramesArray (const List< Frame > &frames) |
const List< Frame > & | GetFramesArray () const |
List< Frame > & | GetFramesArray () |
Segment * | GetpParent () |
Getter for accessing parent segment. | |
void | SetpParent (Segment *newParent) |
Setter for parent segment. | |
void | DefaultInit () |
The concrete dynamic type constructor calls DefaultInit(). | |
void | CopyInit (const Segment &prototype) |
int | GetnFrames () const |
Returns the number of frames in segment. | |
Frame & | GetFrame (TIndex pos) |
Returns a reference to the frame found in a given position. | |
const Frame & | GetFrame (TIndex pos) const |
Returns a constant reference to the frame found in a given position. | |
void | AddFrame (Frame &newFrame) |
Adds a new frame at the end of the segment. | |
void | DeleteFrame (TIndex pos) |
Deletes frame in a given position. | |
TIndex | FindFrame (TTime time) const |
Finds frame with center time closest to the one given. | |
Frame & | GetFrame (TTime time) |
Returns a reference to the frame with center time closest to the one passed. | |
const Frame & | GetFrame (TTime time) const |
Returns a reference to the frame with center time closest to the one passed. | |
void | DeleteFrame (TTime time) |
Deletes frame with center time closest to the one passed. | |
void | SetHoldsData (bool HoldsData) |
Interface for setting the prHoldData member and configuring the Segment accordingly. | |
bool | GetHoldsData () const |
Interface for accessing the prHoldData private member. | |
Public Attributes | |
TIndex | mCurrentFrameIndex |
Index used when processing for keeeping trace of current location in Frame list. |
CLAM::Segment::DYNAMIC_TYPE_USING_INTERFACE | ( | Segment | , | |
8 | , | |||
ProcessingData | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 0 | , | |
public | , | |||
TTime | , | |||
BeginTime | ||||
) |
Begin time in miliseconds.
CLAM::Segment::DYN_ATTRIBUTE | ( | 1 | , | |
public | , | |||
TTime | , | |||
EndTime | ||||
) |
End time in miliseconds.
CLAM::Segment::DYN_ATTRIBUTE | ( | 2 | , | |
private | , | |||
bool | , | |||
prHoldsData | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 6 | , | |
public | , | |||
TData | , | |||
SamplingRate | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 7 | , | |
public | , | |||
std::string | , | |||
Id | ||||
) |
void CLAM::Segment::AddFramesArray | ( | ) | [inline] |
void CLAM::Segment::RemoveFramesArray | ( | ) | [inline] |
Definition at line 82 of file Segment.hxx.
Definition at line 87 of file Segment.hxx.
Referenced by AddFrame(), CopyInit(), DeleteFrame(), GetFrame(), GetnFrames(), and SetHoldsData().
Definition at line 88 of file Segment.hxx.
Segment* CLAM::Segment::GetpParent | ( | ) | [inline] |
void CLAM::Segment::SetpParent | ( | Segment * | newParent | ) | [inline] |
void CLAM::Segment::DefaultInit | ( | void | ) |
The concrete dynamic type constructor calls DefaultInit().
This allows user to initialize his/her object. But we define DefaultInit() here because we don't want to force writting one DefaultInit() function for each concrete dynamic type. If a dynamic type concrete class defines some (not-default) constructors, this should also call the DefaultInit().
Reimplemented from CLAM::DynamicType.
Definition at line 35 of file Segment.cxx.
References mCurrentFrameIndex, NULL, and CLAM::DynamicType::UpdateData().
void CLAM::Segment::CopyInit | ( | const Segment & | prototype | ) |
Definition at line 57 of file Segment.cxx.
References GetFramesArray(), mCurrentFrameIndex, mFramesSearch, and pParent.
int CLAM::Segment::GetnFrames | ( | ) | const |
Returns the number of frames in segment.
Definition at line 90 of file Segment.cxx.
References FindFrame(), GetFramesArray(), and GetHoldsData().
Referenced by CLAM::SegmentTransformation::AddFramesToOutputIfInputIsLonger(), CLAM::SegmentDescriptors::ConcreteCompute(), DeleteFrame(), CLAM::SegmentTransformation::Do(), CLAM::SegmentSMSTimeStretch::Do(), CLAM::SegmentSMSMorph::Do(), CLAM::Segmentator::Do(), CLAM::CleanTracks::Do(), FindFrame(), CLAM::SegmentSMSMorph::FindInterpolatedFrameFromSegment2Morph(), CLAM::SegmentTransformation::GetCurrentFrame(), CLAM::SegmentSMSTimeStretch::GetCurrentFrame(), CLAM::SegmentSMSTimeStretch::HaveFinished(), CLAM::SegmentTransformation::IsLastFrame(), CLAM::SegmentSMSTimeStretch::IsLastFrame(), CLAM::SegmentDescriptors::SetpSegment(), CLAM::Segmentator::UnwrapDescriptors(), and CLAM::SegmentSMSTimeStretch::UpdateTimeAndIndex().
Returns a reference to the frame found in a given position.
Time in miliseconds
Definition at line 117 of file Segment.cxx.
References CLAM_ASSERT, GetFrame(), GetFramesArray(), and GetHoldsData().
Referenced by CLAM::SegmentTransformation::AddFramesToOutputIfInputIsLonger(), DeleteFrame(), CLAM::SpectralSynthesis::Do(), CLAM::SpectralAnalysis::Do(), CLAM::SMSSynthesis::Do(), CLAM::SinusoidalSynthesis::Do(), CLAM::SegmentTransformation::Do(), CLAM::SegmentSMSTimeStretch::Do(), CLAM::SegmentSMSMorph::Do(), CLAM::CleanTracks::Do(), CLAM::SegmentSMSMorph::FindInterpolatedFrameFromSegment2Morph(), CLAM::SegmentTransformation::GetCurrentFrame(), CLAM::SegmentSMSTimeStretch::GetCurrentFrame(), GetFrame(), CLAM::SegmentDescriptors::SetpSegment(), CLAM::Segmentator::UnwrapDescriptors(), and CLAM::SegmentSMSTimeStretch::UpdateTimeAndIndex().
Returns a constant reference to the frame found in a given position.
Definition at line 105 of file Segment.cxx.
References CLAM_ASSERT, GetFrame(), GetFramesArray(), and GetHoldsData().
void CLAM::Segment::AddFrame | ( | Frame & | newFrame | ) |
Adds a new frame at the end of the segment.
Note that this operation copies the frame.
Definition at line 129 of file Segment.cxx.
References CLAM_ASSERT, GetFramesArray(), and GetHoldsData().
Referenced by CLAM::SegmentTransformation::AddFramesToOutputIfInputIsLonger(), CLAM::SMSAnalysis::Do(), CLAM::SegmentTransformation::GetCurrentFrame(), CLAM::SegmentSMSTimeStretch::GetCurrentFrame(), and CLAM::SDIFIn::LoadSDIFDataIntoSegment().
void CLAM::Segment::DeleteFrame | ( | TIndex | pos | ) |
Deletes frame in a given position.
Definition at line 143 of file Segment.cxx.
References CLAM_ASSERT, GetFrame(), GetFramesArray(), GetHoldsData(), and GetnFrames().
Referenced by DeleteFrame(), CLAM::SegmentTransformation::IsLastFrame(), and CLAM::SegmentSMSTimeStretch::IsLastFrame().
Finds frame with center time closest to the one given.
Time in miliseconds
Definition at line 170 of file Segment.cxx.
References CLAM_ASSERT, FindFrame(), GetHoldsData(), and GetnFrames().
Referenced by DeleteFrame(), FindFrame(), GetFrame(), and GetnFrames().
Returns a reference to the frame with center time closest to the one passed.
Time in miliseconds.
Definition at line 184 of file Segment.cxx.
References FindFrame(), and GetFrame().
Returns a reference to the frame with center time closest to the one passed.
Time in miliseconds.
Definition at line 189 of file Segment.cxx.
References FindFrame(), and GetFrame().
void CLAM::Segment::DeleteFrame | ( | TTime | time | ) |
Deletes frame with center time closest to the one passed.
Time in miliseconds
Definition at line 194 of file Segment.cxx.
References DeleteFrame(), and FindFrame().
void CLAM::Segment::SetHoldsData | ( | bool | HoldsData | ) |
Interface for setting the prHoldData member and configuring the Segment accordingly.
Definition at line 199 of file Segment.cxx.
References AddFramesArray(), GetFramesArray(), NULL, RemoveFramesArray(), and CLAM::DynamicType::UpdateData().
bool CLAM::Segment::GetHoldsData | ( | ) | const [inline] |
Interface for accessing the prHoldData private member.
Definition at line 147 of file Segment.hxx.
Referenced by AddFrame(), DeleteFrame(), FindFrame(), GetFrame(), and GetnFrames().
Index used when processing for keeeping trace of current location in Frame list.
Definition at line 90 of file Segment.hxx.
Referenced by CopyInit(), DefaultInit(), CLAM::SpectralSynthesis::Do(), CLAM::SpectralAnalysis::Do(), CLAM::SMSSynthesis::Do(), CLAM::SMSAnalysis::Do(), CLAM::SinusoidalSynthesis::Do(), CLAM::SegmentTransformation::Do(), CLAM::SegmentSMSTimeStretch::Do(), CLAM::SegmentSMSMorph::FindInterpolatedFrameFromSegment2Morph(), CLAM::SMSTransformationChain::InitAllFrameIndex(), and CLAM::SegmentTransformation::IsLastFrame().