X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fric_stub%2Fric_stub.h;h=b70613473acf7a52272e45616ceaf93c4759021f;hb=refs%2Fchanges%2F44%2F11844%2F5;hp=7c6362e79169488337703f23c90cfe9d059fa7f8;hpb=1848207fc6601561cbac8cbb5950d1c6e80f2bea;p=o-du%2Fl2.git diff --git a/src/ric_stub/ric_stub.h b/src/ric_stub/ric_stub.h index 7c6362e79..b70613473 100644 --- a/src/ric_stub/ric_stub.h +++ b/src/ric_stub/ric_stub.h @@ -47,6 +47,11 @@ #define RIC_APP_MEM_REG 1 #define RIC_POOL 1 #define MAX_RAN_FUNCTION 256 /* O-RAN.WG3.E2AP-R003-v03.00 : Section 9.1.2.2 : maxofRANfunctionID */ +#define MAX_NUM_TRANSACTION 256 /* As per, O-RAN WG3 E2AP v3.0, section 9.2.33 */ + +#define MAX_RIC_ACTION 16 /* O-RAN.WG3.E2AP-R003-v03.00 : Section 9.1.1.1 : maxofRICActionID */ +#define MAX_RIC_REQUEST 5 /* As per O-RAN.WG3.E2AP-R003-v03.00 : Section 9.2.7, max request is 65535. \ + * But for our internal testing purpose, keeping it to 5 for now */ /* allocate and zero out a static buffer */ #define RIC_ALLOC(_datPtr, _size) \ @@ -89,11 +94,30 @@ typedef enum X2 }InterfaceType; +typedef struct +{ + uint16_t requestorId; + uint16_t instanceId; +}RicRequestId; + +typedef struct +{ + int16_t actionId; +}ActionInfo; + +typedef struct ricSubscription +{ + RicRequestId requestId; + uint8_t numOfActions; + ActionInfo actionSequence[MAX_RIC_ACTION]; +}RicSubscription; typedef struct { uint16_t id; uint16_t revisionCounter; + uint8_t numOfSubscription; + RicSubscription subscriptionList[MAX_RIC_REQUEST]; }RanFunction; typedef struct @@ -105,10 +129,10 @@ typedef struct typedef struct duDb { uint32_t duId; + uint8_t ricTransIdCounter; uint16_t numOfRanFunction; RanFunction ranFunction[MAX_RAN_FUNCTION]; E2NodeComponent e2NodeComponent; - Bool ricSubscribedToDu; }DuDb; typedef struct ricCfgParams @@ -128,6 +152,24 @@ typedef struct cuGlobalCb RicGlobalCb ricCb; +typedef struct +{ + uint8_t numOfRanFunAccepted; + RanFunction ranFunAcceptedList[MAX_RAN_FUNCTION]; + uint8_t numOfRanFuneRejected; + RanFunction ranFunRejectedList[MAX_RAN_FUNCTION]; +}RicTmpRanFunList; + +typedef struct +{ + uint8_t numActionModifed; + uint8_t actionModifiedList[MAX_RIC_ACTION]; + uint8_t numActionModFailed; + uint8_t actionModFailedList[MAX_RIC_ACTION]; + uint8_t numActionRemoved; + uint8_t actionRemovedList[MAX_RIC_ACTION]; +}RicTmpActionList; + void readRicCfg(); void cuAppInmsgHdlr(Buffer *mBuf); void sctpNtfyInd(CmInetSctpNotification *ntfy);