Ardour  9.0-pre0-582-g084a23a80d
ArdourSurface::NS_MCU::Button Class Reference

#include <button.h>

Inheritance diagram for ArdourSurface::NS_MCU::Button:
[legend]

Public Types

enum  ID {
  Track , Send , Pan , Plugin ,
  Eq , Dyn , Left , Right ,
  ChannelLeft , ChannelRight , Flip , View ,
  NameValue , TimecodeBeats , F1 , F2 ,
  F3 , F4 , F5 , F6 ,
  F7 , F8 , MidiTracks , Inputs ,
  AudioTracks , AudioInstruments , Aux , Busses ,
  Outputs , User , Read , Write ,
  Trim , Touch , Latch , Grp ,
  Save , Undo , Cancel , Enter ,
  Marker , Nudge , Loop , Drop ,
  Replace , Click , ClearSolo , Rewind ,
  Ffwd , Stop , Play , Record ,
  CursorUp , CursorDown , CursorLeft , CursorRight ,
  Zoom , Scrub , UserA , UserB ,
  FinalGlobalButton , Shift , Option , Ctrl ,
  CmdAlt , RecEnable , Solo , Mute ,
  Select , VSelect , FaderTouch , MasterFaderTouch
}
 

Public Member Functions

 Button (Surface &s, ID bid, int did, std::string name, Group &group)
 
MidiByteArray zero ()
 
MidiByteArray set_state (LedState ls)
 
ID bid () const
 
Surfacesurface () const
 
void pressed ()
 
void released ()
 
int32_t long_press_count ()
 
- Public Member Functions inherited from ArdourSurface::NS_MCU::Control
 Control (int id, std::string name, Group &group)
 
virtual ~Control ()
 
int id () const
 
const std::string & name () const
 
Groupgroup () const
 
bool in_use () const
 
void set_in_use (bool)
 
std::shared_ptr< ARDOUR::AutomationControlcontrol () const
 
virtual void set_control (std::shared_ptr< ARDOUR::AutomationControl >)
 
float get_value ()
 
void set_value (float val, PBD::Controllable::GroupControlDisposition gcd=PBD::Controllable::UseGroup)
 
virtual void start_touch (Temporal::timepos_t const &when)
 
virtual void stop_touch (Temporal::timepos_t const &when)
 

Static Public Member Functions

static Controlfactory (Surface &surface, Button::ID bid, int id, const std::string &, Group &group)
 
static int name_to_id (const std::string &name)
 
static std::string id_to_name (Button::ID)
 

Private Attributes

Surface_surface
 
ID _bid
 
Led _led
 
PBD::microseconds_t press_time
 

Additional Inherited Members

- Public Attributes inherited from ArdourSurface::NS_MCU::Control
sigc::connection in_use_connection
 
Controlin_use_touch_control
 
- Protected Attributes inherited from ArdourSurface::NS_MCU::Control
std::shared_ptr< ARDOUR::AutomationControlnormal_ac
 

Detailed Description

Definition at line 33 of file surfaces/mackie/button.h.

Member Enumeration Documentation

◆ ID

Enumerator
Track 
Send 
Pan 
Plugin 
Eq 
Dyn 
Left 
Right 
ChannelLeft 
ChannelRight 
Flip 
View 
NameValue 
TimecodeBeats 
F1 
F2 
F3 
F4 
F5 
F6 
F7 
F8 
MidiTracks 
Inputs 
AudioTracks 
AudioInstruments 
Aux 
Busses 
Outputs 
User 
Read 
Write 
Trim 
Touch 
Latch 
Grp 
Save 
Undo 
Cancel 
Enter 
Marker 
Nudge 
Loop 
Drop 
Replace 
Click 
ClearSolo 
Rewind 
Ffwd 
Stop 
Play 
Record 
CursorUp 
CursorDown 
CursorLeft 
CursorRight 
Zoom 
Scrub 
UserA 
UserB 
FinalGlobalButton 
Shift 
Option 
Ctrl 
CmdAlt 
RecEnable 
Solo 
Mute 
Select 
VSelect 
FaderTouch 
MasterFaderTouch 

Definition at line 41 of file surfaces/mackie/button.h.

Constructor & Destructor Documentation

◆ Button()

ArdourSurface::NS_MCU::Button::Button ( Surface s,
ID  bid,
int  did,
std::string  name,
Group group 
)
inline

Definition at line 129 of file surfaces/mackie/button.h.

Member Function Documentation

◆ bid()

ID ArdourSurface::NS_MCU::Button::bid ( ) const
inline

Definition at line 139 of file surfaces/mackie/button.h.

◆ factory()

static Control* ArdourSurface::NS_MCU::Button::factory ( Surface surface,
Button::ID  bid,
int  id,
const std::string &  ,
Group group 
)
static

◆ id_to_name()

static std::string ArdourSurface::NS_MCU::Button::id_to_name ( Button::ID  )
static

◆ long_press_count()

int32_t ArdourSurface::NS_MCU::Button::long_press_count ( )

◆ name_to_id()

static int ArdourSurface::NS_MCU::Button::name_to_id ( const std::string &  name)
static

◆ pressed()

void ArdourSurface::NS_MCU::Button::pressed ( )

◆ released()

void ArdourSurface::NS_MCU::Button::released ( )

◆ set_state()

MidiByteArray ArdourSurface::NS_MCU::Button::set_state ( LedState  ls)
inline

Definition at line 137 of file surfaces/mackie/button.h.

◆ surface()

Surface& ArdourSurface::NS_MCU::Button::surface ( ) const
inline

Definition at line 145 of file surfaces/mackie/button.h.

◆ zero()

MidiByteArray ArdourSurface::NS_MCU::Button::zero ( )
inlinevirtual

Implements ArdourSurface::NS_MCU::Control.

Definition at line 136 of file surfaces/mackie/button.h.

Member Data Documentation

◆ _bid

ID ArdourSurface::NS_MCU::Button::_bid
private

Definition at line 154 of file surfaces/mackie/button.h.

◆ _led

Led ArdourSurface::NS_MCU::Button::_led
private

Definition at line 155 of file surfaces/mackie/button.h.

◆ _surface

Surface& ArdourSurface::NS_MCU::Button::_surface
private

Definition at line 153 of file surfaces/mackie/button.h.

◆ press_time

PBD::microseconds_t ArdourSurface::NS_MCU::Button::press_time
private

Definition at line 156 of file surfaces/mackie/button.h.


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