SpectMorph
Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | List of all members
SpectMorph::MorphOutput Class Reference
Inheritance diagram for SpectMorph::MorphOutput:
SpectMorph::MorphOperator SpectMorph::SignalReceiver

Classes

struct  Config
 

Public Types

enum  FilterType { FILTER_TYPE_LADDER = 1 , FILTER_TYPE_SALLEN_KEY = 2 }
 
enum  FilterLadderMode { FILTER_LADDER_LP1 = 1 , FILTER_LADDER_LP2 = 2 , FILTER_LADDER_LP3 = 3 , FILTER_LADDER_LP4 = 4 }
 
enum  FilterSKMode {
  FILTER_SK_LP1 = 1 , FILTER_SK_LP2 = 2 , FILTER_SK_LP3 = 3 , FILTER_SK_LP4 = 4 ,
  FILTER_SK_LP6 = 5 , FILTER_SK_LP8 = 6 , FILTER_SK_BP2 = 7 , FILTER_SK_BP4 = 8 ,
  FILTER_SK_BP6 = 9 , FILTER_SK_BP8 = 10 , FILTER_SK_HP1 = 11 , FILTER_SK_HP2 = 12 ,
  FILTER_SK_HP3 = 13 , FILTER_SK_HP4 = 14 , FILTER_SK_HP6 = 15 , FILTER_SK_HP8 = 16
}
 
- Public Types inherited from SpectMorph::MorphOperator
enum  OutputType { OUTPUT_NONE , OUTPUT_AUDIO , OUTPUT_CONTROL }
 
enum  ControlType {
  CONTROL_GUI = 1 , CONTROL_SIGNAL_1 = 2 , CONTROL_SIGNAL_2 = 3 , CONTROL_OP = 4 ,
  CONTROL_SIGNAL_3 = 5 , CONTROL_SIGNAL_4 = 6 , CONTROL_VELOCITY = 7
}
 
typedef std::map< std::string, MorphOperator * > OpNameMap
 
typedef uintptr_t PtrID
 

Public Member Functions

 MorphOutput (MorphPlan *morph_plan)
 
const char * type () override
 
int insert_order () override
 
bool save (OutFile &out_file) override
 
bool load (InFile &in_file) override
 
void post_load (OpNameMap &op_name_map) override
 
OutputType output_type () override
 
std::vector< MorphOperator * > dependencies () override
 
MorphOperatorConfigclone_config () override
 
void set_channel_op (int ch, MorphOperator *op)
 
MorphOperatorchannel_op (int ch)
 
void on_operator_removed (MorphOperator *op)
 
- Public Member Functions inherited from SpectMorph::MorphOperator
 MorphOperator (MorphPlan *morph_plan)
 
void get_property_dependencies (std::vector< MorphOperator * > &deps, const std::vector< std::string > &identifiers)
 
void register_property (Property *property)
 
Propertyproperty (const std::string &identifier)
 
void write_properties (OutFile &out_file)
 
bool read_property_event (InFile &in_file)
 
void read_properties_post_load (OpNameMap &op_name_map)
 
MorphPlanmorph_plan ()
 
std::string type_name ()
 
std::string name ()
 
void set_name (const std::string &name)
 
bool can_rename (const std::string &name)
 
std::string id ()
 
void set_id (const std::string &id)
 
bool folded () const
 
void set_folded (bool folded)
 
PtrID ptr_id () const
 
- Public Member Functions inherited from SpectMorph::SignalReceiver
template<class... Args, class CbFunction >
uint64 connect (Signal< Args... > &signal, const CbFunction &callback)
 
template<class... Args, class Instance , class Method >
uint64 connect (Signal< Args... > &signal, Instance *instance, const Method &method)
 
void disconnect (uint64 id)
 
void dead_signal (uint64 id)
 

Public Attributes

Config m_config
 

Static Public Attributes

static constexpr auto P_VELOCITY_SENSITIVITY = "velocity_sensitivity"
 
static constexpr auto P_PITCH_BEND_RANGE = "pitch_bend_range"
 
static constexpr auto P_SINES = "sines"
 
static constexpr auto P_NOISE = "noise"
 
static constexpr auto P_UNISON = "unison"
 
static constexpr auto P_UNISON_VOICES = "unison_voices"
 
static constexpr auto P_UNISON_DETUNE = "unison_detune"
 
static constexpr auto P_ADSR = "adsr"
 
static constexpr auto P_ADSR_SKIP = "adsr_skip"
 
static constexpr auto P_ADSR_ATTACK = "adsr_attack"
 
static constexpr auto P_ADSR_DECAY = "adsr_decay"
 
static constexpr auto P_ADSR_SUSTAIN = "adsr_sustain"
 
static constexpr auto P_ADSR_RELEASE = "adsr_release"
 
static constexpr auto P_FILTER = "filter"
 
static constexpr auto P_FILTER_TYPE = "filter_type"
 
static constexpr auto P_FILTER_LADDER_MODE = "filter_ladder_mode"
 
static constexpr auto P_FILTER_SK_MODE = "filter_sk_mode"
 
static constexpr auto P_FILTER_ATTACK = "filter_attack"
 
static constexpr auto P_FILTER_DECAY = "filter_decay"
 
static constexpr auto P_FILTER_SUSTAIN = "filter_sustain"
 
static constexpr auto P_FILTER_RELEASE = "filter_release"
 
static constexpr auto P_FILTER_DEPTH = "filter_depth"
 
static constexpr auto P_FILTER_KEY_TRACKING = "filter_key_tracking"
 
static constexpr auto P_FILTER_CUTOFF = "filter_cutoff"
 
static constexpr auto P_FILTER_RESONANCE = "filter_resonance"
 
static constexpr auto P_FILTER_DRIVE = "filter_drive"
 
static constexpr auto P_PORTAMENTO = "portamento"
 
static constexpr auto P_PORTAMENTO_GLIDE = "portamento_glide"
 
static constexpr auto P_VIBRATO = "vibrato"
 
static constexpr auto P_VIBRATO_DEPTH = "vibrato_depth"
 
static constexpr auto P_VIBRATO_FREQUENCY = "vibrato_frequency"
 
static constexpr auto P_VIBRATO_ATTACK = "vibrato_attack"
 

Protected Attributes

std::vector< std::string > load_channel_op_names
 
- Protected Attributes inherited from SpectMorph::MorphOperator
MorphPlanm_morph_plan
 
std::string m_name
 
std::string m_id
 
bool m_folded
 
std::map< std::string, std::unique_ptr< Property > > m_properties
 

Additional Inherited Members

- Static Public Member Functions inherited from SpectMorph::MorphOperator
static MorphOperatorcreate (const std::string &type, MorphPlan *plan)
 
- Protected Member Functions inherited from SpectMorph::MorphOperator
LogPropertyadd_property_log (float *value, const std::string &identifier, const std::string &label, const std::string &value_label, float def, float mn, float mx)
 
LogPropertyadd_property_log (ModulationData *mod_data, const std::string &identifier, const std::string &label, const std::string &value_label, float def, float mn, float mx)
 
XParamPropertyadd_property_xparam (float *value, const std::string &identifier, const std::string &label, const std::string &value_label, float def, float mn, float mx, float slope)
 
LinearPropertyadd_property (float *value, const std::string &identifier, const std::string &label, const std::string &value_label, float def, float mn, float mx)
 
LinearPropertyadd_property (ModulationData *mod_data, const std::string &identifier, const std::string &label, const std::string &value_label, float def, float mn, float mx)
 
IntPropertyadd_property (int *value, const std::string &identifier, const std::string &label, const std::string &value_label, int def, int mn, int mx)
 
IntVecPropertyadd_property (int *value, const std::string &identifier, const std::string &label, const std::string &value_label, int def, const std::vector< int > &vec)
 
BoolPropertyadd_property (bool *value, const std::string &identifier, const std::string &label, bool def)
 
template<typename Enum >
EnumPropertyadd_property_enum (Enum *value, const std::string &identifier, const std::string &label, int def, const EnumInfo &ei)
 
EnumPropertyadd_property_enum (const std::string &identifier, const std::string &label, int def, const EnumInfo &ei, std::function< int()> read_func, std::function< void(int)> write_func)
 

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