NetSim Source Code Help
Loading...
Searching...
No Matches
OSPF_Enum.h
Go to the documentation of this file.
1/************************************************************************************
2* Copyright (C) 2020
3* TETCOS, Bangalore. India *
4
5* Tetcos owns the intellectual property rights in the Product and its content. *
6* The copying, redistribution, reselling or publication of any or all of the *
7* Product or its content without express prior written consent of Tetcos is *
8* prohibited. Ownership and / or any other right relating to the software and all *
9* intellectual property rights therein shall remain at all times with Tetcos. *
10* Author: Shashi Kant Suman *
11* ---------------------------------------------------------------------------------*/
12#include "EnumString.h"
13
14BEGIN_ENUM(OSPF_Subevent)
15{
16 //Events that changes interface state
17 DECL_ENUM_ELEMENT_WITH_VAL(OSPF_InterfaceUp, APP_PROTOCOL_OSPF * 100),
18 DECL_ENUM_ELEMENT(OSPF_WAITTIMER),
19 DECL_ENUM_ELEMENT(OSPF_BACKUPSEEN),
20 DECL_ENUM_ELEMENT(OSPF_NEIGHBORCHANGE),
21 DECL_ENUM_ELEMENT(OSPF_LOOPIND),
22 DECL_ENUM_ELEMENT(OSPF_UNLOOPIND),
23 DECL_ENUM_ELEMENT(OSPF_InterfaceDown),
24
25 //Events that changes neighbor state
26 DECL_ENUM_ELEMENT(OSPF_HelloReceived),
27 DECL_ENUM_ELEMENT(OSPF_Start),
28 DECL_ENUM_ELEMENT(OSPF_1Way),
29 DECL_ENUM_ELEMENT(OSPF_2WayReceived),
30 DECL_ENUM_ELEMENT(OSPF_NegotiationDone),
31 DECL_ENUM_ELEMENT(OSPF_ExchangeDone),
32 DECL_ENUM_ELEMENT(OSPF_BadLSReq),
33 DECL_ENUM_ELEMENT(OSPF_LoadingDone),
34 DECL_ENUM_ELEMENT(OSPF_Adjok),
35 DECL_ENUM_ELEMENT(OSPF_SeqNumberMismatch),
36 DECL_ENUM_ELEMENT(OSPF_KillNbr),
37 DECL_ENUM_ELEMENT(OSPF_InactivityTimer),
38 DECL_ENUM_ELEMENT(OSPF_LLDown),
39
40 DECL_ENUM_ELEMENT(OSPF_HELLO_TIMER),
41 DECL_ENUM_ELEMENT(OSPF_DD_RXMT_IN_EXSTART),
42 DECL_ENUM_ELEMENT(OSPF_SCHEDULELSDB),
43 DECL_ENUM_ELEMENT(OSPF_FLOODTIMER),
44 DECL_ENUM_ELEMENT(OSPF_MAXAGEREMOVALTIMER),
45 DECL_ENUM_ELEMENT(OSPF_CALCULATESPF),
46 DECL_ENUM_ELEMENT(OSPF_RXMTTIMER),
47 DECL_ENUM_ELEMENT(OSPF_SENDDELAYEDACK),
48
49 DECL_ENUM_ELEMENT(OSPF_INCREMENTAGE),
50}
51#pragma warning(disable:4028)
52END_ENUM(OSPF_Subevent);
53#pragma warning(default:4028)
54
55#ifndef _OSPF_EVENT_FUN_
56#define _OSPF_EVENT_FUN_
57
58typedef void(*fnEventCallback)();
59
64NULL,
65NULL,
73NULL,
75NULL,
76NULL,
79NULL,
89
90#define OSPF_CALL_SUBEVENT(subevent) fnpEventCallback[(subevent)%100]()
91#define OSPF_IS_SUBEVENT(subevent) (fnpEventCallback[(subevent)%100] != NULL)
92
93#endif //_OSPF_EVENT_FUN_
#define DECL_ENUM_ELEMENT(element)
Definition: EnumString.h:8
#define END_ENUM(ENUM_NAME)
Definition: EnumString.h:11
#define DECL_ENUM_ELEMENT_WITH_VAL(element, val)
Definition: EnumString.h:9
#define BEGIN_ENUM(ENUM_NAME)
Definition: EnumString.h:10
void ospf_neighbor_handle_KillNbrEvent()
void ospf_neighbor_handle_1way_event()
void ospf_neighbor_handle_exchangeDone_event()
void ospf_neighbor_handle_inactivityTimer_event()
void ospf_neighbor_handle_helloReceived_event()
void ospf_neighbor_handle_start_event()
void ospf_handle_interfaceDown_event()
void ospf_lsdb_handleMaxAgeRemovalTimer()
Definition: OSPF_LSDB.c:454
void start_sending_dd_msg()
Definition: OSPF_DD.c:207
void ospf_neighbor_handle_negotiationDone_event()
void ospf_lsa_ScheduleLSDB()
Definition: OSPF_LSA.c:699
void ospf_handle_helloTimer_event()
Definition: OSPF_Hello.c:157
void ospf_lsa_handle_floodTimer_event()
Definition: OSPF_LSA.c:716
void ospf_lsack_handleDelayedAckTimer()
Definition: OSPF_LSAACK.c:158
void ospf_LSDB_handle_IncrementAge_event()
Definition: OSPF_LSDB.c:688
void ospf_lsupdate_handleRxmtTimer()
void ospf_spf_handleCalculateSPFEvent()
Definition: OSPF_SPF.c:851
void ospf_neighbor_handle_2wayReceived_event()
void ospf_handle_interfaceUp_event()
void ospf_neighbor_handle_LoadingDoneEvent()
void ospf_interface_handleMultipleInterfaceEvent()
static fnEventCallback fnpEventCallback[]
Definition: OSPF_Enum.h:60
void(* fnEventCallback)()
Definition: OSPF_Enum.h:58
@ APP_PROTOCOL_OSPF
Definition: Stack.h:155