From 42a67a912a283f9012828660f07bc5743527317a Mon Sep 17 00:00:00 2001 From: Comment Date: Sun, 17 Feb 2013 22:23:47 +0000 Subject: minor ptogress --- rotord/rotord.cpp | 27 +++++++++++++++++++++++++-- rotord/rotord.h | 24 ++++++++++++++++++------ rotord/vampHost.h | 9 +++++++++ 3 files changed, 52 insertions(+), 8 deletions(-) mode change 100644 => 100755 rotord/rotord.cpp mode change 100644 => 100755 rotord/rotord.h mode change 100644 => 100755 rotord/vampHost.h diff --git a/rotord/rotord.cpp b/rotord/rotord.cpp old mode 100644 new mode 100755 index 315e856..e794b7d --- a/rotord/rotord.cpp +++ b/rotord/rotord.cpp @@ -21,10 +21,32 @@ void RotorRequestHandler::handleRequest(HTTPServerRequest& request,HTTPServerRes ostr << "

"; } - RotorRequestHandlerFactory::RotorRequestHandlerFactory(const std::string& format):_format(format){ } +AudioAnalyserHandler::AudioAnalyserHandler(const vampHost::Settings& _settings): settings(_settings){ +} + +void AudioAnalyserHandler::handleRequest(HTTPServerRequest& request,HTTPServerResponse& response) { + + response.setChunkedTransferEncoding(true); + response.setContentType("text/html"); + + string audioData=vampHost:: + + std::ostream& ostr = response.send(); + ostr << "RotorServer powered by " + "POCO C++ Libraries"; + ostr << ""; + ostr << "

"; + ostr << dt; + ostr << "

"; +} + +AudioAnalyserFactory::AudioAnalyserFactory(const vampHost::Settings& _settings): settings(_settings){ +} + HTTPRequestHandler* RotorRequestHandlerFactory::createRequestHandler(const HTTPServerRequest& request){ Application& app = Application::instance(); @@ -46,9 +68,10 @@ HTTPRequestHandler* RotorRequestHandlerFactory::createRequestHandler(const HTTPS if (segments.size() == 0) { return new RotorRequestHandler(_format); } - else if (segments[0]=="vamp") { + else if (segments[0]=="vamp"&&segments.size()>3) { // vamp/plugin/filter/filename // how do deal with error condition? + return new RotorRequestHandler(_format); //string audioData=runPlugin(string myname, string soname, string id, // string output, int outputNo, string wavname, // string outfilename, bool useFrames); diff --git a/rotord/rotord.h b/rotord/rotord.h old mode 100644 new mode 100755 index 6def0a8..20ea2c6 --- a/rotord/rotord.h +++ b/rotord/rotord.h @@ -49,24 +49,36 @@ class RotorRequestHandler: public HTTPRequestHandler std::string _format; }; -class RotorAudioAnalyserHandler: public HTTPRequestHandler +class RotorRequestHandlerFactory: public HTTPRequestHandlerFactory { public: - RotorAudioAnalyserHandler(const std::string& format); - void handleRequest(HTTPServerRequest& request,HTTPServerResponse& response); + RotorRequestHandlerFactory(const std::string& format); + HTTPRequestHandler* createRequestHandler(const HTTPServerRequest& request); private: std::string _format; }; -class RotorRequestHandlerFactory: public HTTPRequestHandlerFactory + +class AudioAnalyserHandler: public HTTPRequestHandler { public: - RotorRequestHandlerFactory(const std::string& format); + AudioAnalyserHandler(const vampHost::Settings& _settings); + void handleRequest(HTTPServerRequest& request,HTTPServerResponse& response); + private: + vampHost::Settings settings; +}; + +class AudioAnalyserFactory: public HTTPRequestHandlerFactory +{ + public: + AudioAnalyserFactory(const vampHost::Settings& _settings); HTTPRequestHandler* createRequestHandler(const HTTPServerRequest& request); private: - std::string _format; + vampHost::Settings settings; }; + + class RotorServer: public Poco::Util::ServerApplication { public: diff --git a/rotord/vampHost.h b/rotord/vampHost.h old mode 100644 new mode 100755 index e46520c..6bc6b75 --- a/rotord/vampHost.h +++ b/rotord/vampHost.h @@ -26,6 +26,15 @@ using Vamp::HostExt::PluginInputDomainAdapter; #define HOST_VERSION "1.5" namespace vampHost { + + class Settings{ + Settings(string _so="",string _filter="",string _id="",string _input=""); + string soname; + string filtername; + string id; + string inputFile; + string output; + }; void printFeatures(int, int, int, Plugin::FeatureSet, ofstream *, bool frames); -- cgit v1.2.3