00001 #ifndef LadspaNetworkExporter_hxx
00002 #define LadspaNetworkExporter_hxx
00003
00004 #include <ladspa.h>
00005 #include <cstring>
00006 #include <cstdlib>
00007 #include <iostream>
00008
00009 #include "Network.hxx"
00010 #include "PushFlowControl.hxx"
00011 #include "XMLStorage.hxx"
00012 #include "AudioSource.hxx"
00013 #include "AudioSink.hxx"
00014 #include "ControlSource.hxx"
00015 #include "ControlSink.hxx"
00016 #include "LadspaLibrary.hxx"
00017
00022 #define CLAM_EXTERNAL_FILE_DATA(varname, file) \
00023 asm ( \
00024 " .section \".rodata\"\n" \
00025 " .type " #varname ", @object\n" \
00026 " " #varname ":\n" \
00027 " .incbin \"" file "\"\n" \
00028 " .byte 0\n" \
00029 " .size " #varname ", .-" #varname "\n" \
00030 ); \
00031 extern const char varname[]; \
00032
00033 namespace CLAM
00034 {
00035
00036 class LadspaNetworkExporter
00037 {
00038 public:
00039 LadspaNetworkExporter(LadspaLibrary & library, const std::string & networkXmlContent,
00040 unsigned id,
00041 const std::string & label,
00042 const std::string & name,
00043 const std::string & maker,
00044 const std::string & copyright
00045 );
00046 };
00047
00048 }
00049
00050
00051 #endif//LadspaNetworkExporter_hxx
00052