Hamlib  1.2.15.3
rotlist.h
Go to the documentation of this file.
1 /*
2  * Hamlib Interface - list of known rotators
3  * Copyright (c) 2000-2011 by Stephane Fillod
4  * Copyright (c) 2000-2002 by Frank Singleton
5  *
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  *
21  */
22 
23 #ifndef _ROTLIST_H
24 #define _ROTLIST_H 1
25 
26 #define ROT_MAKE_MODEL(a,b) ((a)*100+(b))
27 #define ROT_BACKEND_NUM(a) ((a)/100)
28 
49 #define ROT_MODEL_NONE 0
50 
65 #define ROT_DUMMY 0
66 #define ROT_BACKEND_DUMMY "dummy"
67 #define ROT_MODEL_DUMMY ROT_MAKE_MODEL(ROT_DUMMY, 1)
68 #define ROT_MODEL_NETROTCTL ROT_MAKE_MODEL(ROT_DUMMY, 2)
69 
70  /*
71  * RPC Network pseudo-backend
72  */
80 #define ROT_RPC 1
81 #define ROT_BACKEND_RPC "rpcrot"
82 #define ROT_MODEL_RPC ROT_MAKE_MODEL(ROT_RPC, 1)
83 
84  /*
85  * Easycomm
86  */
99 #define ROT_EASYCOMM 2
100 #define ROT_BACKEND_EASYCOMM "easycomm"
101 #define ROT_MODEL_EASYCOMM1 ROT_MAKE_MODEL(ROT_EASYCOMM, 1)
102 #define ROT_MODEL_EASYCOMM2 ROT_MAKE_MODEL(ROT_EASYCOMM, 2)
103 #define ROT_MODEL_TRAKBOX ROT_MAKE_MODEL(ROT_EASYCOMM, 3)
104 
111 #define ROT_FODTRACK 3
112 #define ROT_BACKEND_FODTRACK "fodtrack"
113 #define ROT_MODEL_FODTRACK ROT_MAKE_MODEL(ROT_FODTRACK, 1)
114 
139 #define ROT_ROTOREZ 4
140 #define ROT_BACKEND_ROTOREZ "rotorez"
141 #define ROT_MODEL_ROTOREZ ROT_MAKE_MODEL(ROT_ROTOREZ, 1)
142 #define ROT_MODEL_ROTORCARD ROT_MAKE_MODEL(ROT_ROTOREZ, 2)
143 #define ROT_MODEL_DCU ROT_MAKE_MODEL(ROT_ROTOREZ, 3)
144 #define ROT_MODEL_ERC ROT_MAKE_MODEL(ROT_ROTOREZ, 4)
145 
152 #define ROT_SARTEK 5
153 #define ROT_BACKEND_SARTEK "sartek"
154 #define ROT_MODEL_SARTEK1 ROT_MAKE_MODEL(ROT_SARTEK, 1)
155 
180 #define ROT_GS232A 6
181 #define ROT_BACKEND_GS232A "gs232a"
182 #define ROT_MODEL_GS232A ROT_MAKE_MODEL(ROT_GS232A, 1)
183 #define ROT_MODEL_GS232 ROT_MAKE_MODEL(ROT_GS232A, 2) /* Not A or B */
184 #define ROT_MODEL_GS232B ROT_MAKE_MODEL(ROT_GS232A, 3)
185 #define ROT_MODEL_F1TETRACKER ROT_MAKE_MODEL(ROT_GS232A, 4)
186 
192 #define ROT_KIT 7
193 #define ROT_BACKEND_KIT "kit"
194 #define ROT_MODEL_PCROTOR ROT_MAKE_MODEL(ROT_KIT, 1)
195 
199 #define ROT_HEATHKIT 8
200 #define ROT_BACKEND_HEATHKIT "heathkit"
201 #define ROT_MODEL_HD1780 ROT_MAKE_MODEL(ROT_HEATHKIT, 1)
202 
215 #define ROT_SPID 9
216 #define ROT_BACKEND_SPID "spid"
217 #define ROT_MODEL_SPID_ROT2PROG ROT_MAKE_MODEL(ROT_SPID, 1)
218 #define ROT_MODEL_SPID_ROT1PROG ROT_MAKE_MODEL(ROT_SPID, 2)
219 
226 #define ROT_M2 10
227 #define ROT_BACKEND_M2 "m2"
228 #define ROT_MODEL_RC2800 ROT_MAKE_MODEL(ROT_M2, 1)
229 
242 #define ROT_ARS 11
243 #define ROT_BACKEND_ARS "ars"
244 #define ROT_MODEL_RCI_AZEL ROT_MAKE_MODEL(ROT_ARS, 1)
245 #define ROT_MODEL_RCI_AZ ROT_MAKE_MODEL(ROT_ARS, 2)
246 
253 #define ROT_AMSAT 12
254 #define ROT_BACKEND_AMSAT "amsat"
255 #define ROT_MODEL_IF100 ROT_MAKE_MODEL(ROT_AMSAT, 1)
256 
257 
264 #define ROT_TS7400 13
265 #define ROT_BACKEND_TS7400 "ts7400"
266 #define ROT_MODEL_TS7400 ROT_MAKE_MODEL(ROT_TS7400, 1)
267 
274 #define ROT_CELESTRON 14
275 #define ROT_BACKEND_CELESTRON "celestron"
276 #define ROT_MODEL_NEXSTAR ROT_MAKE_MODEL(ROT_CELESTRON, 1)
277 
278 
282 typedef int rot_model_t;
283 
291 #define ROT_BACKEND_LIST { \
292  { ROT_DUMMY, ROT_BACKEND_DUMMY }, \
293  { ROT_RPC, ROT_BACKEND_RPC }, \
294  { ROT_EASYCOMM, ROT_BACKEND_EASYCOMM }, \
295  { ROT_FODTRACK, ROT_BACKEND_FODTRACK }, \
296  { ROT_ROTOREZ, ROT_BACKEND_ROTOREZ }, \
297  { ROT_SARTEK, ROT_BACKEND_SARTEK }, \
298  { ROT_GS232A, ROT_BACKEND_GS232A }, \
299  { ROT_KIT, ROT_BACKEND_KIT }, \
300  { ROT_HEATHKIT, ROT_BACKEND_HEATHKIT }, \
301  { ROT_SPID, ROT_BACKEND_SPID }, \
302  { ROT_M2, ROT_BACKEND_M2 }, \
303  { ROT_ARS, ROT_BACKEND_ARS }, \
304  { ROT_AMSAT, ROT_BACKEND_AMSAT }, \
305  { ROT_TS7400, ROT_BACKEND_TS7400 }, \
306  { ROT_CELESTRON, ROT_BACKEND_CELESTRON }, \
307  { 0, NULL }, /* end */ \
308 }
309 
310 /*
311  * struct rot_backend_list {
312  * rot_model_t model;
313  * const char *backend;
314  * } rot_backend_list[] = ROT_LIST;
315  *
316  */
317 
318 #endif /* _ROTLIST_H */
319 
int rot_model_t
Convenience type definition for rotator model.
Definition: rotlist.h:282

Generated by doxygen 1.8.11

Hamlib documentation for version 1.2.15.3
Project page: http://www.hamlib.org