LMMS
Loading...
Searching...
No Matches
zyncarla::Part Class Reference

#include <Part.h>

Classes

struct  Kit

Public Member Functions

 Part (Allocator &alloc, const SYNTH_T &synth, const AbsTime &time, const int &gzip_compression, const int &interpolation, Microtonal *microtonal_, FFTwrapper *fft_, WatchManager *wm=0, const char *prefix=0)
 ~Part ()
void cloneTraits (Part &part) const REALTIME
bool NoteOn (unsigned char note, unsigned char velocity, int masterkeyshift) REALTIME
void NoteOff (unsigned char note) REALTIME
void PolyphonicAftertouch (unsigned char note, unsigned char velocity, int masterkeyshift) REALTIME
void AllNotesOff () REALTIME
void SetController (unsigned int type, int par) REALTIME
void ReleaseSustainedKeys () REALTIME
void ReleaseAllKeys () REALTIME
void ComputePartSmps () REALTIME
int saveXML (const char *filename)
int loadXMLinstrument (const char *filename)
void add2XML (XMLwrapper &xml)
void add2XMLinstrument (XMLwrapper &xml)
void defaults ()
void defaultsinstrument ()
void applyparameters (void) NONREALTIME
void applyparameters (std::function< bool()> do_abort) NONREALTIME
void initialize_rt (void) REALTIME
void kill_rt (void) REALTIME
void getfromXML (XMLwrapper &xml)
void getfromXMLinstrument (XMLwrapper &xml)
void cleanup (bool final=false)
void setkeylimit (unsigned char Pkeylimit)
void setkititemstatus (unsigned kititem, bool Penabled_)
void setPvolume (char Pvolume)
void setPpanning (char Ppanning)

Public Attributes

struct zyncarla::Part::Kit kit [NUM_KIT_ITEMS]
unsigned char partno
bool Penabled
unsigned char Pvolume
unsigned char Pminkey
unsigned char Pmaxkey
unsigned char Pkeyshift
unsigned char Prcvchn
unsigned char Ppanning
unsigned char Pvelsns
unsigned char Pveloffs
bool Pnoteon
int Pkitmode
bool Pdrummode
bool Ppolymode
bool Plegatomode
unsigned char Pkeylimit
char * Pname
struct { 
   unsigned char   Ptype 
   char   Pauthor [MAX_INFO_TEXT_SIZE+1] 
   char   Pcomments [MAX_INFO_TEXT_SIZE+1] 
info
float * partoutl
float * partoutr
float * partfxinputl [NUM_PART_EFX+1]
float * partfxinputr [NUM_PART_EFX+1]
float volume
float oldvolumel
float oldvolumer
float panning
Controller ctl
EffectMgrpartefx [NUM_PART_EFX]
unsigned char Pefxroute [NUM_PART_EFX]
bool Pefxbypass [NUM_PART_EFX]
int lastnote

Static Public Attributes

static const rtosc::Portsports = partPorts

Private Member Functions

void MonoMemRenote ()
float getBaseFreq (int note, int keyshift) const
float getVelocity (uint8_t velocity, uint8_t velocity_sense, uint8_t velocity_offset) const
void verifyKeyMode (void)
bool isPolyMode (void) const
bool isMonoMode (void) const
bool isLegatoMode (void) const
bool isNonKit (void) const
bool isMultiKit (void) const
bool isSingleKit (void) const
void monomemPush (char note)
void monomemPop (char note)
char monomemBack (void) const
bool monomemEmpty (void) const
void monomemClear (void)

Private Attributes

bool killallnotes
NotePool notePool
bool lastlegatomodevalid
short monomemnotes [256]
struct { 
   unsigned char   velocity 
   int   mkeyshift 
monomem [256]
float oldfreq
Microtonalmicrotonal
FFTwrapperfft
WatchManagerwm
char prefix [64]
Allocatormemory
const SYNTH_Tsynth
const AbsTimetime
const intgzip_compression
const intinterpolation

Detailed Description

Part implementation

Constructor & Destructor Documentation

◆ Part()

Part::Part ( Allocator & alloc,
const SYNTH_T & synth,
const AbsTime & time,
const int & gzip_compression,
const int & interpolation,
Microtonal * microtonal_,
FFTwrapper * fft_,
WatchManager * wm = 0,
const char * prefix = 0 )

Constructor

Parameters
microtonal_Pointer to the microtonal object
fft_Pointer to the FFTwrapper

◆ ~Part()

Part::~Part ( )

Destructor

Member Function Documentation

◆ add2XML()

void Part::add2XML ( XMLwrapper & xml)

◆ add2XMLinstrument()

void Part::add2XMLinstrument ( XMLwrapper & xml)

◆ AllNotesOff()

void Part::AllNotesOff ( )

◆ applyparameters() [1/2]

void Part::applyparameters ( std::function< bool()> do_abort)

◆ applyparameters() [2/2]

void Part::applyparameters ( void )

◆ cleanup()

void Part::cleanup ( bool final = false)

◆ cloneTraits()

void Part::cloneTraits ( Part & part) const

◆ ComputePartSmps()

void Part::ComputePartSmps ( )

◆ defaults()

void Part::defaults ( )

◆ defaultsinstrument()

void Part::defaultsinstrument ( )

◆ getBaseFreq()

float Part::getBaseFreq ( int note,
int keyshift ) const
private

◆ getfromXML()

void Part::getfromXML ( XMLwrapper & xml)

◆ getfromXMLinstrument()

void Part::getfromXMLinstrument ( XMLwrapper & xml)

◆ getVelocity()

float Part::getVelocity ( uint8_t velocity,
uint8_t velocity_sense,
uint8_t velocity_offset ) const
private

◆ initialize_rt()

void Part::initialize_rt ( void )

◆ isLegatoMode()

bool zyncarla::Part::isLegatoMode ( void ) const
inlineprivate

◆ isMonoMode()

bool zyncarla::Part::isMonoMode ( void ) const
inlineprivate

◆ isMultiKit()

bool zyncarla::Part::isMultiKit ( void ) const
inlineprivate

◆ isNonKit()

bool zyncarla::Part::isNonKit ( void ) const
inlineprivate

◆ isPolyMode()

bool zyncarla::Part::isPolyMode ( void ) const
inlineprivate

◆ isSingleKit()

bool zyncarla::Part::isSingleKit ( void ) const
inlineprivate

◆ kill_rt()

void Part::kill_rt ( void )

◆ loadXMLinstrument()

int Part::loadXMLinstrument ( const char * filename)

◆ monomemBack()

char Part::monomemBack ( void ) const
private

◆ monomemClear()

void Part::monomemClear ( void )
private

◆ monomemEmpty()

bool Part::monomemEmpty ( void ) const
private

◆ monomemPop()

void Part::monomemPop ( char note)
private

◆ monomemPush()

void Part::monomemPush ( char note)
private

◆ MonoMemRenote()

void Part::MonoMemRenote ( )
private

◆ NoteOff()

void Part::NoteOff ( unsigned char note)

◆ NoteOn()

bool Part::NoteOn ( unsigned char note,
unsigned char velocity,
int masterkeyshift )

◆ PolyphonicAftertouch()

void Part::PolyphonicAftertouch ( unsigned char note,
unsigned char velocity,
int masterkeyshift )

◆ ReleaseAllKeys()

void Part::ReleaseAllKeys ( )

◆ ReleaseSustainedKeys()

void Part::ReleaseSustainedKeys ( )

◆ saveXML()

int Part::saveXML ( const char * filename)

◆ SetController()

void Part::SetController ( unsigned int type,
int par )

◆ setkeylimit()

void Part::setkeylimit ( unsigned char Pkeylimit)

◆ setkititemstatus()

void Part::setkititemstatus ( unsigned kititem,
bool Penabled_ )

◆ setPpanning()

void Part::setPpanning ( char Ppanning)

◆ setPvolume()

void Part::setPvolume ( char Pvolume)

◆ verifyKeyMode()

void Part::verifyKeyMode ( void )
private

Member Data Documentation

◆ ctl

Controller zyncarla::Part::ctl

◆ fft

FFTwrapper* zyncarla::Part::fft
private

◆ gzip_compression

const int& zyncarla::Part::gzip_compression
private

◆ [struct]

struct { ... } zyncarla::Part::info

◆ interpolation

const int & zyncarla::Part::interpolation
private

◆ killallnotes

bool zyncarla::Part::killallnotes
private

◆ kit

struct zyncarla::Part::Kit zyncarla::Part::kit[NUM_KIT_ITEMS]

◆ lastlegatomodevalid

bool zyncarla::Part::lastlegatomodevalid
private

◆ lastnote

int zyncarla::Part::lastnote

◆ memory

Allocator& zyncarla::Part::memory
private

◆ microtonal

Microtonal* zyncarla::Part::microtonal
private

◆ mkeyshift

int zyncarla::Part::mkeyshift

◆ [struct]

struct { ... } zyncarla::Part::monomem[256]

◆ monomemnotes

short zyncarla::Part::monomemnotes[256]
private

◆ notePool

NotePool zyncarla::Part::notePool
private

◆ oldfreq

float zyncarla::Part::oldfreq
private

◆ oldvolumel

float zyncarla::Part::oldvolumel

◆ oldvolumer

float zyncarla::Part::oldvolumer

◆ panning

float zyncarla::Part::panning

◆ partefx

EffectMgr* zyncarla::Part::partefx[NUM_PART_EFX]

◆ partfxinputl

float* zyncarla::Part::partfxinputl[NUM_PART_EFX+1]

◆ partfxinputr

float * zyncarla::Part::partfxinputr[NUM_PART_EFX+1]

◆ partno

unsigned char zyncarla::Part::partno

if it's the Master's first part

◆ partoutl

float* zyncarla::Part::partoutl

◆ partoutr

float* zyncarla::Part::partoutr

◆ Pauthor

char zyncarla::Part::Pauthor[MAX_INFO_TEXT_SIZE+1]

◆ Pcomments

char zyncarla::Part::Pcomments[MAX_INFO_TEXT_SIZE+1]

◆ Pdrummode

bool zyncarla::Part::Pdrummode

◆ Pefxbypass

bool zyncarla::Part::Pefxbypass[NUM_PART_EFX]

◆ Pefxroute

unsigned char zyncarla::Part::Pefxroute[NUM_PART_EFX]

◆ Penabled

bool zyncarla::Part::Penabled

if the part is enabled

◆ Pkeylimit

unsigned char zyncarla::Part::Pkeylimit

◆ Pkeyshift

unsigned char zyncarla::Part::Pkeyshift

◆ Pkitmode

int zyncarla::Part::Pkitmode

◆ Plegatomode

bool zyncarla::Part::Plegatomode

◆ Pmaxkey

unsigned char zyncarla::Part::Pmaxkey

◆ Pminkey

unsigned char zyncarla::Part::Pminkey

the minimum key that the part receives noteon messages

◆ Pname

char* zyncarla::Part::Pname

◆ Pnoteon

bool zyncarla::Part::Pnoteon

◆ ports

const Ports & Part::ports = partPorts
static

◆ Ppanning

unsigned char zyncarla::Part::Ppanning

◆ Ppolymode

bool zyncarla::Part::Ppolymode

◆ Prcvchn

unsigned char zyncarla::Part::Prcvchn

◆ prefix

char zyncarla::Part::prefix[64]
private

◆ Ptype

unsigned char zyncarla::Part::Ptype

◆ Pveloffs

unsigned char zyncarla::Part::Pveloffs

◆ Pvelsns

unsigned char zyncarla::Part::Pvelsns

◆ Pvolume

unsigned char zyncarla::Part::Pvolume

part volume

◆ synth

const SYNTH_T& zyncarla::Part::synth
private

◆ time

const AbsTime& zyncarla::Part::time
private

◆ velocity

unsigned char zyncarla::Part::velocity

◆ volume

float zyncarla::Part::volume

◆ wm

WatchManager* zyncarla::Part::wm
private

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