CLAM-Development  1.4.0
Classes | Public Types | Public Member Functions
CLAM::ContiguousSegmentation Class Reference

#include <ContiguousSegmentation.hxx>

List of all members.

Classes

class  InsertedOutOfBounds

Public Types

typedef std::vector< double > TimePositions
- Public Types inherited from CLAM::Segmentation

Public Member Functions

 ContiguousSegmentation (double maxPosition=0)
 ContiguousSegmentation (double maxPosition, const TData *begin, const TData *end)
 ~ContiguousSegmentation ()
void takeArray (const TData *begin, const TData *end)
 take data from an array.
unsigned insert (double timePosition)
 Inserts a new border at timePosition.
void maxPosition (double maxPosition)
 move the last offset to maxPosition
void remove (unsigned segment)
 Removes the specified segment.
unsigned pickOffset (double timePosition, double tolerance) const
 Returns the index of the segment whose offset is nearest to the given time position, and within the tolerance.
unsigned pickOnset (double timePosition, double tolerance) const
 Returns the index of the segment whose onset is nearest to the given time position, and within the tolerance.
unsigned pickSegmentBody (double timePosition) const
 Returns the index of the segment which body is on timePosition.
void dragOnset (unsigned segment, double newTimePosition)
 Performs a dragging movement for the Onset of the given segment in order to move it to the newTimePosition.
void dragOffset (unsigned segment, double newTimePosition)
 Performs a dragging movement for the Offset of the given segment in order to move it to the newTimePosition.
void fillArray (DataArray &segmentation) const
 Performs an implementation to fill the DataArray with the segmentation.
const char * GetClassName () const
 Return the class name.
- Public Member Functions inherited from CLAM::Segmentation
 Segmentation ()
 Segmentation (double maxPosition)
virtual ~Segmentation ()
void StoreOn (Storage &storage) const
 Stores component's subitems on the given Storage.
void LoadFrom (Storage &storage)
 Loads component's subitems from the given Storage.
void select (unsigned segment)
void deselect (unsigned segment)
void clearSelection ()
std::string boundsAsString () const
 Testing method for the unit tests.
const TimePositionsonsets () const
 Returns a vector of time position of the segment onsets.
const TimePositionsoffsets () const
 Returns a vector of time position of the segment offsets.
const std::vector< std::string > & labels () const
 Returns a vector of segment labels.
void setLabel (unsigned segment, std::string label)
 Sets the label for a particular segment.
const std::vector< bool > & selections () const
 Returns a vector of time position of the segment selections.
unsigned current () const
 Returns the current segmentation.
void current (unsigned index)
 Changes teh current segmentation.
double maxPosition () const
void xUnits (const std::string &units)
const std::string & xUnits () const
- Public Member Functions inherited from CLAM::Component
virtual ~Component ()
virtual ComponentShallowCopy () const
virtual ComponentDeepCopy () const

Additional Inherited Members

- Protected Attributes inherited from CLAM::Segmentation
TimePositions _onsets
TimePositions _offsets
std::vector< std::string > _labels
std::vector< bool > _selection
unsigned _current
double _maxPosition
std::string _xUnits

Detailed Description

Definition at line 8 of file ContiguousSegmentation.hxx.


Member Typedef Documentation

typedef std::vector<double> CLAM::ContiguousSegmentation::TimePositions

Reimplemented from CLAM::Segmentation.

Definition at line 16 of file ContiguousSegmentation.hxx.


Constructor & Destructor Documentation

CLAM::ContiguousSegmentation::ContiguousSegmentation ( double  maxPosition = 0)
inline
CLAM::ContiguousSegmentation::ContiguousSegmentation ( double  maxPosition,
const TData begin,
const TData end 
)
inline
CLAM::ContiguousSegmentation::~ContiguousSegmentation ( )
inline

Definition at line 35 of file ContiguousSegmentation.hxx.


Member Function Documentation

void CLAM::ContiguousSegmentation::dragOffset ( unsigned  segment,
double  newTimePosition 
)
inlinevirtual

Performs a dragging movement for the Offset of the given segment in order to move it to the newTimePosition.

Constraints for the segmentation mode are applied.

Implements CLAM::Segmentation.

Definition at line 138 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_offsets, and CLAM::Segmentation::_onsets.

Referenced by dragOnset().

void CLAM::ContiguousSegmentation::dragOnset ( unsigned  segment,
double  newTimePosition 
)
inlinevirtual

Performs a dragging movement for the Onset of the given segment in order to move it to the newTimePosition.

Constraints for the segmentation mode are applied.

Implements CLAM::Segmentation.

Definition at line 126 of file ContiguousSegmentation.hxx.

References dragOffset().

void CLAM::ContiguousSegmentation::fillArray ( DataArray segmentation) const
inlinevirtual

Performs an implementation to fill the DataArray with the segmentation.

Implements CLAM::Segmentation.

Definition at line 157 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_onsets, CLAM::Array< T >::Resize(), and CLAM::Array< T >::SetSize().

const char* CLAM::ContiguousSegmentation::GetClassName ( ) const
inlinevirtual

Return the class name.

Reimplemented from CLAM::Segmentation.

Definition at line 165 of file ContiguousSegmentation.hxx.

unsigned CLAM::ContiguousSegmentation::insert ( double  timePosition)
inlinevirtual

Inserts a new border at timePosition.

Implements CLAM::Segmentation.

Definition at line 51 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_current, CLAM::Segmentation::_offsets, CLAM::Segmentation::_onsets, and CLAM::Segmentation::_selection.

Referenced by takeArray().

void CLAM::ContiguousSegmentation::maxPosition ( double  maxPosition)
inlinevirtual

move the last offset to maxPosition

Reimplemented from CLAM::Segmentation.

Definition at line 69 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_offsets, and CLAM::Segmentation::maxPosition().

unsigned CLAM::ContiguousSegmentation::pickOffset ( double  timePosition,
double  tolerance 
) const
inlinevirtual

Returns the index of the segment whose offset is nearest to the given time position, and within the tolerance.

If no end of segment within the tolerance range an invalid segment is returned (nSegments)

Implements CLAM::Segmentation.

Definition at line 97 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_offsets.

unsigned CLAM::ContiguousSegmentation::pickOnset ( double  timePosition,
double  tolerance 
) const
inlinevirtual

Returns the index of the segment whose onset is nearest to the given time position, and within the tolerance.

If no end of segment within the tolerance range an invalid segment is returned (nSegments)

Implements CLAM::Segmentation.

Definition at line 107 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_onsets.

unsigned CLAM::ContiguousSegmentation::pickSegmentBody ( double  timePosition) const
inlinevirtual

Returns the index of the segment which body is on timePosition.

Implements CLAM::Segmentation.

Definition at line 114 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_offsets.

void CLAM::ContiguousSegmentation::remove ( unsigned  segment)
inlinevirtual

Removes the specified segment.

The previous segment is expanded to cover the region. When removing the first segment, the next segment is the one expanded to start at 0. When just a single element, no efect at all.

Implements CLAM::Segmentation.

Definition at line 81 of file ContiguousSegmentation.hxx.

References CLAM::Segmentation::_current, CLAM::Segmentation::_offsets, CLAM::Segmentation::_onsets, and CLAM::Segmentation::_selection.

void CLAM::ContiguousSegmentation::takeArray ( const TData begin,
const TData end 
)
inlinevirtual

take data from an array.

Implements CLAM::Segmentation.

Definition at line 42 of file ContiguousSegmentation.hxx.

References insert().

Referenced by ContiguousSegmentation().


The documentation for this class was generated from the following file: