いらないモノ、ひつようなモノ

書籍、音楽、そして若干のテクノロジー

csoundAPIの階層(想像図)

下記の図のようになっているような気がする。Tcl,lispAPIはどこにあるのだろうか?よく分からない。またSWIG経由のjava, luaのインタフェースはlayer2でちゃんととれているような気がする(使ったことがないから分からないが)

layer 4                  csound VST Python API
-------------------------------------------------------------
layer 3    csoundVST C++ API                     Python API
-------------------------------------------------------------
layer 2                   extended C++ API (CppCsound.hpp)
-------------------------------------------------------------
layer 1   basic C++ API(csound.hpp)         CsoundFile.hpp
--------------------------------
layer 0   basicc C API(csound.h)
-------------------------------------------------------------
  • なぜかlayer1にpython のコードが混入しているのが気になる。図のlayer3にもってってくれって感じ。
  • extended C++ APIが多重継承を用いているのが気になる。ファイルを扱うAPIを個別に出せばいいのにという感じ。
  • SWIG経由rubyでは多重継承できないから、CsoundFile.hppまで含めて1,2の間でとりたいけどそんなことできるのかな??