Ardour  8.7-15-gadf511264b
ArdourZita::Convlevel Class Reference

#include <zita-convolver.h>

Private Types

enum  { OPT_FFTW_MEASURE = 1 , OPT_VECTOR_MODE = 2 , OPT_LATE_CONTIN = 4 }
 
enum  { ST_IDLE , ST_TERM , ST_PROC }
 

Private Member Functions

 Convlevel (void)
 
 ~Convlevel (void)
 
void configure (int prio, uint32_t offs, uint32_t npar, uint32_t parsize, uint32_t options)
 
void impdata_write (uint32_t inp, uint32_t out, int32_t step, float *data, int32_t ind0, int32_t ind1, bool create)
 
void impdata_clear (uint32_t inp, uint32_t out)
 
void reset (uint32_t inpsize, uint32_t outsize, float **inpbuff, float **outbuff)
 
void start (int absprio, int policy)
 
void process ()
 
int readout ()
 
int readtail (uint32_t n_samples)
 
void stop (void)
 
void cleanup (void)
 
void fftswap (fftwf_complex *p)
 
void print (FILE *F)
 
void main (void)
 
Macnodefindmacnode (uint32_t inp, uint32_t out, bool create)
 

Static Private Member Functions

static void * static_main (void *arg)
 

Private Attributes

volatile uint32_t _stat
 
int _prio
 
uint32_t _offs
 
uint32_t _npar
 
uint32_t _parsize
 
uint32_t _outsize
 
uint32_t _outoffs
 
uint32_t _inpsize
 
uint32_t _inpoffs
 
uint32_t _options
 
uint32_t _ptind
 
uint32_t _opind
 
int _bits
 
int _wait
 
pthread_t _pthr
 
ZCsema _trig
 
ZCsema _done
 
Inpnode_inp_list
 
Outnode_out_list
 
fftwf_plan _plan_r2c
 
fftwf_plan _plan_c2r
 
float * _time_data
 
float * _prep_data
 
fftwf_complex * _freq_data
 
float ** _inpbuff
 
float ** _outbuff
 

Friends

class Convproc
 

Detailed Description

Definition at line 228 of file zita-convolver.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
OPT_FFTW_MEASURE 
OPT_VECTOR_MODE 
OPT_LATE_CONTIN 

Definition at line 233 of file zita-convolver.h.

◆ anonymous enum

anonymous enum
private
Enumerator
ST_IDLE 
ST_TERM 
ST_PROC 

Definition at line 239 of file zita-convolver.h.

Constructor & Destructor Documentation

◆ Convlevel()

ArdourZita::Convlevel::Convlevel ( void  )
private

◆ ~Convlevel()

ArdourZita::Convlevel::~Convlevel ( void  )
private

Member Function Documentation

◆ cleanup()

void ArdourZita::Convlevel::cleanup ( void  )
private

◆ configure()

void ArdourZita::Convlevel::configure ( int  prio,
uint32_t  offs,
uint32_t  npar,
uint32_t  parsize,
uint32_t  options 
)
private

◆ fftswap()

void ArdourZita::Convlevel::fftswap ( fftwf_complex *  p)
private

◆ findmacnode()

Macnode* ArdourZita::Convlevel::findmacnode ( uint32_t  inp,
uint32_t  out,
bool  create 
)
private

◆ impdata_clear()

void ArdourZita::Convlevel::impdata_clear ( uint32_t  inp,
uint32_t  out 
)
private

◆ impdata_write()

void ArdourZita::Convlevel::impdata_write ( uint32_t  inp,
uint32_t  out,
int32_t  step,
float *  data,
int32_t  ind0,
int32_t  ind1,
bool  create 
)
private

◆ main()

void ArdourZita::Convlevel::main ( void  )
private

◆ print()

void ArdourZita::Convlevel::print ( FILE *  F)
private

◆ process()

void ArdourZita::Convlevel::process ( )
private

◆ readout()

int ArdourZita::Convlevel::readout ( )
private

◆ readtail()

int ArdourZita::Convlevel::readtail ( uint32_t  n_samples)
private

◆ reset()

void ArdourZita::Convlevel::reset ( uint32_t  inpsize,
uint32_t  outsize,
float **  inpbuff,
float **  outbuff 
)
private

◆ start()

void ArdourZita::Convlevel::start ( int  absprio,
int  policy 
)
private

◆ static_main()

static void* ArdourZita::Convlevel::static_main ( void *  arg)
staticprivate

◆ stop()

void ArdourZita::Convlevel::stop ( void  )
private

Friends And Related Function Documentation

◆ Convproc

friend class Convproc
friend

Definition at line 231 of file zita-convolver.h.

Member Data Documentation

◆ _bits

int ArdourZita::Convlevel::_bits
private

Definition at line 303 of file zita-convolver.h.

◆ _done

ZCsema ArdourZita::Convlevel::_done
private

Definition at line 307 of file zita-convolver.h.

◆ _freq_data

fftwf_complex* ArdourZita::Convlevel::_freq_data
private

Definition at line 314 of file zita-convolver.h.

◆ _inp_list

Inpnode* ArdourZita::Convlevel::_inp_list
private

Definition at line 308 of file zita-convolver.h.

◆ _inpbuff

float** ArdourZita::Convlevel::_inpbuff
private

Definition at line 315 of file zita-convolver.h.

◆ _inpoffs

uint32_t ArdourZita::Convlevel::_inpoffs
private

Definition at line 299 of file zita-convolver.h.

◆ _inpsize

uint32_t ArdourZita::Convlevel::_inpsize
private

Definition at line 298 of file zita-convolver.h.

◆ _npar

uint32_t ArdourZita::Convlevel::_npar
private

Definition at line 294 of file zita-convolver.h.

◆ _offs

uint32_t ArdourZita::Convlevel::_offs
private

Definition at line 293 of file zita-convolver.h.

◆ _opind

uint32_t ArdourZita::Convlevel::_opind
private

Definition at line 302 of file zita-convolver.h.

◆ _options

uint32_t ArdourZita::Convlevel::_options
private

Definition at line 300 of file zita-convolver.h.

◆ _out_list

Outnode* ArdourZita::Convlevel::_out_list
private

Definition at line 309 of file zita-convolver.h.

◆ _outbuff

float** ArdourZita::Convlevel::_outbuff
private

Definition at line 316 of file zita-convolver.h.

◆ _outoffs

uint32_t ArdourZita::Convlevel::_outoffs
private

Definition at line 297 of file zita-convolver.h.

◆ _outsize

uint32_t ArdourZita::Convlevel::_outsize
private

Definition at line 296 of file zita-convolver.h.

◆ _parsize

uint32_t ArdourZita::Convlevel::_parsize
private

Definition at line 295 of file zita-convolver.h.

◆ _plan_c2r

fftwf_plan ArdourZita::Convlevel::_plan_c2r
private

Definition at line 311 of file zita-convolver.h.

◆ _plan_r2c

fftwf_plan ArdourZita::Convlevel::_plan_r2c
private

Definition at line 310 of file zita-convolver.h.

◆ _prep_data

float* ArdourZita::Convlevel::_prep_data
private

Definition at line 313 of file zita-convolver.h.

◆ _prio

int ArdourZita::Convlevel::_prio
private

Definition at line 292 of file zita-convolver.h.

◆ _pthr

pthread_t ArdourZita::Convlevel::_pthr
private

Definition at line 305 of file zita-convolver.h.

◆ _ptind

uint32_t ArdourZita::Convlevel::_ptind
private

Definition at line 301 of file zita-convolver.h.

◆ _stat

volatile uint32_t ArdourZita::Convlevel::_stat
private

Definition at line 291 of file zita-convolver.h.

◆ _time_data

float* ArdourZita::Convlevel::_time_data
private

Definition at line 312 of file zita-convolver.h.

◆ _trig

ZCsema ArdourZita::Convlevel::_trig
private

Definition at line 306 of file zita-convolver.h.

◆ _wait

int ArdourZita::Convlevel::_wait
private

Definition at line 304 of file zita-convolver.h.


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