Changeset 2504
- Timestamp:
- 02/25/10 22:01:18 (7 months ago)
- Location:
- trunk/ingen/src
- Files:
-
- 2 removed
- 15 modified
-
client/HTTPEngineSender.cpp (modified) (1 diff)
-
client/HTTPEngineSender.hpp (modified) (1 diff)
-
client/OSCEngineSender.cpp (modified) (1 diff)
-
client/OSCEngineSender.hpp (modified) (1 diff)
-
common/interface/EngineInterface.hpp (modified) (1 diff)
-
engine/events.hpp (modified) (1 diff)
-
engine/events/Get.cpp (modified) (2 diffs)
-
engine/events/Get.hpp (modified) (2 diffs)
-
engine/events/RequestPlugins.cpp (deleted)
-
engine/events/RequestPlugins.hpp (deleted)
-
engine/OSCEngineReceiver.cpp (modified) (2 diffs)
-
engine/OSCEngineReceiver.hpp (modified) (1 diff)
-
engine/QueuedEngineInterface.cpp (modified) (1 diff)
-
engine/QueuedEngineInterface.hpp (modified) (1 diff)
-
engine/wscript (modified) (1 diff)
-
gui/ConnectWindow.cpp (modified) (1 diff)
-
ingen/main.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ingen/src/client/HTTPEngineSender.cpp
r2503 r2504 225 225 226 226 227 void228 HTTPEngineSender::request_plugins()229 {230 SoupMessage* msg = soup_message_new("GET", (_engine_url.str() + "/plugins").c_str());231 HTTPClientReceiver::send(msg);232 }233 234 235 227 } // namespace Client 236 228 } // namespace Ingen -
trunk/ingen/src/client/HTTPEngineSender.hpp
r2503 r2504 110 110 void get(const Raul::URI& uri); 111 111 void request_property(const Raul::URI& path, const Raul::URI& key); 112 void request_plugins();113 112 114 113 protected: -
trunk/ingen/src/client/OSCEngineSender.cpp
r2503 r2504 262 262 263 263 264 void265 OSCEngineSender::request_plugins()266 {267 send("/request_plugins", "i", next_id(), LO_ARGS_END);268 }269 270 271 264 } // namespace Client 272 265 } // namespace Ingen -
trunk/ingen/src/client/OSCEngineSender.hpp
r2503 r2504 107 107 void get(const Raul::URI& uri); 108 108 void request_property(const Raul::URI& path, const Raul::URI& key); 109 void request_plugins();110 109 111 110 protected: -
trunk/ingen/src/common/interface/EngineInterface.hpp
r2503 r2504 67 67 virtual void request_property(const Raul::URI& uri, 68 68 const Raul::URI& key) = 0; 69 70 virtual void request_plugins() = 0;71 69 }; 72 70 -
trunk/ingen/src/engine/events.hpp
r2503 r2504 37 37 #include "events/RegisterClient.hpp" 38 38 #include "events/RequestMetadata.hpp" 39 #include "events/RequestPlugins.hpp"40 39 #include "events/SetMetadata.hpp" 41 40 #include "events/SetPortValue.hpp" -
trunk/ingen/src/engine/events/Get.cpp
r2503 r2504 50 50 Get::pre_process() 51 51 { 52 if (Path::is_valid(_uri.str())) 52 if (_uri == "ingen:plugins") { 53 _plugins = _engine.node_factory()->plugins(); 54 } else if (Path::is_valid(_uri.str())) { 53 55 _object = _engine.engine_store()->find_object(Path(_uri.str())); 54 else56 } else { 55 57 _plugin = _engine.node_factory()->plugin(_uri); 58 } 56 59 57 60 QueuedEvent::pre_process(); … … 60 63 61 64 void 62 Get::execute(ProcessContext& context)63 {64 QueuedEvent::execute(context);65 assert(_time >= context.start() && _time <= context.end());66 }67 68 69 void70 65 Get::post_process() 71 66 { 72 if (!_object && !_plugin) { 67 if (_uri == "ingen:plugins") { 68 _request->respond_ok(); 69 _engine.broadcaster()->send_plugins_to(_request->client(), _plugins); 70 } else if (!_object && !_plugin) { 73 71 _request->respond_error("Unable to find object requested."); 74 72 } else if (_request->client()) { -
trunk/ingen/src/engine/events/Get.hpp
r2417 r2504 20 20 21 21 #include "QueuedEvent.hpp" 22 #include "NodeFactory.hpp" 22 23 #include "types.hpp" 23 24 … … 44 45 45 46 void pre_process(); 46 void execute(ProcessContext& context);47 47 void post_process(); 48 48 49 49 private: 50 const Raul::URI _uri; 51 GraphObjectImpl* _object; 52 const PluginImpl* _plugin; 50 const Raul::URI _uri; 51 GraphObjectImpl* _object; 52 const PluginImpl* _plugin; 53 NodeFactory::Plugins _plugins; 53 54 }; 54 55 -
trunk/ingen/src/engine/OSCEngineReceiver.cpp
r2503 r2504 113 113 lo_server_add_method(_server, "/request_property", "iss", request_property_cb, this); 114 114 lo_server_add_method(_server, "/get", "is", get_cb, this); 115 lo_server_add_method(_server, "/request_plugins", "i", request_plugins_cb, this);116 lo_server_add_method(_server, "/request_all_objects", "i", request_all_objects_cb, this);117 115 118 116 lo_server_add_method(_server, NULL, NULL, unknown_cb, NULL); … … 634 632 635 633 636 /** \page engine_osc_namespace637 * <h2>/request_plugins</h2>638 * \arg \b response-id (integer)639 *640 * Request the engine send a list of all known plugins.641 */642 int643 OSCEngineReceiver::_request_plugins_cb(const char* path, const char* types, lo_arg** argv, int argc, lo_message msg)644 {645 request_plugins();646 return 0;647 }648 649 650 651 634 // Static Callbacks // 652 635 -
trunk/ingen/src/engine/OSCEngineReceiver.hpp
r2458 r2504 113 113 LO_HANDLER(property_set); 114 114 LO_HANDLER(request_property); 115 LO_HANDLER(request_plugins);116 LO_HANDLER(request_all_objects);117 115 118 116 lo_server _server; -
trunk/ingen/src/engine/QueuedEngineInterface.cpp
r2503 r2504 265 265 266 266 267 void268 QueuedEngineInterface::request_plugins()269 {270 push_queued(new Events::RequestPlugins(_engine, _request, now()));271 }272 273 274 267 } // namespace Ingen -
trunk/ingen/src/engine/QueuedEngineInterface.hpp
r2503 r2504 103 103 virtual void get(const Raul::URI& uri); 104 104 virtual void request_property(const Raul::URI& object_path, const Raul::URI& key); 105 virtual void request_plugins();106 105 107 106 protected: -
trunk/ingen/src/engine/wscript
r2503 r2504 49 49 events/RegisterClient.cpp 50 50 events/RequestMetadata.cpp 51 events/RequestPlugins.cpp52 51 events/SendBinding.cpp 53 52 events/SendPortActivity.cpp -
trunk/ingen/src/gui/ConnectWindow.cpp
r2503 r2504 463 463 } 464 464 } else if (_connect_stage == 4) { 465 App::instance().engine()-> request_plugins();465 App::instance().engine()->get("ingen:plugins"); 466 466 hide(); 467 467 if (_widgets_loaded) -
trunk/ingen/src/ingen/main.cpp
r2497 r2504 219 219 engine_interface->load_plugins(); 220 220 if (conf.option("gui").get_bool()) 221 engine_interface-> request_plugins();221 engine_interface->get("ingen:plugins"); 222 222 world->parser->parse_document( 223 223 world, engine_interface.get(), uri, data_path, parent, symbol);
