//Editor-Info: -*- C++ -*-
//
//Subject: TOVE-project / UNI-AAL interface
//
//File: uaalupprimitives.cpp
//
//Version: $Revision: 1.8 $
//
//State: $State: Exp $
//
//Date: $Date: 1997/01/28 14:53:30 $
//
//Organisation:
//      Helsinki University of Technology
//      Laboratory of Telecommunications and Multimedia
//
//Author:
//	Vesa-Matti Puro
//
//Description:
//	See corresponding header file.
//
//Copyright:
//
//
//Licence:
//
//
//History: 
//


#include "uaalupprimitives.h"
#include <assert.h>

//
// Index of Code
//
// 1. uaalESTABLISHind
//    1.1. apply()
//    1.2. setMessageUnit()
//    1.3. getMessageUnit()
// 2. uaalESTABLISHconf
//    2.1. apply()
// 3. uaalRELEASEind
//    3.1. apply()
// 4. uaalRELEASEconf
//    4.1. apply()
// 5. uaalDATAind
//    5.1. apply()
//    5.2. setMessageUnit()
//    5.3. getMessageUnit()
// 6. uaalUNITDATAind
//    6.1. apply()
//    6.2. setMessageUnit()
//    6.3. getMessageUnit()
//


// ----------------------------------------------------------------------

void uaalESTABLISHind :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalESTABLISHindAct(this, protocol_);
    return;
}


// ----------------------------------------------------------------------

void uaalESTABLISHconf :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalESTABLISHconfAct(this, protocol_);
    return;
}


// ----------------------------------------------------------------------

void uaalRELEASEind :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalRELEASEindAct(this, protocol_);
    return;
}


// ----------------------------------------------------------------------

void uaalRELEASEconf :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalRELEASEconfAct(this, protocol_);
    return;
}


// ----------------------------------------------------------------------

void uaalDATAind :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalDATAindAct(this, protocol_);
    return;
}

void uaalDATAind :: setMessageUnit(const pfFrame &frame_)
{
    _messageUnit = frame_;
    return;
}

pfFrame uaalDATAind :: getMessageUnit(void) const
{
    return _messageUnit;
}


// ----------------------------------------------------------------------

void uaalUNITDATAind :: apply(pfState *state_, pfProtocol *protocol_)
{
    assert(state_ != 0);
    uaalUpInputs *upInput = dynamic_cast<uaalUpInputs*>(state_);
    assert(upInput != 0);    

    upInput->uaalUNITDATAindAct(this, protocol_);
    return;
}

void uaalUNITDATAind :: setMessageUnit(const pfFrame &frame_)
{
    _messageUnit = frame_;
    return;
}

pfFrame uaalUNITDATAind :: getMessageUnit(void) const
{
    return _messageUnit;
}
