SchedulerCommand.msg 3.6 KB
Newer Older
C
x  
calincerchez 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// 
// 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.  See the
// GNU Lesser General Public License for more details.
// 
// You should have received a copy of the GNU Lesser General Public License
// along with this program.  If not, see http://www.gnu.org/licenses/.
//

enum SchedulerCommandType
{
    RLC_TX_OPPORTUNITY = 200;
    CSCHED_CELL_CONFIG_REQ = 201;
    SCHED_DL_TRIGGER_REQ = 202;
    SCHED_DL_CONFIG_IND = 203;
C
calin cerchez 已提交
22 23 24
    SCHED_UL_TRIGGER_REQ = 204;
	SCHED_UL_CONFIG_IND = 205;
	SCHED_DL_RACH_INFO_REQ = 206;
C
x  
calincerchez 已提交
25 26 27 28 29 30 31 32 33
}

class SchedulerCommand
{
}

class SiMessageListElement
{
    unsigned short period;
C
calin cerchez 已提交
34
    unsigned short length;	// in bytes
C
x  
calincerchez 已提交
35 36 37 38
}

class SiConfiguration
{
C
calin cerchez 已提交
39
    unsigned short sib1Length;	// in bytes
C
calin cerchez 已提交
40 41
    unsigned char siWdwLen;
    SiMessageListElement siMsgList[];	    
C
x  
calincerchez 已提交
42 43
}

C
calin cerchez 已提交
44 45 46 47 48 49 50 51 52
class RaConfiguration
{
    unsigned char raPreambleIndex = 61;	// maximal value if used should be 60
    unsigned char raPrachMaskIndex = 0;
    unsigned char raRespWdwSize;
    unsigned char nrOfRaPreambles;
    unsigned char sizeOfRaPreamblesGroupA;    
}

C
x  
calincerchez 已提交
53 54
class CSchedCellConfigReq extends SchedulerCommand
{
C
calin cerchez 已提交
55 56
    unsigned char dlCyclPrefLen;
    unsigned char antennaPortsCount;
C
x  
calincerchez 已提交
57
    SiConfiguration siConfig;
C
calin cerchez 已提交
58
    unsigned char dlBandwith;
C
calin cerchez 已提交
59
    unsigned char prachCfgIndex;
C
calin cerchez 已提交
60
    RaConfiguration raConfig;
C
x  
calincerchez 已提交
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
}

enum HarqStatus
{
    ACK = 0;
    NACK = 1;
    DTX = 2;
}

class DlInfoListElement
{
    unsigned short rnti;
    unsigned char harqProcId;
    unsigned char harqStats[];
}
    
class SchedDlTriggerReq extends SchedulerCommand
{
C
calincerchez 已提交
79 80
    unsigned short sfn;
    unsigned char sf;
C
x  
calincerchez 已提交
81 82 83
    DlInfoListElement dlInfoList[];
}

C
calin cerchez 已提交
84 85
class SchedUlTriggerReq extends SchedulerCommand
{
C
calin cerchez 已提交
86 87
    unsigned short tti;
    bool rapComplete;   
C
calin cerchez 已提交
88 89
}

C
x  
calincerchez 已提交
90 91 92 93 94
class RlcPduListElement
{
    unsigned char logChannelId;
}

C
calin cerchez 已提交
95 96 97 98 99 100 101 102 103 104 105 106 107
enum DCIFormatType
{
    DCI_FORMAT_1 = 0;
    DCI_FORMAT_1A = 1;
}

enum VRBFormatType
{
    VRB_DISTRIBUTED = 0;
    VRB_LOCALIZED = 1;
}
    

C
x  
calincerchez 已提交
108 109
class DlDciListElement
{
C
calin cerchez 已提交
110 111 112 113 114 115 116 117 118 119 120 121
    unsigned short rnti; 
    unsigned int rbBitmap;
    unsigned char rbShift;
    unsigned char resAlloc;
    unsigned char nrOfTbs;
    unsigned short tbsSize[2];
    unsigned char mcs[2];   
    unsigned char rv[2];
    unsigned char format;
    unsigned char tpc;
    unsigned char vrbFormat;
    unsigned char tbsIdx;
C
x  
calincerchez 已提交
122 123 124 125 126 127 128 129 130
}

class BuildDataListElement
{
    unsigned short rnti;
    DlDciListElement dci;
    RlcPduListElement rlcPduList[];
}

C
calin cerchez 已提交
131 132 133 134 135 136 137
class BuildRarListElement
{
	unsigned short rnti;
	unsigned int grant;
	DlDciListElement dci;  
}

C
x  
calincerchez 已提交
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
enum BcastMessageIndex
{
	SIB1 = 0;
	SIB2 = 1;
	MIB = 64;    
}

class BuildBcastListElement
{
    unsigned char index;
    DlDciListElement dci;
}

class SchedDlConfigInd extends SchedulerCommand
{
C
calincerchez 已提交
153 154
    unsigned short sfn;
    unsigned char sf;
C
calin cerchez 已提交
155
    unsigned char nrOfPdcchSymb;
C
x  
calincerchez 已提交
156
    BuildBcastListElement bldBcastList[];
C
calin cerchez 已提交
157 158 159 160 161 162 163
    BuildRarListElement bldRarList[];
}

class SchedUlConfigInd extends SchedulerCommand
{
	unsigned short tti;   
	RaConfiguration raConfigList[];	// made list because it is simpler than pointer
C
x  
calincerchez 已提交
164 165 166 167
}

class RlcTxOpportunity 
{
C
calin cerchez 已提交
168 169 170 171 172 173 174 175 176 177 178 179 180
    unsigned short rnti = 0;
	unsigned char lcid = 32;    
}

class RachListElement
{
	unsigned short rnti;	// TempCRnti
}

class SchedDlRachInfoReq extends SchedulerCommand
{
	unsigned short tti;   
	RachListElement rachList[]; 
C
x  
calincerchez 已提交
181
}