spandsp  0.0.6
ademco_contactid.h
Go to the documentation of this file.
1 /*
2  * SpanDSP a series of DSP components for telephony
3  *
4  * ademco_contactid.h Ademco ContactID alarm protocol
5  *
6  * Written by Steve Underwood <steveu@coppice.org>
7  *
8  * Copyright (C) 2012 Steve Underwood
9  *
10  * All rights reserved.
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License version 2.1,
14  * as published by the Free Software Foundation.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public
22  * License along with this program; if not, write to the Free Software
23  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24  */
25 
26 /*! \file */
27 
28 #if !defined(_SPANDSP_ADEMCO_CONTACTID_H_)
29 #define _SPANDSP_ADEMCO_CONTACTID_H_
30 
31 enum
32 {
33  ADEMCO_CONTACTID_MESSAGE_TYPE_18 = 0x18,
34  ADEMCO_CONTACTID_MESSAGE_TYPE_98 = 0x98
35 };
36 
37 enum
38 {
39  ADEMCO_CONTACTID_QUALIFIER_NEW_EVENT = 1,
40  ADEMCO_CONTACTID_QUALIFIER_NEW_RESTORE = 3,
41  ADEMCO_CONTACTID_QUALIFIER_STATUS_REPORT = 6
42 };
43 
44 enum
45 {
46  ADEMCO_CONTACTID_DATA_IS_ZONE = 0,
47  ADEMCO_CONTACTID_DATA_IS_USER = 1
48 };
49 
50 enum
51 {
52  ADEMCO_CONTACTID_MEDICAL = 0x100,
53  ADEMCO_CONTACTID_PERSONAL_EMERGENCY = 0x101,
54  ADEMCO_CONTACTID_FAIL_TO_REPORT_IN = 0x102,
55  ADEMCO_CONTACTID_FIRE = 0x110,
56  ADEMCO_CONTACTID_SMOKE = 0x111,
57  ADEMCO_CONTACTID_COMBUSTION = 0x112,
58  ADEMCO_CONTACTID_WATER_FLOW = 0x113,
59  ADEMCO_CONTACTID_HEAT = 0x114,
60  ADEMCO_CONTACTID_PULL_STATION = 0x115,
61  ADEMCO_CONTACTID_DUCT = 0x116,
62  ADEMCO_CONTACTID_FLAME = 0x117,
63  ADEMCO_CONTACTID_NEAR_ALARM_A = 0x118,
64  ADEMCO_CONTACTID_PANIC = 0x120,
65  ADEMCO_CONTACTID_DURESS = 0x121,
66  ADEMCO_CONTACTID_SILENT = 0x122,
67  ADEMCO_CONTACTID_AUDIBLE = 0x123,
68  ADEMCO_CONTACTID_DURESS_ACCESS_GRANTED = 0x124,
69  ADEMCO_CONTACTID_DURESS_EGRESS_GRANTED = 0x125,
70  ADEMCO_CONTACTID_BURGLARY = 0x130,
71  ADEMCO_CONTACTID_PERIMETER = 0x131,
72  ADEMCO_CONTACTID_INTERIOR = 0x132,
73  ADEMCO_CONTACTID_24_HOUR_SAFE = 0x133,
74  ADEMCO_CONTACTID_ENTRY_EXIT = 0x134,
75  ADEMCO_CONTACTID_DAY_NIGHT = 0x135,
76  ADEMCO_CONTACTID_OUTDOOR = 0x136,
77  ADEMCO_CONTACTID_TAMPER = 0x137,
78  ADEMCO_CONTACTID_NEAR_ALARM_B = 0x138,
79  ADEMCO_CONTACTID_INTRUSION_VERIFIER = 0x139,
80  ADEMCO_CONTACTID_GENERAL_ALARM = 0x140,
81  ADEMCO_CONTACTID_POLLING_LOOP_OPEN_A = 0x141,
82  ADEMCO_CONTACTID_POLLING_LOOP_SHORT_A = 0x142,
83  ADEMCO_CONTACTID_EXPANSION_MODULE_FAILURE_A = 0x143,
84  ADEMCO_CONTACTID_SENSOR_TAMPER_A = 0x144,
85  ADEMCO_CONTACTID_EXPANSION_MODULE_TAMPER = 0x145,
86  ADEMCO_CONTACTID_SILENT_BURGLARY = 0x146,
87  ADEMCO_CONTACTID_SENSOR_SUPERVISION_FAILURE = 0x147,
88  ADEMCO_CONTACTID_24_HOUR_NONBURGLARY = 0x150,
89  ADEMCO_CONTACTID_GAS_DETECTED = 0x151,
90  ADEMCO_CONTACTID_REFRIGERATION = 0x152,
91  ADEMCO_CONTACTID_LOSS_OF_HEAT = 0x153,
92  ADEMCO_CONTACTID_WATER_LEAKAGE = 0x154,
93  ADEMCO_CONTACTID_FOIL_BREAK = 0x155,
94  ADEMCO_CONTACTID_DAY_TROUBLE = 0x156,
95  ADEMCO_CONTACTID_LOW_BOTTLED_GAS_LEVEL = 0x157,
96  ADEMCO_CONTACTID_HIGH_TEMP = 0x158,
97  ADEMCO_CONTACTID_LOW_TEMP = 0x159,
98  ADEMCO_CONTACTID_LOSS_OF_AIR_FLOW = 0x161,
99  ADEMCO_CONTACTID_CARBON_MONOXIDE_DETECTED = 0x162,
100  ADEMCO_CONTACTID_TANK_LEVEL = 0x163,
101  ADEMCO_CONTACTID_FIRE_SUPERVISORY = 0x200,
102  ADEMCO_CONTACTID_LOW_WATER_PRESSURE = 0x201,
103  ADEMCO_CONTACTID_LOW_CO2 = 0x202,
104  ADEMCO_CONTACTID_GATE_VALVE_SENSOR = 0x203,
105  ADEMCO_CONTACTID_LOW_WATER_LEVEL = 0x204,
106  ADEMCO_CONTACTID_PUMP_ACTIVATED = 0x205,
107  ADEMCO_CONTACTID_PUMP_FAILURE = 0x206,
108  ADEMCO_CONTACTID_SYSTEM_TROUBLE = 0x300,
109  ADEMCO_CONTACTID_AC_LOSS = 0x301,
110  ADEMCO_CONTACTID_LOW_SYSTEM_BATTERY = 0x302,
111  ADEMCO_CONTACTID_RAM_CHECKSUM_BAD = 0x303,
112  ADEMCO_CONTACTID_ROM_CHECKSUM_BAD = 0x304,
113  ADEMCO_CONTACTID_SYSTEM_RESET = 0x305,
114  ADEMCO_CONTACTID_PANEL_PROGRAMMING_CHANGED = 0x306,
115  ADEMCO_CONTACTID_SELFTEST_FAILURE = 0x307,
116  ADEMCO_CONTACTID_SYSTEM_SHUTDOWN = 0x308,
117  ADEMCO_CONTACTID_BATTERY_TEST_FAILURE = 0x309,
118  ADEMCO_CONTACTID_GROUND_FAULT = 0x310,
119  ADEMCO_CONTACTID_BATTERY_MISSING_DEAD = 0x311,
120  ADEMCO_CONTACTID_POWER_SUPPLY_OVERCURRENT = 0x312,
121  ADEMCO_CONTACTID_ENGINEER_RESET = 0x313,
122  ADEMCO_CONTACTID_SOUNDER_RELAY = 0x320,
123  ADEMCO_CONTACTID_BELL_1 = 0x321,
124  ADEMCO_CONTACTID_BELL_2 = 0x322,
125  ADEMCO_CONTACTID_ALARM_RELAY = 0x323,
126  ADEMCO_CONTACTID_TROUBLE_RELAY = 0x324,
127  ADEMCO_CONTACTID_REVERSING_RELAY = 0x325,
128  ADEMCO_CONTACTID_NOTIFICATION_APPLIANCE_CKT_3 = 0x326,
129  ADEMCO_CONTACTID_NOTIFICATION_APPLIANCE_CKT_4 = 0x327,
130  ADEMCO_CONTACTID_SYSTEM_PERIPHERAL_TROUBLE = 0x330,
131  ADEMCO_CONTACTID_POLLING_LOOP_OPEN_B = 0x331,
132  ADEMCO_CONTACTID_POLLING_LOOP_SHORT_B = 0x332,
133  ADEMCO_CONTACTID_EXPANSION_MODULE_FAILURE_B = 0x333,
134  ADEMCO_CONTACTID_REPEATER_FAILURE = 0x334,
135  ADEMCO_CONTACTID_LOCAL_PRINTER_OUT_OF_PAPER = 0x335,
136  ADEMCO_CONTACTID_LOCAL_PRINTER_FAILURE = 0x336,
137  ADEMCO_CONTACTID_EXP_MODULE_DC_LOSS = 0x337,
138  ADEMCO_CONTACTID_EXP_MODULE_LOW_BATTERY = 0x338,
139  ADEMCO_CONTACTID_EXP_MODULE_RESET = 0x339,
140  ADEMCO_CONTACTID_EXP_MODULE_TAMPER = 0x341,
141  ADEMCO_CONTACTID_EXP_MODULE_AC_LOSS = 0x342,
142  ADEMCO_CONTACTID_EXP_MODULE_SELFTEST_FAIL = 0x343,
143  ADEMCO_CONTACTID_RF_RECEIVER_JAM_DETECT = 0x344,
144  ADEMCO_CONTACTID_COMMUNICATION_TROUBLE = 0x350,
145  ADEMCO_CONTACTID_TELCO_1_FAULT = 0x351,
146  ADEMCO_CONTACTID_TELCO_2_FAULT = 0x352,
147  ADEMCO_CONTACTID_LONG_RANGE_RADIO_TRANSMITTER_FAULT = 0x353,
148  ADEMCO_CONTACTID_FAILURE_TO_COMMUNICATE_EVENT = 0x354,
149  ADEMCO_CONTACTID_LOSS_OF_RADIO_SUPERVISION = 0x355,
150  ADEMCO_CONTACTID_LOSS_OF_CENTRAL_POLLING = 0x356,
151  ADEMCO_CONTACTID_LONG_RANGE_RADIO_VSWR_PROBLEM = 0x357,
152  ADEMCO_CONTACTID_PROTECTION_LOOP = 0x370,
153  ADEMCO_CONTACTID_PROTECTION_LOOP_OPEN = 0x371,
154  ADEMCO_CONTACTID_PROTECTION_LOOP_SHORT = 0x372,
155  ADEMCO_CONTACTID_FIRE_TROUBLE = 0x373,
156  ADEMCO_CONTACTID_EXIT_ERROR_ALARM_ZONE = 0x374,
157  ADEMCO_CONTACTID_PANIC_ZONE_TROUBLE = 0x375,
158  ADEMCO_CONTACTID_HOLDUP_ZONE_TROUBLE = 0x376,
159  ADEMCO_CONTACTID_SWINGER_TROUBLE = 0x377,
160  ADEMCO_CONTACTID_CROSSZONE_TROUBLE = 0x378,
161  ADEMCO_CONTACTID_SENSOR_TROUBLE = 0x380,
162  ADEMCO_CONTACTID_LOSS_OF_SUPERVISION__RF = 0x381,
163  ADEMCO_CONTACTID_LOSS_OF_SUPERVISION__RPM = 0x382,
164  ADEMCO_CONTACTID_SENSOR_TAMPER_B = 0x383,
165  ADEMCO_CONTACTID_RF_LOW_BATTERY = 0x384,
166  ADEMCO_CONTACTID_SMOKE_DETECTOR_HIGH_SENSITIVITY = 0x385,
167  ADEMCO_CONTACTID_SMOKE_DETECTOR_LOW_SENSITIVITY = 0x386,
168  ADEMCO_CONTACTID_INTRUSION_DETECTOR_HIGH_SENSITIVITY = 0x387,
169  ADEMCO_CONTACTID_INTRUSION_DETECTOR_LOW_SENSITIVITY = 0x388,
170  ADEMCO_CONTACTID_SENSOR_SELFTEST_FAILURE = 0x389,
171  ADEMCO_CONTACTID_SENSOR_WATCH_TROUBLE = 0x391,
172  ADEMCO_CONTACTID_DRIFT_COMPENSATION_ERROR = 0x392,
173  ADEMCO_CONTACTID_MAINTENANCE_ALERT = 0x393,
174  ADEMCO_CONTACTID_OPEN_CLOSE = 0x400,
175  ADEMCO_CONTACTID_OC_BY_USER = 0x401,
176  ADEMCO_CONTACTID_GROUP_OC = 0x402,
177  ADEMCO_CONTACTID_AUTOMATIC_OC = 0x403,
178  ADEMCO_CONTACTID_LATE_TO_OC = 0x404,
179  ADEMCO_CONTACTID_DEFERRED_OC = 0x405,
180  ADEMCO_CONTACTID_CANCEL = 0x406,
181  ADEMCO_CONTACTID_REMOTE_ARM_DISARM = 0x407,
182  ADEMCO_CONTACTID_QUICK_ARM = 0x408,
183  ADEMCO_CONTACTID_KEYSWITCH_OC = 0x409,
184  ADEMCO_CONTACTID_ARMED_STAY = 0x441,
185  ADEMCO_CONTACTID_KEYSWITCH_ARMED_STAY = 0x442,
186  ADEMCO_CONTACTID_EXCEPTION_OC = 0x450,
187  ADEMCO_CONTACTID_EARLY_OC = 0x451,
188  ADEMCO_CONTACTID_LATE_OC = 0x452,
189  ADEMCO_CONTACTID_FAILED_TO_OPEN = 0x453,
190  ADEMCO_CONTACTID_FAILED_TO_CLOSE = 0x454,
191  ADEMCO_CONTACTID_AUTOARM_FAILED = 0x455,
192  ADEMCO_CONTACTID_PARTIAL_ARM = 0x456,
193  ADEMCO_CONTACTID_EXIT_ERROR_USER = 0x457,
194  ADEMCO_CONTACTID_USER_ON_PREMISES = 0x458,
195  ADEMCO_CONTACTID_RECENT_CLOSE = 0x459,
196  ADEMCO_CONTACTID_WRONG_CODE_ENTRY = 0x461,
197  ADEMCO_CONTACTID_LEGAL_CODE_ENTRY = 0x462,
198  ADEMCO_CONTACTID_REARM_AFTER_ALARM = 0x463,
199  ADEMCO_CONTACTID_AUTOARM_TIME_EXTENDED = 0x464,
200  ADEMCO_CONTACTID_PANIC_ALARM_RESET = 0x465,
201  ADEMCO_CONTACTID_SERVICE_ON_OFF_PREMISES = 0x466,
202  ADEMCO_CONTACTID_CALLBACK_REQUEST_MADE = 0x411,
203  ADEMCO_CONTACTID_SUCCESSFUL_DOWNLOAD_ACCESS = 0x412,
204  ADEMCO_CONTACTID_UNSUCCESSFUL_ACCESS = 0x413,
205  ADEMCO_CONTACTID_SYSTEM_SHUTDOWN_COMMAND_RECEIVED = 0x414,
206  ADEMCO_CONTACTID_DIALER_SHUTDOWN_COMMAND_RECEIVED = 0x415,
207  ADEMCO_CONTACTID_SUCCESSFUL_UPLOAD = 0x416,
208  ADEMCO_CONTACTID_ACCESS_DENIED = 0x421,
209  ADEMCO_CONTACTID_ACCESS_REPORT_BY_USER = 0x422,
210  ADEMCO_CONTACTID_FORCED_ACCESS = 0x423,
211  ADEMCO_CONTACTID_EGRESS_DENIED = 0x424,
212  ADEMCO_CONTACTID_EGRESS_GRANTED = 0x425,
213  ADEMCO_CONTACTID_ACCESS_DOOR_PROPPED_OPEN = 0x426,
214  ADEMCO_CONTACTID_ACCESS_POINT_DOOR_STATUS_MONITOR_TROUBLE = 0x427,
215  ADEMCO_CONTACTID_ACCESS_POINT_REQUEST_TO_EXIT_TROUBLE = 0x428,
216  ADEMCO_CONTACTID_ACCESS_PROGRAM_MODE_ENTRY = 0x429,
217  ADEMCO_CONTACTID_ACCESS_PROGRAM_MODE_EXIT = 0x430,
218  ADEMCO_CONTACTID_ACCESS_THREAT_LEVEL_CHANGE = 0x431,
219  ADEMCO_CONTACTID_ACCESS_RELAY_TRIGGER_FAIL = 0x432,
220  ADEMCO_CONTACTID_ACCESS_RTE_SHUNT = 0x433,
221  ADEMCO_CONTACTID_ACCESS_DSM_SHUNT = 0x434,
222  ADEMCO_CONTACTID_ACCESS_READER_DISABLE = 0x501,
223  ADEMCO_CONTACTID_SOUNDER_RELAY_DISABLE = 0x520,
224  ADEMCO_CONTACTID_BELL_1_DISABLE = 0x521,
225  ADEMCO_CONTACTID_BELL_2_DISABLE = 0x522,
226  ADEMCO_CONTACTID_ALARM_RELAY_DISABLE = 0x523,
227  ADEMCO_CONTACTID_TROUBLE_RELAY_DISABLE = 0x524,
228  ADEMCO_CONTACTID_REVERSING_RELAY_DISABLE = 0x525,
229  ADEMCO_CONTACTID_NOTIFICATION_APPLIANCE_CKT_3_DISABLE = 0x526,
230  ADEMCO_CONTACTID_NOTIFICATION_APPLIANCE_CKT_4_DISABLE = 0x527,
231  ADEMCO_CONTACTID_MODULE_ADDED = 0x531,
232  ADEMCO_CONTACTID_MODULE_REMOVED = 0x532,
233  ADEMCO_CONTACTID_DIALER_DISABLED = 0x551,
234  ADEMCO_CONTACTID_RADIO_TRANSMITTER_DISABLED = 0x552,
235  ADEMCO_CONTACTID_REMOTE_UPLOAD_DOWNLOAD_DISABLED = 0x553,
236  ADEMCO_CONTACTID_ZONE_SENSOR_BYPASS = 0x570,
237  ADEMCO_CONTACTID_FIRE_BYPASS = 0x571,
238  ADEMCO_CONTACTID_24_HOUR_ZONE_BYPASS = 0x572,
239  ADEMCO_CONTACTID_BURG_BYPASS = 0x573,
240  ADEMCO_CONTACTID_GROUP_BYPASS = 0x574,
241  ADEMCO_CONTACTID_SWINGER_BYPASS = 0x575,
242  ADEMCO_CONTACTID_ACCESS_ZONE_SHUNT = 0x576,
243  ADEMCO_CONTACTID_ACCESS_POINT_BYPASS = 0x577,
244  ADEMCO_CONTACTID_MANUAL_TRIGGER_TEST_REPORT = 0x601,
245  ADEMCO_CONTACTID_PERIODIC_TEST_REPORT = 0x602,
246  ADEMCO_CONTACTID_PERIODIC_RF_TRANSMISSION = 0x603,
247  ADEMCO_CONTACTID_FIRE_TEST = 0x604,
248  ADEMCO_CONTACTID_STATUS_REPORT_TO_FOLLOW = 0x605,
249  ADEMCO_CONTACTID_LISTENIN_TO_FOLLOW = 0x606,
250  ADEMCO_CONTACTID_WALK_TEST_MODE = 0x607,
251  ADEMCO_CONTACTID_PERIODIC_TEST__SYSTEM_TROUBLE_PRESENT = 0x608,
252  ADEMCO_CONTACTID_VIDEO_TRANSMITTER_ACTIVE = 0x609,
253  ADEMCO_CONTACTID_POINT_TESTED_OK = 0x611,
254  ADEMCO_CONTACTID_POINT_NOT_TESTED = 0x612,
255  ADEMCO_CONTACTID_INTRUSION_ZONE_WALK_TESTED = 0x613,
256  ADEMCO_CONTACTID_FIRE_ZONE_WALK_TESTED = 0x614,
257  ADEMCO_CONTACTID_PANIC_ZONE_WALK_TESTED = 0x615,
258  ADEMCO_CONTACTID_SERVICE_REQUEST = 0x616,
259  ADEMCO_CONTACTID_EVENT_LOG_RESET = 0x621,
260  ADEMCO_CONTACTID_EVENT_LOG_50PC_FULL = 0x622,
261  ADEMCO_CONTACTID_EVENT_LOG_90PC_FULL = 0x623,
262  ADEMCO_CONTACTID_EVENT_LOG_OVERFLOW = 0x624,
263  ADEMCO_CONTACTID_TIME_DATE_RESET = 0x625,
264  ADEMCO_CONTACTID_TIME_DATE_INACCURATE = 0x626,
265  ADEMCO_CONTACTID_PROGRAM_MODE_ENTRY = 0x627,
266  ADEMCO_CONTACTID_PROGRAM_MODE_EXIT = 0x628,
267  ADEMCO_CONTACTID_32_HOUR_EVENT_LOG_MARKER = 0x629,
268  ADEMCO_CONTACTID_SCHEDULE_CHANGE = 0x630,
269  ADEMCO_CONTACTID_EXCEPTION_SCHEDULE_CHANGE = 0x631,
270  ADEMCO_CONTACTID_ACCESS_SCHEDULE_CHANGE = 0x632,
271  ADEMCO_CONTACTID_SENIOR_WATCH_TROUBLE = 0x641,
272  ADEMCO_CONTACTID_LATCHKEY_SUPERVISION = 0x642,
273  ADEMCO_CONTACTID_RESERVED_FOR_ADEMCO_USE_1 = 0x651,
274  ADEMCO_CONTACTID_RESERVED_FOR_ADEMCO_USE_2 = 0x652,
275  ADEMCO_CONTACTID_RESERVED_FOR_ADEMCO_USE_3 = 0x653,
276  ADEMCO_CONTACTID_SYSTEM_INACTIVITY = 0x654,
277  ADEMCO_CONTACTID_DOWNLOAD_ABORT = 0x900,
278  ADEMCO_CONTACTID_DOWNLOAD_START_END = 0x901,
279  ADEMCO_CONTACTID_DOWNLOAD_INTERRUPTED = 0x902,
280  ADEMCO_CONTACTID_AUTOCLOSE_WITH_BYPASS = 0x910,
281  ADEMCO_CONTACTID_BYPASS_CLOSING = 0x911,
282  ADEMCO_CONTACTID_32_HOUR_NO_READ_OF_EVENT_LOG = 0x999
283 };
284 
286 
288 
289 typedef struct
290 {
291  int acct;
292  int mt;
293  int q;
294  int xyz;
295  int gg;
296  int ccc;
298 
299 typedef void (*ademco_contactid_report_func_t)(void *user_data, const ademco_contactid_report_t *report);
300 
301 #if defined(__cplusplus)
302 extern "C"
303 {
304 #endif
305 
306 SPAN_DECLARE(const char *) ademco_contactid_msg_qualifier_to_str(int q);
307 
308 SPAN_DECLARE(const char *) ademco_contactid_event_to_str(int xyz);
309 
310 SPAN_DECLARE(int) encode_msg(char buf[], const ademco_contactid_report_t *report);
311 
312 SPAN_DECLARE(int) decode_msg(ademco_contactid_report_t *report, const char buf[]);
313 
314 SPAN_DECLARE(int) ademco_contactid_receiver_log_msg(ademco_contactid_receiver_state_t *s, const ademco_contactid_report_t *report);
315 
316 SPAN_DECLARE(int) ademco_contactid_receiver_tx(ademco_contactid_receiver_state_t *s, int16_t amp[], int max_samples);
317 
318 SPAN_DECLARE(int) ademco_contactid_receiver_rx(ademco_contactid_receiver_state_t *s, const int16_t amp[], int samples);
319 
320 SPAN_DECLARE(int) ademco_contactid_receiver_fillin(ademco_contactid_receiver_state_t *s, int samples);
321 
322 SPAN_DECLARE(logging_state_t *) ademco_contactid_receiver_get_logging_state(ademco_contactid_receiver_state_t *s);
323 
324 SPAN_DECLARE(void) ademco_contactid_receiver_set_realtime_callback(ademco_contactid_receiver_state_t *s,
325  ademco_contactid_report_func_t callback,
326  void *user_data);
327 
328 SPAN_DECLARE(ademco_contactid_receiver_state_t *) ademco_contactid_receiver_init(ademco_contactid_receiver_state_t *s,
329  ademco_contactid_report_func_t callback,
330  void *user_data);
331 
332 SPAN_DECLARE(int) ademco_contactid_receiver_release(ademco_contactid_receiver_state_t *s);
333 
334 SPAN_DECLARE(int) ademco_contactid_receiver_free(ademco_contactid_receiver_state_t *s);
335 
336 
337 
338 SPAN_DECLARE(int) ademco_contactid_sender_tx(ademco_contactid_sender_state_t *s, int16_t amp[], int max_samples);
339 
340 SPAN_DECLARE(int) ademco_contactid_sender_rx(ademco_contactid_sender_state_t *s, const int16_t amp[], int samples);
341 
342 SPAN_DECLARE(int) ademco_contactid_sender_fillin(ademco_contactid_sender_state_t *s, int samples);
343 
344 SPAN_DECLARE(int) ademco_contactid_sender_put(ademco_contactid_sender_state_t *s, const ademco_contactid_report_t *report);
345 
346 SPAN_DECLARE(logging_state_t *) ademco_contactid_sender_get_logging_state(ademco_contactid_sender_state_t *s);
347 
348 SPAN_DECLARE(void) ademco_contactid_sender_set_realtime_callback(ademco_contactid_sender_state_t *s,
349  tone_report_func_t callback,
350  void *user_data);
351 
352 SPAN_DECLARE(ademco_contactid_sender_state_t *) ademco_contactid_sender_init(ademco_contactid_sender_state_t *s,
353  tone_report_func_t callback,
354  void *user_data);
355 
356 SPAN_DECLARE(int) ademco_contactid_sender_release(ademco_contactid_sender_state_t *s);
357 
358 SPAN_DECLARE(int) ademco_contactid_sender_free(ademco_contactid_sender_state_t *s);
359 
360 #if defined(__cplusplus)
361 }
362 #endif
363 
364 #endif
365 /*- End of file ------------------------------------------------------------*/
Definition: private/ademco_contactid.h:31
Definition: private/ademco_contactid.h:50
Definition: ademco_contactid.h:289
Definition: private/logging.h:33