xref: /nrf52832-nimble/rt-thread/components/net/uip/apps/hello-world/hello-world.h (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero /**
2*10465441SEvalZero  * \addtogroup apps
3*10465441SEvalZero  * @{
4*10465441SEvalZero  */
5*10465441SEvalZero 
6*10465441SEvalZero /**
7*10465441SEvalZero  * \defgroup helloworld Hello, world
8*10465441SEvalZero  * @{
9*10465441SEvalZero  *
10*10465441SEvalZero  * A small example showing how to write applications with
11*10465441SEvalZero  * \ref psock "protosockets".
12*10465441SEvalZero  */
13*10465441SEvalZero 
14*10465441SEvalZero /**
15*10465441SEvalZero  * \file
16*10465441SEvalZero  *         Header file for an example of how to write uIP applications
17*10465441SEvalZero  *         with protosockets.
18*10465441SEvalZero  * \author
19*10465441SEvalZero  *         Adam Dunkels <[email protected]>
20*10465441SEvalZero  */
21*10465441SEvalZero 
22*10465441SEvalZero #ifndef __HELLO_WORLD_H__
23*10465441SEvalZero #define __HELLO_WORLD_H__
24*10465441SEvalZero 
25*10465441SEvalZero /* Since this file will be included by uip.h, we cannot include uip.h
26*10465441SEvalZero    here. But we might need to include uipopt.h if we need the u8_t and
27*10465441SEvalZero    u16_t datatypes. */
28*10465441SEvalZero #include "uipopt.h"
29*10465441SEvalZero 
30*10465441SEvalZero #include "psock.h"
31*10465441SEvalZero 
32*10465441SEvalZero /* Next, we define the uip_tcp_appstate_t datatype. This is the state
33*10465441SEvalZero    of our application, and the memory required for this state is
34*10465441SEvalZero    allocated together with each TCP connection. One application state
35*10465441SEvalZero    for each TCP connection. */
36*10465441SEvalZero #define BUF_SIZE 200
37*10465441SEvalZero typedef struct hello_world_state {
38*10465441SEvalZero   struct psock p;
39*10465441SEvalZero   char inputbuffer[BUF_SIZE];
40*10465441SEvalZero   char name[BUF_SIZE];
41*10465441SEvalZero } uip_tcp_appstate_t;
42*10465441SEvalZero 
43*10465441SEvalZero /* Finally we define the application function to be called by uIP. */
44*10465441SEvalZero void hello_world_appcall(void);
45*10465441SEvalZero #ifndef UIP_APPCALL
46*10465441SEvalZero #define UIP_APPCALL hello_world_appcall
47*10465441SEvalZero #endif /* UIP_APPCALL */
48*10465441SEvalZero 
49*10465441SEvalZero void hello_world_init(void);
50*10465441SEvalZero 
51*10465441SEvalZero #endif /* __HELLO_WORLD_H__ */
52*10465441SEvalZero /** @} */
53*10465441SEvalZero /** @} */
54