Files
openbts/Control/L3SMSControl.h
2014-07-16 23:57:22 +02:00

39 lines
1.2 KiB
C++

/*
* Copyright 2013, 2014 Range Networks, Inc.
*
* This software is distributed under multiple licenses;
* see the COPYING file in the main directory for licensing
* information for this specific distribution.
*
* This use of this software may be subject to additional restrictions.
* See the LEGAL file in the main directory for details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/
#ifndef _L3SMSCONTROL_H_
#define _L3SMSCONTROL_H_
#include "L3LogicalChannel.h"
#include "ControlCommon.h"
namespace Control {
// 3GPP 4.11 5.2. These are the SMS states. It is nearly empty. The only one we care about is awaiting the final ack.
enum SmsState {
SmsNonexistent, // Not an SMS state; we use to mean there is no SMS transaction.
MoSmsIdle,
MoSmsWaitForAck,
// In the spec this is a catch-all for any other state. For us this is a transitory state we dont care about because
// the TranEntry will be removed momentarily.
MoSmsMMConnection,
};
void startMOSMS(const GSM::L3MMMessage *l3msg, MMContext *dcch);
void initMTSMS(TranEntry *tran);
};
#endif