A
download otdialdti.cpp
Language: C++
Copyright: (c) 1995-99 OpenComm do Brasil Ltda.
LOC: 75
Project Info
Open Telephony Server(opentel)
Server: SourceForge
Type: cvs
...el\server\drivers\dialogic\
   dialogic.dsp
   otdialap.cpp
   otdialap.h
   otdialar.cpp
   otdialar.h
   otdialdev.h
   otdialdrv.cpp
   otdialdrv.h
   otdialdti.cpp
   otdialdti.h
   otdialdxx.cpp
   otdialdxx.h
   otdialei.cpp
   otdialei.h
   otdialev.cpp
   otdialev.h
   otdialex.cpp
   otdialex.h
   otdialgc.cpp
   otdialgc.h
   otdialmsi.cpp
   otdialmsi.h
   otdialogic.cpp
   otdialogic.h
   otdialsc.cpp
   otdialsc.h
   otdialtd.cpp
   otdialtd.h
   otdialtg.cpp
   otdialtg.h

/*****************************************************************************
* OpenTel Telephony Server & Framework
* Copyright (c) 1995-99 OpenComm do Brasil Ltda.
* Todos os direitos reservados.
* Este arquivo contem material confidencial de OpenComm do Brasil, e deve
* darse tratamento como tal.
******************************************************************************/

#ident "@(#) $Header: /cvsroot/opentel/opentel/server/drivers/dialogic/otdialdti.cpp,v 1.2 2000/03/24 05:16:43 jbernab Exp $"

#include <otconfig.h>

#ifdef _WINDOWS
#include <windows.h>
#include <io.h>
#endif

#ifdef CONFIG_DIALOGIC_DTI

extern "C" {
#include <srllib.h>
#include <dtilib.h>
#include <dxxxlib.h>
#include <gclib.h>
#include <gcerr.h>
};

#include <otcallc.includes>
#include <dialogic/otdialogic.h>
#include <otarchive.includes>
#include <dialogic/otdialdti.h>

#include <otbus.includes>                              // Bus Stuff
#include <dialogic/otdialsc.h>


OtDialogicDti::OtDialogicDti(const OtString &dev, OtBus *bus) :
        _linedev(0),
        m_bus(bus),
        m_hasToClose(true),
        _devName(dev)
{
        open();

        // Set Listener and Transmitter
        m_listener=new OtTimeSlotListenerDtiSC(this,(OtBusSC *)m_bus);
        m_transmitter=new OtTimeSlotTransmitterDtiSC(this,(OtBusSC *)m_bus);
}

OtDialogicDti::OtDialogicDti(const OtDialogicGc *gc) :
        _linedev(0),
        m_bus(NULL),
        m_hasToClose(false)
{
        if(gc_GetNetworkH(gc->getGcLineDev(),&_linedev)<0)
                throw OtDialogicGcException(gc);

        _devName=ATDV_NAMEP(_linedev);          // Get Name from handle


        // Listener and Transmitter Objects for SC default
        m_bus=gc->getBus();

        m_listener=new OtTimeSlotListenerDtiSC(this, (OtBusSC *)m_bus);
        m_transmitter=new OtTimeSlotTransmitterDtiSC(this, (OtBusSC *)m_bus);
}

OtDialogicDti::~OtDialogicDti(void)
{
        if(m_hasToClose)
                close();
        m_bus=NULL;
}

int OtDialogicDti::open(void)
{
        if((_linedev=dt_open(_devName,OF_DEFAULT))==ERROR) {
                throw OtException("OtDialogicDti::OpenDevice(): Error opening device: " + _devName);
                return false;
                }
        return true;
}



int OtDialogicDti::close(void)
{
        int ret=0;
        if(_linedev) {
                if((ret=dt_close(_linedev))<0)
                        throw OtDialogicException(_linedev);
                _linedev=0;
                }
        return ret;
}

int OtDialogicDti::onMessage(OtMessage *msg)
{
        OtMessageSource::dispatchMessage(msg);
}


int OtDialogicDti::isForMe(OtDialogicEvent *e)
{
        return (e->getDev()==_linedev);         //
}


#endif

About Koders | Resources | Downloads | Support | Black Duck | Terms of Service | DMCA | Privacy Policy | Contact Us