Statistics
| Branch: | Tag: | Revision:

amiro-os / amiroos.h @ e189c0a6

History | View | Annotate | Download (3.326 KB)

1
/*
2
AMiRo-OS is an operating system designed for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2016..2020  Thomas Schöpping et al.
4

5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9

10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
GNU General Public License for more details.
14

15
You should have received a copy of the GNU General Public License
16
along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
*/
18

    
19
#ifndef AMIROOS_H
20
#define AMIROOS_H
21

    
22
/**
23
 * @brief   AMiRo-OS identification macro.
24
 */
25
#define _AMIRO_OS_
26

    
27
/**
28
 * @name   AMiRo-OS version and relase information.
29
 * @{
30
 */
31

    
32
/**
33
 * @brief   The type of this version.
34
 * @note    Is one of "pre-alpha", "alpha", "beta", "release candidate", "release".
35
 */
36
#define AMIROOS_RELEASE_TYPE          "pre-alpha"
37

    
38
/**
39
 * @brief   The operating system major version.
40
 * @note    Changes of the major version imply incompatibilities.
41
 */
42
#define AMIROOS_VERSION_MAJOR         2
43

    
44
/**
45
 * @brief   The operating system minor version.
46
 * @note    A higher minor version implies new functionalty, but all old interfaces are still available.
47
 */
48
#define AMIROOS_VERSION_MINOR         1
49

    
50
/**
51
 * @brief   The operating system patch level.
52
 */
53
#define AMIROOS_VERSION_PATCH         0
54

    
55
/** @} */
56

    
57
/******************************************************************************/
58
/* CONFIGURATION                                                              */
59
/******************************************************************************/
60

    
61
#include <aosconf.h>
62
#if !defined(_AMIRO_OS_CFG_)
63
#error "invalid AMiRo-OS configuration file"
64
#elif (AMIRO_OS_CFG_VERSION_MAJOR != AMIROOS_VERSION_MAJOR) || (AMIRO_OS_CFG_VERSION_MINOR < AMIROOS_VERSION_MINOR)
65
#error "incompatible AMiRo-OS configuration file"
66
#endif
67

    
68
/******************************************************************************/
69
/* SUBSYSTEMS                                                                 */
70
/******************************************************************************/
71

    
72
/* Bootloader */
73
#include <aos_bootloader.h>
74

    
75
/* System Kerne (ChibiOS)l */
76
#include <hal.h>
77
#include <ch.h>
78

    
79
/* Low-Level Drivers (AMiRo-LLD) */
80
#include <amiro-lld.h>
81

    
82
/******************************************************************************/
83
/* AMiRo-OS CORE                                                              */
84
/******************************************************************************/
85

    
86
#include "core/inc/aos_confcheck.h"
87

    
88
#include "core/inc/aos_types.h"
89
#include "core/inc/aos_debug.h"
90
#include "core/inc/aos_time.h"
91
#include "core/inc/aos_timer.h"
92
#include "core/inc/aos_iostream.h"
93
#include "core/inc/aos_shell.h"
94
#include "core/inc/aos_sssp.h"
95
#include "core/inc/aos_system.h"
96
#include "core/inc/aos_thread.h"
97
#include "core/inc/aos_test.h"
98

    
99
/******************************************************************************/
100
/* MODULE                                                                     */
101
/******************************************************************************/
102

    
103
#include <module.h>
104

    
105
#endif /* AMIROOS_H */