Browse Source

A couple lines of documentation for engine

tags/v0.6.1
Andrew Belt 6 years ago
parent
commit
b72bf930a4
1 changed files with 10 additions and 2 deletions
  1. +10
    -2
      include/engine.hpp

+ 10
- 2
include/engine.hpp View File

@@ -11,6 +11,7 @@ struct Param {
float value = 0.0;
};


struct Light {
/** The square of the brightness value */
float value = 0.0;
@@ -24,6 +25,7 @@ struct Light {
void setBrightnessSmooth(float brightness, float frames = 1.f);
};


struct Input {
/** Voltage of the port, zero if not plugged in. Read-only by Module */
float value = 0.0;
@@ -36,6 +38,7 @@ struct Input {
}
};


struct Output {
/** Voltage of the port. Write-only by Module */
float value = 0.0;
@@ -64,7 +67,9 @@ struct Module {
}
virtual ~Module() {}

/** Advances the module by 1 audio frame with duration 1.0 / gSampleRate */
/** Advances the module by 1 audio frame with duration 1.0 / gSampleRate
Override this method to read inputs and params, and to write outputs and lights.
*/
virtual void step() {}

/** Called when the engine sample rate is changed
@@ -85,7 +90,7 @@ struct Module {
randomize();
}

/** Override these to store extra internal data in the "data" property */
/** Override these to store extra internal data in the "data" property of the module's JSON object */
virtual json_t *toJson() { return NULL; }
virtual void fromJson(json_t *root) {}

@@ -95,6 +100,7 @@ struct Module {
virtual void randomize() {}
};


struct Wire {
Module *outputModule = NULL;
int outputId;
@@ -103,6 +109,7 @@ struct Wire {
void step();
};


void engineInit();
void engineDestroy();
/** Launches engine thread */
@@ -121,6 +128,7 @@ float engineGetSampleRate();
/** Returns the inverse of the current sample rate */
float engineGetSampleTime();


extern bool gPaused;
/** Plugins should not manipulate other modules or wires unless that is the entire purpose of the module.
Your plugin needs to have a clear purpose for manipulating other modules and wires and must be done with a good UX.


Loading…
Cancel
Save