#include <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. |
A Segment is basically an ordered list of Frames (
Definition at line 50 of file Segment.hxx.
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::List< T >::AddElem(), 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::AddFramesArray | ( | ) | [inline] |
void CLAM::Segment::CopyInit | ( | const Segment & | prototype | ) |
Definition at line 57 of file Segment.cxx.
References GetFramesArray(), mCurrentFrameIndex, and CLAM::Search< U, T >::Set().
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::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::DeleteFrame | ( | TIndex | pos | ) |
Deletes frame in a given position.
Definition at line 143 of file Segment.cxx.
References CLAM_ASSERT, CLAM::List< T >::DeleteElem(), GetFrame(), GetFramesArray(), GetHoldsData(), and GetnFrames().
Referenced by DeleteFrame(), CLAM::SegmentTransformation::IsLastFrame(), and CLAM::SegmentSMSTimeStretch::IsLastFrame().
CLAM::Segment::DYN_ATTRIBUTE | ( | 7 | , | |
public | , | |||
std::string | , | |||
Id | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 6 | , | |
public | , | |||
TData | , | |||
SamplingRate | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 2 | , | |
private | , | |||
bool | , | |||
prHoldsData | ||||
) |
CLAM::Segment::DYN_ATTRIBUTE | ( | 1 | , | |
public | , | |||
TTime | , | |||
EndTime | ||||
) |
End time in miliseconds.
CLAM::Segment::DYN_ATTRIBUTE | ( | 0 | , | |
public | , | |||
TTime | , | |||
BeginTime | ||||
) |
Begin time in miliseconds.
CLAM::Segment::DYNAMIC_TYPE_USING_INTERFACE | ( | Segment | , | |
8 | , | |||
ProcessingData | ||||
) |
Finds frame with center time closest to the one given.
Time in miliseconds
Definition at line 170 of file Segment.cxx.
References CLAM_ASSERT, CLAM::Search< U, T >::Find(), 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 189 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 184 of file Segment.cxx.
References FindFrame(), and GetFrame().
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().
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().
Definition at line 88 of file Segment.hxx.
Definition at line 87 of file Segment.hxx.
Referenced by AddFrame(), CopyInit(), DeleteFrame(), GetFrame(), GetnFrames(), and SetHoldsData().
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().
int CLAM::Segment::GetnFrames | ( | ) | const |
Returns the number of frames in segment.
Definition at line 90 of file Segment.cxx.
References FindFrame(), GetFramesArray(), GetHoldsData(), and CLAM::List< T >::Size().
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().
Segment* CLAM::Segment::GetpParent | ( | ) | [inline] |
void CLAM::Segment::RemoveFramesArray | ( | ) | [inline] |
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(), CLAM::Search< U, T >::Set(), and CLAM::DynamicType::UpdateData().
void CLAM::Segment::SetpParent | ( | Segment * | newParent | ) | [inline] |
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().