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

类别:HostApi

音讯驱动介面

类型 使用 成员 说明
建构子 public HostApi(void)
解构子 public ~HostApi(void)
列举 public Encoding 编码列表。
资料 public unsigned long baseDeviceIndex 这个音讯驱动介面的开始设备编号。
资料 public HostApiInfo info 音讯驱动介面资讯。
资料 public DeviceInfo ** deviceInfos 音讯驱动介面列表。
函式 public virtual CaError Open (
Stream ** stream ,
const StreamParameters * inputParameters ,
const StreamParameters * outputParameters ,
double sampleRate ,
CaUint32 framesPerCallback ,
CaStreamFlags streamFlags ,
Conduit * streamCallback ) = 0
开启音讯串流。
函式 public virtual void Terminate (void) = 0 结束使用音讯驱动介面。
函式 public virtual CaError isSupported (
const StreamParameters * inputParameters ,
const StreamParameters * outputParameters ,
double sampleRate ) = 0
是否支持串流格式。
函式 public virtual Encoding encoding (void) const = 0 音讯驱动设备名称编码。
函式 public virtual bool hasDuplex (void) const = 0 是否有全双工功能。
函式 public void setDebugger (Debugger * debug) 设定除错物件。
函式 public virtual CaError ToHostDeviceIndex (
CaDeviceIndex * hostApiDevice ,
CaDeviceIndex device )
将设备编号转换到音讯驱动介面当中的设备编号。
资料 protected Debugger * debugger 除错物件。

说明

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

C/C++定义


class HostApi
{
  public:

    typedef enum {
      NATIVE = 0 ,
      UTF8   = 1 ,
      UTF16  = 2 }
      Encoding   ;

    unsigned long   baseDeviceIndex ;
    HostApiInfo     info            ;
    DeviceInfo   ** deviceInfos     ;

    explicit         HostApi     (void) ;
    virtual         ~HostApi     (void) ;

    virtual CaError  Open        (Stream                ** stream            ,
                                  const StreamParameters * inputParameters   ,
                                  const StreamParameters * outputParameters  ,
                                  double                   sampleRate        ,
                                  CaUint32                 framesPerCallback ,
                                  CaStreamFlags            streamFlags       ,
                                  Conduit                * streamCallback    ) = 0 ;
    virtual void     Terminate   (void) = 0 ;
    virtual CaError  isSupported (const  StreamParameters * inputParameters  ,
                                  const  StreamParameters * outputParameters ,
                                  double sampleRate                          ) = 0 ;
    virtual Encoding encoding    (void) const = 0 ;
    virtual bool     hasDuplex   (void) const = 0 ;

    void             setDebugger (Debugger * debug) ;

    virtual CaError  ToHostDeviceIndex               (
                       CaDeviceIndex * hostApiDevice ,
                       CaDeviceIndex   device      ) ;

  protected:

    Debugger * debugger ;

};

typedef CaError HostApiInitializer(HostApi **,CaHostApiIndex) ;
extern HostApiInitializer ** caHostApiInitializers ;
extern void ReplaceHostApiInitializer ( HostApiInitializer ** replacement ) ;