//Editor-Info: -*- C++ -*-
//
//Subject: TOVE project / MTP interface
//
//File: mtpdownprimitives.cpp
//
//Version: $Revision: 1.11 $
//
//State: $State: Exp $
//
//Date: $Date: 1997/09/08 13:23:08 $
//
//Organisation:
//      Helsinki University of Technology
//      Laboratory of Telecommunications Software and Multimedia
//
//Author:
//      Petteri Koponen
//      Timo Pärnänen
//
//Description:
//      See the corresponding header file.      
//
//Copyright:
//
//
//Licence:
//
//
//History: 

#include "pf/frame.h"
#include "pf/protocol.h"
#include "pf/state.h"
#include "mtpdownprimitives.h"

//----------------------------------------------------------------------
//Class: mtpTRANSFERreq
//

mtpTRANSFERreq :: mtpTRANSFERreq(void)
    : pfMessenger()
{
    defineInteger("destinationPointCode");
    defineInteger("originatingPointCode");
    defineInteger("signallingLinkSelection");
    defineInteger("serviceInformationOctet");
    defineFrame("signallingInformation");
    return;
}

mtpTRANSFERreq :: ~mtpTRANSFERreq(void)
{
    return;
}

void mtpTRANSFERreq :: apply(pfState *state_, pfProtocol *protocol_)
{
    (dynamic_cast<mtpDownInputs *> (state_))->
        mtpTRANSFERreqAct(this, protocol_);
    return;
}

void mtpTRANSFERreq :: setDestinationPointCode(
    pfUlong destinationPointCode_)
{
    setInteger("destinationPointCode", destinationPointCode_);
    return;
}

pfUlong mtpTRANSFERreq :: getDestinationPointCode(void) const
{
    return getInteger("destinationPointCode");
}

void mtpTRANSFERreq :: setOriginatingPointCode(
    pfUlong originatingPointCode_)
{
    setInteger("originatingPointCode", originatingPointCode_);
    return;
}

pfUlong mtpTRANSFERreq :: getOriginatingPointCode(void) const
{
    return getInteger("originatingPointCode");
}

void  mtpTRANSFERreq :: setSignallingLinkSelection(
    pfUlong signallingLinkSelection_)
{
    setInteger("signallingLinkSelection", signallingLinkSelection_);
    return;
}

pfUlong mtpTRANSFERreq :: getSignallingLinkSelection(void) const
{
    return getInteger("signallingLinkSelection");
}

void mtpTRANSFERreq :: setServiceInformationOctet(
    pfUlong serviceInformationOctet_)
{
    setInteger("serviceInformationOctet", serviceInformationOctet_);
    return;
}

pfUlong mtpTRANSFERreq :: getServiceInformationOctet(void) const
{
    return getInteger("serviceInformationOctet");
}

void mtpTRANSFERreq :: setSignallingInformation(
    pfFrame &signallingInformation_)
{
    setFrame("signallingInformation", signallingInformation_);
    return;
}

pfFrame mtpTRANSFERreq :: getSignallingInformation(void) const
{
    return getFrame("signallingInformation");
}
