Files
haiku-beta6/src/kits/media/MediaClientDefs.cpp
T
Dario Casalinuovo 23d5326e2b MediaClient: Introduce media_client and media_connection
* Those structs are provided as replacement for the classic
media_kit ones. They provide better encapsulation of the data
and the resulting code is heavily simplified. It's planned to
introduce BMediaRoster functions to provide conversion from
media_node and media_input/media_output to media_client
and media_connection.
2016-11-24 00:27:58 +01:00

90 lines
1.2 KiB
C++

/*
* Copyright 2015, Dario Casalinuovo. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#include <MediaClient.h>
#include <MediaConnection.h>
#include "debug.h"
media_client_id
media_client::Id() const
{
return node.node;
}
media_connection_id
media_connection::Id() const
{
return id;
}
media_connection_kind
media_connection::Kind() const
{
return kind;
}
bool
media_connection::IsInput() const
{
return Kind() == B_MEDIA_INPUT;
}
bool
media_connection::IsOutput() const
{
return Kind() == B_MEDIA_OUTPUT;
}
media_input
media_connection::MediaInput() const
{
media_input input;
input.node = client.node;
input.source = source;
input.destination = destination;
input.format = format;
return input;
}
media_output
media_connection::MediaOutput() const
{
media_output output;
output.node = client.node;
output.source = source;
output.destination = destination;
output.format = format;
return output;
}
const media_source&
media_connection::Source() const
{
return source;
}
const media_destination&
media_connection::Destination() const
{
return destination;
}
media_node
media_connection::RemoteNode() const
{
return remote_client.node;
}