lmms
Cross-platform music production software
Loading...
Searching...
No Matches
lmms::SampleClip Class Reference

#include <SampleClip.h>

Inheritance diagram for lmms::SampleClip:
lmms::Clip lmms::Model lmms::JournallingObject lmms::SerializingObject

Public Slots

void setSampleFile (const QString &sf)
void toggleRecord ()
void playbackPositionChanged ()
void updateTrackClips ()
void tempoChanged ()
Public Slots inherited from lmms::Clip
void toggleMute ()
 Mutes this Clip.

Signals

void sampleChanged ()
void wasReversed ()
Signals inherited from lmms::Clip
void lengthChanged ()
void positionChanged ()
void destroyedClip ()
void colorChanged ()
Signals inherited from lmms::Model
void dataChanged ()
void dataUnchanged ()
void propertiesChanged ()

Public Member Functions

 SampleClip (Track *track, Sample sample, bool isPlaying)
 SampleClip (Track *track)
 ~SampleClip () override
SampleClip & operator= (const SampleClip &that)=delete
void changeLength (const TimePos &_length) override
 Change the length of this Clip.
void updateLength () override
const QString & sampleFile () const
bool hasSampleFileLoaded (const QString &filename) const
void saveSettings (QDomDocument &_doc, QDomElement &_parent) override
void loadSettings (const QDomElement &_this) override
QString nodeName () const override
Sample & sample ()
TimePos sampleLength () const
void setSampleStartFrame (f_cnt_t startFrame)
void setSamplePlayLength (f_cnt_t length)
void setStartTimeOffset (const TimePos &startTimeOffset) override
gui::ClipView * createView (gui::TrackView *_tv) override
bool isPlaying () const
void setIsPlaying (bool isPlaying)
void setSampleBuffer (std::shared_ptr< const SampleBuffer > sb)
SampleClip * clone () override
 Creates a copy of this clip.
Public Member Functions inherited from lmms::Clip
 Clip (Track *track)
 Creates a new clip for the given track track.
 ~Clip () override
 Destroys the given clip.
Track * getTrack () const
const QString & name () const
void setName (const QString &name)
QString displayName () const override
const TimePos & startPosition () const
TimePos endPosition () const
const TimePos & length () const
bool hasTrackContainer () const
bool isInPattern () const
bool manuallyResizable () const
void setAutoResize (const bool r)
 Set whether a clip has been resized yet by the user or the knife tool.
bool getAutoResize () const
auto color () const -> const std::optional< QColor > &
void setColor (const std::optional< QColor > &color)
virtual void movePosition (const TimePos &pos)
 Move this Clip's position in time.
void selectViewOnCreate (bool select)
bool getSelectViewOnCreate ()
TimePos startTimeOffset () const
Public Member Functions inherited from lmms::Model
 Model (Model *parent, QString displayName=QString(), bool defaultConstructed=false)
 ~Model () override=default
bool isDefaultConstructed () const
Model * parentModel () const
virtual void setDisplayName (const QString &displayName)
virtual QString fullDisplayName () const
Public Member Functions inherited from lmms::JournallingObject
 JournallingObject ()
 ~JournallingObject () override
jo_id_t id () const
void saveJournallingState (const bool newState)
void restoreJournallingState ()
void addJournalCheckPoint ()
QDomElement saveState (QDomDocument &_doc, QDomElement &_parent) override
void restoreState (const QDomElement &_this) override
bool isJournalling () const
void setJournalling (const bool _sr)
bool testAndSetJournalling (const bool newState)
bool isJournallingStateStackEmpty () const
Public Member Functions inherited from lmms::SerializingObject
 SerializingObject ()
virtual ~SerializingObject ()
void setHook (SerializingObjectHook *_hook)
SerializingObjectHook * hook ()

Protected Member Functions

 SampleClip (const SampleClip &orig)
Protected Member Functions inherited from lmms::Clip
 Clip (const Clip &other)
 Creates a duplicate clip of the one provided.
Protected Member Functions inherited from lmms::JournallingObject
void changeID (jo_id_t _id)

Private Member Functions

 mapPropertyFromModel (bool, isRecord, setRecord, m_recordModel)

Private Attributes

Sample m_sample
BoolModel m_recordModel
bool m_isPlaying
int m_startFrameOffset

Friends

class gui::SampleClipView

Additional Inherited Members

Static Public Member Functions inherited from lmms::Clip
static bool comparePosition (const Clip *a, const Clip *b)
 Returns true if and only if a->startPosition() < b->startPosition().
static void copyStateTo (Clip *src, Clip *dst)
 Copies the state of a clip to another clip.

Constructor & Destructor Documentation

◆ SampleClip() [1/3]

lmms::SampleClip::SampleClip ( Track * track,
Sample sample,
bool isPlaying )

◆ SampleClip() [2/3]

lmms::SampleClip::SampleClip ( Track * track)

◆ ~SampleClip()

lmms::SampleClip::~SampleClip ( )
override

◆ SampleClip() [3/3]

lmms::SampleClip::SampleClip ( const SampleClip & orig)
protected

Member Function Documentation

◆ changeLength()

void lmms::SampleClip::changeLength ( const TimePos & length)
overridevirtual

Change the length of this Clip.

If the clip's length has changed, update it. We also add a journal entry for undo and update the display.

Parameters
lengthThe new length of the clip.

Reimplemented from lmms::Clip.

◆ clone()

SampleClip * lmms::SampleClip::clone ( )
inlineoverridevirtual

Creates a copy of this clip.

Returns
Pointer to the new clip object

Implements lmms::Clip.

◆ createView()

gui::ClipView * lmms::SampleClip::createView ( gui::TrackView * _tv)
overridevirtual

Implements lmms::Clip.

◆ hasSampleFileLoaded()

bool lmms::SampleClip::hasSampleFileLoaded ( const QString & filename) const

◆ isPlaying()

bool lmms::SampleClip::isPlaying ( ) const

◆ loadSettings()

void lmms::SampleClip::loadSettings ( const QDomElement & _this)
overridevirtual

◆ mapPropertyFromModel()

lmms::SampleClip::mapPropertyFromModel ( bool ,
isRecord ,
setRecord ,
m_recordModel  )
private

◆ nodeName()

QString lmms::SampleClip::nodeName ( void ) const
inlineoverridevirtual

◆ operator=()

SampleClip & lmms::SampleClip::operator= ( const SampleClip & that)
delete

◆ playbackPositionChanged

void lmms::SampleClip::playbackPositionChanged ( )
slot

◆ sample()

Sample & lmms::SampleClip::sample ( )
inline

◆ sampleChanged

void lmms::SampleClip::sampleChanged ( )
signal

◆ sampleFile()

const QString & lmms::SampleClip::sampleFile ( ) const

◆ sampleLength()

TimePos lmms::SampleClip::sampleLength ( ) const

◆ saveSettings()

void lmms::SampleClip::saveSettings ( QDomDocument & _doc,
QDomElement & _parent )
overridevirtual

◆ setIsPlaying()

void lmms::SampleClip::setIsPlaying ( bool isPlaying)

◆ setSampleBuffer()

void lmms::SampleClip::setSampleBuffer ( std::shared_ptr< const SampleBuffer > sb)

◆ setSampleFile

void lmms::SampleClip::setSampleFile ( const QString & sf)
slot

◆ setSamplePlayLength()

void lmms::SampleClip::setSamplePlayLength ( f_cnt_t length)

◆ setSampleStartFrame()

void lmms::SampleClip::setSampleStartFrame ( f_cnt_t startFrame)

◆ setStartTimeOffset()

void lmms::SampleClip::setStartTimeOffset ( const TimePos & startTimeOffset)
overridevirtual

Reimplemented from lmms::Clip.

◆ tempoChanged

void lmms::SampleClip::tempoChanged ( )
slot

◆ toggleRecord

void lmms::SampleClip::toggleRecord ( )
slot

◆ updateLength()

void lmms::SampleClip::updateLength ( )
overridevirtual

Reimplemented from lmms::Clip.

◆ updateTrackClips

void lmms::SampleClip::updateTrackClips ( )
slot

◆ wasReversed

void lmms::SampleClip::wasReversed ( )
signal

◆ gui::SampleClipView

friend class gui::SampleClipView
friend

Member Data Documentation

◆ m_isPlaying

bool lmms::SampleClip::m_isPlaying
private

◆ m_recordModel

BoolModel lmms::SampleClip::m_recordModel
private

◆ m_sample

Sample lmms::SampleClip::m_sample
private

◆ m_startFrameOffset

int lmms::SampleClip::m_startFrameOffset
private

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