• Javier Morgade's avatar
    M2AP 3GPP TS 36.443 interface implemented: · ab04e0e4
    Javier Morgade authored
    	1.MCE (Multicast Control Entity) entity developed (new dedicated task developed: TASK_MCE_APP)
    	2.eNB side M2 interface procedures (new dedicated task developed: TASK_M2AP_ENB)
    	3.MCE side M2 interface procedures (new dedicated task developed: TASK_M2AP_MCE)
    	4.ASN1 bindings for m2ap-14.0.0.asn1 implemented and tested
    	5.MCE config parameters
    
    	ACKNOWLEDGEMENT:
     	1. This commit was developed at Vicomtech (https://www.vicomtech.org) under UE project CDN-X-ALL: "CDN edge-cloud computing for efficient cache and reliable streaming aCROSS Aggregated unicast-multicast LinkS"
     	2. Project funded by Fed4FIRE+ OC5 (https://www.fed4fire.eu)
    Signed-off-by: default avatarJavier Morgade <javier.morgade@ieee.org>
    ab04e0e4
m2ap_timers.h 1.68 KB
/*
 * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The OpenAirInterface Software Alliance licenses this file to You under
 * the OAI Public License, Version 1.1  (the "License"); you may not use this file
 * except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.openairinterface.org/?page_id=698
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *-------------------------------------------------------------------------------
 * For more information about the OpenAirInterface (OAI) Software Alliance:
 *      contact@openairinterface.org
 */

#ifndef M2AP_TIMERS_H_
#define M2AP_TIMERS_H_

#include <stdint.h>
#include "platform_types.h"

typedef struct {
  /* incremented every TTI (every millisecond when in realtime).
   * Used to check timers.
   * 64 bits gives us more than 500 million years of (realtime) processing.
   * It should be enough.
   */
  uint64_t tti;

  /* timer values (unit: TTI, ie. millisecond when in realtime) */
  int      t_reloc_prep;
  int      tm2_reloc_overall;
} m2ap_timers_t;

void m2ap_timers_init(m2ap_timers_t *t, int t_reloc_prep, int tm2_reloc_overall);
void m2ap_check_timers(instance_t instance);
uint64_t m2ap_timer_get_tti(m2ap_timers_t *t);

#endif /* M2AP_TIMERS_H_ */