//Editor-Info: -*- C++ -*-
//
//Subject: TOVE project
//
//File: unitestccprotocol.h
//
//Version: $Revision: 1.5 $
//
//State: $State: Exp $
//
//Date: $Date: 1998/08/05 05:23:15 $
//
//Organisation:
//      Helsinki University of Technology
//      Laboratory of Telecommunications Software and Multimedia
//
//Author:
//      Jari Pusa
//
//Description:
//
//
//Copyright:
//
//
//Licence:
//
//
//History: 

#ifndef __UNI_UNITESTCCPROTOCOL_H__
#define __UNI_UNITESTCCPROTOCOL_H__

#include "pf/protocol.h"

#include "iface/sigif/sigdownprimitives.h"
#include "iface/sigif/sigupprimitives.h"

#include "unitestccstate.h"

class uniTestCCProtocol : public pfProtocol
{
    public:
        uniTestCCProtocol(void);
        virtual ~uniTestCCProtocol(void);

        void connectCCs(void);
        
        void sendSETUPreq(sigSETUPreq *message_);
        void sendSETUPreqToCC(sigSETUPind *message_);
        void sendPROCEEDINGreq(void);
        void sendSETUPresp(sigPrimitive *message_);        
        void sendSETUPrespToCC(sigSETUPconf *message_);
        void sendSETUP_COMPLETEreq(void);
        
        void sendRELEASEreq(sigRELEASEreq *message_);
        void sendRELEASEreqToCC(sigRELEASEind *message_);
        void sendRELEASEresp(void);

        static pfConduit topMuxInstance(void);

    private:
        static pfConduit _topMux;
};

#endif // __UNI_UNITESTADAPTER_H__



