Subversion Repositories Projects

Rev

Rev 837 | Rev 1281 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 837 Rev 902
1
/****************************************************************************
1
/****************************************************************************
2
 *   Copyright (C) 2009-2010 by Claas Anders "CaScAdE" Rathje               *
2
 *   Copyright (C) 2009-2011 by Claas Anders "CaScAdE" Rathje               *
3
 *   admiralcascade@gmail.com                                               *
3
 *   admiralcascade@gmail.com                                               *
4
 *   Project-URL: http://www.mylifesucks.de/oss/c-osd/                      *
4
 *   Project-URL: http://www.mylifesucks.de/oss/c-osd/                      *
5
 *                                                                          *
5
 *                                                                          *
6
 *   This program is free software; you can redistribute it and/or modify   *
6
 *   This program is free software; you can redistribute it and/or modify   *
7
 *   it under the terms of the GNU General Public License as published by   *
7
 *   it under the terms of the GNU General Public License as published by   *
8
 *   the Free Software Foundation; either version 2 of the License.         *
8
 *   the Free Software Foundation; either version 2 of the License.         *
9
 *                                                                          *
9
 *                                                                          *
10
 *   This program is distributed in the hope that it will be useful,        *
10
 *   This program is distributed in the hope that it will be useful,        *
11
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
11
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of         *
12
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
12
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
13
 *   GNU General Public License for more details.                           *
13
 *   GNU General Public License for more details.                           *
14
 *                                                                          *
14
 *                                                                          *
15
 *   You should have received a copy of the GNU General Public License      *
15
 *   You should have received a copy of the GNU General Public License      *
16
 *   along with this program; if not, write to the                          *
16
 *   along with this program; if not, write to the                          *
17
 *   Free Software Foundation, Inc.,                                        *
17
 *   Free Software Foundation, Inc.,                                        *
18
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.              *
18
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.              *
19
 ****************************************************************************/
19
 ****************************************************************************/
20
 
20
 
21
#ifndef _OSD_HELPERS_H
21
#ifndef _OSD_HELPERS_H
22
#define _OSD_HELPERS_H
22
#define _OSD_HELPERS_H
23
 
23
 
24
/* ##########################################################################
24
/* ##########################################################################
25
 * compass stuff
25
 * compass stuff
26
 * ##########################################################################*/
26
 * ##########################################################################*/
27
 
27
 
28
/**
28
/**
29
 * convert the <heading> gotton from NC into an index
29
 * convert the <heading> gotton from NC into an index
30
 */
30
 */
31
uint8_t heading_conv(uint16_t);
31
uint8_t heading_conv(uint16_t);
32
 
32
 
33
/**
33
/**
34
 * convert the <heading> gotton from NC into a more
34
 * convert the <heading> gotton from NC into a more
35
 * precise index
35
 * precise index
36
 */
36
 */
37
uint8_t heading_fine_conv(uint16_t);
37
uint8_t heading_fine_conv(uint16_t);
38
 
38
 
39
/**
39
/**
40
 * draw a compass rose at <x>/<y> for <heading>
40
 * draw a compass rose at <x>/<y> for <heading>
41
 */
41
 */
42
void draw_compass(uint8_t, uint8_t, uint16_t);
42
void draw_compass(uint8_t, uint8_t, uint16_t);
43
 
43
 
44
/* ##########################################################################
44
/* ##########################################################################
45
 * battery index
45
 * battery index
46
 * ##########################################################################*/
46
 * ##########################################################################*/
47
/**
47
/**
48
 * draw a battery symbol at <x>/<y> according to <voltage>
48
 * draw a battery symbol at <x>/<y> according to <voltage>
49
 */
49
 */
50
void draw_battery(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t);
50
void draw_battery(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t);
51
 
51
 
52
/* ##########################################################################
52
/* ##########################################################################
53
 * variometer
53
 * variometer
54
 * ##########################################################################*/
54
 * ##########################################################################*/
55
/**
55
/**
56
 * draw variometer arrows at <x>/<y> according to <variometer>
56
 * draw variometer arrows at <x>/<y> according to <variometer>
57
 */
57
 */
58
void draw_variometer(uint8_t, uint8_t, int16_t);
58
void draw_variometer(uint8_t, uint8_t, int16_t);
59
 
59
 
60
/**
60
/**
61
 * draw a bigger vario with middle at <x>/<y> acording to <variometer>
61
 * draw a bigger vario with middle at <x>/<y> acording to <variometer>
62
 */
62
 */
63
void draw_big_variometer(uint8_t, uint8_t, int16_t);
63
void draw_big_variometer(uint8_t, uint8_t, int16_t);
64
 
64
 
65
/* ##########################################################################
65
/* ##########################################################################
66
 * artificial horizon
66
 * artificial horizon
67
 * ##########################################################################*/
67
 * ##########################################################################*/
68
/**
68
/**
69
 * draw roll und nick indicators (could be enhanced to full artificial horizon)
69
 * draw roll und nick indicators (could be enhanced to full artificial horizon)
70
 * from line <firstline> to <listlines> for given <nick> and <roll> values
70
 * from line <firstline> to <listlines> for given <nick> and <roll> values
71
 */
71
 */
72
void draw_artificial_horizon(uint8_t, uint8_t, int16_t, int16_t);
72
void draw_artificial_horizon(uint8_t, uint8_t, int16_t, int16_t);
73
 
73
 
74
void draw_agressiva_artificial_horizon(uint8_t, uint8_t, int16_t, int16_t);
74
void draw_agressiva_artificial_horizon(uint8_t, uint8_t, int16_t, int16_t);
75
 
75
 
76
/**
76
/**
77
 * draw scope of a second camera
77
 * draw scope of a second camera
78
 */
78
 */
79
void draw_scope();
79
void draw_scope();
-
 
80
 
-
 
81
/**
-
 
82
 * draw stats
-
 
83
 */
-
 
84
void draw_stats();
80
#endif
85
#endif
81
 
86