LMMS
Loading...
Searching...
No Matches
lmms::Controller Class Reference

#include <Controller.h>

Inheritance diagram for lmms::Controller:
lmms::Model lmms::JournallingObject lmms::SerializingObject lmms::LfoController lmms::MidiController lmms::PeakController lmms::AutoDetectMidiController

Public Types

enum class  ControllerType { Dummy , Lfo , Midi , Peak }

Public Slots

virtual gui::ControllerDialogcreateDialog (QWidget *_parent)
virtual void setName (const QString &_new_name)

Signals

void valueChanged ()
Signals inherited from lmms::Model
void dataChanged ()
void dataUnchanged ()
void propertiesChanged ()

Public Member Functions

 Controller (ControllerType _type, Model *_parent, const QString &_display_name)
 ~Controller () override
virtual float currentValue (int _offset)
virtual ValueBuffervalueBuffer ()
bool isSampleExact () const
void setSampleExact (bool _exact)
ControllerType type () const
bool frequentUpdates () const
virtual const QString & name () const
void saveSettings (QDomDocument &_doc, QDomElement &_this) override
void loadSettings (const QDomElement &_this) override
QString nodeName () const override
void addConnection (ControllerConnection *)
void removeConnection (ControllerConnection *)
int connectionCount () const
bool hasModel (const Model *m) const
Public Member Functions inherited from lmms::Model
 Model (Model *parent, QString displayName=QString(), bool defaultConstructed=false)
 ~Model () override=default
bool isDefaultConstructed () const
ModelparentModel () const
virtual QString displayName () 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)
SerializingObjectHookhook ()

Static Public Member Functions

static Controllercreate (ControllerType _tt, Model *_parent)
static Controllercreate (const QDomElement &_this, Model *_parent)
static float fittedValue (float _val)
static long runningPeriods ()
static unsigned int runningFrames ()
static float runningTime ()
static void triggerFrameCounter ()
static void resetFrameCounter ()

Protected Member Functions

virtual float value (int _offset)
virtual void updateValueBuffer ()
Protected Member Functions inherited from lmms::JournallingObject
void changeID (jo_id_t _id)

Protected Attributes

ValueBuffer m_valueBuffer
long m_bufferLastUpdated
float m_currentValue
bool m_sampleExact
int m_connectionCount
QString m_name
ControllerType m_type

Static Protected Attributes

static ControllerVector s_controllers
static long s_periods = 0

Friends

class gui::ControllerDialog

Member Enumeration Documentation

◆ ControllerType

Enumerator
Dummy 
Lfo 
Midi 
Peak 

Constructor & Destructor Documentation

◆ Controller()

Controller::Controller ( ControllerType _type,
Model * _parent,
const QString & _display_name )

◆ ~Controller()

Controller::~Controller ( )
override

Member Function Documentation

◆ addConnection()

void Controller::addConnection ( ControllerConnection * )

◆ connectionCount()

int Controller::connectionCount ( ) const

◆ create() [1/2]

Controller * Controller::create ( const QDomElement & _this,
Model * _parent )
static

◆ create() [2/2]

Controller * Controller::create ( ControllerType _tt,
Model * _parent )
static

◆ createDialog

gui::ControllerDialog * Controller::createDialog ( QWidget * _parent)
virtualslot

◆ currentValue()

float Controller::currentValue ( int _offset)
virtual

◆ fittedValue()

float lmms::Controller::fittedValue ( float _val)
inlinestatic

◆ frequentUpdates()

bool lmms::Controller::frequentUpdates ( ) const
inline

◆ hasModel()

bool Controller::hasModel ( const Model * m) const

◆ isSampleExact()

bool lmms::Controller::isSampleExact ( ) const
inline

◆ loadSettings()

void Controller::loadSettings ( const QDomElement & _this)
overridevirtual

◆ name()

virtual const QString & lmms::Controller::name ( ) const
inlinevirtual

◆ nodeName()

QString Controller::nodeName ( void ) const
overridevirtual

◆ removeConnection()

void Controller::removeConnection ( ControllerConnection * )

◆ resetFrameCounter()

void Controller::resetFrameCounter ( )
static

◆ runningFrames()

unsigned int Controller::runningFrames ( )
static

◆ runningPeriods()

long lmms::Controller::runningPeriods ( )
inlinestatic

◆ runningTime()

float Controller::runningTime ( )
static

◆ saveSettings()

void Controller::saveSettings ( QDomDocument & _doc,
QDomElement & _this )
overridevirtual

◆ setName

virtual void lmms::Controller::setName ( const QString & _new_name)
inlinevirtualslot

◆ setSampleExact()

void lmms::Controller::setSampleExact ( bool _exact)
inline

◆ triggerFrameCounter()

void Controller::triggerFrameCounter ( )
static

◆ type()

ControllerType lmms::Controller::type ( ) const
inline

◆ updateValueBuffer()

void Controller::updateValueBuffer ( )
protectedvirtual

◆ value()

float Controller::value ( int _offset)
protectedvirtual

◆ valueBuffer()

ValueBuffer * Controller::valueBuffer ( )
virtual

◆ valueChanged

void lmms::Controller::valueChanged ( )
signal

◆ gui::ControllerDialog

friend class gui::ControllerDialog
friend

Member Data Documentation

◆ m_bufferLastUpdated

long lmms::Controller::m_bufferLastUpdated
protected

◆ m_connectionCount

int lmms::Controller::m_connectionCount
protected

◆ m_currentValue

float lmms::Controller::m_currentValue
protected

◆ m_name

QString lmms::Controller::m_name
protected

◆ m_sampleExact

bool lmms::Controller::m_sampleExact
protected

◆ m_type

ControllerType lmms::Controller::m_type
protected

◆ m_valueBuffer

ValueBuffer lmms::Controller::m_valueBuffer
protected

◆ s_controllers

std::vector< Controller * > Controller::s_controllers
staticprotected

◆ s_periods

long Controller::s_periods = 0
staticprotected

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