1
0
Fork 0

use guidance from opensoundcontrol website regarding client-server model

This commit is contained in:
Kevin Matz 2023-04-25 09:03:46 -04:00
parent 402bcf9188
commit 929ca62016
5 changed files with 25 additions and 19 deletions

View File

@ -7,17 +7,17 @@ target_sources(${PROJECT_NAME}
PUBLIC
argument.h
bundle.h
client.h
message.h
method.h
server.h
receiver.h
sender.h
PRIVATE
argument.cpp
bundle.cpp
client.cpp
message.cpp
method.cpp
server.cpp
receiver.cpp
sender.cpp
)
target_link_libraries(${PROJECT_NAME}

View File

@ -22,29 +22,29 @@
SOFTWARE.
*/
#include "server.h"
#include "receiver.h"
#include <sstream>
#include <thread>
namespace OSC {
Server::Server()
Receiver::Receiver()
: address_space_(new Method())
{
}
Server::~Server()
Receiver::~Receiver()
{
delete address_space_;
}
/**
* @brief Server::dispatch
* @brief Receiver::dispatch
* @param msg
*/
void Server::dispatch(const std::shared_ptr<Message> msg) const
void Receiver::dispatch(const std::shared_ptr<Message> msg) const
{
switch (msg->address_pattern.at(0)) {
case '/':
@ -67,10 +67,10 @@ void Server::dispatch(const std::shared_ptr<Message> msg) const
/**
* @brief Server::scheduleBundle
* @brief Receiver::scheduleBundle
* @param msg
*/
void Server::scheduleBundle(const std::shared_ptr<Bundle> msg) const
void Receiver::scheduleBundle(const std::shared_ptr<Bundle> msg) const
{
auto invoke = [&] {
for (const auto &element: msg->elements)

View File

@ -31,12 +31,15 @@ namespace OSC {
/**
* @brief \cite Spec10 Any application that receives OSC Packets is an OSC Server.
*
* As of 2021, Adrian Freed and Matt Wright recommend the terminology OSC Receiver for
* anything that can receive OSC packets.
*/
class Server
class Receiver
{
public:
explicit Server();
virtual ~Server();
explicit Receiver();
virtual ~Receiver();
void dispatch(const std::shared_ptr<Message>) const;

View File

@ -22,14 +22,14 @@
SOFTWARE.
*/
#include "client.h"
#include "sender.h"
namespace OSC {
/**
* @brief Client::Client
*/
Client::Client()
Sender::Sender()
{
}

View File

@ -30,12 +30,15 @@ namespace OSC {
/**
* @brief \cite Spec10 Any application that sends OSC Packets is an OSC Client.
*
* As of 2021, Adrian Freed and Matt Wright recommend the terminology OSC Sender for
* anything that sends OSC packets.
*/
class Client
class Sender
{
public:
explicit Client();
virtual ~Client();
explicit Sender();
virtual ~Sender();
/**
* @brief send