CSL 5.2

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
csl::RemoteIO Class Reference

the RemoteIO class More...

`#include <RemoteIO.h>`

Inheritance diagram for csl::RemoteIO:

List of all members.

## Public Member Functions
| RemoteIO ()
| RemoteIO (unsigned chans)
| ~RemoteIO ()
status | open ()
status | open (unsigned port)
virtual status | start ()
status | stop ()
status | close ()
| open/close start/stop methods
void | process_request_packet ()
int | get_out_sock ()
sample * | get_buffer ()
struct sockaddr_in * | get_client_addr ()
virtual void | test () throw (CException)
void | setRoot (UnitGenerator &root)
| test the IO's graph
void | clearRoot ()
| set/clear my graph root generator
void | pullInput (Buffer &outBuffer, SampleBuffer out=0) throw (CException)
| get a buffer from the CSL graph
virtual Buffer & | getInput () throw (CException)
| Get the current input from the sound card.
virtual Buffer & | getInput (unsigned numFrames, unsigned numChannels) throw (CException)
unsigned | getAndIncrementSequence ()
| increment and answer my seq #
void | attachObserver (Observer *)
| (possibly notify obersvers on my death)
void | detachObserver (Observer *)
void | changed (void *argument)
| this is what I send to myself to notify my observers; It's not overridden in general. It results in the observers receiving update() calls < override evaluate to filter updates to the observer map
virtual int | evaluate (void *argument)

## Public Attributes
UnitGenerator * | mGraph
| the root of my client DSP graph, often a mixer or panner
Buffer | mInputBuffer
| the most recent input buffer (if it's turned on)
Buffer | mOutputBuffer
| the output buffer I use (passed to nextBuffer calls)
SampleBuffer | mInputPointer
| the buffer for holding the sound card input (if open)
unsigned * | mChannelMap
| the output channel remapping array
unsigned | mNumFramesPlayed
| counter of frames I've played
unsigned | mSequence
| sequence counter
unsigned | mLoggingPeriod
| logging period in seconds
unsigned | mNumInChannels
| # inputs
unsigned | mNumOutChannels
| # outputs
unsigned | mNumRealInChannels
| # physical inputs
unsigned | mNumRealOutChannels
| # physical outputs
IO_Status | mStatus
| status flag
bool | mInterleaved
| flag if IO is interleaved

## Protected Member Functions
void | init_io (unsigned in, unsigned out)
virtual void | initialize (unsigned sr, unsigned bs, int is, int os, unsigned ic, unsigned oc)
| initialize overridden in subclasses

## Protected Attributes
unsigned | _inputs
unsigned | _outputs
Buffer | _outputBuffer
Buffer | _inputBuffer
struct sockaddr_in _clientAddr | _myAddr
int | _inSock
int | _outSock
sample * | _buffer

## Detailed Description

the RemoteIO class

Definition at line 28 of file RemoteIO.h.

## Constructor & Destructor Documentation

RemoteIO::RemoteIO | ( |  | ) |

Definition at line 18 of file RemoteIO.cpp.

References init_io().

RemoteIO::RemoteIO | ( | unsigned | chans | ) |

Definition at line 12 of file RemoteIO.cpp.

References init_io().

RemoteIO::~RemoteIO | ( |  | ) |

Definition at line 52 of file RemoteIO.cpp.

References _buffer.

## Member Function Documentation

void RemoteIO::init_io | ( | unsigned | in,
|  | unsigned | out
| ) |  |
| protected

Definition at line 24 of file RemoteIO.cpp.

References _buffer, _inputBuffer, _inputs, _inSock, _outputBuffer, _outputs, _outSock, csl::Buffer::allocateBuffers(), csl::kLogError, and csl::logMsg().

Referenced by RemoteIO().

status RemoteIO::open | ( |  | ) |
| virtual

Reimplemented from csl::IO.

Definition at line 59 of file RemoteIO.cpp.

References CSL_DEFAULT_REQUEST_PORT.

status RemoteIO::open | ( | unsigned | port | ) |

Definition at line 65 of file RemoteIO.cpp.

References _inSock, and csl::logMsg().

status RemoteIO::start | ( | void |  | ) |
| virtual

Reimplemented from csl::IO.

Definition at line 99 of file RemoteIO.cpp.

References _inSock, _outSock, csl::CSL_CreateThread(), csl::logMsg(), and csl::RemoteIO_read_loop().

status RemoteIO::stop | ( | void |  | ) |
| virtual

Reimplemented from csl::IO.

Definition at line 230 of file RemoteIO.cpp.

References _outSock.

status RemoteIO::close | ( |  | ) |
| virtual

open/close start/stop methods

Reimplemented from csl::IO.

Definition at line 87 of file RemoteIO.cpp.

References _inSock, _outSock, and closesocket.

void RemoteIO::process_request_packet | ( |  | ) |

Definition at line 181 of file RemoteIO.cpp.

References _buffer, _inputBuffer, _outputBuffer, _outputs, _outSock, GET_TIME, csl::kLogError, csl::logMsg(), and memcpy().

int csl::RemoteIO::get_out_sock | ( |  | ) |
| inline

Definition at line 59 of file RemoteIO.h.

References _outSock.

sample* csl::RemoteIO::get_buffer | ( |  | ) |
| inline

Definition at line 60 of file RemoteIO.h.

References _buffer.

struct sockaddr_in* csl::RemoteIO::get_client_addr | ( |  | ) |
| inline read

Definition at line 61 of file RemoteIO.h.

virtual void csl::IO::test | ( |  | ) | throw (CException)
| inline virtual inherited

Reimplemented in csl::FileIO, and csl::PAIO.

Definition at line 727 of file CSL_Core.h.

void IO::setRoot | ( | UnitGenerator & | root | ) |
| inherited

test the IO's graph

Definition at line 1249 of file CSL_Core.cpp.

References csl::UnitGenerator::addOutput(), and csl::IO::mGraph.

Referenced by main(), and csl::VSTIO::VSTIO().

void IO::clearRoot | ( |  | ) |
| inherited

set/clear my graph root generator

Definition at line 1254 of file CSL_Core.cpp.

References csl::IO::mGraph, and csl::UnitGenerator::removeOutput().

void IO::pullInput | ( | Buffer & | outBuffer,
|  | SampleBuffer | out = `0`
| ) |  | throw (CException)
| inherited

get a buffer from the CSL graph

Definition at line 1269 of file CSL_Core.cpp.

References GET_TIME, csl::kLogError, csl::logMsg(), and csl::CException::mMessage.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::NullIO::FeederFunction(), csl::StdIO::FeederFunction(), JackCallback(), pa_callback(), csl::VSTIO::processReplacing(), and RenderCallback().

Buffer & IO::getInput | ( |  | ) | throw (CException)
| virtual inherited

Get the current input from the sound card.

Reimplemented in csl::FileIO, csl::AUIO, csl::AUIO, and csl::NullIO.

Definition at line 1358 of file CSL_Core.cpp.

References csl::IO::mInputBuffer, csl::Buffer::mNumChannels, and csl::Buffer::mNumFrames.

Buffer & IO::getInput | ( | unsigned | numFrames,
|  | unsigned | numChannels
| ) |  | throw (CException)
| virtual inherited

Reimplemented in csl::FileIO, csl::AUIO, csl::AUIO, and csl::NullIO.

Definition at line 1364 of file CSL_Core.cpp.

References csl::Interleaver::deinterleave(), and mNumInChannels.

unsigned IO::getAndIncrementSequence | ( |  | ) |
| inherited

increment and answer my seq #

Definition at line 1262 of file CSL_Core.cpp.

References csl::IO::mSequence.

virtual void csl::IO::initialize | ( | unsigned | sr,
|  | unsigned | bs,
|  | int | is,
|  | int | os,
|  | unsigned | ic,
|  | unsigned | oc
| ) |  |
| inline protected virtual inherited

initialize overridden in subclasses

Reimplemented in csl::PAIO.

Definition at line 765 of file CSL_Core.h.

void Model::attachObserver | ( | Observer * | o | ) |
| inherited

(possibly notify obersvers on my death)

register/remove observers

Definition at line 491 of file CGestalt.cpp.

References csl::logMsg(), csl::Observer::mKey, and csl::Observer::mPeriod.

Referenced by csl::SpatialPanner::setSpeakerLayout().

void Model::detachObserver | ( | Observer * | o | ) |
| inherited

Definition at line 507 of file CGestalt.cpp.

References csl::logMsg().

Referenced by csl::SpatialPanner::setSpeakerLayout(), and csl::SpatialPanner::~SpatialPanner().

void Model::changed | ( | void * | argument | ) |
| inherited

this is what I send to myself to notify my observers; It's not overridden in general. It results in the observers receiving update() calls < override evaluate to filter updates to the observer map

Definition at line 529 of file CGestalt.cpp.

References csl::logMsg().

Referenced by csl::SpeakerLayout::addSpeaker(), csl::MIDIIn::handleIncomingMidiMessage(), and csl::SpeakerLayout::setDefaultSpeakerLayout().

virtual int csl::Model::evaluate | ( | void * | argument | ) |
| inline virtual inherited

Reimplemented in csl::MIDIIn.

Definition at line 259 of file CGestalt.h.

## Member Data Documentation

unsigned csl::RemoteIO::_inputs
| protected

Definition at line 31 of file RemoteIO.h.

Referenced by init_io().

unsigned csl::RemoteIO::_outputs
| protected

Definition at line 31 of file RemoteIO.h.

Referenced by init_io(), and process_request_packet().

Buffer csl::RemoteIO::_outputBuffer
| protected

Definition at line 32 of file RemoteIO.h.

Referenced by init_io(), and process_request_packet().

Buffer csl::RemoteIO::_inputBuffer
| protected

Definition at line 33 of file RemoteIO.h.

Referenced by init_io(), and process_request_packet().

struct sockaddr_in _clientAddr csl::RemoteIO::_myAddr
| protected

Definition at line 35 of file RemoteIO.h.

int csl::RemoteIO::_inSock
| protected

Definition at line 36 of file RemoteIO.h.

Referenced by close(), init_io(), open(), and start().

int csl::RemoteIO::_outSock
| protected

Definition at line 37 of file RemoteIO.h.

Referenced by close(), get_out_sock(), init_io(), process_request_packet(), start(), and stop().

sample* csl::RemoteIO::_buffer
| protected

Definition at line 39 of file RemoteIO.h.

Referenced by get_buffer(), init_io(), process_request_packet(), and ~RemoteIO().

UnitGenerator* csl::IO::mGraph
| inherited

the root of my client DSP graph, often a mixer or panner

Definition at line 739 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::IO::clearRoot(), pa_callback(), csl::VSTIO::processReplacing(), RenderCallback(), csl::VSTIO::setProgramName(), csl::IO::setRoot(), csl::PAIO::test(), and csl::FileIO::writeNextBuffer().

Buffer csl::IO::mInputBuffer
| inherited

the most recent input buffer (if it's turned on)

Definition at line 740 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::PAIO::close(), csl::NullIO::getInput(), csl::AUIO::getInput(), csl::IO::getInput(), csl::PAIO::initialize(), csl::PAIO::open(), pa_callback(), and csl::VSTIO::processReplacing().

Buffer csl::IO::mOutputBuffer
| inherited

the output buffer I use (passed to nextBuffer calls)

Definition at line 741 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::PAIO::close(), csl::NullIO::FeederFunction(), csl::StdIO::FeederFunction(), csl::PAIO::initialize(), JackCallback(), csl::PAIO::open(), pa_callback(), csl::VSTIO::processReplacing(), and RenderCallback().

SampleBuffer csl::IO::mInputPointer
| inherited

the buffer for holding the sound card input (if open)

Definition at line 742 of file CSL_Core.h.

Referenced by pa_callback().

unsigned* csl::IO::mChannelMap
| inherited

the output channel remapping array

Definition at line 743 of file CSL_Core.h.

Referenced by csl::PAIO::initialize().

unsigned csl::IO::mNumFramesPlayed
| inherited

counter of frames I've played

Definition at line 745 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), pa_callback(), RenderCallback(), csl::AUIO::start(), and csl::FileIO::writeNextBuffer().

unsigned csl::IO::mSequence
| inherited

sequence counter

Definition at line 746 of file CSL_Core.h.

Referenced by csl::IO::getAndIncrementSequence().

unsigned csl::IO::mLoggingPeriod
| inherited

logging period in seconds

Definition at line 747 of file CSL_Core.h.

unsigned csl::IO::mNumInChannels
| inherited

# inputs

Definition at line 748 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::PAIO::initialize(), and pa_callback().

unsigned csl::IO::mNumOutChannels
| inherited

# outputs

Definition at line 749 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::PAIO::initialize(), and csl::VSTIO::processReplacing().

unsigned csl::IO::mNumRealInChannels
| inherited

# physical inputs

Definition at line 750 of file CSL_Core.h.

Referenced by csl::PAIO::initialize().

unsigned csl::IO::mNumRealOutChannels
| inherited

# physical outputs

Definition at line 751 of file CSL_Core.h.

Referenced by csl::PAIO::initialize().

IO_Status csl::IO::mStatus
| inherited

status flag

Definition at line 752 of file CSL_Core.h.

Referenced by csl::JUCEIO::audioDeviceIOCallback(), csl::PAIO::close(), csl::PAIO::initialize(), JackCallback(), csl::PAIO::open(), pa_callback(), csl::PAIO::PAIO(), csl::PAIO::start(), csl::PAIO::stop(), and csl::PAIO::~PAIO().

bool csl::IO::mInterleaved
| inherited

flag if IO is interleaved

Definition at line 753 of file CSL_Core.h.

Referenced by csl::InOut::InOut(), and csl::VSTIO::VSTIO().

The documentation for this class was generated from the following files:

- CSL/IO/RemoteIO.h
- CSL/IO/RemoteIO.cpp