summaryrefslogtreecommitdiff
path: root/cesar/station/station.h
blob: cf35df6ca282231a94ba692b11810da68daea3c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#ifndef cesar_h
#define cesar_h
/* Cesar project {{{
 *
 * Copyright (C) 2008 Spidcom
 *
 * <<<Licence>>>
 *
 * }}} */
/**
 * \file    cesar.h
 * \brief   main level of cesar software.
 * \ingroup cesar
 */
#include "mac/common/store.h"
#include "mac/common/config.h"
#include "mac/pbproc/pbproc.h"
#include "mac/sar/sar.h"
#include "cl/cl.h"
#include "hle/hle.h"
#include "interface/interface.h"
#include "cp/cp.h"
#include "hal/timer/timer.h"
#include "ce/rx.h"

struct cesar_t
{
    /** Mac store. */
    mac_store_t *mac_store;

    /** Mac config. */
    mac_config_t mac_config;

    /** PBProc. */
    pbproc_t *pbproc;

    /** SAR. */
    sar_t *sar;

    /** CL. */
    cl_t *cl;

    /** HLE */
    hle_t *hle;

    /** Interface. */
    interface_t *interface;

    /** Control Plane. */
    cp_t *cp;

    /** CE. */
    rxce_t *rxce;

    /* Hal timer. */
    hal_timer_t *hal_timer;
};
typedef struct cesar_t cesar_t;

BEGIN_DECLS

/**
 * \brief CESAR application software entry-point function.
 */
cesar_t *
cesar_init (void);

END_DECLS

#endif /* cesar_h */