#include <RemoteStream.h>

Public Member Functions | |
| RemoteStream (char *clientName, unsigned short clientPort, unsigned ch, unsigned bufSize) | |
| Constructor. | |
| ~RemoteStream () | |
| sample ** | ioBuffers () |
| Accessors used by the reader thread. | |
| int | socket () |
| unsigned short | requestSize () |
| unsigned | bufferSwitch () |
| unsigned | bufferIndex () |
| unsigned | bufferSize () |
| sem_t * | semaphore () |
| void | nextBuffer (Buffer &outputBuffer) throw (CException) |
| Get a buffer of frames. | |
Protected Member Functions | |
| int | initSockets (char *serverName, unsigned short serverPort) |
| void | initPacket () |
| virtual int | connectToServer () |
Protected Attributes | |
| unsigned | mBufferSize |
| the size of the input ring buffer (in FRAMES) | |
| sample * | mIoBuffers [2] |
| My IO buffers (2 for dbl-buffering; mBufferSize frames in size). | |
| unsigned | mCurrentBuffer |
| current IO buffer in use | |
| unsigned | mCurrentFrame |
| current position in buffer | |
| int | mSocket |
| The socket I send to. | |
| CSL_RS_MSG | mHeader |
| The request packet header. | |
| struct sockaddr_in | mServerAddr |
| Socket addresses for the remote server and for me. | |
| sem_t * | mServerSemaphore |
| Semaphore to trigger call to server for samples. | |
| RemoteStream::RemoteStream | ( | char * | clientName, | |
| unsigned short | clientPort, | |||
| unsigned | ch, | |||
| unsigned | bufSize | |||
| ) |
Constructor.
References closesocket, connectToServer(), csl::CSL_CreateThread(), error(), initPacket(), initSockets(), csl::kLogError, csl::logMsg(), mBufferSize, mCurrentBuffer, mCurrentFrame, mIoBuffers, csl::UnitGenerator::mNumChannels, mServerSemaphore, mSocket, csl::RS_read_loop(), and RS_RESPONSE_PACKET_SIZE.
| RemoteStream::~RemoteStream | ( | ) |
References closesocket, mIoBuffers, and mSocket.
| sample** csl::RemoteStream::ioBuffers | ( | ) | [inline] |
| int csl::RemoteStream::socket | ( | ) | [inline] |
| unsigned short csl::RemoteStream::requestSize | ( | ) | [inline] |
| unsigned csl::RemoteStream::bufferSwitch | ( | ) | [inline] |
References mCurrentBuffer.
| unsigned csl::RemoteStream::bufferIndex | ( | ) | [inline] |
References mCurrentFrame.
| unsigned csl::RemoteStream::bufferSize | ( | ) | [inline] |
References mBufferSize.
| sem_t* csl::RemoteStream::semaphore | ( | ) | [inline] |
References mServerSemaphore.
| void RemoteStream::nextBuffer | ( | Buffer & | outputBuffer | ) | throw (CException) [virtual] |
| int RemoteStream::initSockets | ( | char * | serverName, | |
| unsigned short | serverPort | |||
| ) | [protected] |
References csl::logMsg(), mBufferSize, mServerAddr, mServerSemaphore, mSocket, and socket().
Referenced by RemoteStream().
| void RemoteStream::initPacket | ( | ) | [protected] |
References csl::CSL_RS_MSG::channels, CSL_CMD_SET_CLIENT, csl::CSL_RS_MSG::frames, csl::CSL_RS_MSG::magic, mBufferSize, mHeader, mIoBuffers, csl::UnitGenerator::mNumChannels, RS_PACKET_MAGIC, and RS_PACKET_SIZE.
Referenced by RemoteStream().
| int RemoteStream::connectToServer | ( | ) | [protected, virtual] |
References csl::kLogError, csl::logMsg(), csl::CSL_RS_MSG::magic, mIoBuffers, mServerAddr, mSocket, RS_PACKET_MAGIC, and RS_PACKET_SIZE.
Referenced by RemoteStream().
unsigned csl::RemoteStream::mBufferSize [protected] |
the size of the input ring buffer (in FRAMES)
Referenced by bufferSize(), initPacket(), initSockets(), and RemoteStream().
sample* csl::RemoteStream::mIoBuffers[2] [protected] |
My IO buffers (2 for dbl-buffering; mBufferSize frames in size).
Referenced by connectToServer(), initPacket(), ioBuffers(), RemoteStream(), and ~RemoteStream().
unsigned csl::RemoteStream::mCurrentBuffer [protected] |
unsigned csl::RemoteStream::mCurrentFrame [protected] |
int csl::RemoteStream::mSocket [protected] |
The socket I send to.
Referenced by connectToServer(), initSockets(), RemoteStream(), socket(), and ~RemoteStream().
CSL_RS_MSG csl::RemoteStream::mHeader [protected] |
struct sockaddr_in csl::RemoteStream::mServerAddr [read, protected] |
Socket addresses for the remote server and for me.
Referenced by connectToServer(), and initSockets().
sem_t* csl::RemoteStream::mServerSemaphore [protected] |
Semaphore to trigger call to server for samples.
Referenced by initSockets(), RemoteStream(), and semaphore().
1.5.8