Ardour  8.7-15-gadf511264b
ARDOUR::TriggerBoxThread Class Reference

#include <triggerbox.h>

Classes

struct  Request
 

Public Member Functions

 TriggerBoxThread ()
 
 ~TriggerBoxThread ()
 
void set_region (TriggerBox &, uint32_t slot, std::shared_ptr< Region >)
 
void request_delete_trigger (Trigger *t)
 
void summon ()
 
void stop ()
 
void wait_until_finished ()
 

Static Public Member Functions

static void init_request_pool ()
 

Private Types

enum  RequestType { Quit , SetRegion , DeleteTrigger }
 

Private Member Functions

void * thread_work ()
 
void queue_request (Request *)
 
void delete_trigger (Trigger *)
 

Static Private Member Functions

static void * _thread_work (void *arg)
 

Private Attributes

pthread_t thread
 
PBD::RingBuffer< Request * > requests
 
CrossThreadChannel _xthread
 

Detailed Description

Definition at line 652 of file triggerbox.h.

Member Enumeration Documentation

◆ RequestType

Enumerator
Quit 
SetRegion 
DeleteTrigger 

Definition at line 671 of file triggerbox.h.

Constructor & Destructor Documentation

◆ TriggerBoxThread()

ARDOUR::TriggerBoxThread::TriggerBoxThread ( )

◆ ~TriggerBoxThread()

ARDOUR::TriggerBoxThread::~TriggerBoxThread ( )

Member Function Documentation

◆ _thread_work()

static void* ARDOUR::TriggerBoxThread::_thread_work ( void *  arg)
staticprivate

◆ delete_trigger()

void ARDOUR::TriggerBoxThread::delete_trigger ( Trigger )
private

◆ init_request_pool()

static void ARDOUR::TriggerBoxThread::init_request_pool ( )
inlinestatic

Definition at line 658 of file triggerbox.h.

◆ queue_request()

void ARDOUR::TriggerBoxThread::queue_request ( Request )
private

◆ request_delete_trigger()

void ARDOUR::TriggerBoxThread::request_delete_trigger ( Trigger t)

◆ set_region()

void ARDOUR::TriggerBoxThread::set_region ( TriggerBox ,
uint32_t  slot,
std::shared_ptr< Region  
)

◆ stop()

void ARDOUR::TriggerBoxThread::stop ( )

◆ summon()

void ARDOUR::TriggerBoxThread::summon ( )

◆ thread_work()

void* ARDOUR::TriggerBoxThread::thread_work ( )
private

◆ wait_until_finished()

void ARDOUR::TriggerBoxThread::wait_until_finished ( )

Member Data Documentation

◆ _xthread

CrossThreadChannel ARDOUR::TriggerBoxThread::_xthread
private

Definition at line 699 of file triggerbox.h.

◆ requests

PBD::RingBuffer<Request*> ARDOUR::TriggerBoxThread::requests
private

Definition at line 697 of file triggerbox.h.

◆ thread

pthread_t ARDOUR::TriggerBoxThread::thread
private

Definition at line 696 of file triggerbox.h.


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