⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dialogic.linux

📁 著名的dialogic电话语音卡的java驱动程序,已经验证可用。
💻 LINUX
📖 第 1 页 / 共 5 页
字号:
//
// Dialogic.java: Dialogic access
// $Id: Dialogic.linux,v 1.18 2003/11/04 17:00:03 tron Exp tron $

/* 
 * Copyright (c) 1999 Carlos G Mendioroz.
 *
 *  This file is part of D4J.
 *
 *  D4J is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU Lesser General Public
 *  License as published by the Free Software Foundation; either
 *  version 2 of the License, or (at your option) any later version.
 *  
 *  D4J is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *  Lesser General Public License for more details.
 *  
 *  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; if not, write to the
 *  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 *  Boston, MA  02111-1307, USA.
 *
 * Report problems and direct all questions to:
 *
 *	tron@acm.org
 */
package local.dialogic;

public class Dialogic
{
    // Variables

    // Native methods
    
    // Utility
    protected static native int openFile(String filename, int mode);
    protected static native void closeFile(int fd);
    
    // SR
    private static native int sr_libinit();
    protected static native void sr_waitevt(EVT evt); 

    static String sr_type = "";
    static int sr_ret = 0;
    
    static final int SR_GETBOARDCNT = 1;
    private static native int sr_do_getboardcnt(String type);
    public synchronized static int sr_getboardcnt(String type){
        sr_type = type;
        dowork(SR_GETBOARDCNT);
        sr_type = "";
        if (workException != null) throw workException;
        return sr_ret;
    }
    private static void sr_work_getboardcnt() {sr_ret = sr_do_getboardcnt(sr_type); }

    // DX
    private static native int dx_libinit();
    
    static String dx_name = "";
    static Voice dx_vdev = null;
    static int dx_p1 = 0;
    static int dx_p2 = 0;
    static int dx_p3 = 0;
    static int dx_p4 = 0;
    static int dx_p5 = 0;
    static int dx_p6 = 0;
    static IOTT dx_iott = null;
    static TPT dx_tpt = null;
    static XPB dx_xpb = null;
    static TNGEN dx_tngen = null;
    static DXCAP dx_cap = null;
    static byte dx_buf[] = null;
    static int dx_ret = 0;
    
    static final int DX_OPEN = 101;
    private static native int dx_do_open(String name, int flags);
    protected synchronized static int dx_open(String name, int flags){
        dx_name = name;
        dx_p1 = flags;
        dowork(DX_OPEN);
        dx_name = "";
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_open() {dx_ret = dx_do_open(dx_name, dx_p1); }
    
    static final int DX_CLOSE = 102;
    private static native void dx_do_close(Voice dev);
    protected synchronized static void dx_close(Voice dev){
        dx_vdev = dev;
        dowork(DX_CLOSE);
        dx_vdev = null;
        if (workException != null) throw workException;
        return;
    }
    private static void dx_work_close() {dx_do_close(dx_vdev); }
    
    static final int DX_SETDIGTYP = 103;
    private static native int dx_do_setdigtyp(int dev, int mask);
    protected synchronized static int dx_setdigtyp(int dev, int mask){
        dx_p1 = dev;
        dx_p2 = mask;
        dowork(DX_SETDIGTYP);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_setdigtyp() {dx_ret = dx_do_setdigtyp(dx_p1, dx_p2); }
    
    static final int DX_SETEVTMSK = 104;
    private static native int dx_do_setevtmsk(int dev, int mask);
    protected synchronized static int dx_setevtmsk(int dev, int mask){
        dx_p1 = dev;
        dx_p2 = mask;
        dowork(DX_SETEVTMSK);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_setevtmsk() {dx_ret = dx_do_setevtmsk(dx_p1, dx_p2); }
    
    static final int DX_SETPARM = 105;
    private static native int dx_do_setparm(int dev, int par, int val);
    protected synchronized static int dx_setparm(int dev, int par, int val){
        dx_p1 = dev;
        dx_p2 = par;
        dx_p3 = val;
        dowork(DX_SETPARM);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_setparm() {dx_ret = dx_do_setparm(dx_p1, dx_p2, dx_p3); }
    
    static final int DX_SETHOOK = 106;
    private static native int dx_do_sethook(int dev, int hook, int mode);
    protected synchronized static int dx_sethook(int dev, int hook, int mode){
        dx_p1 = dev;
        dx_p2 = hook;
        dx_p3 = mode;
        dowork(DX_SETHOOK);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_sethook() {dx_ret = dx_do_sethook(dx_p1, dx_p2, dx_p3); }
    
    static final int DX_PLAY = 107;
    private static native int dx_do_play(Voice dev, IOTT iott, TPT tpt, int mode);
    protected synchronized static int dx_play(Voice dev, IOTT iott, TPT tpt, int mode){
        dx_vdev = dev;
        dx_iott = iott;
        dx_tpt = tpt;
        dx_p1 = mode;
        dowork(DX_PLAY);
        dx_vdev = null;
        dx_iott = null;
        dx_tpt = null;
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_play() {dx_ret = dx_do_play(dx_vdev, dx_iott, dx_tpt, dx_p1); }
    
    static final int DX_REC = 108;
    private static native int dx_do_rec(Voice dev, IOTT iott, TPT tpt, int mode);
    protected synchronized static int dx_rec(Voice dev, IOTT iott, TPT tpt, int mode){
        dx_vdev = dev;
        dx_iott = iott;
        dx_tpt = tpt;
        dx_p1 = mode;
        dowork(DX_REC);
        dx_vdev = null;
        dx_iott = null;
        dx_tpt = null;
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_rec() {dx_ret = dx_do_rec(dx_vdev, dx_iott, dx_tpt, dx_p1); }
    
    static final int DX_GETDIG1 = 109;
    private static native int dx_do_getdig(Voice dev, TPT tpt, int mode);
    protected synchronized static int dx_getdig(Voice dev, TPT tpt, int mode){
        dx_vdev = dev;
        dx_tpt = tpt;
        dx_p1 = mode;
        dowork(DX_GETDIG1);
        dx_vdev = null;
        dx_tpt = null;
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_getdig1() {dx_ret = dx_do_getdig(dx_vdev, dx_tpt, dx_p1); }
    
    static final int DX_GETDIG2 = 110;
    private static native int dx_do_getdig(Voice dev, byte buf[]);
    protected synchronized static int dx_getdig(Voice dev, byte buf[]){
        dx_vdev = dev;
        dx_buf = buf;
        dowork(DX_GETDIG2);
        dx_vdev = null;
        dx_buf = null;
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_getdig2() {dx_ret = dx_do_getdig(dx_vdev, dx_buf); }
   
    static final int DX_CLRDIGBUF = 111;    
    private static native int dx_do_clrdigbuf(int dev);
    protected synchronized static int dx_clrdigbuf(int dev){
        dx_p1 = dev;
        dowork(DX_CLRDIGBUF);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_clrdigbuf() {dx_ret = dx_do_clrdigbuf(dx_p1); }
    
    static final int DX_DELTONES = 112;
    private static native int dx_do_deltones(int dev);
    protected synchronized static int dx_deltones(int dev){
        dx_p1 = dev;
        dowork(DX_DELTONES);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_deltones() {dx_ret = dx_do_deltones(dx_p1); }
   
    static final int DX_BLDST = 113;
    private static native int dx_do_bldst(int id, int t1, int d1, int mode);
    protected synchronized static int dx_bldst(int id, int t1, int d1, int mode){
        dx_p1 = id;
        dx_p2 = t1;
        dx_p3 = d1;
        dx_p4 = mode;
        dowork(DX_BLDST);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_bldst() {dx_ret = dx_do_bldst(dx_p1, dx_p2, dx_p3, dx_p4); }
    
    static final int DX_BLDDT = 114;
    private static native int dx_do_blddt(int id, int t1, int d1, int t2, int d2, int mode);
    protected synchronized static int dx_blddt(int id, int t1, int d1, int t2, int d2, int mode){
        dx_p1 = id;
        dx_p2 = t1;
        dx_p3 = d1;
        dx_p4 = t2;
        dx_p5 = d2;
        dx_p6 = mode;
        dowork(DX_BLDDT);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_blddt() {dx_ret = dx_do_blddt(dx_p1, dx_p2, dx_p3, dx_p4, dx_p5, dx_p6); }
    
    static final int DX_ADDTONE = 115;
    private static native int dx_do_addtone(int dev, int digit, int type);
    protected synchronized static int dx_addtone(int dev, int digit, int type){
        dx_p1 = dev;
        dx_p2 = digit;
        dx_p3 = type;
        dowork(DX_ADDTONE);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_addtone() {dx_ret = dx_do_addtone(dx_p1, dx_p2, dx_p3); }
    
    static final int DX_ENBTONE = 116;
    private static native int dx_do_enbtone(int dev, int id, int mask);
    protected synchronized static int dx_enbtone(int dev, int id, int mask){
        dx_p1 = dev;
        dx_p2 = id;
        dx_p3 = mask;
        dowork(DX_ENBTONE);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_enbtone() {dx_ret = dx_do_enbtone(dx_p1, dx_p2, dx_p3); }
    
    static final int DX_DISTONE = 117;
    private static native int dx_do_distone(int dev, int id, int mask);
    protected synchronized static int dx_distone(int dev, int id, int mask){
        dx_p1 = dev;
        dx_p2 = id;
        dx_p3 = mask;
        dowork(DX_DISTONE);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_distone() {dx_ret = dx_do_distone(dx_p1, dx_p2, dx_p3); }
    
    static final int DX_PLAYTONE = 118;
    private static native int dx_do_playtone(Voice dev, TNGEN tngen, TPT tpt, int mode);
    protected synchronized static int dx_playtone(Voice dev, TNGEN tngen, TPT tpt, int mode){
        dx_vdev = dev;
        dx_tngen = tngen;
        dx_tpt = tpt;
        dx_p1 = mode;
        dowork(DX_PLAYTONE);
        dx_vdev = null;
        dx_tngen = null;
        dx_tpt = null;
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void dx_work_playtone() {dx_ret = dx_do_playtone(dx_vdev, dx_tngen, dx_tpt, dx_p1); }
    
    static final int DX_STATE = 119;
    private static native int ATDX_do_STATE(int dev);
    protected synchronized static int ATDX_STATE(int dev){
        dx_p1 = dev;
        dowork(DX_STATE);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void ATDX_work_STATE() {dx_ret = ATDX_do_STATE(dx_p1); }
    
    static final int DX_LINEST = 120;
    private static native int ATDX_do_LINEST(int dev);
    protected synchronized static int ATDX_LINEST(int dev){
        dx_p1 = dev;
        dowork(DX_LINEST);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void ATDX_work_LINEST() {dx_ret = ATDX_do_LINEST(dx_p1); }
    
    static final int DX_CPTERM = 121;
    private static native int ATDX_do_CPTERM(int dev);
    protected synchronized static int ATDX_CPTERM(int dev){
        dx_p1 = dev;
        dowork(DX_CPTERM);
        if (workException != null) throw workException;
        return dx_ret;
    }
    private static void ATDX_work_CPTERM() {dx_ret = ATDX_do_CPTERM(dx_p1); }
    
    static final int DX_STOPCH = 122;
    private static native int dx_do_stopch(int dev, int mode);
    protected synchronized static int dx_stopch(int dev, int mode){
        dx_p1 = dev;
        dx_p2 = mode;
        dowork(DX_STOPCH);
        if (workException != null) throw workException;
        return dx_ret;
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -