Statistics
| Branch: | Revision:

amiro-apps / apps / HelloWorld / helloworld.c @ 63abda2c

History | View | Annotate | Download (1.53 KB)

1
/*
2
AMiRo-Apps is a collection of applications for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2018..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
#include <helloworld.h>
20

    
21
#define UNUSED(x) (void)(x)
22

    
23
void helloShutdown(urt_node_t* node, urt_status_t cause, void* arg)
24
{
25
  UNUSED(node);
26
  UNUSED(cause);
27
  urtPrintf("Hello %c shutdown!\n", arg);
28
  urtThreadSleep(10);
29
  return;
30
}
31

    
32
urt_osEventMask_t helloSetup(urt_node_t* node, void* arg)
33
{
34
  UNUSED(node);
35
  urtPrintf("Hello %c setup!\n", arg);
36
  urtThreadSleep(10);
37
  return URT_EVENTMASK_ALL;
38
}
39

    
40
urt_osEventMask_t helloLoop(urt_node_t* node, urt_osEventMask_t events, void* arg)
41
{
42
  UNUSED(node);
43
  UNUSED(events);
44
  urtPrintf("Hello %c loop!\n", arg);
45
  urtThreadSleep(10);
46
  return URT_EVENTMASK_ALL;
47
}
48

    
49
void helloWorldInit(urt_node_t* node, urt_osThread_t* thread, void* arg)
50
{
51
    urtNodeInit(node, thread, URT_THREAD_PRIO_LOW_MIN, &helloSetup, arg, &helloLoop, arg, &helloShutdown, arg);
52
}