//Editor-Info: -*- C++ -*-
//
//Subject: TOVE project/CC
//
//File: cctstate.h
//
//Version: $Revision: 1.8 $
//
//State: $State: Exp $
//
//Date: $Date: 1997/12/08 16:27:24 $
//
//Organisation:
//      University of Technology
// 
//Author:
//      Pasi Nummisalo
//
//Description:
//     
//
//Copyright:
//     University of Technology
//     Laboratory of Telecommunications and Multimedia 
//      
//Licence:
//     
//
//History:
//

#ifndef __CC_T_STATE_H__
#define __CC_T_STATE_H__

#include "protocol/cc/ccstate.h"

class ccTstate : public ccState
{
    public:
        // Entry action
        virtual void proceed(ccProtocol *protocol_) = 0;

        // From down
        virtual void sigRELEASEindAct(sigRELEASEind *messenger_,
                                      pfProtocol *protocol_);
        
        virtual void sigRELEASEconfAct(sigRELEASEconf *messenger_,
                                       pfProtocol *protocol_);

        // From other side
        virtual void ccRELEASEpduAct(ccRELEASEpdu *messenger_,
                                     ccProtocol *protocol_);

        virtual void ccRELEASE_ACTIVEpduAct(ccRELEASE_ACTIVEpdu *messenger_,
                                            ccProtocol *protocol_);

        virtual void ccSETUPpduAct(ccSETUPpdu *messenger_,
                                   ccProtocol *protocol_);

        virtual void ccALERTINGpduAct(ccALERTINGpdu *messenger_,
                                      ccProtocol *protocol_);
       
    protected:
        ccTstate(void);
        virtual ~ccTstate(void);
                
};

#endif

