#include <vxml.h>
Inheritance diagram for PVXMLChannel:
Public Member Functions | |
PVXMLChannel (PVXMLChannelInterface &_vxml, BOOL incoming, const PString &fmtName, PINDEX frameBytes, unsigned frameTime, unsigned wavFileType, const PString &wavFilePrefix) | |
~PVXMLChannel () | |
virtual BOOL | IsOpen () const |
virtual BOOL | Close () |
virtual BOOL | Read (void *buffer, PINDEX amount) |
virtual BOOL | Write (const void *buf, PINDEX len) |
virtual PWAVFile * | CreateWAVFile (const PFilePath &fn) |
PWAVFile * | GetWAVFile () const |
const PString & | GetFormatName () const |
BOOL | IsMediaPCM () const |
unsigned | GetWavFileType () const |
virtual PString | AdjustWavFilename (const PString &fn) |
virtual BOOL | WriteFrame (const void *buf, PINDEX len)=0 |
virtual BOOL | IsSilenceFrame (const void *buf, PINDEX len) const =0 |
BOOL | StartRecording (const PFilePath &fn, unsigned finalSilence=2000) |
BOOL | EndRecording () |
BOOL | IsRecording () const |
virtual BOOL | ReadFrame (void *buffer, PINDEX amount)=0 |
virtual PINDEX | CreateSilenceFrame (void *buffer, PINDEX amount)=0 |
virtual void | GetBeepData (PBYTEArray &, unsigned) |
virtual void | QueueFile (const PString &fn, PINDEX repeat=1, PINDEX delay=0, BOOL autoDelete=FALSE) |
virtual void | QueueResource (const PURL &url, PINDEX repeat=1, PINDEX delay=0) |
virtual void | QueueData (const PBYTEArray &data, PINDEX repeat=1, PINDEX delay=0) |
virtual void | QueueCommand (const PString &data, PINDEX repeat=1, PINDEX delay=0) |
virtual void | QueueItem (PVXMLQueueItem *newItem) |
virtual void | FlushQueue () |
virtual BOOL | IsPlaying () const |
void | SetPause (BOOL _pause) |
virtual void | HandleDelay (PINDEX amount) |
void | SetName (const PString &name) |
Protected Attributes | |
PVXMLChannelInterface & | vxmlInterface |
BOOL | isIncoming |
PString | formatName |
unsigned | sampleFrequency |
PINDEX | frameBytes |
unsigned | frameTime |
unsigned | wavFileType |
PString | wavFilePrefix |
PMutex | channelMutex |
PAdaptiveDelay | delay |
BOOL | closed |
PINDEX | delayBytes |
BOOL | recording |
PWAVFile * | wavFile |
unsigned | finalSilence |
unsigned | silenceRun |
BOOL | playing |
PMutex | queueMutex |
PVXMLQueue | playQueue |
BOOL | paused |
int | silentCount |
int | totalData |
PTimer | delayTimer |
PString | channelName |
|
|
|
|
|
|
|
Close the channel. This will detach itself from the read and write channels and delete both of them if they are auto delete.
Reimplemented from PIndirectChannel. |
|
Implemented in PVXMLChannelPCM, PVXMLChannelG7231, and PVXMLChannelG729. |
|
|
|
|
|
|
|
Reimplemented in PVXMLChannelPCM. |
|
|
|
|
|
|
|
Reimplemented in PVXMLChannelPCM. |
|
|
|
Determine if the channel is currently open and read and write operations can be executed on it. For example, in the PFile# class it returns if the file is currently open.
Reimplemented from PIndirectChannel. |
|
|
|
|
|
Implemented in PVXMLChannelPCM, PVXMLChannelG7231, and PVXMLChannelG729. |
|
|
|
|
|
|
|
|
|
|
|
Low level read from the channel. This function may block until the requested number of characters were read or the read timeout was reached. The GetLastReadCount() function returns the actual number of bytes read. This will use the readChannel# pointer to actually do the read. If readChannel# is null the this asserts. The GetErrorCode() function should be consulted after Read() returns FALSE to determine what caused the failure.
Reimplemented from PIndirectChannel. |
|
Implemented in PVXMLChannelPCM, PVXMLChannelG7231, and PVXMLChannelG729. |
|
|
|
|
|
|
|
Low level write to the channel. This function will block until the requested number of characters are written or the write timeout is reached. The GetLastWriteCount() function returns the actual number of bytes written. This will use the writeChannel# pointer to actually do the write. If writeChannel# is null the this asserts. The GetErrorCode() function should be consulted after Write() returns FALSE to determine what caused the failure.
Reimplemented from PIndirectChannel. |
|
Implemented in PVXMLChannelPCM, PVXMLChannelG7231, and PVXMLChannelG729. |
|
|
|
Reimplemented from PChannel. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|