|
FAUST compiler
0.9.9.6b8
|
#include <compile.hh>


Public Member Functions | |
| Compiler (const string &name, const string &super, int numInputs, int numOutputs, bool vec) | |
| Compiler (Klass *k) | |
| virtual | ~Compiler () |
| virtual void | compileMultiSignal (Tree lsig)=0 |
| virtual void | compileSingleSignal (Tree lsig)=0 |
| Klass * | getClass () |
| void | setDescription (Description *descr) |
| Description * | getDescription () |
Protected Member Functions | |
| virtual Tree | prepare (Tree L0)=0 |
| virtual Tree | prepare2 (Tree L0)=0 |
| void | addIncludeFile (const string &str) |
| void | addLibrary (const string &str) |
| void | addUIWidget (Tree path, Tree widget) |
| Add a widget with a certain path to the user interface tree. More... | |
| void | generateWidgetCode (Tree fulllabel, Tree varname, Tree sig) |
| Generate buildUserInterface C++ lines of code corresponding to user interface widget t. More... | |
| void | generateUserInterfaceTree (Tree t) |
| Generate buildUserInterface C++ lines of code corresponding to user interface element t. More... | |
| void | generateUserInterfaceElements (Tree elements) |
| Iterate generateUserInterfaceTree on a list of user interface elements. More... | |
| Tree | prepareUserInterfaceTree (Tree t) |
| Remove fake root folder if not needed (that is if the UI is completely enclosed in one folder. More... | |
| void | generateMacroInterfaceTree (const string &pathname, Tree t) |
| Generate user interface macros corresponding to user interface element t. More... | |
| void | generateMacroInterfaceElements (const string &pathname, Tree elements) |
| Iterate generateMacroInterfaceTree on a list of user interface elements. More... | |
| void | generateWidgetMacro (const string &pathname, Tree fulllabel, Tree varname, Tree sig) |
| Generate user interface macros corresponding to a user interface widget. More... | |
Protected Attributes | |
| Klass * | fClass |
| bool | fNeedToDeleteClass |
| Tree | fUIRoot |
| Description * | fDescription |
Definition at line 50 of file compile.hh.
| Compiler::Compiler | ( | const string & | name, |
| const string & | super, | ||
| int | numInputs, | ||
| int | numOutputs, | ||
| bool | vec | ||
| ) |
Definition at line 94 of file compile.cpp.
| Compiler::Compiler | ( | Klass * | k | ) |
Definition at line 101 of file compile.cpp.
|
virtual |
|
inlineprotected |
Definition at line 77 of file compile.hh.
References Klass::addIncludeFile(), and fClass.

|
inlineprotected |
Definition at line 78 of file compile.hh.
References Klass::addLibrary(), and fClass.

Add a widget with a certain path to the user interface tree.
Definition at line 123 of file compile.cpp.
References fUIRoot, and putSubFolder().

|
pure virtual |
Implemented in ScalarCompiler, VectorCompiler, and SchedulerCompiler.
Referenced by main().

|
pure virtual |
Implemented in ScalarCompiler.
|
protected |
Iterate generateMacroInterfaceTree on a list of user interface elements.
Definition at line 339 of file compile.cpp.
References generateMacroInterfaceTree(), hd(), isNil(), right(), and tl().
Referenced by generateMacroInterfaceTree().


|
protected |
Generate user interface macros corresponding to user interface element t.
Definition at line 312 of file compile.cpp.
References generateMacroInterfaceElements(), generateWidgetMacro(), isUiFolder(), isUiWidget(), right(), and tree2str().
Referenced by SchedulerCompiler::compileMultiSignal(), VectorCompiler::compileMultiSignal(), and generateMacroInterfaceElements().


|
protected |
Iterate generateUserInterfaceTree on a list of user interface elements.
Definition at line 217 of file compile.cpp.
References generateUserInterfaceTree(), hd(), isNil(), right(), and tl().
Referenced by generateUserInterfaceTree().


|
protected |
Generate buildUserInterface C++ lines of code corresponding to user interface element t.
Definition at line 164 of file compile.cpp.
References Klass::addUICode(), extractMetadata(), fClass, generateUserInterfaceElements(), generateWidgetCode(), isUiFolder(), isUiWidget(), left(), right(), subst(), tree2int(), tree2str(), and wdel().
Referenced by SchedulerCompiler::compileMultiSignal(), VectorCompiler::compileMultiSignal(), and generateUserInterfaceElements().


Generate buildUserInterface C++ lines of code corresponding to user interface widget t.
Definition at line 229 of file compile.cpp.
References Klass::addUICode(), extractMetadata(), fClass, Klass::incUIActiveCount(), Klass::incUIPassiveCount(), isSigButton(), isSigCheckbox(), isSigHBargraph(), isSigHSlider(), isSigNumEntry(), isSigVBargraph(), isSigVSlider(), subst(), T(), tree2float(), tree2str(), and wdel().
Referenced by generateUserInterfaceTree().


|
protected |
Generate user interface macros corresponding to a user interface widget.
Definition at line 352 of file compile.cpp.
References Klass::addUIMacro(), extractMetadata(), fClass, isSigButton(), isSigCheckbox(), isSigHBargraph(), isSigHSlider(), isSigNumEntry(), isSigVBargraph(), isSigVSlider(), subst(), T(), tree2float(), and tree2str().
Referenced by generateMacroInterfaceTree().


|
inline |
Definition at line 67 of file compile.hh.
References fClass.
Referenced by main(), and signal2klass().

|
inline |
Definition at line 70 of file compile.hh.
References fDescription.
Referenced by main().

Implemented in ScalarCompiler.
Implemented in ScalarCompiler.
Remove fake root folder if not needed (that is if the UI is completely enclosed in one folder.
Definition at line 133 of file compile.cpp.
References hd(), isList(), isNil(), isUiFolder(), right(), and tl().
Referenced by SchedulerCompiler::compileMultiSignal(), and VectorCompiler::compileMultiSignal().


|
inline |
Definition at line 69 of file compile.hh.
References fDescription.
Referenced by main().

|
protected |
Definition at line 53 of file compile.hh.
Referenced by addIncludeFile(), addLibrary(), SchedulerCompiler::compileMultiSignal(), VectorCompiler::compileMultiSignal(), VectorCompiler::CS(), SchedulerCompiler::dlineLoop(), VectorCompiler::dlineLoop(), VectorCompiler::generateCodeRecursions(), VectorCompiler::generateLoopCode(), generateUserInterfaceTree(), VectorCompiler::generateWaveform(), generateWidgetCode(), generateWidgetMacro(), getClass(), SchedulerCompiler::vectorLoop(), VectorCompiler::vectorLoop(), and ~Compiler().
|
protected |
Definition at line 56 of file compile.hh.
Referenced by SchedulerCompiler::compileMultiSignal(), VectorCompiler::compileMultiSignal(), getDescription(), and setDescription().
|
protected |
Definition at line 54 of file compile.hh.
Referenced by ~Compiler().
|
protected |
Definition at line 55 of file compile.hh.
Referenced by addUIWidget(), SchedulerCompiler::compileMultiSignal(), and VectorCompiler::compileMultiSignal().
1.8.7