• 首頁
  • 文件
  • 下載
  • 狀態
  • 常見問題
  • 郵件列表
  • 應用程式
  • 外部鏈結
  • 版權
  • 志願者
  • 聯繫

類別:Conduit

音訊資料導流管

類型 使用 成員 說明
建構子 public Conduit(void)
解構子 public ~Conduit(void)
列舉 public CallBackResult
列舉 public FlowSituation
列舉 public CallbackFlags
資料 public const void * InputBuffer
資料 public void * OutputBuffer
資料 public unsigned long FrameCount
資料 public unsigned long MaxInputSize
資料 public unsigned long MaxOutputSize
資料 public unsigned long StatusFlags
資料 public FlowSituation InputSituation
資料 public FlowSituation OutputSituation
資料 public CaTime InputBufferAdcTime
資料 public CaTime CurrentTime
資料 public CaTime OutputBufferDacTime
資料 public CacInputFunction inputFunction
資料 public CacOutputFunction outputFunction
函式 public virtual int obtain (void) = 0
函式 public virtual int put (void) = 0
函式 public virtual void finish (void) = 0
函式 protected virtual int ObtainByFunction (void)
函式 protected virtual int PutByFunction (void)

C/C++定義

{
  public:

    typedef enum CallBackResult    {
      Continue = 0                 ,
      Complete = 1                 ,
      Abort    = 2                 ,
      Postpone = 3                 }
      CallBackResult               ;

    typedef enum ConduitDirection {
      NoDirection     = 0         ,
      InputDirection  = 1         ,
      OutputDirection = 2         }
      ConduitDirection            ;

    typedef enum FinishCondition {
      Correct      = 0           ,
      Abortion     = 1           ,
      Interruption = 2           ,
      Accident     = 3           }
      FinishCondition            ;

    StreamIO          Input          ;
    StreamIO          Output         ;
    CacInputFunction  inputFunction  ;
    CacOutputFunction outputFunction ;

    explicit     Conduit          (void) ;
    virtual     ~Conduit          (void) ;

    virtual int  obtain           (void) = 0 ;
    virtual int  put              (void) = 0 ;
    virtual void finish           (ConduitDirection direction = NoDirection   ,
                                   FinishCondition  condition = Correct ) = 0 ;

    virtual void LockConduit      (void) ;
    virtual void UnlockConduit    (void) ;

  protected:

    virtual int  ObtainByFunction (void) ;
    virtual int  PutByFunction    (void) ;

};