• 首页
  • 文件
  • 下载
  • 状态
  • 常见问题
  • 邮件列表
  • 应用程序
  • 外部链结
  • 版权
  • 志愿者
  • 联络

类别:Stream

音讯串流介面。

类型 使用 成员 说明
建构子 public Stream(void)
解构子 public ~Stream(void)
资料 public CaUint32 magic 辨识码。
资料 public int structVersion 结构版本。
资料 public CaTime inputLatency 音讯输入延迟。
资料 public CaTime outputLatency 音讯输出延迟。
资料 public double sampleRate 音讯取样率。
资料 public Stream * next 下一个音讯串流。
资料 public Conduit * conduit 音讯导流管。
资料 public Debugger * debugger 除错物件。
函式 public void Terminate (void) 终结这个音讯串流。
函式 public bool isValid (void) const 判断这个音讯串流是否正确。
函式 public virtual CaError Start (void) = 0 启动音讯串流。
函式 public virtual CaError Stop (void) = 0 停止音讯串流。
函式 public virtual CaError Close (void) = 0 关闭音讯串流。
函式 public virtual CaError Abort (void) = 0 中止音讯串流。
函式 public virtual CaError IsStopped (void) = 0 音讯串流是否已经中止?
函式 public virtual CaError IsActive (void) = 0 音讯串流是否还在运作?
函式 public virtual CaTime GetTime (void) = 0 音讯串流的时间。
函式 public virtual double GetCpuLoad (void) = 0 音讯串流负载。
函式 public virtual CaInt32 ReadAvailable (void) = 0 音讯串流可读取数量 。
函式 public virtual CaInt32 WriteAvailable (void) = 0 音讯串流可写入数量 。
函式 public virtual CaError Read (void * buffer,unsigned long frames) = 0 读取音讯串流 。
函式 public virtual CaError Write (const void * buffer,unsigned long frames) = 0 写入音讯串流 。
函式 public virtual bool hasVolume (void) = 0 是否有音量控制?
函式 public virtual CaVolume MinVolume (void) = 0 最小音量数值 。
函式 public virtual CaVolume MaxVolume (void) = 0 最大音量数值 。
函式 public virtual CaVolume Volume (int atChannel = -1) = 0 音量 。
函式 public virtual CaVolume setVolume (CaVolume volume,int atChannel = -1) = 0 设定音量 。

说明

音讯驱动介面必须继承这个类别来实作实际的音讯串流输出入操作。

C/C++定义

class Stream

{
  public:

    enum                                        {
      FramesPerBufferUnspecified = 0            ,
      STREAM_MAGIC               = 0x18273645 } ;

    CaUint32   magic         ;
    int        structVersion ;
    CaTime     inputLatency  ;
    CaTime     outputLatency ;
    double     sampleRate    ;
    Stream   * next          ;
    Conduit  * conduit       ;
    Debugger * debugger      ;

    explicit         Stream         (void) ;
    virtual         ~Stream         (void) ;

    void             Terminate      (void) ;
    bool             isValid        (void) const ;
    virtual bool     isRealTime     (void) ;
    virtual CaError  Error          (void) ;
    virtual char *   lastError      (void) ;

    virtual CaError  Start          (void) = 0 ;
    virtual CaError  Stop           (void) = 0 ;
    virtual CaError  Close          (void) = 0 ;
    virtual CaError  Abort          (void) = 0 ;
    virtual CaError  IsStopped      (void) = 0 ;
    virtual CaError  IsActive       (void) = 0 ;
    virtual CaTime   GetTime        (void) = 0 ;
    virtual double   GetCpuLoad     (void) = 0 ;
    virtual CaInt32  ReadAvailable  (void) = 0 ;
    virtual CaInt32  WriteAvailable (void) = 0 ;
    virtual CaError  Read           (void       * buffer,unsigned long frames) = 0 ;
    virtual CaError  Write          (const void * buffer,unsigned long frames) = 0 ;
    virtual bool     hasVolume       (void) = 0 ;
    virtual CaVolume MinVolume      (void) = 0 ;
    virtual CaVolume MaxVolume      (void) = 0 ;
    virtual CaVolume Volume         (int atChannel = -1) = 0 ;
    virtual CaVolume setVolume      (CaVolume volume,int atChannel = -1) = 0 ;

};