From 7bfe7ed330afd49baf110ce48bf4135dc960dc16 Mon Sep 17 00:00:00 2001 From: Andrey Klimov Date: Thu, 19 Nov 2020 23:47:35 +0300 Subject: [PATCH] Refactored beta +Doxigen autogenerated docs --- docs/html/abstractch_8cpp.html | 163 ++ docs/html/abstractch_8h.html | 143 + docs/html/abstractch_8h_source.html | 113 + docs/html/abstractin_8cpp.html | 141 + docs/html/abstractin_8h.html | 91 + docs/html/abstractin_8h_source.html | 103 + docs/html/abstractout_8h.html | 94 + docs/html/abstractout_8h_source.html | 109 + docs/html/annotated.html | 105 + docs/html/bc_s.png | Bin 0 -> 676 bytes docs/html/bdwn.png | Bin 0 -> 147 bytes docs/html/bright_8cpp.html | 127 + docs/html/bright_8h.html | 150 + docs/html/bright_8h_source.html | 187 ++ docs/html/class_input-members.html | 108 + docs/html/class_input.html | 878 ++++++ docs/html/class_item-members.html | 129 + docs/html/class_item.html | 1267 ++++++++ docs/html/class_streamlog-members.html | 87 + docs/html/class_streamlog.html | 298 ++ docs/html/class_streamlog.png | Bin 0 -> 381 bytes docs/html/classabstract_ch-members.html | 88 + docs/html/classabstract_ch.html | 443 +++ docs/html/classabstract_ch.png | Bin 0 -> 2471 bytes docs/html/classabstract_in-members.html | 94 + docs/html/classabstract_in.html | 322 +++ docs/html/classabstract_in.png | Bin 0 -> 793 bytes docs/html/classabstract_out-members.html | 94 + docs/html/classabstract_out.html | 318 ++ docs/html/classabstract_out.png | Bin 0 -> 1893 bytes docs/html/classch_persistent.html | 89 + docs/html/classch_persistent.png | Bin 0 -> 462 bytes docs/html/classcolor_channel-members.html | 99 + docs/html/classcolor_channel.html | 333 +++ docs/html/classcolor_channel.png | Bin 0 -> 1369 bytes docs/html/classes.html | 132 + docs/html/classin__ccs811-members.html | 97 + docs/html/classin__ccs811.html | 282 ++ docs/html/classin__ccs811.png | Bin 0 -> 572 bytes docs/html/classin__hdc1080-members.html | 96 + docs/html/classin__hdc1080.html | 254 ++ docs/html/classin__hdc1080.png | Bin 0 -> 580 bytes docs/html/classitem_cmd-members.html | 117 + docs/html/classitem_cmd.html | 965 +++++++ docs/html/classmb_persistent-members.html | 85 + docs/html/classmb_persistent.html | 209 ++ docs/html/classmb_persistent.png | Bin 0 -> 456 bytes docs/html/classout___a_c-members.html | 96 + docs/html/classout___a_c.html | 389 +++ docs/html/classout___a_c.png | Bin 0 -> 582 bytes docs/html/classout___modbus-members.html | 98 + docs/html/classout___modbus.html | 469 +++ docs/html/classout___modbus.png | Bin 0 -> 615 bytes docs/html/classout___motor-members.html | 102 + docs/html/classout___motor.html | 506 ++++ docs/html/classout___motor.png | Bin 0 -> 593 bytes docs/html/classout___s_p_i_led-members.html | 104 + docs/html/classout___s_p_i_led.html | 471 +++ docs/html/classout___s_p_i_led.png | Bin 0 -> 755 bytes docs/html/classout__dmx-members.html | 100 + docs/html/classout__dmx.html | 387 +++ docs/html/classout__dmx.png | Bin 0 -> 734 bytes docs/html/classout__pwm-members.html | 101 + docs/html/classout__pwm.html | 416 +++ docs/html/classout__pwm.png | Bin 0 -> 733 bytes docs/html/classread_cache-members.html | 85 + docs/html/classread_cache.html | 246 ++ docs/html/classstatus_l_e_d-members.html | 83 + docs/html/classstatus_l_e_d.html | 189 ++ docs/html/closed.png | Bin 0 -> 132 bytes docs/html/colorchannel_8cpp.html | 85 + docs/html/colorchannel_8h.html | 92 + docs/html/colorchannel_8h_source.html | 118 + .../dir_82d7c1f210290ade9e0671f857ad27e3.html | 146 + .../dir_a26efa385a8243117251e7dce4d75390.html | 111 + docs/html/dmx_8cpp.html | 539 ++++ docs/html/dmx_8h.html | 417 +++ docs/html/dmx_8h_source.html | 203 ++ docs/html/doc.png | Bin 0 -> 746 bytes docs/html/doxygen.css | 1732 +++++++++++ docs/html/doxygen.svg | 26 + docs/html/dynsections.js | 121 + docs/html/files.html | 124 + docs/html/folderclosed.png | Bin 0 -> 616 bytes docs/html/folderopen.png | Bin 0 -> 597 bytes docs/html/functions.html | 124 + docs/html/functions_b.html | 87 + docs/html/functions_c.html | 137 + docs/html/functions_d.html | 99 + docs/html/functions_e.html | 78 + docs/html/functions_f.html | 90 + docs/html/functions_func.html | 102 + docs/html/functions_func_b.html | 78 + docs/html/functions_func_c.html | 116 + docs/html/functions_func_d.html | 84 + docs/html/functions_func_e.html | 78 + docs/html/functions_func_f.html | 84 + docs/html/functions_func_g.html | 147 + docs/html/functions_func_h.html | 81 + docs/html/functions_func_i.html | 131 + docs/html/functions_func_l.html | 78 + docs/html/functions_func_m.html | 81 + docs/html/functions_func_n.html | 78 + docs/html/functions_func_o.html | 129 + docs/html/functions_func_p.html | 128 + docs/html/functions_func_r.html | 87 + docs/html/functions_func_s.html | 171 ++ docs/html/functions_func_t.html | 81 + docs/html/functions_func_u.html | 78 + docs/html/functions_func_v.html | 81 + docs/html/functions_func_w.html | 78 + docs/html/functions_func_~.html | 81 + docs/html/functions_g.html | 150 + docs/html/functions_h.html | 84 + docs/html/functions_i.html | 168 ++ docs/html/functions_l.html | 87 + docs/html/functions_m.html | 87 + docs/html/functions_n.html | 87 + docs/html/functions_o.html | 129 + docs/html/functions_p.html | 153 + docs/html/functions_r.html | 96 + docs/html/functions_s.html | 199 ++ docs/html/functions_t.html | 100 + docs/html/functions_u.html | 84 + docs/html/functions_v.html | 88 + docs/html/functions_vars.html | 382 +++ docs/html/functions_w.html | 81 + docs/html/functions_~.html | 81 + docs/html/globals.html | 90 + docs/html/globals_a.html | 113 + docs/html/globals_b.html | 108 + docs/html/globals_c.html | 308 ++ docs/html/globals_d.html | 190 ++ docs/html/globals_defs.html | 87 + docs/html/globals_defs_a.html | 102 + docs/html/globals_defs_b.html | 108 + docs/html/globals_defs_c.html | 240 ++ docs/html/globals_defs_d.html | 117 + docs/html/globals_defs_e.html | 93 + docs/html/globals_defs_f.html | 84 + docs/html/globals_defs_h.html | 78 + docs/html/globals_defs_i.html | 195 ++ docs/html/globals_defs_l.html | 123 + docs/html/globals_defs_m.html | 126 + docs/html/globals_defs_n.html | 78 + docs/html/globals_defs_o.html | 108 + docs/html/globals_defs_p.html | 123 + docs/html/globals_defs_q.html | 81 + docs/html/globals_defs_r.html | 81 + docs/html/globals_defs_s.html | 243 ++ docs/html/globals_defs_t.html | 108 + docs/html/globals_defs_u.html | 78 + docs/html/globals_defs_v.html | 84 + docs/html/globals_defs_w.html | 78 + docs/html/globals_e.html | 117 + docs/html/globals_enum.html | 79 + docs/html/globals_eval.html | 121 + docs/html/globals_f.html | 87 + docs/html/globals_func.html | 543 ++++ docs/html/globals_g.html | 93 + docs/html/globals_h.html | 88 + docs/html/globals_i.html | 268 ++ docs/html/globals_l.html | 165 ++ docs/html/globals_m.html | 173 ++ docs/html/globals_n.html | 98 + docs/html/globals_o.html | 172 ++ docs/html/globals_p.html | 193 ++ docs/html/globals_q.html | 84 + docs/html/globals_r.html | 113 + docs/html/globals_s.html | 311 ++ docs/html/globals_t.html | 155 + docs/html/globals_type.html | 79 + docs/html/globals_u.html | 78 + docs/html/globals_v.html | 84 + docs/html/globals_vars.html | 352 +++ docs/html/globals_w.html | 88 + docs/html/hierarchy.html | 106 + docs/html/in__ccs811__hdc1080_8cpp.html | 132 + docs/html/in__ccs811__hdc1080_8h.html | 117 + docs/html/in__ccs811__hdc1080_8h_source.html | 164 ++ docs/html/index.html | 75 + docs/html/inputs_8cpp.html | 230 ++ docs/html/inputs_8h.html | 729 +++++ docs/html/inputs_8h_source.html | 337 +++ docs/html/item_8cpp.html | 382 +++ docs/html/item_8h.html | 870 ++++++ docs/html/item_8h_source.html | 295 ++ docs/html/item_cmd_8cpp.html | 112 + docs/html/item_cmd_8h.html | 991 +++++++ docs/html/item_cmd_8h_source.html | 377 +++ docs/html/jquery.js | 35 + docs/html/lh.png | Bin 0 -> 16277 bytes docs/html/main_8cpp.html | 1950 +++++++++++++ docs/html/main_8h.html | 1296 +++++++++ docs/html/main_8h_source.html | 461 +++ docs/html/menu.js | 51 + docs/html/menudata.js | 178 ++ docs/html/nav_f.png | Bin 0 -> 153 bytes docs/html/nav_g.png | Bin 0 -> 95 bytes docs/html/nav_h.png | Bin 0 -> 98 bytes docs/html/open.png | Bin 0 -> 123 bytes docs/html/options_8h.html | 1064 +++++++ docs/html/options_8h_source.html | 349 +++ docs/html/out__ac_8cpp.html | 351 +++ docs/html/out__ac_8h.html | 344 +++ docs/html/out__ac_8h_source.html | 132 + docs/html/out__dmx_8cpp.html | 86 + docs/html/out__dmx_8h.html | 93 + docs/html/out__dmx_8h_source.html | 121 + docs/html/out__modbus_8cpp.html | 476 +++ docs/html/out__modbus_8h.html | 94 + docs/html/out__modbus_8h_source.html | 150 + docs/html/out__motor_8cpp.html | 85 + docs/html/out__motor_8h.html | 129 + docs/html/out__motor_8h_source.html | 142 + docs/html/out__pwm_8cpp.html | 86 + docs/html/out__pwm_8h.html | 93 + docs/html/out__pwm_8h_source.html | 122 + docs/html/out__spiled_8cpp.html | 109 + docs/html/out__spiled_8h.html | 94 + docs/html/out__spiled_8h_source.html | 134 + docs/html/ow_term_8cpp.html | 362 +++ docs/html/ow_term_8h.html | 857 ++++++ docs/html/ow_term_8h_source.html | 191 ++ docs/html/search/all_0.html | 36 + docs/html/search/all_0.js | 8 + docs/html/search/all_1.html | 36 + docs/html/search/all_1.js | 35 + docs/html/search/all_10.html | 36 + docs/html/search/all_10.js | 23 + docs/html/search/all_11.html | 36 + docs/html/search/all_11.js | 115 + docs/html/search/all_12.html | 36 + docs/html/search/all_12.js | 36 + docs/html/search/all_13.html | 36 + docs/html/search/all_13.js | 10 + docs/html/search/all_14.html | 36 + docs/html/search/all_14.js | 10 + docs/html/search/all_15.html | 36 + docs/html/search/all_15.js | 9 + docs/html/search/all_16.html | 36 + docs/html/search/all_16.js | 5 + docs/html/search/all_2.html | 36 + docs/html/search/all_2.js | 19 + docs/html/search/all_3.html | 36 + docs/html/search/all_3.js | 98 + docs/html/search/all_4.html | 36 + docs/html/search/all_4.js | 47 + docs/html/search/all_5.html | 36 + docs/html/search/all_5.js | 15 + docs/html/search/all_6.html | 36 + docs/html/search/all_6.js | 12 + docs/html/search/all_7.html | 36 + docs/html/search/all_7.js | 29 + docs/html/search/all_8.html | 36 + docs/html/search/all_8.js | 10 + docs/html/search/all_9.html | 36 + docs/html/search/all_9.js | 98 + docs/html/search/all_a.html | 36 + docs/html/search/all_a.js | 34 + docs/html/search/all_b.html | 36 + docs/html/search/all_b.js | 38 + docs/html/search/all_c.html | 36 + docs/html/search/all_c.js | 14 + docs/html/search/all_d.html | 36 + docs/html/search/all_d.js | 63 + docs/html/search/all_e.html | 36 + docs/html/search/all_e.js | 56 + docs/html/search/all_f.html | 36 + docs/html/search/all_f.js | 6 + docs/html/search/classes_0.html | 36 + docs/html/search/classes_0.js | 6 + docs/html/search/classes_1.html | 36 + docs/html/search/classes_1.js | 5 + docs/html/search/classes_2.html | 36 + docs/html/search/classes_2.js | 11 + docs/html/search/classes_3.html | 36 + docs/html/search/classes_3.js | 4 + docs/html/search/classes_4.html | 36 + docs/html/search/classes_4.js | 9 + docs/html/search/classes_5.html | 36 + docs/html/search/classes_5.js | 5 + docs/html/search/classes_6.html | 36 + docs/html/search/classes_6.js | 6 + docs/html/search/classes_7.html | 36 + docs/html/search/classes_7.js | 4 + docs/html/search/close.svg | 31 + docs/html/search/defines_0.html | 36 + docs/html/search/defines_0.js | 7 + docs/html/search/defines_1.html | 36 + docs/html/search/defines_1.js | 12 + docs/html/search/defines_10.html | 36 + docs/html/search/defines_10.js | 59 + docs/html/search/defines_11.html | 36 + docs/html/search/defines_11.js | 14 + docs/html/search/defines_12.html | 36 + docs/html/search/defines_12.js | 4 + docs/html/search/defines_13.html | 36 + docs/html/search/defines_13.js | 6 + docs/html/search/defines_14.html | 36 + docs/html/search/defines_14.js | 4 + docs/html/search/defines_2.html | 36 + docs/html/search/defines_2.js | 14 + docs/html/search/defines_3.html | 36 + docs/html/search/defines_3.js | 58 + docs/html/search/defines_4.html | 36 + docs/html/search/defines_4.js | 17 + docs/html/search/defines_5.html | 36 + docs/html/search/defines_5.js | 9 + docs/html/search/defines_6.html | 36 + docs/html/search/defines_6.js | 6 + docs/html/search/defines_7.html | 36 + docs/html/search/defines_7.js | 4 + docs/html/search/defines_8.html | 36 + docs/html/search/defines_8.js | 43 + docs/html/search/defines_9.html | 36 + docs/html/search/defines_9.js | 19 + docs/html/search/defines_a.html | 36 + docs/html/search/defines_a.js | 20 + docs/html/search/defines_b.html | 36 + docs/html/search/defines_b.js | 4 + docs/html/search/defines_c.html | 36 + docs/html/search/defines_c.js | 14 + docs/html/search/defines_d.html | 36 + docs/html/search/defines_d.js | 19 + docs/html/search/defines_e.html | 36 + docs/html/search/defines_e.js | 5 + docs/html/search/defines_f.html | 36 + docs/html/search/defines_f.js | 5 + docs/html/search/enums_0.html | 36 + docs/html/search/enums_0.js | 4 + docs/html/search/enums_1.html | 36 + docs/html/search/enums_1.js | 4 + docs/html/search/enumvalues_0.html | 36 + docs/html/search/enumvalues_0.js | 4 + docs/html/search/enumvalues_1.html | 36 + docs/html/search/enumvalues_1.js | 6 + docs/html/search/enumvalues_2.html | 36 + docs/html/search/enumvalues_2.js | 4 + docs/html/search/enumvalues_3.html | 36 + docs/html/search/enumvalues_3.js | 5 + docs/html/search/enumvalues_4.html | 36 + docs/html/search/enumvalues_4.js | 4 + docs/html/search/enumvalues_5.html | 36 + docs/html/search/enumvalues_5.js | 4 + docs/html/search/enumvalues_6.html | 36 + docs/html/search/enumvalues_6.js | 7 + docs/html/search/enumvalues_7.html | 36 + docs/html/search/enumvalues_7.js | 6 + docs/html/search/files_0.html | 36 + docs/html/search/files_0.js | 8 + docs/html/search/files_1.html | 36 + docs/html/search/files_1.js | 5 + docs/html/search/files_2.html | 36 + docs/html/search/files_2.js | 5 + docs/html/search/files_3.html | 36 + docs/html/search/files_3.js | 5 + docs/html/search/files_4.html | 36 + docs/html/search/files_4.js | 11 + docs/html/search/files_5.html | 36 + docs/html/search/files_5.js | 5 + docs/html/search/files_6.html | 36 + docs/html/search/files_6.js | 18 + docs/html/search/files_7.html | 36 + docs/html/search/files_7.js | 7 + docs/html/search/files_8.html | 36 + docs/html/search/files_8.js | 4 + docs/html/search/files_9.html | 36 + docs/html/search/files_9.js | 5 + docs/html/search/functions_0.html | 36 + docs/html/search/functions_0.js | 4 + docs/html/search/functions_1.html | 36 + docs/html/search/functions_1.js | 14 + docs/html/search/functions_10.html | 36 + docs/html/search/functions_10.js | 43 + docs/html/search/functions_11.html | 36 + docs/html/search/functions_11.js | 11 + docs/html/search/functions_12.html | 36 + docs/html/search/functions_12.js | 4 + docs/html/search/functions_13.html | 36 + docs/html/search/functions_13.js | 5 + docs/html/search/functions_14.html | 36 + docs/html/search/functions_14.js | 4 + docs/html/search/functions_15.html | 36 + docs/html/search/functions_15.js | 5 + docs/html/search/functions_2.html | 36 + docs/html/search/functions_2.js | 4 + docs/html/search/functions_3.html | 36 + docs/html/search/functions_3.js | 29 + docs/html/search/functions_4.html | 36 + docs/html/search/functions_4.js | 16 + docs/html/search/functions_5.html | 36 + docs/html/search/functions_5.js | 6 + docs/html/search/functions_6.html | 36 + docs/html/search/functions_6.js | 7 + docs/html/search/functions_7.html | 36 + docs/html/search/functions_7.js | 28 + docs/html/search/functions_8.html | 36 + docs/html/search/functions_8.js | 6 + docs/html/search/functions_9.html | 36 + docs/html/search/functions_9.js | 31 + docs/html/search/functions_a.html | 36 + docs/html/search/functions_a.js | 10 + docs/html/search/functions_b.html | 36 + docs/html/search/functions_b.js | 11 + docs/html/search/functions_c.html | 36 + docs/html/search/functions_c.js | 4 + docs/html/search/functions_d.html | 36 + docs/html/search/functions_d.js | 30 + docs/html/search/functions_e.html | 36 + docs/html/search/functions_e.js | 29 + docs/html/search/functions_f.html | 36 + docs/html/search/functions_f.js | 11 + docs/html/search/mag_sel.svg | 74 + docs/html/search/nomatches.html | 12 + docs/html/search/search.css | 255 ++ docs/html/search/search.js | 814 ++++++ docs/html/search/search_l.png | Bin 0 -> 567 bytes docs/html/search/search_m.png | Bin 0 -> 158 bytes docs/html/search/search_r.png | Bin 0 -> 553 bytes docs/html/search/searchdata.js | 39 + docs/html/search/typedefs_0.html | 36 + docs/html/search/typedefs_0.js | 4 + docs/html/search/typedefs_1.html | 36 + docs/html/search/typedefs_1.js | 4 + docs/html/search/variables_0.html | 36 + docs/html/search/variables_0.js | 9 + docs/html/search/variables_1.html | 36 + docs/html/search/variables_1.js | 6 + docs/html/search/variables_10.html | 36 + docs/html/search/variables_10.js | 14 + docs/html/search/variables_11.html | 36 + docs/html/search/variables_11.js | 12 + docs/html/search/variables_12.html | 36 + docs/html/search/variables_12.js | 5 + docs/html/search/variables_13.html | 36 + docs/html/search/variables_13.js | 5 + docs/html/search/variables_14.html | 36 + docs/html/search/variables_14.js | 7 + docs/html/search/variables_2.html | 36 + docs/html/search/variables_2.js | 14 + docs/html/search/variables_3.html | 36 + docs/html/search/variables_3.js | 17 + docs/html/search/variables_4.html | 36 + docs/html/search/variables_4.js | 7 + docs/html/search/variables_5.html | 36 + docs/html/search/variables_5.js | 5 + docs/html/search/variables_6.html | 36 + docs/html/search/variables_6.js | 4 + docs/html/search/variables_7.html | 36 + docs/html/search/variables_7.js | 5 + docs/html/search/variables_8.html | 36 + docs/html/search/variables_8.js | 22 + docs/html/search/variables_9.html | 36 + docs/html/search/variables_9.js | 9 + docs/html/search/variables_a.html | 36 + docs/html/search/variables_a.js | 11 + docs/html/search/variables_b.html | 36 + docs/html/search/variables_b.js | 12 + docs/html/search/variables_c.html | 36 + docs/html/search/variables_c.js | 10 + docs/html/search/variables_d.html | 36 + docs/html/search/variables_d.js | 14 + docs/html/search/variables_e.html | 36 + docs/html/search/variables_e.js | 4 + docs/html/search/variables_f.html | 36 + docs/html/search/variables_f.js | 8 + docs/html/splitbar.png | Bin 0 -> 314 bytes docs/html/statusled_8cpp.html | 80 + docs/html/statusled_8h.html | 303 ++ docs/html/statusled_8h_source.html | 135 + docs/html/streamlog_8cpp.html | 82 + docs/html/streamlog_8h.html | 161 ++ docs/html/streamlog_8h_source.html | 138 + docs/html/structreg__t-members.html | 80 + docs/html/structreg__t.html | 118 + docs/html/structserial__t-members.html | 80 + docs/html/structserial__t.html | 118 + docs/html/sync_off.png | Bin 0 -> 853 bytes docs/html/sync_on.png | Bin 0 -> 845 bytes docs/html/tab_a.png | Bin 0 -> 142 bytes docs/html/tab_b.png | Bin 0 -> 169 bytes docs/html/tab_h.png | Bin 0 -> 177 bytes docs/html/tab_s.png | Bin 0 -> 184 bytes docs/html/tabs.css | 1 + docs/html/textconst_8h.html | 120 + docs/html/textconst_8h_source.html | 203 ++ docs/html/union_u_i_d-members.html | 80 + docs/html/union_u_i_d.html | 120 + docs/html/unionin_store-members.html | 92 + docs/html/unionin_store.html | 346 +++ docs/html/unionitem_arg_store-members.html | 95 + docs/html/unionitem_arg_store.html | 411 +++ docs/html/unionitem_cmd_store-members.html | 86 + docs/html/unionitem_cmd_store.html | 239 ++ docs/html/utils_8cpp.html | 866 ++++++ docs/html/utils_8h.html | 861 ++++++ docs/html/utils_8h_source.html | 173 ++ docs/latex/Makefile | 23 + docs/latex/abstractch_8cpp.tex | 37 + docs/latex/abstractch_8h.tex | 38 + docs/latex/abstractin_8cpp.tex | 31 + docs/latex/abstractin_8h.tex | 9 + docs/latex/abstractout_8h.tex | 12 + docs/latex/annotated.tex | 29 + docs/latex/bright_8cpp.tex | 25 + docs/latex/bright_8h.tex | 39 + docs/latex/class_input.tex | 273 ++ docs/latex/class_item.tex | 447 +++ docs/latex/class_streamlog.eps | 197 ++ docs/latex/class_streamlog.tex | 99 + docs/latex/classabstract_ch.eps | 251 ++ docs/latex/classabstract_ch.tex | 126 + docs/latex/classabstract_in.eps | 209 ++ docs/latex/classabstract_in.tex | 84 + docs/latex/classabstract_out.eps | 233 ++ docs/latex/classabstract_out.tex | 93 + docs/latex/classch_persistent.eps | 197 ++ docs/latex/classch_persistent.tex | 17 + docs/latex/classcolor_channel.eps | 219 ++ docs/latex/classcolor_channel.tex | 90 + docs/latex/classin__ccs811.eps | 203 ++ docs/latex/classin__ccs811.tex | 79 + docs/latex/classin__hdc1080.eps | 203 ++ docs/latex/classin__hdc1080.tex | 71 + docs/latex/classitem_cmd.tex | 339 +++ docs/latex/classmb_persistent.eps | 197 ++ docs/latex/classmb_persistent.tex | 79 + docs/latex/classout___a_c.eps | 203 ++ docs/latex/classout___a_c.tex | 119 + docs/latex/classout___modbus.eps | 203 ++ docs/latex/classout___modbus.tex | 152 + docs/latex/classout___motor.eps | 203 ++ docs/latex/classout___motor.tex | 185 ++ docs/latex/classout___s_p_i_led.eps | 209 ++ docs/latex/classout___s_p_i_led.tex | 161 ++ docs/latex/classout__dmx.eps | 209 ++ docs/latex/classout__dmx.tex | 120 + docs/latex/classout__pwm.eps | 209 ++ docs/latex/classout__pwm.tex | 134 + docs/latex/classread_cache.tex | 83 + docs/latex/classstatus_l_e_d.tex | 61 + docs/latex/colorchannel_8cpp.tex | 8 + docs/latex/colorchannel_8h.tex | 10 + .../dir_82d7c1f210290ade9e0671f857ad27e3.tex | 68 + .../dir_a26efa385a8243117251e7dce4d75390.tex | 33 + docs/latex/dmx_8cpp.tex | 153 + docs/latex/dmx_8h.tex | 142 + docs/latex/doxygen.sty | 576 ++++ docs/latex/files.tex | 46 + docs/latex/hierarchy.tex | 41 + docs/latex/in__ccs811__hdc1080_8cpp.tex | 36 + docs/latex/in__ccs811__hdc1080_8h.tex | 28 + docs/latex/inputs_8cpp.tex | 69 + docs/latex/inputs_8h.tex | 329 +++ docs/latex/item_8cpp.tex | 142 + docs/latex/item_8h.tex | 397 +++ docs/latex/item_cmd_8cpp.tex | 22 + docs/latex/item_cmd_8h.tex | 482 ++++ docs/latex/lh.png | Bin 0 -> 16277 bytes docs/latex/longtable_doxygen.sty | 448 +++ docs/latex/main_8cpp.tex | 715 +++++ docs/latex/main_8h.tex | 504 ++++ docs/latex/options_8h.tex | 496 ++++ docs/latex/out__ac_8cpp.tex | 131 + docs/latex/out__ac_8h.tex | 140 + docs/latex/out__dmx_8cpp.tex | 9 + docs/latex/out__dmx_8h.tex | 11 + docs/latex/out__modbus_8cpp.tex | 195 ++ docs/latex/out__modbus_8h.tex | 12 + docs/latex/out__motor_8cpp.tex | 8 + docs/latex/out__motor_8h.tex | 32 + docs/latex/out__pwm_8cpp.tex | 9 + docs/latex/out__pwm_8h.tex | 11 + docs/latex/out__spiled_8cpp.tex | 23 + docs/latex/out__spiled_8h.tex | 12 + docs/latex/ow_term_8cpp.tex | 139 + docs/latex/ow_term_8h.tex | 358 +++ docs/latex/refman.tex | 261 ++ docs/latex/statusled_8cpp.tex | 3 + docs/latex/statusled_8h.tex | 118 + docs/latex/streamlog_8cpp.tex | 5 + docs/latex/streamlog_8h.tex | 48 + docs/latex/structreg__t.tex | 29 + docs/latex/structserial__t.tex | 29 + docs/latex/tabu_doxygen.sty | 2557 +++++++++++++++++ docs/latex/textconst_8h.tex | 24 + docs/latex/union_u_i_d.tex | 33 + docs/latex/unionin_store.tex | 137 + docs/latex/unionitem_arg_store.tex | 171 ++ docs/latex/unionitem_cmd_store.tex | 90 + docs/latex/utils_8cpp.tex | 257 ++ docs/latex/utils_8h.tex | 273 ++ lighthub/colorchannel.cpp | 24 +- lighthub/item.cpp | 92 +- lighthub/item.h | 7 +- lighthub/itemCmd.cpp | 49 +- lighthub/itemCmd.h | 5 +- lighthub/modules/out_dmx.cpp | 29 +- lighthub/modules/out_pwm.cpp | 6 + platformio.ini | 4 +- 601 files changed, 70469 insertions(+), 72 deletions(-) create mode 100644 docs/html/abstractch_8cpp.html create mode 100644 docs/html/abstractch_8h.html create mode 100644 docs/html/abstractch_8h_source.html create mode 100644 docs/html/abstractin_8cpp.html create mode 100644 docs/html/abstractin_8h.html create mode 100644 docs/html/abstractin_8h_source.html create mode 100644 docs/html/abstractout_8h.html create mode 100644 docs/html/abstractout_8h_source.html create mode 100644 docs/html/annotated.html create mode 100644 docs/html/bc_s.png create mode 100644 docs/html/bdwn.png create mode 100644 docs/html/bright_8cpp.html create mode 100644 docs/html/bright_8h.html create mode 100644 docs/html/bright_8h_source.html create mode 100644 docs/html/class_input-members.html create mode 100644 docs/html/class_input.html create mode 100644 docs/html/class_item-members.html create mode 100644 docs/html/class_item.html create mode 100644 docs/html/class_streamlog-members.html create mode 100644 docs/html/class_streamlog.html create mode 100644 docs/html/class_streamlog.png create mode 100644 docs/html/classabstract_ch-members.html create mode 100644 docs/html/classabstract_ch.html create mode 100644 docs/html/classabstract_ch.png create mode 100644 docs/html/classabstract_in-members.html create mode 100644 docs/html/classabstract_in.html create mode 100644 docs/html/classabstract_in.png create mode 100644 docs/html/classabstract_out-members.html create mode 100644 docs/html/classabstract_out.html create mode 100644 docs/html/classabstract_out.png create mode 100644 docs/html/classch_persistent.html create mode 100644 docs/html/classch_persistent.png create mode 100644 docs/html/classcolor_channel-members.html create mode 100644 docs/html/classcolor_channel.html create mode 100644 docs/html/classcolor_channel.png create mode 100644 docs/html/classes.html create mode 100644 docs/html/classin__ccs811-members.html create mode 100644 docs/html/classin__ccs811.html create mode 100644 docs/html/classin__ccs811.png create mode 100644 docs/html/classin__hdc1080-members.html create mode 100644 docs/html/classin__hdc1080.html create mode 100644 docs/html/classin__hdc1080.png create mode 100644 docs/html/classitem_cmd-members.html create mode 100644 docs/html/classitem_cmd.html create mode 100644 docs/html/classmb_persistent-members.html create mode 100644 docs/html/classmb_persistent.html create mode 100644 docs/html/classmb_persistent.png create mode 100644 docs/html/classout___a_c-members.html create mode 100644 docs/html/classout___a_c.html create mode 100644 docs/html/classout___a_c.png create mode 100644 docs/html/classout___modbus-members.html create mode 100644 docs/html/classout___modbus.html create mode 100644 docs/html/classout___modbus.png create mode 100644 docs/html/classout___motor-members.html create mode 100644 docs/html/classout___motor.html create mode 100644 docs/html/classout___motor.png create mode 100644 docs/html/classout___s_p_i_led-members.html create mode 100644 docs/html/classout___s_p_i_led.html create mode 100644 docs/html/classout___s_p_i_led.png create mode 100644 docs/html/classout__dmx-members.html create mode 100644 docs/html/classout__dmx.html create mode 100644 docs/html/classout__dmx.png create mode 100644 docs/html/classout__pwm-members.html create mode 100644 docs/html/classout__pwm.html create mode 100644 docs/html/classout__pwm.png create mode 100644 docs/html/classread_cache-members.html create mode 100644 docs/html/classread_cache.html create mode 100644 docs/html/classstatus_l_e_d-members.html create mode 100644 docs/html/classstatus_l_e_d.html create mode 100644 docs/html/closed.png create mode 100644 docs/html/colorchannel_8cpp.html create mode 100644 docs/html/colorchannel_8h.html create mode 100644 docs/html/colorchannel_8h_source.html create mode 100644 docs/html/dir_82d7c1f210290ade9e0671f857ad27e3.html create mode 100644 docs/html/dir_a26efa385a8243117251e7dce4d75390.html create mode 100644 docs/html/dmx_8cpp.html create mode 100644 docs/html/dmx_8h.html create mode 100644 docs/html/dmx_8h_source.html create mode 100644 docs/html/doc.png create mode 100644 docs/html/doxygen.css create mode 100644 docs/html/doxygen.svg create mode 100644 docs/html/dynsections.js create mode 100644 docs/html/files.html create mode 100644 docs/html/folderclosed.png create mode 100644 docs/html/folderopen.png create mode 100644 docs/html/functions.html create mode 100644 docs/html/functions_b.html create mode 100644 docs/html/functions_c.html create mode 100644 docs/html/functions_d.html create mode 100644 docs/html/functions_e.html create mode 100644 docs/html/functions_f.html create mode 100644 docs/html/functions_func.html create mode 100644 docs/html/functions_func_b.html create mode 100644 docs/html/functions_func_c.html create mode 100644 docs/html/functions_func_d.html create mode 100644 docs/html/functions_func_e.html create mode 100644 docs/html/functions_func_f.html create mode 100644 docs/html/functions_func_g.html create mode 100644 docs/html/functions_func_h.html create mode 100644 docs/html/functions_func_i.html create mode 100644 docs/html/functions_func_l.html create mode 100644 docs/html/functions_func_m.html create mode 100644 docs/html/functions_func_n.html create mode 100644 docs/html/functions_func_o.html create mode 100644 docs/html/functions_func_p.html create mode 100644 docs/html/functions_func_r.html create mode 100644 docs/html/functions_func_s.html create mode 100644 docs/html/functions_func_t.html create mode 100644 docs/html/functions_func_u.html create mode 100644 docs/html/functions_func_v.html create mode 100644 docs/html/functions_func_w.html create mode 100644 docs/html/functions_func_~.html create mode 100644 docs/html/functions_g.html create mode 100644 docs/html/functions_h.html create mode 100644 docs/html/functions_i.html create mode 100644 docs/html/functions_l.html create mode 100644 docs/html/functions_m.html create mode 100644 docs/html/functions_n.html create mode 100644 docs/html/functions_o.html create mode 100644 docs/html/functions_p.html create mode 100644 docs/html/functions_r.html create mode 100644 docs/html/functions_s.html create mode 100644 docs/html/functions_t.html create mode 100644 docs/html/functions_u.html create mode 100644 docs/html/functions_v.html create mode 100644 docs/html/functions_vars.html create mode 100644 docs/html/functions_w.html create mode 100644 docs/html/functions_~.html create mode 100644 docs/html/globals.html create mode 100644 docs/html/globals_a.html create mode 100644 docs/html/globals_b.html create mode 100644 docs/html/globals_c.html create mode 100644 docs/html/globals_d.html create mode 100644 docs/html/globals_defs.html create mode 100644 docs/html/globals_defs_a.html create mode 100644 docs/html/globals_defs_b.html create mode 100644 docs/html/globals_defs_c.html create mode 100644 docs/html/globals_defs_d.html create mode 100644 docs/html/globals_defs_e.html create mode 100644 docs/html/globals_defs_f.html create mode 100644 docs/html/globals_defs_h.html create mode 100644 docs/html/globals_defs_i.html create mode 100644 docs/html/globals_defs_l.html create mode 100644 docs/html/globals_defs_m.html create mode 100644 docs/html/globals_defs_n.html create mode 100644 docs/html/globals_defs_o.html create mode 100644 docs/html/globals_defs_p.html create mode 100644 docs/html/globals_defs_q.html create mode 100644 docs/html/globals_defs_r.html create mode 100644 docs/html/globals_defs_s.html create mode 100644 docs/html/globals_defs_t.html create mode 100644 docs/html/globals_defs_u.html create mode 100644 docs/html/globals_defs_v.html create mode 100644 docs/html/globals_defs_w.html create mode 100644 docs/html/globals_e.html create mode 100644 docs/html/globals_enum.html create mode 100644 docs/html/globals_eval.html create mode 100644 docs/html/globals_f.html create mode 100644 docs/html/globals_func.html create mode 100644 docs/html/globals_g.html create mode 100644 docs/html/globals_h.html create mode 100644 docs/html/globals_i.html create mode 100644 docs/html/globals_l.html create mode 100644 docs/html/globals_m.html create mode 100644 docs/html/globals_n.html create mode 100644 docs/html/globals_o.html create mode 100644 docs/html/globals_p.html create mode 100644 docs/html/globals_q.html create mode 100644 docs/html/globals_r.html create mode 100644 docs/html/globals_s.html create mode 100644 docs/html/globals_t.html create mode 100644 docs/html/globals_type.html create mode 100644 docs/html/globals_u.html create mode 100644 docs/html/globals_v.html create mode 100644 docs/html/globals_vars.html create mode 100644 docs/html/globals_w.html create mode 100644 docs/html/hierarchy.html create mode 100644 docs/html/in__ccs811__hdc1080_8cpp.html create mode 100644 docs/html/in__ccs811__hdc1080_8h.html create mode 100644 docs/html/in__ccs811__hdc1080_8h_source.html create mode 100644 docs/html/index.html create mode 100644 docs/html/inputs_8cpp.html create mode 100644 docs/html/inputs_8h.html create mode 100644 docs/html/inputs_8h_source.html create mode 100644 docs/html/item_8cpp.html create mode 100644 docs/html/item_8h.html create mode 100644 docs/html/item_8h_source.html create mode 100644 docs/html/item_cmd_8cpp.html create mode 100644 docs/html/item_cmd_8h.html create mode 100644 docs/html/item_cmd_8h_source.html create mode 100644 docs/html/jquery.js create mode 100644 docs/html/lh.png create mode 100644 docs/html/main_8cpp.html create mode 100644 docs/html/main_8h.html create mode 100644 docs/html/main_8h_source.html create mode 100644 docs/html/menu.js create mode 100644 docs/html/menudata.js create mode 100644 docs/html/nav_f.png create mode 100644 docs/html/nav_g.png create mode 100644 docs/html/nav_h.png create mode 100644 docs/html/open.png create mode 100644 docs/html/options_8h.html create mode 100644 docs/html/options_8h_source.html create mode 100644 docs/html/out__ac_8cpp.html create mode 100644 docs/html/out__ac_8h.html create mode 100644 docs/html/out__ac_8h_source.html create mode 100644 docs/html/out__dmx_8cpp.html create mode 100644 docs/html/out__dmx_8h.html create mode 100644 docs/html/out__dmx_8h_source.html create mode 100644 docs/html/out__modbus_8cpp.html create mode 100644 docs/html/out__modbus_8h.html create mode 100644 docs/html/out__modbus_8h_source.html create mode 100644 docs/html/out__motor_8cpp.html create mode 100644 docs/html/out__motor_8h.html create mode 100644 docs/html/out__motor_8h_source.html create mode 100644 docs/html/out__pwm_8cpp.html create mode 100644 docs/html/out__pwm_8h.html create mode 100644 docs/html/out__pwm_8h_source.html create mode 100644 docs/html/out__spiled_8cpp.html create mode 100644 docs/html/out__spiled_8h.html create mode 100644 docs/html/out__spiled_8h_source.html create mode 100644 docs/html/ow_term_8cpp.html create mode 100644 docs/html/ow_term_8h.html create mode 100644 docs/html/ow_term_8h_source.html create mode 100644 docs/html/search/all_0.html create mode 100644 docs/html/search/all_0.js create mode 100644 docs/html/search/all_1.html create mode 100644 docs/html/search/all_1.js create mode 100644 docs/html/search/all_10.html create mode 100644 docs/html/search/all_10.js create mode 100644 docs/html/search/all_11.html create mode 100644 docs/html/search/all_11.js create mode 100644 docs/html/search/all_12.html create mode 100644 docs/html/search/all_12.js create mode 100644 docs/html/search/all_13.html create mode 100644 docs/html/search/all_13.js create mode 100644 docs/html/search/all_14.html create mode 100644 docs/html/search/all_14.js create mode 100644 docs/html/search/all_15.html create mode 100644 docs/html/search/all_15.js create mode 100644 docs/html/search/all_16.html create mode 100644 docs/html/search/all_16.js create mode 100644 docs/html/search/all_2.html create mode 100644 docs/html/search/all_2.js create mode 100644 docs/html/search/all_3.html create mode 100644 docs/html/search/all_3.js create mode 100644 docs/html/search/all_4.html create mode 100644 docs/html/search/all_4.js create mode 100644 docs/html/search/all_5.html create mode 100644 docs/html/search/all_5.js create mode 100644 docs/html/search/all_6.html create mode 100644 docs/html/search/all_6.js create mode 100644 docs/html/search/all_7.html create mode 100644 docs/html/search/all_7.js create mode 100644 docs/html/search/all_8.html create mode 100644 docs/html/search/all_8.js create mode 100644 docs/html/search/all_9.html create mode 100644 docs/html/search/all_9.js create mode 100644 docs/html/search/all_a.html create mode 100644 docs/html/search/all_a.js create mode 100644 docs/html/search/all_b.html create mode 100644 docs/html/search/all_b.js create mode 100644 docs/html/search/all_c.html create mode 100644 docs/html/search/all_c.js create mode 100644 docs/html/search/all_d.html create mode 100644 docs/html/search/all_d.js create mode 100644 docs/html/search/all_e.html create mode 100644 docs/html/search/all_e.js create mode 100644 docs/html/search/all_f.html create mode 100644 docs/html/search/all_f.js create mode 100644 docs/html/search/classes_0.html create mode 100644 docs/html/search/classes_0.js create mode 100644 docs/html/search/classes_1.html create mode 100644 docs/html/search/classes_1.js create mode 100644 docs/html/search/classes_2.html create mode 100644 docs/html/search/classes_2.js create mode 100644 docs/html/search/classes_3.html create mode 100644 docs/html/search/classes_3.js create mode 100644 docs/html/search/classes_4.html create mode 100644 docs/html/search/classes_4.js create mode 100644 docs/html/search/classes_5.html create mode 100644 docs/html/search/classes_5.js create mode 100644 docs/html/search/classes_6.html create mode 100644 docs/html/search/classes_6.js create mode 100644 docs/html/search/classes_7.html create mode 100644 docs/html/search/classes_7.js create mode 100644 docs/html/search/close.svg create mode 100644 docs/html/search/defines_0.html create mode 100644 docs/html/search/defines_0.js create mode 100644 docs/html/search/defines_1.html create mode 100644 docs/html/search/defines_1.js create mode 100644 docs/html/search/defines_10.html create mode 100644 docs/html/search/defines_10.js create mode 100644 docs/html/search/defines_11.html create mode 100644 docs/html/search/defines_11.js create mode 100644 docs/html/search/defines_12.html create mode 100644 docs/html/search/defines_12.js create mode 100644 docs/html/search/defines_13.html create mode 100644 docs/html/search/defines_13.js create mode 100644 docs/html/search/defines_14.html create mode 100644 docs/html/search/defines_14.js create mode 100644 docs/html/search/defines_2.html create mode 100644 docs/html/search/defines_2.js create mode 100644 docs/html/search/defines_3.html create mode 100644 docs/html/search/defines_3.js create mode 100644 docs/html/search/defines_4.html create mode 100644 docs/html/search/defines_4.js create mode 100644 docs/html/search/defines_5.html create mode 100644 docs/html/search/defines_5.js create mode 100644 docs/html/search/defines_6.html create mode 100644 docs/html/search/defines_6.js create mode 100644 docs/html/search/defines_7.html create mode 100644 docs/html/search/defines_7.js create mode 100644 docs/html/search/defines_8.html create mode 100644 docs/html/search/defines_8.js create mode 100644 docs/html/search/defines_9.html create mode 100644 docs/html/search/defines_9.js create mode 100644 docs/html/search/defines_a.html create mode 100644 docs/html/search/defines_a.js create mode 100644 docs/html/search/defines_b.html create mode 100644 docs/html/search/defines_b.js create mode 100644 docs/html/search/defines_c.html create mode 100644 docs/html/search/defines_c.js create mode 100644 docs/html/search/defines_d.html create mode 100644 docs/html/search/defines_d.js create mode 100644 docs/html/search/defines_e.html create mode 100644 docs/html/search/defines_e.js create mode 100644 docs/html/search/defines_f.html create mode 100644 docs/html/search/defines_f.js create mode 100644 docs/html/search/enums_0.html create mode 100644 docs/html/search/enums_0.js create mode 100644 docs/html/search/enums_1.html create mode 100644 docs/html/search/enums_1.js create mode 100644 docs/html/search/enumvalues_0.html create mode 100644 docs/html/search/enumvalues_0.js create mode 100644 docs/html/search/enumvalues_1.html create mode 100644 docs/html/search/enumvalues_1.js create mode 100644 docs/html/search/enumvalues_2.html create mode 100644 docs/html/search/enumvalues_2.js create mode 100644 docs/html/search/enumvalues_3.html create mode 100644 docs/html/search/enumvalues_3.js create mode 100644 docs/html/search/enumvalues_4.html create mode 100644 docs/html/search/enumvalues_4.js create mode 100644 docs/html/search/enumvalues_5.html create mode 100644 docs/html/search/enumvalues_5.js create mode 100644 docs/html/search/enumvalues_6.html create mode 100644 docs/html/search/enumvalues_6.js create mode 100644 docs/html/search/enumvalues_7.html create mode 100644 docs/html/search/enumvalues_7.js create mode 100644 docs/html/search/files_0.html create mode 100644 docs/html/search/files_0.js create mode 100644 docs/html/search/files_1.html create mode 100644 docs/html/search/files_1.js create mode 100644 docs/html/search/files_2.html create mode 100644 docs/html/search/files_2.js create mode 100644 docs/html/search/files_3.html create mode 100644 docs/html/search/files_3.js create mode 100644 docs/html/search/files_4.html create mode 100644 docs/html/search/files_4.js create mode 100644 docs/html/search/files_5.html create mode 100644 docs/html/search/files_5.js create mode 100644 docs/html/search/files_6.html create mode 100644 docs/html/search/files_6.js create mode 100644 docs/html/search/files_7.html create mode 100644 docs/html/search/files_7.js create mode 100644 docs/html/search/files_8.html create mode 100644 docs/html/search/files_8.js create mode 100644 docs/html/search/files_9.html create mode 100644 docs/html/search/files_9.js create mode 100644 docs/html/search/functions_0.html create mode 100644 docs/html/search/functions_0.js create mode 100644 docs/html/search/functions_1.html create mode 100644 docs/html/search/functions_1.js create mode 100644 docs/html/search/functions_10.html create mode 100644 docs/html/search/functions_10.js create mode 100644 docs/html/search/functions_11.html create mode 100644 docs/html/search/functions_11.js create mode 100644 docs/html/search/functions_12.html create mode 100644 docs/html/search/functions_12.js create mode 100644 docs/html/search/functions_13.html create mode 100644 docs/html/search/functions_13.js create mode 100644 docs/html/search/functions_14.html create mode 100644 docs/html/search/functions_14.js create mode 100644 docs/html/search/functions_15.html create mode 100644 docs/html/search/functions_15.js create mode 100644 docs/html/search/functions_2.html create mode 100644 docs/html/search/functions_2.js create mode 100644 docs/html/search/functions_3.html create mode 100644 docs/html/search/functions_3.js create mode 100644 docs/html/search/functions_4.html create mode 100644 docs/html/search/functions_4.js create mode 100644 docs/html/search/functions_5.html create mode 100644 docs/html/search/functions_5.js create mode 100644 docs/html/search/functions_6.html create mode 100644 docs/html/search/functions_6.js create mode 100644 docs/html/search/functions_7.html create mode 100644 docs/html/search/functions_7.js create mode 100644 docs/html/search/functions_8.html create mode 100644 docs/html/search/functions_8.js create mode 100644 docs/html/search/functions_9.html create mode 100644 docs/html/search/functions_9.js create mode 100644 docs/html/search/functions_a.html create mode 100644 docs/html/search/functions_a.js create mode 100644 docs/html/search/functions_b.html create mode 100644 docs/html/search/functions_b.js create mode 100644 docs/html/search/functions_c.html create mode 100644 docs/html/search/functions_c.js create mode 100644 docs/html/search/functions_d.html create mode 100644 docs/html/search/functions_d.js create mode 100644 docs/html/search/functions_e.html create mode 100644 docs/html/search/functions_e.js create mode 100644 docs/html/search/functions_f.html create mode 100644 docs/html/search/functions_f.js create mode 100644 docs/html/search/mag_sel.svg create mode 100644 docs/html/search/nomatches.html create mode 100644 docs/html/search/search.css create mode 100644 docs/html/search/search.js create mode 100644 docs/html/search/search_l.png create mode 100644 docs/html/search/search_m.png create mode 100644 docs/html/search/search_r.png create mode 100644 docs/html/search/searchdata.js create mode 100644 docs/html/search/typedefs_0.html create mode 100644 docs/html/search/typedefs_0.js create mode 100644 docs/html/search/typedefs_1.html create mode 100644 docs/html/search/typedefs_1.js create mode 100644 docs/html/search/variables_0.html create mode 100644 docs/html/search/variables_0.js create mode 100644 docs/html/search/variables_1.html create mode 100644 docs/html/search/variables_1.js create mode 100644 docs/html/search/variables_10.html create mode 100644 docs/html/search/variables_10.js create mode 100644 docs/html/search/variables_11.html create mode 100644 docs/html/search/variables_11.js create mode 100644 docs/html/search/variables_12.html create mode 100644 docs/html/search/variables_12.js create mode 100644 docs/html/search/variables_13.html create mode 100644 docs/html/search/variables_13.js create mode 100644 docs/html/search/variables_14.html create mode 100644 docs/html/search/variables_14.js create mode 100644 docs/html/search/variables_2.html create mode 100644 docs/html/search/variables_2.js create mode 100644 docs/html/search/variables_3.html create mode 100644 docs/html/search/variables_3.js create mode 100644 docs/html/search/variables_4.html create mode 100644 docs/html/search/variables_4.js create mode 100644 docs/html/search/variables_5.html create mode 100644 docs/html/search/variables_5.js create mode 100644 docs/html/search/variables_6.html create mode 100644 docs/html/search/variables_6.js create mode 100644 docs/html/search/variables_7.html create mode 100644 docs/html/search/variables_7.js create mode 100644 docs/html/search/variables_8.html create mode 100644 docs/html/search/variables_8.js create mode 100644 docs/html/search/variables_9.html create mode 100644 docs/html/search/variables_9.js create mode 100644 docs/html/search/variables_a.html create mode 100644 docs/html/search/variables_a.js create mode 100644 docs/html/search/variables_b.html create mode 100644 docs/html/search/variables_b.js create mode 100644 docs/html/search/variables_c.html create mode 100644 docs/html/search/variables_c.js create mode 100644 docs/html/search/variables_d.html create mode 100644 docs/html/search/variables_d.js create mode 100644 docs/html/search/variables_e.html create mode 100644 docs/html/search/variables_e.js create mode 100644 docs/html/search/variables_f.html create mode 100644 docs/html/search/variables_f.js create mode 100644 docs/html/splitbar.png create mode 100644 docs/html/statusled_8cpp.html create mode 100644 docs/html/statusled_8h.html create mode 100644 docs/html/statusled_8h_source.html create mode 100644 docs/html/streamlog_8cpp.html create mode 100644 docs/html/streamlog_8h.html create mode 100644 docs/html/streamlog_8h_source.html create mode 100644 docs/html/structreg__t-members.html create mode 100644 docs/html/structreg__t.html create mode 100644 docs/html/structserial__t-members.html create mode 100644 docs/html/structserial__t.html create mode 100644 docs/html/sync_off.png create mode 100644 docs/html/sync_on.png create mode 100644 docs/html/tab_a.png create mode 100644 docs/html/tab_b.png create mode 100644 docs/html/tab_h.png create mode 100644 docs/html/tab_s.png create mode 100644 docs/html/tabs.css create mode 100644 docs/html/textconst_8h.html create mode 100644 docs/html/textconst_8h_source.html create mode 100644 docs/html/union_u_i_d-members.html create mode 100644 docs/html/union_u_i_d.html create mode 100644 docs/html/unionin_store-members.html create mode 100644 docs/html/unionin_store.html create mode 100644 docs/html/unionitem_arg_store-members.html create mode 100644 docs/html/unionitem_arg_store.html create mode 100644 docs/html/unionitem_cmd_store-members.html create mode 100644 docs/html/unionitem_cmd_store.html create mode 100644 docs/html/utils_8cpp.html create mode 100644 docs/html/utils_8h.html create mode 100644 docs/html/utils_8h_source.html create mode 100644 docs/latex/Makefile create mode 100644 docs/latex/abstractch_8cpp.tex create mode 100644 docs/latex/abstractch_8h.tex create mode 100644 docs/latex/abstractin_8cpp.tex create mode 100644 docs/latex/abstractin_8h.tex create mode 100644 docs/latex/abstractout_8h.tex create mode 100644 docs/latex/annotated.tex create mode 100644 docs/latex/bright_8cpp.tex create mode 100644 docs/latex/bright_8h.tex create mode 100644 docs/latex/class_input.tex create mode 100644 docs/latex/class_item.tex create mode 100644 docs/latex/class_streamlog.eps create mode 100644 docs/latex/class_streamlog.tex create mode 100644 docs/latex/classabstract_ch.eps create mode 100644 docs/latex/classabstract_ch.tex create mode 100644 docs/latex/classabstract_in.eps create mode 100644 docs/latex/classabstract_in.tex create mode 100644 docs/latex/classabstract_out.eps create mode 100644 docs/latex/classabstract_out.tex create mode 100644 docs/latex/classch_persistent.eps create mode 100644 docs/latex/classch_persistent.tex create mode 100644 docs/latex/classcolor_channel.eps create mode 100644 docs/latex/classcolor_channel.tex create mode 100644 docs/latex/classin__ccs811.eps create mode 100644 docs/latex/classin__ccs811.tex create mode 100644 docs/latex/classin__hdc1080.eps create mode 100644 docs/latex/classin__hdc1080.tex create mode 100644 docs/latex/classitem_cmd.tex create mode 100644 docs/latex/classmb_persistent.eps create mode 100644 docs/latex/classmb_persistent.tex create mode 100644 docs/latex/classout___a_c.eps create mode 100644 docs/latex/classout___a_c.tex create mode 100644 docs/latex/classout___modbus.eps create mode 100644 docs/latex/classout___modbus.tex create mode 100644 docs/latex/classout___motor.eps create mode 100644 docs/latex/classout___motor.tex create mode 100644 docs/latex/classout___s_p_i_led.eps create mode 100644 docs/latex/classout___s_p_i_led.tex create mode 100644 docs/latex/classout__dmx.eps create mode 100644 docs/latex/classout__dmx.tex create mode 100644 docs/latex/classout__pwm.eps create mode 100644 docs/latex/classout__pwm.tex create mode 100644 docs/latex/classread_cache.tex create mode 100644 docs/latex/classstatus_l_e_d.tex create mode 100644 docs/latex/colorchannel_8cpp.tex create mode 100644 docs/latex/colorchannel_8h.tex create mode 100644 docs/latex/dir_82d7c1f210290ade9e0671f857ad27e3.tex create mode 100644 docs/latex/dir_a26efa385a8243117251e7dce4d75390.tex create mode 100644 docs/latex/dmx_8cpp.tex create mode 100644 docs/latex/dmx_8h.tex create mode 100644 docs/latex/doxygen.sty create mode 100644 docs/latex/files.tex create mode 100644 docs/latex/hierarchy.tex create mode 100644 docs/latex/in__ccs811__hdc1080_8cpp.tex create mode 100644 docs/latex/in__ccs811__hdc1080_8h.tex create mode 100644 docs/latex/inputs_8cpp.tex create mode 100644 docs/latex/inputs_8h.tex create mode 100644 docs/latex/item_8cpp.tex create mode 100644 docs/latex/item_8h.tex create mode 100644 docs/latex/item_cmd_8cpp.tex create mode 100644 docs/latex/item_cmd_8h.tex create mode 100644 docs/latex/lh.png create mode 100644 docs/latex/longtable_doxygen.sty create mode 100644 docs/latex/main_8cpp.tex create mode 100644 docs/latex/main_8h.tex create mode 100644 docs/latex/options_8h.tex create mode 100644 docs/latex/out__ac_8cpp.tex create mode 100644 docs/latex/out__ac_8h.tex create mode 100644 docs/latex/out__dmx_8cpp.tex create mode 100644 docs/latex/out__dmx_8h.tex create mode 100644 docs/latex/out__modbus_8cpp.tex create mode 100644 docs/latex/out__modbus_8h.tex create mode 100644 docs/latex/out__motor_8cpp.tex create mode 100644 docs/latex/out__motor_8h.tex create mode 100644 docs/latex/out__pwm_8cpp.tex create mode 100644 docs/latex/out__pwm_8h.tex create mode 100644 docs/latex/out__spiled_8cpp.tex create mode 100644 docs/latex/out__spiled_8h.tex create mode 100644 docs/latex/ow_term_8cpp.tex create mode 100644 docs/latex/ow_term_8h.tex create mode 100644 docs/latex/refman.tex create mode 100644 docs/latex/statusled_8cpp.tex create mode 100644 docs/latex/statusled_8h.tex create mode 100644 docs/latex/streamlog_8cpp.tex create mode 100644 docs/latex/streamlog_8h.tex create mode 100644 docs/latex/structreg__t.tex create mode 100644 docs/latex/structserial__t.tex create mode 100644 docs/latex/tabu_doxygen.sty create mode 100644 docs/latex/textconst_8h.tex create mode 100644 docs/latex/union_u_i_d.tex create mode 100644 docs/latex/unionin_store.tex create mode 100644 docs/latex/unionitem_arg_store.tex create mode 100644 docs/latex/unionitem_cmd_store.tex create mode 100644 docs/latex/utils_8cpp.tex create mode 100644 docs/latex/utils_8h.tex diff --git a/docs/html/abstractch_8cpp.html b/docs/html/abstractch_8cpp.html new file mode 100644 index 0000000..7ff535e --- /dev/null +++ b/docs/html/abstractch_8cpp.html @@ -0,0 +1,163 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
abstractch.cpp File Reference
+
+
+
#include "abstractch.h"
+#include <PubSubClient.h>
+#include "utils.h"
+#include <aJSON.h>
+#include "main.h"
+
+ + + + + + + +

+Variables

lan_status lanStatus
 
PubSubClient mqttClient
 
int8_t ethernetIdleCount
 
+

Variable Documentation

+ +

◆ ethernetIdleCount

+ +
+
+ + + + + +
+ + + + +
int8_t ethernetIdleCount
+
+extern
+
+ +
+
+ +

◆ lanStatus

+ +
+
+ + + + + +
+ + + + +
lan_status lanStatus
+
+extern
+
+ +
+
+ +

◆ mqttClient

+ +
+
+ + + + + +
+ + + + +
PubSubClient mqttClient
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/abstractch_8h.html b/docs/html/abstractch_8h.html new file mode 100644 index 0000000..72eb886 --- /dev/null +++ b/docs/html/abstractch_8h.html @@ -0,0 +1,143 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
abstractch.h File Reference
+
+
+
#include "Arduino.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  abstractCh
 
+ + + + + + + +

+Macros

#define CST_UNKNOWN   0
 
#define CST_INITIALIZED   1
 
#define CST_FAILED   2
 
+

Macro Definition Documentation

+ +

◆ CST_FAILED

+ +
+
+ + + + +
#define CST_FAILED   2
+
+ +
+
+ +

◆ CST_INITIALIZED

+ +
+
+ + + + +
#define CST_INITIALIZED   1
+
+ +
+
+ +

◆ CST_UNKNOWN

+ +
+
+ + + + +
#define CST_UNKNOWN   0
+
+ +
+
+
+ + + + diff --git a/docs/html/abstractch_8h_source.html b/docs/html/abstractch_8h_source.html new file mode 100644 index 0000000..bb45f2e --- /dev/null +++ b/docs/html/abstractch_8h_source.html @@ -0,0 +1,113 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
abstractch.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Arduino.h"
+
3 
+
4 #define CST_UNKNOWN 0
+
5 #define CST_INITIALIZED 1
+
6 #define CST_FAILED 2
+
7 
+
8 class abstractCh {
+
9 public:
+ +
11  virtual ~abstractCh(){};
+
12  virtual int Poll(short cause) = 0;
+
13  virtual int Setup() =0; //Should initialize hardware and reserve resources
+
14  virtual int Anounce () {return 0;};
+
15  virtual int Stop() {return 0;}; //Should free resources
+
16  virtual int Status() {return CST_UNKNOWN;}
+
17 
+
18 
+
19 protected:
+
20 virtual int publishTopic(const char* topic, long value, const char* subtopic = NULL);
+
21 virtual int publishTopic(const char* topic, float value, const char* subtopic = NULL );
+
22 virtual int publishTopic(const char* topic, const char * value, const char* subtopic = NULL);
+
23 //friend Input;
+
24 };
+
+
virtual int Anounce()
Definition: abstractch.h:14
+
virtual int Stop()
Definition: abstractch.h:15
+
#define CST_UNKNOWN
Definition: abstractch.h:4
+
Definition: abstractch.h:8
+
abstractCh()
Definition: abstractch.h:10
+
virtual int Setup()=0
+
virtual ~abstractCh()
Definition: abstractch.h:11
+
virtual int publishTopic(const char *topic, long value, const char *subtopic=NULL)
Definition: abstractch.cpp:12
+
virtual int Poll(short cause)=0
+
virtual int Status()
Definition: abstractch.h:16
+ + + + diff --git a/docs/html/abstractin_8cpp.html b/docs/html/abstractin_8cpp.html new file mode 100644 index 0000000..26a2979 --- /dev/null +++ b/docs/html/abstractin_8cpp.html @@ -0,0 +1,141 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
abstractin.cpp File Reference
+
+
+
#include "abstractin.h"
+#include "abstractch.h"
+#include <PubSubClient.h>
+#include "utils.h"
+#include <aJSON.h>
+#include "inputs.h"
+#include "main.h"
+
+ + + + + +

+Variables

lan_status lanStatus
 
PubSubClient mqttClient
 
+

Variable Documentation

+ +

◆ lanStatus

+ +
+
+ + + + + +
+ + + + +
lan_status lanStatus
+
+extern
+
+ +
+
+ +

◆ mqttClient

+ +
+
+ + + + + +
+ + + + +
PubSubClient mqttClient
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/abstractin_8h.html b/docs/html/abstractin_8h.html new file mode 100644 index 0000000..e455fb8 --- /dev/null +++ b/docs/html/abstractin_8h.html @@ -0,0 +1,91 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
abstractin.h File Reference
+
+
+
#include "Arduino.h"
+#include "abstractch.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  abstractIn
 
+
+ + + + diff --git a/docs/html/abstractin_8h_source.html b/docs/html/abstractin_8h_source.html new file mode 100644 index 0000000..e5830cf --- /dev/null +++ b/docs/html/abstractin_8h_source.html @@ -0,0 +1,103 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
abstractin.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Arduino.h"
+
3 #include "abstractch.h"
+
4 
+
5 class Input;
+
6 class abstractIn : public abstractCh{
+
7 public:
+
8  abstractIn(Input * _in):abstractCh(){in=_in;};
+
9 
+
10 protected:
+
11  Input * in;
+
12 int publish(long value, const char* subtopic = NULL);
+
13 int publish(float value, const char* subtopic = NULL );
+
14 int publish(char * value, const char* subtopic = NULL);
+
15 friend Input;
+
16 };
+
+
+
abstractIn(Input *_in)
Definition: abstractin.h:8
+
Definition: abstractch.h:8
+
Input * in
Definition: abstractin.h:8
+
friend Input
Definition: abstractin.h:15
+
Definition: inputs.h:131
+
int publish(long value, const char *subtopic=NULL)
Definition: abstractin.cpp:13
+
Definition: abstractin.h:6
+ + + + diff --git a/docs/html/abstractout_8h.html b/docs/html/abstractout_8h.html new file mode 100644 index 0000000..a54ebdb --- /dev/null +++ b/docs/html/abstractout_8h.html @@ -0,0 +1,94 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
abstractout.h File Reference
+
+
+
#include "Arduino.h"
+#include "abstractch.h"
+#include "itemCmd.h"
+
+

Go to the source code of this file.

+ + + + + + +

+Classes

class  chPersistent
 
class  abstractOut
 
+
+ + + + diff --git a/docs/html/abstractout_8h_source.html b/docs/html/abstractout_8h_source.html new file mode 100644 index 0000000..0196911 --- /dev/null +++ b/docs/html/abstractout_8h_source.html @@ -0,0 +1,109 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
abstractout.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Arduino.h"
+
3 #include "abstractch.h"
+
4 #include "itemCmd.h"
+
5 
+
6 class Item;
+
7 class chPersistent {};
+
8 class abstractOut : public abstractCh{
+
9 public:
+
10  abstractOut(Item * _item):abstractCh(){item=_item;};
+
11  virtual int Ctrl(itemCmd cmd, char* subItem=NULL, bool toExecute=true) =0;
+
12  virtual int isActive(){return 0;};
+
13  virtual int getDefaultOnVal(){return 100;};
+
14  virtual int getChanType(){return 0;}
+
15 protected:
+ +
17 };
+
+
virtual int Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true)=0
+
+
+
Definition: itemCmd.h:174
+
abstractOut(Item *_item)
Definition: abstractout.h:10
+
Definition: abstractout.h:7
+
Definition: abstractout.h:8
+
Definition: abstractch.h:8
+
virtual int getDefaultOnVal()
Definition: abstractout.h:13
+
virtual int isActive()
Definition: abstractout.h:12
+
Definition: item.h:92
+
virtual int getChanType()
Definition: abstractout.h:14
+
Item * item
Definition: abstractout.h:16
+ + + + diff --git a/docs/html/annotated.html b/docs/html/annotated.html new file mode 100644 index 0000000..a35ca2f --- /dev/null +++ b/docs/html/annotated.html @@ -0,0 +1,105 @@ + + + + + + + +LightHub: Class List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
+ + + + diff --git a/docs/html/bc_s.png b/docs/html/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/docs/html/bdwn.png b/docs/html/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/bright.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
bright.cpp File Reference
+
+
+
#include "bright.h"
+
+ + + + + +

+Functions

uint8_t getBright (uint8_t percent)
 
uint8_t getBright255 (uint8_t percent)
 
+

Function Documentation

+ +

◆ getBright()

+ +
+
+ + + + + + + + +
uint8_t getBright (uint8_t percent)
+
+ +
+
+ +

◆ getBright255()

+ +
+
+ + + + + + + + +
uint8_t getBright255 (uint8_t percent)
+
+ +
+
+
+ + + + diff --git a/docs/html/bright_8h.html b/docs/html/bright_8h.html new file mode 100644 index 0000000..abe7d44 --- /dev/null +++ b/docs/html/bright_8h.html @@ -0,0 +1,150 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/bright.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
bright.h File Reference
+
+
+
#include <Arduino.h>
+
+

Go to the source code of this file.

+ + + + +

+Macros

#define BRIGHT_LINEAR
 
+ + + + + +

+Functions

uint8_t getBright (uint8_t percent)
 
uint8_t getBright255 (uint8_t percent)
 
+

Macro Definition Documentation

+ +

◆ BRIGHT_LINEAR

+ +
+
+ + + + +
#define BRIGHT_LINEAR
+
+ +
+
+

Function Documentation

+ +

◆ getBright()

+ +
+
+ + + + + + + + +
uint8_t getBright (uint8_t percent)
+
+ +
+
+ +

◆ getBright255()

+ +
+
+ + + + + + + + +
uint8_t getBright255 (uint8_t percent)
+
+ +
+
+
+ + + + diff --git a/docs/html/bright_8h_source.html b/docs/html/bright_8h_source.html new file mode 100644 index 0000000..960cc59 --- /dev/null +++ b/docs/html/bright_8h_source.html @@ -0,0 +1,187 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/bright.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
bright.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include <Arduino.h>
+
3 #define BRIGHT_LINEAR
+
4 
+
5 
+
6 #ifdef BRIGHT_LOG
+
7 const uint8_t stepvar[] PROGMEM =
+
8  {
+
9  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
10  // 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
+
11  0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
+
12  0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
+
13  0x01, 0x02, 0x02, 0x02, 0x02, 0x02,
+
14  0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+
15  0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+
16  0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+
17  0x02, 0x03, 0x03, 0x03, 0x03, 0x03,
+
18  0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
+
19  0x03, 0x03, 0x03, 0x03, 0x04, 0x04,
+
20  0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
+
21  0x04, 0x04, 0x04, 0x04, 0x05, 0x05,
+
22  0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
+
23  0x05, 0x06, 0x06, 0x06, 0x06, 0x06,
+
24  0x06, 0x06, 0x06, 0x07, 0x07, 0x07,
+
25  0x07, 0x07, 0x07, 0x08, 0x08, 0x08,
+
26  0x08, 0x08, 0x08, 0x09, 0x09, 0x09,
+
27  0x09, 0x09, 0x0A, 0x0A, 0x0A, 0x0A,
+
28  0x0A, 0x0B, 0x0B, 0x0B, 0x0B, 0x0C,
+
29  0x0C, 0x0C, 0x0C, 0x0D, 0x0D, 0x0D,
+
30  0x0E, 0x0E, 0x0E, 0x0E, 0x0F, 0x0F,
+
31  0x0F, 0x10, 0x10, 0x10, 0x11, 0x11,
+
32  0x12, 0x12, 0x12, 0x13, 0x13, 0x14,
+
33  0x14, 0x14, 0x15, 0x15, 0x16, 0x16,
+
34  0x17, 0x17, 0x18, 0x18, 0x19, 0x19,
+
35  0x1A, 0x1B, 0x1B, 0x1C, 0x1C, 0x1D,
+
36  0x1E, 0x1E, 0x1F, 0x20, 0x20, 0x21,
+
37  0x22, 0x23, 0x23, 0x24, 0x25, 0x26,
+
38  0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B,
+
39  0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31,
+
40  0x32, 0x33, 0x34, 0x35, 0x37, 0x38,
+
41  0x39, 0x3A, 0x3B, 0x3D, 0x3E, 0x3F,
+
42  0x41, 0x42, 0x44, 0x45, 0x47, 0x48,
+
43  0x4A, 0x4C, 0x4D, 0x4F, 0x51, 0x52,
+
44  0x54, 0x56, 0x58, 0x5A, 0x5C, 0x5E,
+
45  0x60, 0x62, 0x64, 0x66, 0x69, 0x6B,
+
46  0x6D, 0x70, 0x72, 0x75, 0x77, 0x7A,
+
47  0x7C, 0x7F, 0x82, 0x85, 0x88, 0x8B,
+
48  0x8E, 0x91, 0x94, 0x97, 0x9B, 0x9E,
+
49  0xA2, 0xA5, 0xA9, 0xAC, 0xB0, 0xB4,
+
50  0xB8, 0xBC, 0xC0, 0xC4, 0xC9, 0xCD,
+
51  0xD2, 0xD6, 0xDB, 0xE0, 0xE5, 0xEA,
+
52  0xEF, 0xF4, 0xF9, 0xFF};
+
53 
+
54 #endif
+
55 
+
56 
+
57 #ifdef BRIGHT_STEP
+
58 const uint8_t stepvar[] PROGMEM =
+
59  {0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
60  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
61  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
62  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
63  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
64  0x00, 0x00, 0x00, 0x01, 0x01, 0x01,
+
65  0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
+
66  0x01, 0x01, 0x01, 0x01, 0x01, 0x02,
+
67  0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
+
68  0x02, 0x02, 0x03, 0x03, 0x03, 0x03,
+
69  0x03, 0x03, 0x04, 0x04, 0x04, 0x04,
+
70  0x04, 0x04, 0x05, 0x05, 0x05, 0x05,
+
71  0x06, 0x06, 0x06, 0x06, 0x07, 0x07,
+
72  0x07, 0x07, 0x08, 0x08, 0x08, 0x08,
+
73  0x09, 0x09, 0x09, 0x0A, 0x0A, 0x0A,
+
74  0x0B, 0x0B, 0x0C, 0x0C, 0x0C, 0x0D,
+
75  0x0D, 0x0E, 0x0E, 0x0E, 0x0F, 0x0F,
+
76  0x10, 0x10, 0x11, 0x11, 0x12, 0x12,
+
77  0x13, 0x13, 0x14, 0x14, 0x15, 0x16,
+
78  0x16, 0x17, 0x17, 0x18, 0x19, 0x19,
+
79  0x1A, 0x1B, 0x1B, 0x1C, 0x1D, 0x1D,
+
80  0x1E, 0x1F, 0x20, 0x20, 0x21, 0x22,
+
81  0x23, 0x23, 0x24, 0x25, 0x26, 0x27,
+
82  0x28, 0x29, 0x29, 0x2A, 0x2B, 0x2C,
+
83  0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32,
+
84  0x33, 0x34, 0x35, 0x36, 0x37, 0x38,
+
85  0x39, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F,
+
86  0x40, 0x42, 0x43, 0x44, 0x45, 0x47,
+
87  0x48, 0x49, 0x4B, 0x4C, 0x4D, 0x4F,
+
88  0x50, 0x51, 0x53, 0x54, 0x56, 0x57,
+
89  0x59, 0x5A, 0x5C, 0x5D, 0x5F, 0x60,
+
90  0x62, 0x64, 0x65, 0x67, 0x68, 0x6A,
+
91  0x6C, 0x6E, 0x6F, 0x71, 0x73, 0x75,
+
92  0x76, 0x78, 0x7A, 0x7C, 0x7E, 0x80,
+
93  0x82, 0x84, 0x85, 0x87, 0x89, 0x8B,
+
94  0x8E, 0x90, 0x92, 0x94, 0x96, 0x98,
+
95  0x9A, 0x9C, 0x9E, 0xA1, 0xA3, 0xA5,
+
96  0xA7, 0xAA, 0xAC, 0xAE, 0xB1, 0xB3,
+
97  0xB6, 0xB8, 0xBA, 0xBD, 0xBF, 0xC2,
+
98  0xC4, 0xC7, 0xCA, 0xCC, 0xCF, 0xD1,
+
99  0xD4, 0xD7, 0xD9, 0xDC, 0xDF, 0xE2,
+
100  0xE5, 0xE7, 0xEA, 0xED, 0xF0, 0xF3,
+
101  0xF6, 0xF9, 0xFC, 0xFF};
+
102 #endif
+
103 
+
104 uint8_t getBright(uint8_t percent);
+
105 uint8_t getBright255(uint8_t percent);
+
+
uint8_t getBright255(uint8_t percent)
Definition: bright.cpp:10
+
uint8_t getBright(uint8_t percent)
Definition: bright.cpp:3
+
const cmdstr commands_P[] PROGMEM
Definition: itemCmd.h:26
+ + + + diff --git a/docs/html/class_input-members.html b/docs/html/class_input-members.html new file mode 100644 index 0000000..46b26fe --- /dev/null +++ b/docs/html/class_input-members.html @@ -0,0 +1,108 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
Input Member List
+
+
+ +

This is the complete list of members for Input, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
analogPoll(short cause)Inputprotected
attachInterruptPinIrq(int realPin, int irq)Inputprotected
changeState(uint8_t newState, short cause)Inputprotected
contactPoll(short cause)Inputprotected
counterPoll()Inputprotected
dht22Poll()Inputprotected
getIdxField()Inputprotected
Input(aJsonObject *obj, aJsonObject *configObj=NULL)Input
Input(char *name)Input
inputObjInput
inTypeInput
isValid()Input
nextPollTime() constInputprotected
onAnalogChanged(float newValue)Input
onContactChanged(int newValue)Input
onCounterChanged(int i)Inputinlinestatic
onCounterChanged0()Inputstatic
onCounterChanged1()Inputstatic
onCounterChanged2()Inputstatic
onCounterChanged3()Inputstatic
onCounterChanged4()Inputstatic
onCounterChanged5()Inputstatic
Parse(aJsonObject *configObj=NULL)Inputprotected
pinInput
Poll(short cause)Input
publishDataToDomoticz(int, aJsonObject *, const char *format,...)Inputprotected
setNextPollTime(unsigned long pollTime)Inputprotected
setup()Input
storeInput
uptimePoll()Inputprotected
+ + + + diff --git a/docs/html/class_input.html b/docs/html/class_input.html new file mode 100644 index 0000000..3ef74e1 --- /dev/null +++ b/docs/html/class_input.html @@ -0,0 +1,878 @@ + + + + + + + +LightHub: Input Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <inputs.h>

+ + + + + + + + + + + + + + + + +

+Public Member Functions

 Input (aJsonObject *obj, aJsonObject *configObj=NULL)
 
 Input (char *name)
 
boolean isValid ()
 
void onContactChanged (int newValue)
 
void onAnalogChanged (float newValue)
 
int Poll (short cause)
 
void setup ()
 
+ + + + + + + + + + + + + + + +

+Static Public Member Functions

static void onCounterChanged (int i)
 
static void onCounterChanged0 ()
 
static void onCounterChanged1 ()
 
static void onCounterChanged2 ()
 
static void onCounterChanged3 ()
 
static void onCounterChanged4 ()
 
static void onCounterChanged5 ()
 
+ + + + + + + + + +

+Public Attributes

aJsonObject * inputObj
 
uint8_t inType
 
uint8_t pin
 
inStorestore
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

void Parse (aJsonObject *configObj=NULL)
 
void contactPoll (short cause)
 
void analogPoll (short cause)
 
void dht22Poll ()
 
void counterPoll ()
 
void attachInterruptPinIrq (int realPin, int irq)
 
unsigned long nextPollTime () const
 
void setNextPollTime (unsigned long pollTime)
 
void uptimePoll ()
 
bool publishDataToDomoticz (int, aJsonObject *, const char *format,...)
 
char * getIdxField ()
 
bool changeState (uint8_t newState, short cause)
 
+

Constructor & Destructor Documentation

+ +

◆ Input() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
Input::Input (aJsonObject * obj,
aJsonObject * configObj = NULL 
)
+
+ +
+
+ +

◆ Input() [2/2]

+ +
+
+ + + + + + + + +
Input::Input (char * name)
+
+ +
+
+

Member Function Documentation

+ +

◆ analogPoll()

+ +
+
+ + + + + +
+ + + + + + + + +
void Input::analogPoll (short cause)
+
+protected
+
+ +
+
+ +

◆ attachInterruptPinIrq()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void Input::attachInterruptPinIrq (int realPin,
int irq 
)
+
+protected
+
+ +
+
+ +

◆ changeState()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool Input::changeState (uint8_t newState,
short cause 
)
+
+protected
+
+ +
+
+ +

◆ contactPoll()

+ +
+
+ + + + + +
+ + + + + + + + +
void Input::contactPoll (short cause)
+
+protected
+
+ +
+
+ +

◆ counterPoll()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::counterPoll ()
+
+protected
+
+ +
+
+ +

◆ dht22Poll()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::dht22Poll ()
+
+protected
+
+ +
+
+ +

◆ getIdxField()

+ +
+
+ + + + + +
+ + + + + + + +
char * Input::getIdxField ()
+
+protected
+
+ +
+
+ +

◆ isValid()

+ +
+
+ + + + + + + +
boolean Input::isValid ()
+
+ +
+
+ +

◆ nextPollTime()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned long Input::nextPollTime () const
+
+protected
+
+ +
+
+ +

◆ onAnalogChanged()

+ +
+
+ + + + + + + + +
void Input::onAnalogChanged (float newValue)
+
+ +
+
+ +

◆ onContactChanged()

+ +
+
+ + + + + + + + +
void Input::onContactChanged (int newValue)
+
+ +
+
+ +

◆ onCounterChanged()

+ +
+
+ + + + + +
+ + + + + + + + +
void Input::onCounterChanged (int i)
+
+inlinestatic
+
+ +
+
+ +

◆ onCounterChanged0()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged0 ()
+
+static
+
+ +
+
+ +

◆ onCounterChanged1()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged1 ()
+
+static
+
+ +
+
+ +

◆ onCounterChanged2()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged2 ()
+
+static
+
+ +
+
+ +

◆ onCounterChanged3()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged3 ()
+
+static
+
+ +
+
+ +

◆ onCounterChanged4()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged4 ()
+
+static
+
+ +
+
+ +

◆ onCounterChanged5()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::onCounterChanged5 ()
+
+static
+
+ +
+
+ +

◆ Parse()

+ +
+
+ + + + + +
+ + + + + + + + +
void Input::Parse (aJsonObject * configObj = NULL)
+
+protected
+
+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + + + + +
int Input::Poll (short cause)
+
+ +
+
+ +

◆ publishDataToDomoticz()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bool Input::publishDataToDomoticz (int pollTimeIncrement,
aJsonObject * emit,
const char * format,
 ... 
)
+
+protected
+
+ +
+
+ +

◆ setNextPollTime()

+ +
+
+ + + + + +
+ + + + + + + + +
void Input::setNextPollTime (unsigned long pollTime)
+
+protected
+
+ +
+
+ +

◆ setup()

+ +
+
+ + + + + + + +
void Input::setup ()
+
+ +
+
+ +

◆ uptimePoll()

+ +
+
+ + + + + +
+ + + + + + + +
void Input::uptimePoll ()
+
+protected
+
+ +
+
+

Member Data Documentation

+ +

◆ inputObj

+ +
+
+ + + + +
aJsonObject* Input::inputObj
+
+ +
+
+ +

◆ inType

+ +
+
+ + + + +
uint8_t Input::inType
+
+ +
+
+ +

◆ pin

+ +
+
+ + + + +
uint8_t Input::pin
+
+ +
+
+ +

◆ store

+ +
+
+ + + + +
inStore* Input::store
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.cpp
  • +
+
+ + + + diff --git a/docs/html/class_item-members.html b/docs/html/class_item-members.html new file mode 100644 index 0000000..ead9706 --- /dev/null +++ b/docs/html/class_item-members.html @@ -0,0 +1,129 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
Item Member List
+
+
+ +

This is the complete list of members for Item, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
checkFM()Itemprotected
checkHeatRetry()Itemprotected
checkModbusDimmer()Itemprotected
checkModbusDimmer(int data)Itemprotected
checkModbusRetry()Itemprotected
checkVCRetry()Itemprotected
clearFlag(short flag)Item
Ctrl(itemCmd cmd, char *subItem=NULL)Item
Ctrl(char *payload, char *subItem=NULL)Item
defaultSubItemItemprotected
defaultSuffixCodeItemprotected
driverItem
getArg(short n=0)Item
getArgCount()Item
getChanType()Item
getCmd()Item
getExt()Item
getFlag(short flag=FLAG_MASK)Item
getPersistent()Item
getSubtype()Item
getVal()Item
isActive()Item
isValid()Item
Item(char *name)Item
Item(aJsonObject *obj)Item
itemArgItem
itemArrItem
itemExtItem
itemTypeItem
itemValItem
mb_fail()Itemprotected
modbusDimmerSet(itemCmd st)Itemprotected
modbusDimmerSet(int addr, uint16_t _reg, int _regType, int _mask, uint16_t value)Itemprotected
Off()Iteminline
On()Iteminline
Parse()Itemprotected
Poll(int cause)Item
sendDelayedStatus()Itemprotected
SendStatus(int sendFlags)Item
setCmd(uint8_t cmdValue)Item
setExt(long int par)Item
setFlag(short flag)Item
setPersistent(chPersistent *par)Item
setSubtype(uint8_t par)Item
Setup()Item
setVal(long int par)Item
Stop()Item
Toggle()Iteminline
VacomSetFan(itemCmd st)Itemprotected
VacomSetHeat(itemCmd st)Itemprotected
~Item()Item
+ + + + diff --git a/docs/html/class_item.html b/docs/html/class_item.html new file mode 100644 index 0000000..9161c21 --- /dev/null +++ b/docs/html/class_item.html @@ -0,0 +1,1267 @@ + + + + + + + +LightHub: Item Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <item.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Item (char *name)
 
 Item (aJsonObject *obj)
 
 ~Item ()
 
boolean isValid ()
 
boolean Setup ()
 
void Stop ()
 
int Ctrl (itemCmd cmd, char *subItem=NULL)
 
int Ctrl (char *payload, char *subItem=NULL)
 
int getArg (short n=0)
 
short getArgCount ()
 
long int getVal ()
 
uint8_t getSubtype ()
 
uint8_t getCmd ()
 
long int getExt ()
 
void setExt (long int par)
 
chPersistentgetPersistent ()
 
chPersistentsetPersistent (chPersistent *par)
 
void setCmd (uint8_t cmdValue)
 
short getFlag (short flag=FLAG_MASK)
 
void setFlag (short flag)
 
void clearFlag (short flag)
 
void setVal (long int par)
 
void setSubtype (uint8_t par)
 
int Poll (int cause)
 
int SendStatus (int sendFlags)
 
int isActive ()
 
int getChanType ()
 
int On ()
 
int Off ()
 
int Toggle ()
 
+ + + + + + + + + + + + + +

+Public Attributes

aJsonObject * itemArr
 
aJsonObject * itemArg
 
aJsonObject * itemVal
 
aJsonObject * itemExt
 
uint8_t itemType
 
abstractOutdriver
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

int VacomSetFan (itemCmd st)
 
int VacomSetHeat (itemCmd st)
 move to float todo More...
 
int modbusDimmerSet (itemCmd st)
 
int modbusDimmerSet (int addr, uint16_t _reg, int _regType, int _mask, uint16_t value)
 
void mb_fail ()
 
void Parse ()
 
int checkModbusDimmer ()
 
int checkModbusDimmer (int data)
 
boolean checkModbusRetry ()
 
boolean checkVCRetry ()
 
boolean checkHeatRetry ()
 
void sendDelayedStatus ()
 
int checkFM ()
 
+ + + + + +

+Protected Attributes

char defaultSubItem [10]
 
int defaultSuffixCode
 
+

Constructor & Destructor Documentation

+ +

◆ Item() [1/2]

+ +
+
+ + + + + + + + +
Item::Item (char * name)
+
+ +
+
+ +

◆ Item() [2/2]

+ +
+
+ + + + + + + + +
Item::Item (aJsonObject * obj)
+
+ +
+
+ +

◆ ~Item()

+ +
+
+ + + + + + + +
Item::~Item ()
+
+ +
+
+

Member Function Documentation

+ +

◆ checkFM()

+ +
+
+ + + + + +
+ + + + + + + +
int Item::checkFM ()
+
+protected
+
+ +
+
+ +

◆ checkHeatRetry()

+ +
+
+ + + + + +
+ + + + + + + +
boolean Item::checkHeatRetry ()
+
+protected
+
+ +
+
+ +

◆ checkModbusDimmer() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
int Item::checkModbusDimmer ()
+
+protected
+
+ +
+
+ +

◆ checkModbusDimmer() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
int Item::checkModbusDimmer (int data)
+
+protected
+
+ +
+
+ +

◆ checkModbusRetry()

+ +
+
+ + + + + +
+ + + + + + + +
boolean Item::checkModbusRetry ()
+
+protected
+
+ +
+
+ +

◆ checkVCRetry()

+ +
+
+ + + + + +
+ + + + + + + +
boolean Item::checkVCRetry ()
+
+protected
+
+ +
+
+ +

◆ clearFlag()

+ +
+
+ + + + + + + + +
void Item::clearFlag (short flag)
+
+ +
+
+ +

◆ Ctrl() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
int Item::Ctrl (char * payload,
char * subItem = NULL 
)
+
+

possible problem here with truncated default

+ +
+
+ +

◆ Ctrl() [2/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
int Item::Ctrl (itemCmd cmd,
char * subItem = NULL 
)
+
+

possible problem here with truncated default

+

thermoSet(name,cmd,Par1); all activities done - update temp & cmd

+ +
+
+ +

◆ getArg()

+ +
+
+ + + + + + + + +
int Item::getArg (short n = 0)
+
+ +
+
+ +

◆ getArgCount()

+ +
+
+ + + + + + + +
short Item::getArgCount ()
+
+ +
+
+ +

◆ getChanType()

+ +
+
+ + + + + + + +
int Item::getChanType ()
+
+ +
+
+ +

◆ getCmd()

+ +
+
+ + + + + + + +
uint8_t Item::getCmd ()
+
+ +
+
+ +

◆ getExt()

+ +
+
+ + + + + + + +
long int Item::getExt ()
+
+ +
+
+ +

◆ getFlag()

+ +
+
+ + + + + + + + +
short Item::getFlag (short flag = FLAG_MASK)
+
+ +
+
+ +

◆ getPersistent()

+ +
+
+ + + + + + + +
chPersistent * Item::getPersistent ()
+
+ +
+
+ +

◆ getSubtype()

+ +
+
+ + + + + + + +
uint8_t Item::getSubtype ()
+
+ +
+
+ +

◆ getVal()

+ +
+
+ + + + + + + +
long int Item::getVal ()
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + + + +
int Item::isActive ()
+
+ +
+
+ +

◆ isValid()

+ +
+
+ + + + + + + +
boolean Item::isValid ()
+
+ +
+
+ +

◆ mb_fail()

+ +
+
+ + + + + +
+ + + + + + + +
void Item::mb_fail ()
+
+protected
+
+ +
+
+ +

◆ modbusDimmerSet() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int Item::modbusDimmerSet (int addr,
uint16_t _reg,
int _regType,
int _mask,
uint16_t value 
)
+
+protected
+
+ +
+
+ +

◆ modbusDimmerSet() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
int Item::modbusDimmerSet (itemCmd st)
+
+protected
+
+ +
+
+ +

◆ Off()

+ +
+
+ + + + + +
+ + + + + + + +
int Item::Off ()
+
+inline
+
+ +
+
+ +

◆ On()

+ +
+
+ + + + + +
+ + + + + + + +
int Item::On ()
+
+inline
+
+ +
+
+ +

◆ Parse()

+ +
+
+ + + + + +
+ + + + + + + +
void Item::Parse ()
+
+protected
+
+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + + + + +
int Item::Poll (int cause)
+
+ +
+
+ +

◆ sendDelayedStatus()

+ +
+
+ + + + + +
+ + + + + + + +
void Item::sendDelayedStatus ()
+
+protected
+
+ +
+
+ +

◆ SendStatus()

+ +
+
+ + + + + + + + +
int Item::SendStatus (int sendFlags)
+
+

case CMD_SET:

+ +
+
+ +

◆ setCmd()

+ +
+
+ + + + + + + + +
void Item::setCmd (uint8_t cmdValue)
+
+ +
+
+ +

◆ setExt()

+ +
+
+ + + + + + + + +
void Item::setExt (long int par)
+
+ +
+
+ +

◆ setFlag()

+ +
+
+ + + + + + + + +
void Item::setFlag (short flag)
+
+ +
+
+ +

◆ setPersistent()

+ +
+
+ + + + + + + + +
chPersistent * Item::setPersistent (chPersistentpar)
+
+ +
+
+ +

◆ setSubtype()

+ +
+
+ + + + + + + + +
void Item::setSubtype (uint8_t par)
+
+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + + + +
boolean Item::Setup ()
+
+ +
+
+ +

◆ setVal()

+ +
+
+ + + + + + + + +
void Item::setVal (long int par)
+
+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + + + +
void Item::Stop ()
+
+ +
+
+ +

◆ Toggle()

+ +
+
+ + + + + +
+ + + + + + + +
int Item::Toggle ()
+
+inline
+
+ +
+
+ +

◆ VacomSetFan()

+ +
+
+ + + + + +
+ + + + + + + + +
int Item::VacomSetFan (itemCmd st)
+
+protected
+
+ +
+
+ +

◆ VacomSetHeat()

+ +
+
+ + + + + +
+ + + + + + + + +
int Item::VacomSetHeat (itemCmd st)
+
+protected
+
+ +

move to float todo

+ +
+
+

Member Data Documentation

+ +

◆ defaultSubItem

+ +
+
+ + + + + +
+ + + + +
char Item::defaultSubItem[10]
+
+protected
+
+ +
+
+ +

◆ defaultSuffixCode

+ +
+
+ + + + + +
+ + + + +
int Item::defaultSuffixCode
+
+protected
+
+ +
+
+ +

◆ driver

+ +
+
+ + + + +
abstractOut* Item::driver
+
+ +
+
+ +

◆ itemArg

+ +
+
+ + + + +
aJsonObject * Item::itemArg
+
+ +
+
+ +

◆ itemArr

+ +
+
+ + + + +
aJsonObject* Item::itemArr
+
+ +
+
+ +

◆ itemExt

+ +
+
+ + + + +
aJsonObject * Item::itemExt
+
+ +
+
+ +

◆ itemType

+ +
+
+ + + + +
uint8_t Item::itemType
+
+ +
+
+ +

◆ itemVal

+ +
+
+ + + + +
aJsonObject * Item::itemVal
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/item.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/item.cpp
  • +
+
+ + + + diff --git a/docs/html/class_streamlog-members.html b/docs/html/class_streamlog-members.html new file mode 100644 index 0000000..136d2c3 --- /dev/null +++ b/docs/html/class_streamlog-members.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
Streamlog Member List
+
+
+ +

This is the complete list of members for Streamlog, including all inherited members.

+ + + + + + + + + + +
available(void)Streamlog
begin(unsigned long speed)Streamlog
end()Streamlog
flush(void)Streamlog
operator bool()Streamloginline
peek(void)Streamlog
read(void)Streamlog
Streamlog(HardwareSerial *_serialPort, int _severity=LOG_DEBUG, uint8_t _ledPattern=0)Streamlog
write(uint8_t ch)Streamlog
+ + + + diff --git a/docs/html/class_streamlog.html b/docs/html/class_streamlog.html new file mode 100644 index 0000000..1636e94 --- /dev/null +++ b/docs/html/class_streamlog.html @@ -0,0 +1,298 @@ + + + + + + + +LightHub: Streamlog Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
Streamlog Class Reference
+
+
+ +

#include <streamlog.h>

+
+Inheritance diagram for Streamlog:
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Streamlog (HardwareSerial *_serialPort, int _severity=LOG_DEBUG, uint8_t _ledPattern=0)
 
void begin (unsigned long speed)
 
void end ()
 
int available (void)
 
int peek (void)
 
int read (void)
 
void flush (void)
 
size_t write (uint8_t ch)
 
 operator bool ()
 
+

Constructor & Destructor Documentation

+ +

◆ Streamlog()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Streamlog::Streamlog (HardwareSerial * _serialPort,
int _severity = LOG_DEBUG,
uint8_t _ledPattern = 0 
)
+
+ +
+
+

Member Function Documentation

+ +

◆ available()

+ +
+
+ + + + + + + + +
int Streamlog::available (void )
+
+ +
+
+ +

◆ begin()

+ +
+
+ + + + + + + + +
void Streamlog::begin (unsigned long speed)
+
+ +
+
+ +

◆ end()

+ +
+
+ + + + + + + +
void Streamlog::end ()
+
+ +
+
+ +

◆ flush()

+ +
+
+ + + + + + + + +
void Streamlog::flush (void )
+
+ +
+
+ +

◆ operator bool()

+ +
+
+ + + + + +
+ + + + + + + +
Streamlog::operator bool ()
+
+inline
+
+ +
+
+ +

◆ peek()

+ +
+
+ + + + + + + + +
int Streamlog::peek (void )
+
+ +
+
+ +

◆ read()

+ +
+
+ + + + + + + + +
int Streamlog::read (void )
+
+ +
+
+ +

◆ write()

+ +
+
+ + + + + + + + +
size_t Streamlog::write (uint8_t ch)
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.cpp
  • +
+
+ + + + diff --git a/docs/html/class_streamlog.png b/docs/html/class_streamlog.png new file mode 100644 index 0000000000000000000000000000000000000000..4a6a77521988d6a20ee6983144ffb55216b9fc8e GIT binary patch literal 381 zcmeAS@N?(olHy`uVBq!ia0vp^E!3-p)cPaA%DTx4|5ZC|z{{xvX-h3_XKQsZz z0^*zeQSfEz)Rr&TSM%w4z6+VHdDS$>x* zg=(4H(!mPzj>~%LIOxC34tiA2on1a_Qd|l91HHqOF27^g<6C$2mp$W)8LAVPIPPO; Y+O27F_M4&;Fsv9nUHx3vIVCg!0BBaA)Bpeg literal 0 HcmV?d00001 diff --git a/docs/html/classabstract_ch-members.html b/docs/html/classabstract_ch-members.html new file mode 100644 index 0000000..80fb18d --- /dev/null +++ b/docs/html/classabstract_ch-members.html @@ -0,0 +1,88 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
abstractCh Member List
+
+
+ +

This is the complete list of members for abstractCh, including all inherited members.

+ + + + + + + + + + + +
abstractCh()abstractChinline
Anounce()abstractChinlinevirtual
Poll(short cause)=0abstractChpure virtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup()=0abstractChpure virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classabstract_ch.html b/docs/html/classabstract_ch.html new file mode 100644 index 0000000..56a9127 --- /dev/null +++ b/docs/html/classabstract_ch.html @@ -0,0 +1,443 @@ + + + + + + + +LightHub: abstractCh Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
abstractCh Class Referenceabstract
+
+
+ +

#include <abstractch.h>

+
+Inheritance diagram for abstractCh:
+
+
+ + +abstractIn +abstractOut +in_ccs811 +in_hdc1080 +colorChannel +out_AC +out_Modbus +out_Motor +out_dmx +out_pwm +out_SPILed + +
+ + + + + + + + + + + + + + + + +

+Public Member Functions

 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Poll (short cause)=0
 
virtual int Setup ()=0
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + + + + + +

+Protected Member Functions

virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+

Constructor & Destructor Documentation

+ +

◆ abstractCh()

+ +
+
+ + + + + +
+ + + + + + + +
abstractCh::abstractCh ()
+
+inline
+
+ +
+
+ +

◆ ~abstractCh()

+ +
+
+ + + + + +
+ + + + + + + +
virtual abstractCh::~abstractCh ()
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +

◆ Anounce()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractCh::Anounce ()
+
+inlinevirtual
+
+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
virtual int abstractCh::Poll (short cause)
+
+pure virtual
+
+
+ +

◆ publishTopic() [1/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int abstractCh::publishTopic (const char * topic,
const char * value,
const char * subtopic = NULL 
)
+
+protectedvirtual
+
+ +
+
+ +

◆ publishTopic() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int abstractCh::publishTopic (const char * topic,
float value,
const char * subtopic = NULL 
)
+
+protectedvirtual
+
+ +
+
+ +

◆ publishTopic() [3/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int abstractCh::publishTopic (const char * topic,
long value,
const char * subtopic = NULL 
)
+
+protectedvirtual
+
+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractCh::Setup ()
+
+pure virtual
+
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractCh::Status ()
+
+inlinevirtual
+
+ +

Reimplemented in out_SPILed, out_pwm, out_Motor, out_Modbus, out_dmx, and out_AC.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractCh::Stop ()
+
+inlinevirtual
+
+ +

Reimplemented in out_SPILed, out_pwm, out_Motor, out_Modbus, out_dmx, and out_AC.

+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.cpp
  • +
+
+ + + + diff --git a/docs/html/classabstract_ch.png b/docs/html/classabstract_ch.png new file mode 100644 index 0000000000000000000000000000000000000000..d4c7a453c50055b449a40176992045a9e1843de3 GIT binary patch literal 2471 zcmb`J3pCqV9>)>WYAkIv|GrS0(PfvS%1N2rO zp-}k6w|xdcYDBp>xvGFk%GUYZ&0Ixg9gb{AbcK}@}^K!f0kkJ#50fnJ~(VxE2 zsA8WHSw7UMI<6@v%@-`2%I4|?0)bqeGT1$58{iEO9w;JF{EVm?$jN(1;^k~Nv~l^( z&WAo0yxy6CrD&Na;V!c2+zbReZKtAR{qd>ufgTL8AijaGr@OB)TlczwL57c08ENL? zo~KLJ{M!#|E@UL7HIEEOF8&SK^djPLmxE`JL)X`x9>$gCw}_X0+onj-)UitZC5?;n zQY5j4f8&zOOj=yA0kx-!4i998+$qK4^AlchefJwMQ)s-{k%8i~c_1!YK%eOK-L~ z(Q!pM?awI~Kk2hCe>b@yS6o10|CvBFCgX}oWb->n!`3xG9ChPjdh&p{icQDp0|^uaCzO-vAtPgxtnSi_qLvA zs=@>8#i||cj0+xK?{zeLW{GJEN!Fq)BCF7ucH7gJj%FUrd+}p*>bacGFyLat%P@Cf zlRr6l5@w&d0>sV|3i~_-2s_B0tp!912+SiQ5F7t3N-`a|AcVtGS+H^Ju#l_Ixaj2x z^*`s1uAN+fkcNE9Ue}?Zj;O(XpVPQ2bK=4K|R*ig_GLJ&0IZTya$aI zG!cIw*qaEiV%2pk)xg%viNCuj!~$<^o-3<}=mBiV_hm(9hON>s8|N{LEDtpKs4Nw! zWkhxlfic@w!|Hzgm*55e>i{1qFl@cS=XWq96=9}7RnOnrbXIFlEE43F?1@QBiuC;X zbrWKJEPiBsVT-q~wkYuCaMD_=SDAdwtd)LvM?dpUa_*2%cHLj5Zo?wmhxjVz{-qL9 z2CHnHcT62r8?~5$imR(%BW)Qx1n--svL`+wko~V2E?lXnN8hNVX3(m-E{GdAopJZA zgjqP(GZg}Fjh;Eaqzjz+KZHJcc8m&^nz{onLLV?B4s%hK!?? zmUl`P4VOP$J!eTUiIZ&0xnD6V5zvAI(O#1cIL&@2s^(|w1DdZcjCMq}nP%(vMXgNl zu4K#+@+s^+u^!y%)6Z6Pk@}LV-i5MMU+UQF4k`A-ex4K+7mH?=h+?pn)^Eksu>oBf z9memPP+TGT`aWZkxNQRYH>8R~Lz>7?f^;O{Ub~1EjAMrKq~u3_dF`RO{Ipn`(AlZo z@Q&g+2wr*FdaZwQuotz|F~y)~t#2xPe$Ctj+H54MT^$6H>6-v@j_q!zFZ`#qE_wS8k8mM;iADOx4Kozt=t@uOG$h_Pi*^w6c?- zrPqq{xYJ`Cj6(~uzi&w&=ACjw$0pI?6~}iHwD&INg@qE5r`%vYVX3dUJ=-&$kZBSX z!tp%`4{pPu?Ac{zF2-c{)4mX(MmEGACMrX=XGJQdA9`ifigVVU$yXQ@&3q_5g^o=W z0m9ouiTf3M;nkV4ElTDqM*#BOi%Dh$;3~vYHCjM1(tyjEA)JET!5C^n{7r@GTTbV2 U8!_4!{8g!tk2u-!NPda`0ODJJr~m)} literal 0 HcmV?d00001 diff --git a/docs/html/classabstract_in-members.html b/docs/html/classabstract_in-members.html new file mode 100644 index 0000000..8f6e9c3 --- /dev/null +++ b/docs/html/classabstract_in-members.html @@ -0,0 +1,94 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
abstractIn Member List
+
+
+ +

This is the complete list of members for abstractIn, including all inherited members.

+ + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractIn(Input *_in)abstractIninline
Anounce()abstractChinlinevirtual
inabstractInprotected
InputabstractInprotected
Poll(short cause)=0abstractChpure virtual
publish(long value, const char *subtopic=NULL)abstractInprotected
publish(float value, const char *subtopic=NULL)abstractInprotected
publish(char *value, const char *subtopic=NULL)abstractInprotected
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup()=0abstractChpure virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classabstract_in.html b/docs/html/classabstract_in.html new file mode 100644 index 0000000..e7dc983 --- /dev/null +++ b/docs/html/classabstract_in.html @@ -0,0 +1,322 @@ + + + + + + + +LightHub: abstractIn Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <abstractin.h>

+
+Inheritance diagram for abstractIn:
+
+
+ + +abstractCh +in_ccs811 +in_hdc1080 + +
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 abstractIn (Input *_in)
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Poll (short cause)=0
 
virtual int Setup ()=0
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + + + + + + + + + + + + +

+Protected Member Functions

int publish (long value, const char *subtopic=NULL)
 
int publish (float value, const char *subtopic=NULL)
 
int publish (char *value, const char *subtopic=NULL)
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + + +

+Protected Attributes

Inputin
 
friend Input
 
+

Constructor & Destructor Documentation

+ +

◆ abstractIn()

+ +
+
+ + + + + +
+ + + + + + + + +
abstractIn::abstractIn (Input_in)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ publish() [1/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int abstractIn::publish (char * value,
const char * subtopic = NULL 
)
+
+protected
+
+ +
+
+ +

◆ publish() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int abstractIn::publish (float value,
const char * subtopic = NULL 
)
+
+protected
+
+ +
+
+ +

◆ publish() [3/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int abstractIn::publish (long value,
const char * subtopic = NULL 
)
+
+protected
+
+ +
+
+

Member Data Documentation

+ +

◆ in

+ +
+
+ + + + + +
+ + + + +
Input* abstractIn::in
+
+protected
+
+ +
+
+ +

◆ Input

+ +
+
+ + + + + +
+ + + + +
friend abstractIn::Input
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.cpp
  • +
+
+ + + + diff --git a/docs/html/classabstract_in.png b/docs/html/classabstract_in.png new file mode 100644 index 0000000000000000000000000000000000000000..fe22bdefb27c716ece42a4852fdb367f4f7ecf35 GIT binary patch literal 793 zcmeAS@N?(olHy`uVBq!ia0vp^%Ye9pgBeIheMkUN5&=FTuK)l42Qpv0`C8h4XabN0 z#s>}@VC}pk59D%`1o;Is02P72)l(rx3=B*wJY5_^Dj46+ecQL%fQME6xX}CmC#F9& zX54lA+dQX|I$$Wm@tY;yMFXr5RcEBj7+v5DZTVJlN$jZO`&~0<2 ziC@;QRhHk1YPqKGTy1*$*tX_nNA53-TvByA>stAxJ6C6F*Z$Dcu8mc={Aykt+v9b$ zI-lY-Od01aQETYF!ctHuezt={nj!oWV~zdy3vYHsSKM>nynRpeb6=CO=7 zaz0QpWsHGpm^h0;FG%=+YZlWE6v+egrv!EJH}of*odZ#Ebmc7H7eA)|esR$yD=%)5 zb4Cs0zc=k3@-v<gVgV;hAw6zmm^>pIx^ut@>DbX5M_?`Oglge-1sn zc;nr8_LnrVR| b`aeT^lu_>Cm*u9wbj;xC>gTe~DWM4fV5ogE literal 0 HcmV?d00001 diff --git a/docs/html/classabstract_out-members.html b/docs/html/classabstract_out-members.html new file mode 100644 index 0000000..52a81d8 --- /dev/null +++ b/docs/html/classabstract_out-members.html @@ -0,0 +1,94 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
abstractOut Member List
+
+
+ +

This is the complete list of members for abstractOut, including all inherited members.

+ + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true)=0abstractOutpure virtual
getChanType()abstractOutinlinevirtual
getDefaultOnVal()abstractOutinlinevirtual
isActive()abstractOutinlinevirtual
itemabstractOutprotected
Poll(short cause)=0abstractChpure virtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup()=0abstractChpure virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classabstract_out.html b/docs/html/classabstract_out.html new file mode 100644 index 0000000..0bfb02d --- /dev/null +++ b/docs/html/classabstract_out.html @@ -0,0 +1,318 @@ + + + + + + + +LightHub: abstractOut Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
abstractOut Class Referenceabstract
+
+
+ +

#include <abstractout.h>

+
+Inheritance diagram for abstractOut:
+
+
+ + +abstractCh +colorChannel +out_AC +out_Modbus +out_Motor +out_dmx +out_pwm +out_SPILed + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 abstractOut (Item *_item)
 
virtual int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true)=0
 
virtual int isActive ()
 
virtual int getDefaultOnVal ()
 
virtual int getChanType ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Poll (short cause)=0
 
virtual int Setup ()=0
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + +

+Protected Attributes

Itemitem
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+

Constructor & Destructor Documentation

+ +

◆ abstractOut()

+ +
+
+ + + + + +
+ + + + + + + + +
abstractOut::abstractOut (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Ctrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual int abstractOut::Ctrl (itemCmd cmd,
char * subItem = NULL,
bool toExecute = true 
)
+
+pure virtual
+
+ +

Implemented in out_Motor, out_Modbus, out_AC, and colorChannel.

+ +
+
+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractOut::getChanType ()
+
+inlinevirtual
+
+ +

Reimplemented in out_SPILed, out_pwm, out_Motor, out_Modbus, and out_dmx.

+ +
+
+ +

◆ getDefaultOnVal()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractOut::getDefaultOnVal ()
+
+inlinevirtual
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
virtual int abstractOut::isActive ()
+
+inlinevirtual
+
+ +

Reimplemented in out_SPILed, out_pwm, out_Motor, out_Modbus, out_dmx, and out_AC.

+ +
+
+

Member Data Documentation

+ +

◆ item

+ +
+
+ + + + + +
+ + + + +
Item* abstractOut::item
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following file:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h
  • +
+
+ + + + diff --git a/docs/html/classabstract_out.png b/docs/html/classabstract_out.png new file mode 100644 index 0000000000000000000000000000000000000000..8dbcd47d7f1cf3df24d0bc6105e94e09795fd1d2 GIT binary patch literal 1893 zcmb_deN<9u9>xz^65Pfdku0Gmw5BvkS0h8L)EpWG`x=Xb8f|H9j%Xi*f|7KiH79MM zvJaJJ%$S+-qtTHxF_B5uO2NfM)9kvMW(HnGg#=}{Gt-%W_MUU^^StkQ&v}2( z^LyU+=EP7Vot-?KU@(|7<%{s0Fqj;(ZPCTe$t&1Qq>>$g)U^P4V0 z?ETx=*a*+*#X&>FiJjD4Flf>I^X&0%e;91RBqe;yZjPP)g`Qm({7GcL3U@T!R=~5y z?v5EREsHFqK0&+U9je4Fv1TqxNvO9!478#s6PD`zdmVf+PFlgYgbxr4XQ7uG`&tcS zGk$c!-E0Y>@5>ZLCB4lNcV$pFGHSe&q)WRW#C}W8i(eGVQdIg62~;O*Ph|xE*;6&d z>&KSY?BBbjz$?RWZ09#gQyg#ePZwp-E(KmQcuqn(?SX!rjufhaj2yDZjpqh8l%)9# z7d&g#*3Iv-?#s!xX9m8{;{nyT;bVHqk0!Gmt_F{I}5mEn7)IRlq#V z%WE{7qv?c>Ll3@I##}+8PIkY8$YnID^oTs>DjIe6h~obaxaP#F?)Q$?|1)^Op< z;c*R?x58Fko+N|1>ptw2p}S|nR=0C6OW(+CbI&}ypq9A#`L_$0&ei)@MJSLoR-mtO4%;{H?Xb)_Y!97q>GsrCCY|u4nCvwMuFYCNOVdjVWW8Oxx)bpnN&N4K>n5L%I9h2K#Oxy0MNOKB4$-LNeoT+D@g{%sA1qubQyOMpIBGa!H>N zDGl$P?-UpEpG-BMkM`e$Jr53ErFg4c$G}#iTp&J}9j{20Q28Q8DSTCny)TghwH}&9 zqf8@{t6KKZQ$;=+fp`#W%LSMip}WRK$ix`z)*e7Qcie)9#nto#p$^Rlvgl;>!6GmotaKfS2*4Jo7Nn1(W}ir;y3HNOu9kmWT#T*KUVW zvLv=Zd){hDL;1gc)o}DCBqnNt@OU;nICZ#CGVcSAgwU| ze7~xAKAm@IpiXw?+3Y(%B)M(E(=v8$E;G@4N!^db@iXqtHXZTAn36G-8qoA_jr(`` zah3%AOFauw+)=qtXbYTP78QD9ZqooRQN2SG@q8>|ugA>Mw|4}z(4wb<57!cJ6y{Z3 zvNFJK^M)afR-ig3?>#eosv1zckt&|7QgC1Sa&~MM6^`#xNcAR}BW=5}7U;gfj|Q13 zY7t`H59G4e$>gjWS#1syvBPya!)L%6k{B*npj_ zG!+lM=?at&#9%TbX`@gMJI=u8$h+ui&4MuFWaUet!oiOH58w z5qHu_7+ARuO3`v(j6nA+K>kQ P6JeAHYIyn9{eu4hbJ&#@ literal 0 HcmV?d00001 diff --git a/docs/html/classch_persistent.html b/docs/html/classch_persistent.html new file mode 100644 index 0000000..fb96acb --- /dev/null +++ b/docs/html/classch_persistent.html @@ -0,0 +1,89 @@ + + + + + + + +LightHub: chPersistent Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
chPersistent Class Reference
+
+
+ +

#include <abstractout.h>

+
+Inheritance diagram for chPersistent:
+
+
+ + +mbPersistent + +
+
The documentation for this class was generated from the following file:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h
  • +
+
+ + + + diff --git a/docs/html/classch_persistent.png b/docs/html/classch_persistent.png new file mode 100644 index 0000000000000000000000000000000000000000..009c70f883c6a2403f75c76c383cc833ec2307f6 GIT binary patch literal 462 zcmV;<0WtoGP)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d00049Nkl9}Nm%mS)CVIGC8j$_HUT<*TFM7D=L;B!i2m6`YN(aLNnV1xBJ1Jk3=5?Z-r z$Mo(SW<3yh7QSlt=3kjZ)E9Y`)1T+abTa7dw)Zl_CSK=0_U`6hMm4|p$pnbfOH4Df zSOGlK0uZbhn9C9meSx_m!=Z05|IOSd6ChBN2@t2r1c=jQ0>o)D0pc{70AH0-N{_Up zl+q)SBq>yrDM@h}nUl9J}q^z4=$>FgjnP8|W>w+1>YU zQfJS4uf68x>wl~5-Oas}GrxC93e{vvQk+(1N-4$a4}m!nG>gyU%K!iX07*qoM6N<$ Ef);bxi2wiq literal 0 HcmV?d00001 diff --git a/docs/html/classcolor_channel-members.html b/docs/html/classcolor_channel-members.html new file mode 100644 index 0000000..3585954 --- /dev/null +++ b/docs/html/classcolor_channel-members.html @@ -0,0 +1,99 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
colorChannel Member List
+
+
+ +

This is the complete list of members for colorChannel, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
colorChannel(Item *_item)colorChannelinline
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overridecolorChannelvirtual
getChannelAddr(short n=0)colorChannel
getChanType()abstractOutinlinevirtual
getDefaultOnVal()abstractOutinlinevirtual
iaddrcolorChannelprotected
isActive()abstractOutinlinevirtual
itemabstractOutprotected
numArgscolorChannelprotected
PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true)=0colorChannelpure virtual
Poll(short cause)=0abstractChpure virtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup()=0abstractChpure virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classcolor_channel.html b/docs/html/classcolor_channel.html new file mode 100644 index 0000000..069a2a2 --- /dev/null +++ b/docs/html/classcolor_channel.html @@ -0,0 +1,333 @@ + + + + + + + +LightHub: colorChannel Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
colorChannel Class Referenceabstract
+
+
+ +

#include <colorchannel.h>

+
+Inheritance diagram for colorChannel:
+
+
+ + +abstractOut +abstractCh +out_dmx +out_pwm +out_SPILed + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 colorChannel (Item *_item)
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
virtual int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true)=0
 
short getChannelAddr (short n=0)
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int isActive ()
 
virtual int getDefaultOnVal ()
 
virtual int getChanType ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Poll (short cause)=0
 
virtual int Setup ()=0
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + + + + + + +

+Protected Attributes

short iaddr
 
short numArgs
 
- Protected Attributes inherited from abstractOut
Itemitem
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+

Constructor & Destructor Documentation

+ +

◆ colorChannel()

+ +
+
+ + + + + +
+ + + + + + + + +
colorChannel::colorChannel (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Ctrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int colorChannel::Ctrl (itemCmd cmd,
char * subItem = NULL,
bool toExecute = true 
)
+
+overridevirtual
+
+ +

Implements abstractOut.

+ +
+
+ +

◆ getChannelAddr()

+ +
+
+ + + + + + + + +
short colorChannel::getChannelAddr (short n = 0)
+
+ +
+
+ +

◆ PixelCtrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual int colorChannel::PixelCtrl (itemCmd cmd,
char * subItem = NULL,
bool show = true 
)
+
+pure virtual
+
+ +

Implemented in out_SPILed, out_pwm, and out_dmx.

+ +
+
+

Member Data Documentation

+ +

◆ iaddr

+ +
+
+ + + + + +
+ + + + +
short colorChannel::iaddr
+
+protected
+
+ +
+
+ +

◆ numArgs

+ +
+
+ + + + + +
+ + + + +
short colorChannel::numArgs
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/docs/html/classcolor_channel.png b/docs/html/classcolor_channel.png new file mode 100644 index 0000000000000000000000000000000000000000..95377064a05a8d8e29a301e8d3571f7b8786afb0 GIT binary patch literal 1369 zcmeAS@N?(olHy`uVBq!ia0y~yV3Yx}4{$I8$%hMdjDVCxfKQ0)|NsAi%olIImi8Z- z0AzvjfddCvJMYK?xf~@ye!&btMIdnXR0vQX%L`8z$B+ufw|8$BZSrDpdFbjd`u_ik z+460NHDpb_vbg8&FzGqa1ADlaraQ}rucDs6Y7S0R2`*4MDI()(#OglDNB!8# zH%`{Kc!zr}Wvf%?#!mabuJdx7)mx`xt60h9lehIp&siIvT={SJ z)gQa>tiASf+r5Racyp_=^!I%BKQZY`8Jbg&xN}*SPYL4Vco6iJf%Cz>2Mlknf4|6h zL)U`gH?J9xp>4si?E=G$Cgub#z6MPThGh?^z|m_D#u-Y>k3vJ~-Q@7&GaJ@58_(ss z`@u^0>cqr^y7hcK{#TP~s(+medtL(%DyK8`cl+l4-L%X0##5#&mUSJ*z8g2Y?>#o_ z<@a3{Z&$*ZCDW1O^ zkirENV@TYA38u@XvE?od@%J6w1!Wk53mAM3G8(Y5A1Fzhv-@Dx|H?-bUc2kH80+!- zhaa8k*Za#TjQ!aCr-$Dz-=;r%{XE{~a@T)tlFIGdqIYKgD(|-sJPV~3v!+)sdAqWZ zU20C%$-Ar9G*3TP`Dn_{6LX5Iw^u!S>Quhk>dqXm!H9}(~o?#{oJpk;RR`z%g#meJ)ADQDYo8Nc7JE__Sg0g_82|iBK+gr-B-Rc z+yA}H`zm&hfA_vS$EN)+maTf5r|OyimBW2fnUV1fmAl_g>v~+8Y};)twfkiFq`d0F z>(9T+Z)lxfZkyhxV*BcUo3f|B7_=yY2GSRGi=|VF9A?MrFP*|{Rmc6GF*qwutf}1X R46qzz@O1TaS?83{1OU{TaQ6TJ literal 0 HcmV?d00001 diff --git a/docs/html/classes.html b/docs/html/classes.html new file mode 100644 index 0000000..b777c17 --- /dev/null +++ b/docs/html/classes.html @@ -0,0 +1,132 @@ + + + + + + + +LightHub: Class Index + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class Index
+
+
+
a | c | i | m | o | r | s | u
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  a  
+
  i  
+
itemCmdStore   out_Motor   statusLED   
  m  
+
out_pwm   Streamlog   
abstractCh   in_ccs811   out_SPILed   
  u  
+
abstractIn   in_hdc1080   mbPersistent   
  r  
+
abstractOut   Input   
  o  
+
UID   
  c  
+
inStore   readCache   
Item   out_AC   reg_t   
chPersistent   itemArgStore   out_dmx   
  s  
+
colorChannel   itemCmd   out_Modbus   
serial_t   
+
a | c | i | m | o | r | s | u
+
+ + + + diff --git a/docs/html/classin__ccs811-members.html b/docs/html/classin__ccs811-members.html new file mode 100644 index 0000000..494d98f --- /dev/null +++ b/docs/html/classin__ccs811-members.html @@ -0,0 +1,97 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
in_ccs811 Member List
+
+
+ +

This is the complete list of members for in_ccs811, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractIn(Input *_in)abstractIninline
Anounce()abstractChinlinevirtual
inabstractInprotected
in_ccs811(Input *_in)in_ccs811inline
InputabstractInprotected
Poll(short cause) overridein_ccs811virtual
printDriverError(CCS811Core::status errorCode)in_ccs811protected
printSensorError()in_ccs811protected
publish(long value, const char *subtopic=NULL)abstractInprotected
publish(float value, const char *subtopic=NULL)abstractInprotected
publish(char *value, const char *subtopic=NULL)abstractInprotected
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overridein_ccs811virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classin__ccs811.html b/docs/html/classin__ccs811.html new file mode 100644 index 0000000..404e0c7 --- /dev/null +++ b/docs/html/classin__ccs811.html @@ -0,0 +1,282 @@ + + + + + + + +LightHub: in_ccs811 Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <in_ccs811_hdc1080.h>

+
+Inheritance diagram for in_ccs811:
+
+
+ + +abstractIn +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 in_ccs811 (Input *_in)
 
int Setup () override
 
int Poll (short cause) override
 
- Public Member Functions inherited from abstractIn
 abstractIn (Input *_in)
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

void printDriverError (CCS811Core::status errorCode)
 
void printSensorError ()
 
- Protected Member Functions inherited from abstractIn
int publish (long value, const char *subtopic=NULL)
 
int publish (float value, const char *subtopic=NULL)
 
int publish (char *value, const char *subtopic=NULL)
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from abstractIn
Inputin
 
friend Input
 
+

Constructor & Destructor Documentation

+ +

◆ in_ccs811()

+ +
+
+ + + + + +
+ + + + + + + + +
in_ccs811::in_ccs811 (Input_in)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int in_ccs811::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ printDriverError()

+ +
+
+ + + + + +
+ + + + + + + + +
void in_ccs811::printDriverError (CCS811Core::status errorCode)
+
+protected
+
+ +
+
+ +

◆ printSensorError()

+ +
+
+ + + + + +
+ + + + + + + +
void in_ccs811::printSensorError ()
+
+protected
+
+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int in_ccs811::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/docs/html/classin__ccs811.png b/docs/html/classin__ccs811.png new file mode 100644 index 0000000000000000000000000000000000000000..fef33a7047dd377c6e60a12e74ede04358d18cad GIT binary patch literal 572 zcmeAS@N?(olHy`uVBq!ia0vp^o&2XZ+|g8YIRfQmri>ZuST1_s8{o-U3d6^w7^UhI3Vz~jQ-JmvrYC*Hye z7P(w&_XL$bou-(b%x8A*?7m6G=k%1kCp9;zcoxTczPz^KUWlF9BkxO&yA`)Oe>-mX ze%_;u?5lyx_%a?UubfwsW9MF6a(UUMu=Q7O`Z~)l6LGdu_9<0=>G5mN#C_WwHiFe?M4JvCjJSLfhD?XjGxt(FzErysU zZnwGW|*Q}a% zr51nBeAw@yX?rcWQZDSPh=dG4z z%35jqD<)duCfAxop;$H5OquXYmv8yL|Cay$ZsqE=@n?U}Q}K+~20H9|z5gl8bbdyk zug(9@Za>TY)J;o4eTw``^=fgI23A(igmnsxXGCG{Q&>7B#)YXM0O(LF&+H@a{cSH2 zFSlFTHg#*QPn=(@b?n5}kH7DHF(J> + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
in_hdc1080 Member List
+
+
+ +

This is the complete list of members for in_hdc1080, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractIn(Input *_in)abstractIninline
Anounce()abstractChinlinevirtual
inabstractInprotected
in_hdc1080(Input *_in)in_hdc1080inline
InputabstractInprotected
Poll(short cause) overridein_hdc1080virtual
printSerialNumber()in_hdc1080protected
publish(long value, const char *subtopic=NULL)abstractInprotected
publish(float value, const char *subtopic=NULL)abstractInprotected
publish(char *value, const char *subtopic=NULL)abstractInprotected
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overridein_hdc1080virtual
Status()abstractChinlinevirtual
Stop()abstractChinlinevirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classin__hdc1080.html b/docs/html/classin__hdc1080.html new file mode 100644 index 0000000..bfbd5d5 --- /dev/null +++ b/docs/html/classin__hdc1080.html @@ -0,0 +1,254 @@ + + + + + + + +LightHub: in_hdc1080 Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <in_ccs811_hdc1080.h>

+
+Inheritance diagram for in_hdc1080:
+
+
+ + +abstractIn +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 in_hdc1080 (Input *_in)
 
int Setup () override
 
int Poll (short cause) override
 
- Public Member Functions inherited from abstractIn
 abstractIn (Input *_in)
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
virtual int Stop ()
 
virtual int Status ()
 
+ + + + + + + + + + + + + + + + + +

+Protected Member Functions

void printSerialNumber ()
 
- Protected Member Functions inherited from abstractIn
int publish (long value, const char *subtopic=NULL)
 
int publish (float value, const char *subtopic=NULL)
 
int publish (char *value, const char *subtopic=NULL)
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from abstractIn
Inputin
 
friend Input
 
+

Constructor & Destructor Documentation

+ +

◆ in_hdc1080()

+ +
+
+ + + + + +
+ + + + + + + + +
in_hdc1080::in_hdc1080 (Input_in)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int in_hdc1080::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ printSerialNumber()

+ +
+
+ + + + + +
+ + + + + + + +
void in_hdc1080::printSerialNumber ()
+
+protected
+
+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int in_hdc1080::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/docs/html/classin__hdc1080.png b/docs/html/classin__hdc1080.png new file mode 100644 index 0000000000000000000000000000000000000000..ef95b915231ce67d488c765825004829e4471d21 GIT binary patch literal 580 zcmeAS@N?(olHy`uVBq!ia0vp^en8y8!3-qpj_S4nDTx4|5ZC|z{{xvX-h3_XKQsZz z0^%bqTdAr*{o=e}OI*no#kz3<3x`%lj% za2qbaCt~nhYzS?@VCR@y>o;Nz&v-*T}Onlz{ zH_z_|%h+C%d1|6j`>QECJM56*uH+e3E9Lg;gxOn8U8)squ~l_>5`WCvhc}iAR(D-y z&2(P+hi|&ev%+I%wO3tTZ?#)~@#f=h+w-dCe6;QC)aTvWCjRq`-<`IWwqRI{; zF7x&P_2V+DzuVi!=xx6l`{>u_&|gL8*4@!|i{EuFf1~&gu~(g6cHXu3IJ_#m=8WIN zX*~DRzWYD2dpDP{{AT3g?|cuohQ-tuGVTf6vw$JzS5=Ic=FXS=SArCkO`mHn21Yr9 Mr>mdKI;Vst02q)B9RL6T literal 0 HcmV?d00001 diff --git a/docs/html/classitem_cmd-members.html b/docs/html/classitem_cmd-members.html new file mode 100644 index 0000000..0c77d1a --- /dev/null +++ b/docs/html/classitem_cmd-members.html @@ -0,0 +1,117 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
itemCmd Member List
+
+
+ +

This is the complete list of members for itemCmd, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
assignFrom(itemCmd from)itemCmd
cmditemCmd
Cmd(uint8_t i)itemCmd
debugOut()itemCmd
getArgType()itemCmd
getCmd()itemCmd
getCmdParam()itemCmd
getH()itemCmd
getInt()itemCmd
getPercents(bool inverse=false)itemCmd
getPercents255(bool inverse=false)itemCmd
getS()itemCmd
getSuffix()itemCmd
HS(uint16_t h, uint8_t s)itemCmd
HSV(uint16_t h, uint8_t s, uint8_t v)itemCmd
incrementH(int16_t)itemCmd
incrementPercents(int16_t)itemCmd
incrementS(int16_t)itemCmd
Int(int32_t i)itemCmd
Int(uint32_t i)itemCmd
isColor()itemCmd
isCommand()itemCmd
isValue()itemCmd
itemCmd(uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)itemCmd
itemCmd(float val)itemCmd
loadItem(Item *item, bool includeCommand=false)itemCmd
paramitemCmd
Percents(int i)itemCmd
Percents255(int i)itemCmd
RGB(uint8_t r, uint8_t g, uint8_t b)itemCmd
RGBW(uint8_t r, uint8_t g, uint8_t b, uint8_t w)itemCmd
saveItem(Item *item, bool includeCommand=false)itemCmd
setArgType(uint8_t)itemCmd
setChanType(short chanType)itemCmd
setDefault()itemCmd
setH(uint16_t)itemCmd
setS(uint8_t)itemCmd
setSuffix(uint8_t suffix)itemCmd
toString(char *Buffer, int bufLen, int sendFlags=SEND_COMMAND|SEND_PARAMETERS)itemCmd
+ + + + diff --git a/docs/html/classitem_cmd.html b/docs/html/classitem_cmd.html new file mode 100644 index 0000000..ef4044d --- /dev/null +++ b/docs/html/classitem_cmd.html @@ -0,0 +1,965 @@ + + + + + + + +LightHub: itemCmd Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
itemCmd Class Reference
+
+
+ +

#include <itemCmd.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 itemCmd (uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)
 
 itemCmd (float val)
 
itemCmd assignFrom (itemCmd from)
 
bool loadItem (Item *item, bool includeCommand=false)
 
bool saveItem (Item *item, bool includeCommand=false)
 
itemCmd Int (int32_t i)
 
itemCmd Int (uint32_t i)
 
itemCmd Cmd (uint8_t i)
 
itemCmd HSV (uint16_t h, uint8_t s, uint8_t v)
 
itemCmd HS (uint16_t h, uint8_t s)
 
itemCmd RGB (uint8_t r, uint8_t g, uint8_t b)
 
itemCmd RGBW (uint8_t r, uint8_t g, uint8_t b, uint8_t w)
 
bool setH (uint16_t)
 
bool setS (uint8_t)
 
uint16_t getH ()
 
uint16_t getS ()
 
itemCmd setArgType (uint8_t)
 
itemCmd Percents (int i)
 
itemCmd Percents255 (int i)
 
uint8_t getSuffix ()
 
itemCmd setSuffix (uint8_t suffix)
 
bool incrementPercents (int16_t)
 
bool incrementH (int16_t)
 
bool incrementS (int16_t)
 
long int getInt ()
 
short getPercents (bool inverse=false)
 
short getPercents255 (bool inverse=false)
 
uint8_t getCmd ()
 
uint8_t getArgType ()
 
uint8_t getCmdParam ()
 
char * toString (char *Buffer, int bufLen, int sendFlags=SEND_COMMAND|SEND_PARAMETERS)
 
bool isCommand ()
 
bool isValue ()
 
bool isColor ()
 
itemCmd setDefault ()
 
itemCmd setChanType (short chanType)
 
void debugOut ()
 
+ + + + + +

+Public Attributes

itemCmdStore cmd
 
itemArgStore param
 
+

Constructor & Destructor Documentation

+ +

◆ itemCmd() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
itemCmd::itemCmd (uint8_t _type = ST_VOID,
uint8_t _code = CMD_VOID 
)
+
+ +
+
+ +

◆ itemCmd() [2/2]

+ +
+
+ + + + + + + + +
itemCmd::itemCmd (float val)
+
+ +
+
+

Member Function Documentation

+ +

◆ assignFrom()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::assignFrom (itemCmd from)
+
+ +
+
+ +

◆ Cmd()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::Cmd (uint8_t i)
+
+ +
+
+ +

◆ debugOut()

+ +
+
+ + + + + + + +
void itemCmd::debugOut ()
+
+ +
+
+ +

◆ getArgType()

+ +
+
+ + + + + + + +
uint8_t itemCmd::getArgType ()
+
+ +
+
+ +

◆ getCmd()

+ +
+
+ + + + + + + +
uint8_t itemCmd::getCmd ()
+
+ +
+
+ +

◆ getCmdParam()

+ +
+
+ + + + + + + +
uint8_t itemCmd::getCmdParam ()
+
+ +
+
+ +

◆ getH()

+ +
+
+ + + + + + + +
uint16_t itemCmd::getH ()
+
+ +
+
+ +

◆ getInt()

+ +
+
+ + + + + + + +
long int itemCmd::getInt ()
+
+ +
+
+ +

◆ getPercents()

+ +
+
+ + + + + + + + +
short itemCmd::getPercents (bool inverse = false)
+
+ +
+
+ +

◆ getPercents255()

+ +
+
+ + + + + + + + +
short itemCmd::getPercents255 (bool inverse = false)
+
+ +
+
+ +

◆ getS()

+ +
+
+ + + + + + + +
uint16_t itemCmd::getS ()
+
+ +
+
+ +

◆ getSuffix()

+ +
+
+ + + + + + + +
uint8_t itemCmd::getSuffix ()
+
+ +
+
+ +

◆ HS()

+ +
+
+ + + + + + + + + + + + + + + + + + +
itemCmd itemCmd::HS (uint16_t h,
uint8_t s 
)
+
+ +
+
+ +

◆ HSV()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
itemCmd itemCmd::HSV (uint16_t h,
uint8_t s,
uint8_t v 
)
+
+ +
+
+ +

◆ incrementH()

+ +
+
+ + + + + + + + +
bool itemCmd::incrementH (int16_t dif)
+
+ +
+
+ +

◆ incrementPercents()

+ +
+
+ + + + + + + + +
bool itemCmd::incrementPercents (int16_t dif)
+
+ +
+
+ +

◆ incrementS()

+ +
+
+ + + + + + + + +
bool itemCmd::incrementS (int16_t dif)
+
+ +
+
+ +

◆ Int() [1/2]

+ +
+
+ + + + + + + + +
itemCmd itemCmd::Int (int32_t i)
+
+ +
+
+ +

◆ Int() [2/2]

+ +
+
+ + + + + + + + +
itemCmd itemCmd::Int (uint32_t i)
+
+ +
+
+ +

◆ isColor()

+ +
+
+ + + + + + + +
bool itemCmd::isColor ()
+
+ +
+
+ +

◆ isCommand()

+ +
+
+ + + + + + + +
bool itemCmd::isCommand ()
+
+ +
+
+ +

◆ isValue()

+ +
+
+ + + + + + + +
bool itemCmd::isValue ()
+
+ +
+
+ +

◆ loadItem()

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool itemCmd::loadItem (Itemitem,
bool includeCommand = false 
)
+
+ +
+
+ +

◆ Percents()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::Percents (int i)
+
+ +
+
+ +

◆ Percents255()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::Percents255 (int i)
+
+ +
+
+ +

◆ RGB()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
itemCmd itemCmd::RGB (uint8_t r,
uint8_t g,
uint8_t b 
)
+
+ +
+
+ +

◆ RGBW()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
itemCmd itemCmd::RGBW (uint8_t r,
uint8_t g,
uint8_t b,
uint8_t w 
)
+
+ +
+
+ +

◆ saveItem()

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool itemCmd::saveItem (Itemitem,
bool includeCommand = false 
)
+
+ +
+
+ +

◆ setArgType()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::setArgType (uint8_t type)
+
+ +
+
+ +

◆ setChanType()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::setChanType (short chanType)
+
+ +
+
+ +

◆ setDefault()

+ +
+
+ + + + + + + +
itemCmd itemCmd::setDefault ()
+
+ +
+
+ +

◆ setH()

+ +
+
+ + + + + + + + +
bool itemCmd::setH (uint16_t h)
+
+ +
+
+ +

◆ setS()

+ +
+
+ + + + + + + + +
bool itemCmd::setS (uint8_t s)
+
+ +
+
+ +

◆ setSuffix()

+ +
+
+ + + + + + + + +
itemCmd itemCmd::setSuffix (uint8_t suffix)
+
+ +
+
+ +

◆ toString()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
char * itemCmd::toString (char * Buffer,
int bufLen,
int sendFlags = SEND_COMMAND | SEND_PARAMETERS 
)
+
+ +
+
+

Member Data Documentation

+ +

◆ cmd

+ +
+
+ + + + +
itemCmdStore itemCmd::cmd
+
+ +
+
+ +

◆ param

+ +
+
+ + + + +
itemArgStore itemCmd::param
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.cpp
  • +
+
+ + + + diff --git a/docs/html/classmb_persistent-members.html b/docs/html/classmb_persistent-members.html new file mode 100644 index 0000000..b37bcc4 --- /dev/null +++ b/docs/html/classmb_persistent-members.html @@ -0,0 +1,85 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
mbPersistent Member List
+
+ + + + + diff --git a/docs/html/classmb_persistent.html b/docs/html/classmb_persistent.html new file mode 100644 index 0000000..fe14173 --- /dev/null +++ b/docs/html/classmb_persistent.html @@ -0,0 +1,209 @@ + + + + + + + +LightHub: mbPersistent Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
mbPersistent Class Reference
+
+
+ +

#include <out_modbus.h>

+
+Inheritance diagram for mbPersistent:
+
+
+ + +chPersistent + +
+ + + + + + + + + + + + + + + + +

+Public Attributes

int8_t driverStatus
 
int baud
 
uint16_t serialParam
 
uint16_t pollingInterval
 
uint32_t timestamp
 
aJsonObject * pollingRegisters
 
aJsonObject * parameters
 
+

Member Data Documentation

+ +

◆ baud

+ +
+
+ + + + +
int mbPersistent::baud
+
+ +
+
+ +

◆ driverStatus

+ +
+
+ + + + +
int8_t mbPersistent::driverStatus
+
+ +
+
+ +

◆ parameters

+ +
+
+ + + + +
aJsonObject* mbPersistent::parameters
+
+ +
+
+ +

◆ pollingInterval

+ +
+
+ + + + +
uint16_t mbPersistent::pollingInterval
+
+ +
+
+ +

◆ pollingRegisters

+ +
+
+ + + + +
aJsonObject* mbPersistent::pollingRegisters
+
+ +
+
+ +

◆ serialParam

+ +
+
+ + + + +
uint16_t mbPersistent::serialParam
+
+ +
+
+ +

◆ timestamp

+ +
+
+ + + + +
uint32_t mbPersistent::timestamp
+
+ +
+
+
The documentation for this class was generated from the following file:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.h
  • +
+
+ + + + diff --git a/docs/html/classmb_persistent.png b/docs/html/classmb_persistent.png new file mode 100644 index 0000000000000000000000000000000000000000..471ac8f96b3a177ca990705c5b06f64dec4b9381 GIT binary patch literal 456 zcmV;(0XP1MP)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d00043Nkl@;b+#r)L_8>SVXQw;2xcK6l@{nR^>m-uGmxsz&K0 zW+|n_3gDR*fMC7AT$Xs~3(OT64t<09Z|0s%fIuY^AWq2yh*L5F;*?B)I3*L{t3*VC zg#d&qnE-L}%=-HnAi%8Vb>TDhBl9u~==PPlFShl%I3D$@mV3m{$hO!6NA$=!8|%#7 zU-K%yzs9-+tj#$?o%6P{gi$8hY_{$jroFoDENs>0&A&3;=xmW@ptsCn_uRX{WY2o< yz1HUYe{1aB%)OP9_Z=Wq$pnbg_74{k3DqC8$r4FeCI5N=0000 + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_AC Member List
+
+
+ +

This is the complete list of members for out_AC, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overrideout_ACvirtual
getChanType()abstractOutinlinevirtual
getDefaultOnVal()abstractOutinlinevirtual
InsertData(byte data[], size_t size)out_ACprotected
isActive() overrideout_ACvirtual
itemabstractOutprotected
out_AC(Item *_item)out_ACinline
Poll(short cause) overrideout_ACvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_ACvirtual
Status() overrideout_ACvirtual
Stop() overrideout_ACvirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout___a_c.html b/docs/html/classout___a_c.html new file mode 100644 index 0000000..ead87c3 --- /dev/null +++ b/docs/html/classout___a_c.html @@ -0,0 +1,389 @@ + + + + + + + +LightHub: out_AC Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <out_ac.h>

+
+Inheritance diagram for out_AC:
+
+
+ + +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_AC (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
virtual int getChanType ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + + + + +

+Protected Member Functions

void InsertData (byte data[], size_t size)
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from abstractOut
Itemitem
 
+

Constructor & Destructor Documentation

+ +

◆ out_AC()

+ +
+
+ + + + + +
+ + + + + + + + +
out_AC::out_AC (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Ctrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_AC::Ctrl (itemCmd cmd,
char * subItem = NULL,
bool toExecute = true 
)
+
+overridevirtual
+
+ +

Implements abstractOut.

+ +
+
+ +

◆ InsertData()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void out_AC::InsertData (byte data[],
size_t size 
)
+
+protected
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_AC::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_AC::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_AC::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_AC::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_AC::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_ac.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_ac.cpp
  • +
+
+ + + + diff --git a/docs/html/classout___a_c.png b/docs/html/classout___a_c.png new file mode 100644 index 0000000000000000000000000000000000000000..c35bd3ca4d38a3e84e97311d74c1b7064b1e1b1a GIT binary patch literal 582 zcmeAS@N?(olHy`uVBq!ia0vp^zChf;!3-p)ewx+_q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IXguX?&ThEy=VoqKW9Y6Tuw@!699|4-I; zcj(=^w$P~fx4`LRlP0h#Ufmazy*6=?SI~q>YMym_FP*yGxOH0D+;p2|rH|Ne#pLW= z`!_4I?WJ_vwcH7oe|@C2%MRRImMDEo*Y|zsGP4g8CVQT~(D%IXRLSzMEZ>B0)tG0R zNn0C8mtE{C$w|Le=(zcZtMB#mVVD2*xXZfVtWH0#G{4HTYS|LcN%6g5*=qxtb}VF7 z@L9Mewev{pB`F;Naqr(RXQ}Z%Xq?3MAp8=;A1|qfcu(dJ+L;ZRTdzr}tx{pt%$)S( z`pmF2iuk&lS53k-C-raQZSeNXE?U^@}pKss% zR`v4c^3x|j_Cwr!*-KN^N2Eak zB=O$l@%-kkbqry4x905qCf+!G%f5o?H;>HtTgDu|rP1onn#bmuk3TqPM6=3W`d3!u zSRHiP{+hzP%=7j64CSTmX7^(m=1+Yuz_7n=PMDWw;4k)CL4~CAciDV^kgTe~ HDWM4fGinfW literal 0 HcmV?d00001 diff --git a/docs/html/classout___modbus-members.html b/docs/html/classout___modbus-members.html new file mode 100644 index 0000000..b83c147 --- /dev/null +++ b/docs/html/classout___modbus-members.html @@ -0,0 +1,98 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_Modbus Member List
+
+
+ +

This is the complete list of members for out_Modbus, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overrideout_Modbusvirtual
findRegister(int registerNum, int posInBuffer)out_Modbusprotected
getChanType() overrideout_Modbusvirtual
getConfig()out_Modbusprotected
getDefaultOnVal()abstractOutinlinevirtual
isActive() overrideout_Modbusvirtual
itemabstractOutprotected
out_Modbus(Item *_item)out_Modbusinline
Poll(short cause) overrideout_Modbusvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_Modbusvirtual
Status() overrideout_Modbusvirtual
Stop() overrideout_Modbusvirtual
storeout_Modbusprotected
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout___modbus.html b/docs/html/classout___modbus.html new file mode 100644 index 0000000..44a9dbd --- /dev/null +++ b/docs/html/classout___modbus.html @@ -0,0 +1,469 @@ + + + + + + + +LightHub: out_Modbus Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <out_modbus.h>

+
+Inheritance diagram for out_Modbus:
+
+
+ + +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_Modbus (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int getChanType () override
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + + + + + + +

+Protected Member Functions

bool getConfig ()
 
int findRegister (int registerNum, int posInBuffer)
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + + + +

+Protected Attributes

mbPersistentstore
 
- Protected Attributes inherited from abstractOut
Itemitem
 
+

Constructor & Destructor Documentation

+ +

◆ out_Modbus()

+ +
+
+ + + + + +
+ + + + + + + + +
out_Modbus::out_Modbus (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Ctrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_Modbus::Ctrl (itemCmd cmd,
char * subItem = NULL,
bool toExecute = true 
)
+
+overridevirtual
+
+ +

Implements abstractOut.

+ +
+
+ +

◆ findRegister()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int out_Modbus::findRegister (int registerNum,
int posInBuffer 
)
+
+protected
+
+ +
+
+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Modbus::getChanType ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ getConfig()

+ +
+
+ + + + + +
+ + + + + + + +
bool out_Modbus::getConfig ()
+
+protected
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Modbus::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_Modbus::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Modbus::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Modbus::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Modbus::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+

Member Data Documentation

+ +

◆ store

+ +
+
+ + + + + +
+ + + + +
mbPersistent* out_Modbus::store
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.cpp
  • +
+
+ + + + diff --git a/docs/html/classout___modbus.png b/docs/html/classout___modbus.png new file mode 100644 index 0000000000000000000000000000000000000000..49726e597714ec0fcfdcff613252e09faf677f35 GIT binary patch literal 615 zcmeAS@N?(olHy`uVBq!ia0vp^fk52B!3-o= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IXgzj?YihEy=VoqKW9D+L}`@!2!~{a26I z3Fye}|29cHeNm2vqRuRqTD9kMVqK@HxU&XMx>oAyvt2mb_i6FB2!*g$>`C?|^55#V zi#W$;w_TE5@UG4^M?L&R#@zy+x2wNi-M!-NGfg|;MT)oX%vmINMC#0m8ymkhWGHVI z{`{!F({t8s>q5ILdk*-n{r*1i^~CRC_se9n(mxCB&-VNjB%qoZ+d8B8+&rcqUeXP# z?{waN)?1=3w!rw({2#(w`IH)(n>aSCQ(#)7-NEphOX{o1Tk&rf~c-#PVHV+6l%>YB}Inr-{8@hr`5sNMPQ<%!N4e(NS&+?Dv|o&Wo7 zr&rv!?fY?N+xkw^>#~=E5?+0n0CMT>x0;5Y#ntNP+HdJz-+FJq``Y&W)%m;mwq`$l ztNn5JG!=7Du!MG4K7XUxuzm~Uj#G1YqeXVk?X#z>W-Q*7;l{UdTMp0tn@Nv{-o%cZ8sMh z{<@X@TQ50AF^)f8nEy`v5%<7)_dnXNrY%_cO1 + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_Motor Member List
+
+
+ +

This is the complete list of members for out_Motor, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overrideout_Motorvirtual
feedbackClosedout_Motor
feedbackOpenout_Motor
getChanType() overrideout_Motorvirtual
getConfig()out_Motorprotected
getDefaultOnVal()abstractOutinlinevirtual
isActive() overrideout_Motorvirtual
itemabstractOutprotected
maxOnTimeout_Motor
out_Motor(Item *_item)out_Motorinline
pinDownout_Motor
pinFeedbackout_Motor
pinUpout_Motor
Poll(short cause) overrideout_Motorvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_Motorvirtual
Status() overrideout_Motorvirtual
Stop() overrideout_Motorvirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout___motor.html b/docs/html/classout___motor.html new file mode 100644 index 0000000..90a6a11 --- /dev/null +++ b/docs/html/classout___motor.html @@ -0,0 +1,506 @@ + + + + + + + +LightHub: out_Motor Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <out_motor.h>

+
+Inheritance diagram for out_Motor:
+
+
+ + +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_Motor (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int getChanType () override
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + + + + + + + +

+Public Attributes

int8_t pinUp
 
int8_t pinDown
 
int8_t pinFeedback
 
int16_t maxOnTime
 
uint16_t feedbackOpen
 
uint16_t feedbackClosed
 
+ + + + + + + + + + +

+Protected Member Functions

void getConfig ()
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from abstractOut
Itemitem
 
+

Constructor & Destructor Documentation

+ +

◆ out_Motor()

+ +
+
+ + + + + +
+ + + + + + + + +
out_Motor::out_Motor (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ Ctrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_Motor::Ctrl (itemCmd cmd,
char * subItem = NULL,
bool toExecute = true 
)
+
+overridevirtual
+
+ +

Implements abstractOut.

+ +
+
+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Motor::getChanType ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ getConfig()

+ +
+
+ + + + + +
+ + + + + + + +
void out_Motor::getConfig ()
+
+protected
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Motor::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_Motor::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Motor::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Motor::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_Motor::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+

Member Data Documentation

+ +

◆ feedbackClosed

+ +
+
+ + + + +
uint16_t out_Motor::feedbackClosed
+
+ +
+
+ +

◆ feedbackOpen

+ +
+
+ + + + +
uint16_t out_Motor::feedbackOpen
+
+ +
+
+ +

◆ maxOnTime

+ +
+
+ + + + +
int16_t out_Motor::maxOnTime
+
+ +
+
+ +

◆ pinDown

+ +
+
+ + + + +
int8_t out_Motor::pinDown
+
+ +
+
+ +

◆ pinFeedback

+ +
+
+ + + + +
int8_t out_Motor::pinFeedback
+
+ +
+
+ +

◆ pinUp

+ +
+
+ + + + +
int8_t out_Motor::pinUp
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_motor.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_motor.cpp
  • +
+
+ + + + diff --git a/docs/html/classout___motor.png b/docs/html/classout___motor.png new file mode 100644 index 0000000000000000000000000000000000000000..a1df641ef95ae5927259e9385713ced89cbc67d8 GIT binary patch literal 593 zcmeAS@N?(olHy`uVBq!ia0vp^zChf;!3-p)ewx+_q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IXgA9%VrhEy=VoqK!TV+9^pap{%+|DQbE zvU>7mzY`HwwFRf!5+1wu%>FWUPH~xV9l3KKI5GW z+y{KuZMlA0__>$1f%_c&x2v$BV%xBO0plC(42IuaQVCJ#EO&S6c=~b8 zQhEE@$2(vB+N@L0cYRV^D`bD+Rocp)(rY?LFVvn5*d-%(lLKjW_qi)@8@buavCIF3m|@AFG}G z{YbFBC%-5#Ou`pFowIp5L*9$>f3F$;tt7^wUYa{QSsp9_I{h_suGO!rSDDtlm0KIP z?V;J*_xj89biYaNxy1MRjn2UfQdyGMT;1(!ljE6x + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_SPILed Member List
+
+
+ +

This is the complete list of members for out_SPILed, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
colorChannel(Item *_item)colorChannelinline
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overridecolorChannelvirtual
getChannelAddr(short n=0)colorChannel
getChanType() overrideout_SPILedvirtual
getConfig()out_SPILedprotected
getDefaultOnVal()abstractOutinlinevirtual
iaddrcolorChannelprotected
isActive() overrideout_SPILedvirtual
itemabstractOutprotected
ledsTypeout_SPILed
numArgscolorChannelprotected
numLedsout_SPILed
out_SPILed(Item *_item)out_SPILedinline
pinout_SPILed
PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) overrideout_SPILedvirtual
Poll(short cause) overrideout_SPILedvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_SPILedvirtual
Status() overrideout_SPILedvirtual
Stop() overrideout_SPILedvirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout___s_p_i_led.html b/docs/html/classout___s_p_i_led.html new file mode 100644 index 0000000..53e2ba6 --- /dev/null +++ b/docs/html/classout___s_p_i_led.html @@ -0,0 +1,471 @@ + + + + + + + +LightHub: out_SPILed Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <out_spiled.h>

+
+Inheritance diagram for out_SPILed:
+
+
+ + +colorChannel +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_SPILed (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int getChanType () override
 
int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
 
- Public Member Functions inherited from colorChannel
 colorChannel (Item *_item)
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
short getChannelAddr (short n=0)
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + +

+Public Attributes

int numLeds
 
int8_t pin
 
int ledsType
 
+ + + + + + + + + + +

+Protected Member Functions

void getConfig ()
 
- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from colorChannel
short iaddr
 
short numArgs
 
- Protected Attributes inherited from abstractOut
Itemitem
 
+

Constructor & Destructor Documentation

+ +

◆ out_SPILed()

+ +
+
+ + + + + +
+ + + + + + + + +
out_SPILed::out_SPILed (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
int out_SPILed::getChanType ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ getConfig()

+ +
+
+ + + + + +
+ + + + + + + +
void out_SPILed::getConfig ()
+
+protected
+
+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_SPILed::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ PixelCtrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_SPILed::PixelCtrl (itemCmd cmd,
char * subItem = NULL,
bool show = true 
)
+
+overridevirtual
+
+ +

Implements colorChannel.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_SPILed::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_SPILed::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_SPILed::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_SPILed::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+

Member Data Documentation

+ +

◆ ledsType

+ +
+
+ + + + +
int out_SPILed::ledsType
+
+ +
+
+ +

◆ numLeds

+ +
+
+ + + + +
int out_SPILed::numLeds
+
+ +
+
+ +

◆ pin

+ +
+
+ + + + +
int8_t out_SPILed::pin
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_spiled.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_spiled.cpp
  • +
+
+ + + + diff --git a/docs/html/classout___s_p_i_led.png b/docs/html/classout___s_p_i_led.png new file mode 100644 index 0000000000000000000000000000000000000000..39e1b84803ffa6df6cdbc44b6a4a2d4e2f4c6d10 GIT binary patch literal 755 zcmeAS@N?(olHy`uVBq!ia0vp^5kP!^gBeI}uM5!tQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;pzRuGl&0>+R+-Y>ynta z*%nLVCuz^OKGi=U=AQa>x#TxR_FHN7o~*`gzL)oL*7)3r)Uw*~ZbN$U{A&3#x1TcR zKGw46>^aXPx8JvL&$_On_n{a2k7*s`T5dLH&5!Vo4j--$n-8v9#mCf;n#=G&QUAj> z%ZYmr%zW)!#%#Yqi%BMdVTQ;924)8B1B`48VGa9P*Q|P_xT534U#<`B2VNd$j1Jyc z7xh!Tpmlv?Hizc-(v)dA8O3QQdJ9jLe3d-Ov&}+lwf)%(if?nb?e#jkr{KOx<$msU z$1g@q6SrEGop4W&|Hf}6r~}XH>91aNr#iGmd^L;qoLdo!TV{e>c!qoz9zWpe^1}0{ z)#mPw4LK*3cJve%v&J}YT6coy>Ak%bS8wpHQ@)Y2_w^se0O>8EW=W4ZXZ*0PICI7z z;Y#d-s%gR-rS+TRTX)TSyi-eT*U?ooUhO!0HECh8-D)nuiPoYI7=WhQkQ8=vg1qFM zm>PbIKHzU|Us-f6%&GL*3-@WR1(n%bZtds1$NbAa_}Y zQrn*L1JBCO7*@wHe*R~@qwbZ~48HdQh2=2}+YQ1Fa9chzmYeqN&btS3x41(Y8NR;| uFZjKk=|FYY{^$nAhS0h`&7~!~|1o}SG}|HkEdrFR89ZJ6T-G@yGywpt{8#t@ literal 0 HcmV?d00001 diff --git a/docs/html/classout__dmx-members.html b/docs/html/classout__dmx-members.html new file mode 100644 index 0000000..033cd21 --- /dev/null +++ b/docs/html/classout__dmx-members.html @@ -0,0 +1,100 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_dmx Member List
+
+
+ +

This is the complete list of members for out_dmx, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
colorChannel(Item *_item)colorChannelinline
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overridecolorChannelvirtual
getChannelAddr(short n=0)colorChannel
getChanType() overrideout_dmxvirtual
getDefaultOnVal()abstractOutinlinevirtual
iaddrcolorChannelprotected
isActive() overrideout_dmxvirtual
itemabstractOutprotected
numArgscolorChannelprotected
out_dmx(Item *_item)out_dmxinline
PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) overrideout_dmxvirtual
Poll(short cause) overrideout_dmxvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_dmxvirtual
Status() overrideout_dmxvirtual
Stop() overrideout_dmxvirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout__dmx.html b/docs/html/classout__dmx.html new file mode 100644 index 0000000..f123269 --- /dev/null +++ b/docs/html/classout__dmx.html @@ -0,0 +1,387 @@ + + + + + + + +LightHub: out_dmx Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
out_dmx Class Reference
+
+
+ +

#include <out_dmx.h>

+
+Inheritance diagram for out_dmx:
+
+
+ + +colorChannel +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_dmx (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int getChanType () override
 
virtual int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
 
- Public Member Functions inherited from colorChannel
 colorChannel (Item *_item)
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
short getChannelAddr (short n=0)
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
- Protected Attributes inherited from colorChannel
short iaddr
 
short numArgs
 
- Protected Attributes inherited from abstractOut
Itemitem
 
+

Constructor & Destructor Documentation

+ +

◆ out_dmx()

+ +
+
+ + + + + +
+ + + + + + + + +
out_dmx::out_dmx (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
int out_dmx::getChanType ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_dmx::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ PixelCtrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_dmx::PixelCtrl (itemCmd cmd,
char * subItem = NULL,
bool show = true 
)
+
+overridevirtual
+
+ +

Implements colorChannel.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_dmx::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_dmx::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_dmx::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_dmx::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_dmx.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_dmx.cpp
  • +
+
+ + + + diff --git a/docs/html/classout__dmx.png b/docs/html/classout__dmx.png new file mode 100644 index 0000000000000000000000000000000000000000..b017f8ad4c3ae0d7eeb7e2d62432fdaf8f8c0b92 GIT binary patch literal 734 zcmeAS@N?(olHy`uVBq!ia0vp^5kP!^gBeI}uM5!tQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;iX$OXx}kl~ zf!ohqzA>e*2tHl9^Fh)LuhR}xpToIvHomX_6_{#NR_JNm)$K8VK z0K!{g%kT zu?2hk&Sg~^hL`f?^k-X_ef2C5l03~LcRzQ!O)1!c(@fM&9$#4{xv>Apb|;sVum*eS zHLG4JG^FM-$bDkUpDlcod(KX~6!Q=4yOa(vvds{Az`z^&`X2o)#5+h3V<`^_w;yON+2-ihh&9_iw|+YcDrPoo9RBz+2DWKU305 ztWAPRQgkM#|~UMHPZ8eWS&xX-k$c-pp4 zpC8N?)>ih{{9pY?EGIO!X8H$?J1d+wAJ5O<`H)xUzzdccM*>e}Go<~E`oO(XL-X&X z$6@>GEAMi??b^5Nk%`0u(X~y#-Nh0-KbCR>W9O&ZvMHCI{$f|yVb&X`Y25`(j0~Qx KelF{r5}E)ET}h|_ literal 0 HcmV?d00001 diff --git a/docs/html/classout__pwm-members.html b/docs/html/classout__pwm-members.html new file mode 100644 index 0000000..a794149 --- /dev/null +++ b/docs/html/classout__pwm-members.html @@ -0,0 +1,101 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
out_pwm Member List
+
+
+ +

This is the complete list of members for out_pwm, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
abstractCh()abstractChinline
abstractOut(Item *_item)abstractOutinline
Anounce()abstractChinlinevirtual
colorChannel(Item *_item)colorChannelinline
Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) overridecolorChannelvirtual
getChannelAddr(short n=0)colorChannel
getChanType() overrideout_pwmvirtual
getDefaultOnVal()abstractOutinlinevirtual
iaddrcolorChannelprotected
isActive() overrideout_pwmvirtual
itemabstractOutprotected
numArgscolorChannelprotected
numChannelsout_pwmprotected
out_pwm(Item *_item)out_pwminline
PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) overrideout_pwmvirtual
Poll(short cause) overrideout_pwmvirtual
publishTopic(const char *topic, long value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, float value, const char *subtopic=NULL)abstractChprotectedvirtual
publishTopic(const char *topic, const char *value, const char *subtopic=NULL)abstractChprotectedvirtual
Setup() overrideout_pwmvirtual
Status() overrideout_pwmvirtual
Stop() overrideout_pwmvirtual
~abstractCh()abstractChinlinevirtual
+ + + + diff --git a/docs/html/classout__pwm.html b/docs/html/classout__pwm.html new file mode 100644 index 0000000..3f2f8f9 --- /dev/null +++ b/docs/html/classout__pwm.html @@ -0,0 +1,416 @@ + + + + + + + +LightHub: out_pwm Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+ +
+ +

#include <out_pwm.h>

+
+Inheritance diagram for out_pwm:
+
+
+ + +colorChannel +abstractOut +abstractCh + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 out_pwm (Item *_item)
 
int Setup () override
 
int Poll (short cause) override
 
int Stop () override
 
int Status () override
 
int isActive () override
 
int getChanType () override
 
int PixelCtrl (itemCmd cmd, char *subItem=NULL, bool show=true) override
 
- Public Member Functions inherited from colorChannel
 colorChannel (Item *_item)
 
int Ctrl (itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
 
short getChannelAddr (short n=0)
 
- Public Member Functions inherited from abstractOut
 abstractOut (Item *_item)
 
virtual int getDefaultOnVal ()
 
- Public Member Functions inherited from abstractCh
 abstractCh ()
 
virtual ~abstractCh ()
 
virtual int Anounce ()
 
+ + + + + + + + + + + +

+Protected Attributes

short numChannels
 
- Protected Attributes inherited from colorChannel
short iaddr
 
short numArgs
 
- Protected Attributes inherited from abstractOut
Itemitem
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from abstractCh
virtual int publishTopic (const char *topic, long value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, float value, const char *subtopic=NULL)
 
virtual int publishTopic (const char *topic, const char *value, const char *subtopic=NULL)
 
+

Constructor & Destructor Documentation

+ +

◆ out_pwm()

+ +
+
+ + + + + +
+ + + + + + + + +
out_pwm::out_pwm (Item_item)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ getChanType()

+ +
+
+ + + + + +
+ + + + + + + +
int out_pwm::getChanType ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ isActive()

+ +
+
+ + + + + +
+ + + + + + + +
int out_pwm::isActive ()
+
+overridevirtual
+
+ +

Reimplemented from abstractOut.

+ +
+
+ +

◆ PixelCtrl()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
int out_pwm::PixelCtrl (itemCmd cmd,
char * subItem = NULL,
bool show = true 
)
+
+overridevirtual
+
+ +

Implements colorChannel.

+ +
+
+ +

◆ Poll()

+ +
+
+ + + + + +
+ + + + + + + + +
int out_pwm::Poll (short cause)
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Setup()

+ +
+
+ + + + + +
+ + + + + + + +
int out_pwm::Setup ()
+
+overridevirtual
+
+ +

Implements abstractCh.

+ +
+
+ +

◆ Status()

+ +
+
+ + + + + +
+ + + + + + + +
int out_pwm::Status ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+ +

◆ Stop()

+ +
+
+ + + + + +
+ + + + + + + +
int out_pwm::Stop ()
+
+overridevirtual
+
+ +

Reimplemented from abstractCh.

+ +
+
+

Member Data Documentation

+ +

◆ numChannels

+ +
+
+ + + + + +
+ + + + +
short out_pwm::numChannels
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_pwm.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_pwm.cpp
  • +
+
+ + + + diff --git a/docs/html/classout__pwm.png b/docs/html/classout__pwm.png new file mode 100644 index 0000000000000000000000000000000000000000..19f5a5607b92213ae49b5365abd87b29270648c4 GIT binary patch literal 733 zcmV<30wVp1P)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d0007PNklIvg3EO@R*j3fs%v0-T-&j$FM^ZESZ46Jw_WlyE7o_*ioT>~LQR}f)kJ6`@vjgO znHAvo2CJ$%2;i_501tVAm&J+f1$|P8v&LpvI)baMH=RE?T03o4 z?OEdv*zh;-7@47CQFnpMT~5SqybONk>hT!QS#h8_m=#kVx3Q8e=9>4iLPX?F1vtPW zB37PYRaFN89M%HhAusTZGLJqEt;i+!=j04EjTUje6-l7qegIC3_Whmhee P00000NkvXXu0mjfVklDu literal 0 HcmV?d00001 diff --git a/docs/html/classread_cache-members.html b/docs/html/classread_cache-members.html new file mode 100644 index 0000000..d7695e2 --- /dev/null +++ b/docs/html/classread_cache-members.html @@ -0,0 +1,85 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
readCache Member List
+
+
+ +

This is the complete list of members for readCache, including all inherited members.

+ + + + + + + + +
addrreadCacheprotected
analogReadCached(uint8_t pin)readCache
cached_datareadCacheprotected
digitalReadCached(uint8_t pin)readCache
invalidateInputCache()readCache
readCache()readCache
typereadCacheprotected
+ + + + diff --git a/docs/html/classread_cache.html b/docs/html/classread_cache.html new file mode 100644 index 0000000..0526d0d --- /dev/null +++ b/docs/html/classread_cache.html @@ -0,0 +1,246 @@ + + + + + + + +LightHub: readCache Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
readCache Class Reference
+
+
+ +

#include <inputs.h>

+ + + + + + + + + + +

+Public Member Functions

 readCache ()
 
uint16_t analogReadCached (uint8_t pin)
 
uint8_t digitalReadCached (uint8_t pin)
 
void invalidateInputCache ()
 
+ + + + + + + +

+Protected Attributes

uint8_t addr
 
uint8_t type
 
uint16_t cached_data
 
+

Constructor & Destructor Documentation

+ +

◆ readCache()

+ +
+
+ + + + + + + +
readCache::readCache ()
+
+ +
+
+

Member Function Documentation

+ +

◆ analogReadCached()

+ +
+
+ + + + + + + + +
uint16_t readCache::analogReadCached (uint8_t pin)
+
+ +
+
+ +

◆ digitalReadCached()

+ +
+
+ + + + + + + + +
uint8_t readCache::digitalReadCached (uint8_t pin)
+
+

TBD

+ +
+
+ +

◆ invalidateInputCache()

+ +
+
+ + + + + + + +
void readCache::invalidateInputCache ()
+
+ +
+
+

Member Data Documentation

+ +

◆ addr

+ +
+
+ + + + + +
+ + + + +
uint8_t readCache::addr
+
+protected
+
+ +
+
+ +

◆ cached_data

+ +
+
+ + + + + +
+ + + + +
uint16_t readCache::cached_data
+
+protected
+
+ +
+
+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
uint8_t readCache::type
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.cpp
  • +
+
+ + + + diff --git a/docs/html/classstatus_l_e_d-members.html b/docs/html/classstatus_l_e_d-members.html new file mode 100644 index 0000000..837bcfe --- /dev/null +++ b/docs/html/classstatus_l_e_d-members.html @@ -0,0 +1,83 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
statusLED Member List
+
+
+ +

This is the complete list of members for statusLED, including all inherited members.

+ + + + + + +
flash(uint8_t pattern)statusLED
poll()statusLED
set(uint8_t pattern)statusLED
show(uint8_t pattern)statusLED
statusLED(uint8_t pattern=0)statusLED
+ + + + diff --git a/docs/html/classstatus_l_e_d.html b/docs/html/classstatus_l_e_d.html new file mode 100644 index 0000000..06cebe0 --- /dev/null +++ b/docs/html/classstatus_l_e_d.html @@ -0,0 +1,189 @@ + + + + + + + +LightHub: statusLED Class Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
statusLED Class Reference
+
+
+ +

#include <statusled.h>

+ + + + + + + + + + + + +

+Public Member Functions

 statusLED (uint8_t pattern=0)
 
void set (uint8_t pattern)
 
void show (uint8_t pattern)
 
void poll ()
 
void flash (uint8_t pattern)
 
+

Constructor & Destructor Documentation

+ +

◆ statusLED()

+ +
+
+ + + + + + + + +
statusLED::statusLED (uint8_t pattern = 0)
+
+ +
+
+

Member Function Documentation

+ +

◆ flash()

+ +
+
+ + + + + + + + +
void statusLED::flash (uint8_t pattern)
+
+ +
+
+ +

◆ poll()

+ +
+
+ + + + + + + +
void statusLED::poll ()
+
+ +
+
+ +

◆ set()

+ +
+
+ + + + + + + + +
void statusLED::set (uint8_t pattern)
+
+ +
+
+ +

◆ show()

+ +
+
+ + + + + + + + +
void statusLED::show (uint8_t pattern)
+
+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.h
  • +
  • /Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.cpp
  • +
+
+ + + + diff --git a/docs/html/closed.png b/docs/html/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/docs/html/colorchannel_8cpp.html b/docs/html/colorchannel_8cpp.html new file mode 100644 index 0000000..2645311 --- /dev/null +++ b/docs/html/colorchannel_8cpp.html @@ -0,0 +1,85 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
colorchannel.cpp File Reference
+
+
+
#include "colorchannel.h"
+#include "Arduino.h"
+#include "options.h"
+#include "Streaming.h"
+#include "item.h"
+#include "main.h"
+
+ + + + diff --git a/docs/html/colorchannel_8h.html b/docs/html/colorchannel_8h.html new file mode 100644 index 0000000..34588bc --- /dev/null +++ b/docs/html/colorchannel_8h.html @@ -0,0 +1,92 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
colorchannel.h File Reference
+
+
+
#include "options.h"
+#include <abstractout.h>
+#include <item.h>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  colorChannel
 
+
+ + + + diff --git a/docs/html/colorchannel_8h_source.html b/docs/html/colorchannel_8h_source.html new file mode 100644 index 0000000..00cd621 --- /dev/null +++ b/docs/html/colorchannel_8h_source.html @@ -0,0 +1,118 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
colorchannel.h
+
+
+Go to the documentation of this file.
1 
+
2 #pragma once
+
3 #include "options.h"
+
4 
+
5 
+
6 #include <abstractout.h>
+
7 #include <item.h>
+
8 
+
9 class colorChannel : public abstractOut {
+
10 public:
+
11 
+
12  colorChannel(Item * _item):abstractOut(_item) {
+
13  iaddr = item->getArg(); //Once retrieve and store base address
+
14  if (iaddr<0) iaddr=-iaddr;
+
15  numArgs = item->getArgCount(); // and how many addresses is configured
+
16  };
+
17  int Ctrl(itemCmd cmd, char* subItem=NULL, bool toExecute=true) override;
+
18  virtual int PixelCtrl(itemCmd cmd, char* subItem=NULL, bool show=true ) =0;
+
19  short getChannelAddr(short n =0);
+
20 protected:
+
21  short iaddr;
+
22  short numArgs;
+
23 };
+
+
Definition: itemCmd.h:174
+
int getArg(short n=0)
Definition: item.cpp:283
+
short getChannelAddr(short n=0)
Definition: colorchannel.cpp:12
+
short numArgs
Definition: colorchannel.h:22
+ +
Definition: abstractout.h:8
+
int Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
Definition: colorchannel.cpp:19
+
Definition: colorchannel.h:9
+
short iaddr
Definition: colorchannel.h:21
+
Definition: item.h:92
+ +
colorChannel(Item *_item)
Definition: colorchannel.h:12
+
Item * item
Definition: abstractout.h:16
+
virtual int PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true)=0
+
short getArgCount()
Definition: item.cpp:293
+ + + + + diff --git a/docs/html/dir_82d7c1f210290ade9e0671f857ad27e3.html b/docs/html/dir_82d7c1f210290ade9e0671f857ad27e3.html new file mode 100644 index 0000000..d1db479 --- /dev/null +++ b/docs/html/dir_82d7c1f210290ade9e0671f857ad27e3.html @@ -0,0 +1,146 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
lighthub Directory Reference
+
+
+ + + + +

+Directories

directory  modules
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  abstractch.cpp
 
file  abstractch.h [code]
 
file  abstractin.cpp
 
file  abstractin.h [code]
 
file  abstractout.h [code]
 
file  bright.cpp
 
file  bright.h [code]
 
file  colorchannel.cpp
 
file  colorchannel.h [code]
 
file  dmx.cpp
 
file  dmx.h [code]
 
file  inputs.cpp
 
file  inputs.h [code]
 
file  item.cpp
 
file  item.h [code]
 
file  itemCmd.cpp
 
file  itemCmd.h [code]
 
file  main.cpp
 
file  main.h [code]
 
file  options.h [code]
 
file  owTerm.cpp
 
file  owTerm.h [code]
 
file  statusled.cpp
 
file  statusled.h [code]
 
file  streamlog.cpp
 
file  streamlog.h [code]
 
file  textconst.h [code]
 
file  utils.cpp
 
file  utils.h [code]
 
+
+ + + + diff --git a/docs/html/dir_a26efa385a8243117251e7dce4d75390.html b/docs/html/dir_a26efa385a8243117251e7dce4d75390.html new file mode 100644 index 0000000..848aaea --- /dev/null +++ b/docs/html/dir_a26efa385a8243117251e7dce4d75390.html @@ -0,0 +1,111 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules Directory Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
modules Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  in_ccs811_hdc1080.cpp
 
file  in_ccs811_hdc1080.h [code]
 
file  out_ac.cpp
 
file  out_ac.h [code]
 
file  out_dmx.cpp
 
file  out_dmx.h [code]
 
file  out_modbus.cpp
 
file  out_modbus.h [code]
 
file  out_motor.cpp
 
file  out_motor.h [code]
 
file  out_pwm.cpp
 
file  out_pwm.h [code]
 
file  out_spiled.cpp
 
file  out_spiled.h [code]
 
+
+ + + + diff --git a/docs/html/dmx_8cpp.html b/docs/html/dmx_8cpp.html new file mode 100644 index 0000000..1ba42ae --- /dev/null +++ b/docs/html/dmx_8cpp.html @@ -0,0 +1,539 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
dmx.cpp File Reference
+
+
+
#include "dmx.h"
+#include "options.h"
+#include "item.h"
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

int itemCtrl2 (char *name, int r, int g, int b, int w)
 
void DMXImmediateUpdate (short tch, short r, short g, short b, short w)
 
void DMXSemiImmediateUpdate (short tch, short trh, int val)
 
void DMXput (void)
 
void DMXUpdate (void)
 
void DMXCheck (void)
 
void onDmxFrame (uint16_t universe, uint16_t length, uint8_t sequence, uint8_t *data, IPAddress remoteIP)
 
void DMXinSetup (int channels)
 
void DMXoutSetup (int channels)
 
void DMXOUT_propagate ()
 
void ArtnetSetup ()
 
void DmxWriteBuf (uint16_t chan, uint8_t val)
 
+ + + + + + + + + + + +

+Variables

uint8_t * DMXin = NULL
 
int D_State =0
 
unsigned long D_checkT =0
 
aJsonObject * items
 
aJsonObject * dmxArr
 
+

Function Documentation

+ +

◆ ArtnetSetup()

+ +
+
+ + + + + + + +
void ArtnetSetup ()
+
+ +
+
+ +

◆ DMXCheck()

+ +
+
+ + + + + + + + +
void DMXCheck (void )
+
+ +
+
+ +

◆ DMXImmediateUpdate()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void DMXImmediateUpdate (short tch,
short r,
short g,
short b,
short w 
)
+
+ +
+
+ +

◆ DMXinSetup()

+ +
+
+ + + + + + + + +
void DMXinSetup (int channels)
+
+

ToDo: re-init

+ +
+
+ +

◆ DMXOUT_propagate()

+ +
+
+ + + + + + + +
void DMXOUT_propagate ()
+
+ +
+
+ +

◆ DMXoutSetup()

+ +
+
+ + + + + + + + +
void DMXoutSetup (int channels)
+
+ +
+
+ +

◆ DMXput()

+ +
+
+ + + + + + + + +
void DMXput (void )
+
+ +
+
+ +

◆ DMXSemiImmediateUpdate()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void DMXSemiImmediateUpdate (short tch,
short trh,
int val 
)
+
+ +
+
+ +

◆ DMXUpdate()

+ +
+
+ + + + + + + + +
void DMXUpdate (void )
+
+ +
+
+ +

◆ DmxWriteBuf()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void DmxWriteBuf (uint16_t chan,
uint8_t val 
)
+
+ +
+
+ +

◆ itemCtrl2()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int itemCtrl2 (char * name,
int r,
int g,
int b,
int w 
)
+
+ +
+
+ +

◆ onDmxFrame()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void onDmxFrame (uint16_t universe,
uint16_t length,
uint8_t sequence,
uint8_t * data,
IPAddress remoteIP 
)
+
+ +
+
+

Variable Documentation

+ +

◆ D_checkT

+ +
+
+ + + + +
unsigned long D_checkT =0
+
+ +
+
+ +

◆ D_State

+ +
+
+ + + + +
int D_State =0
+
+ +
+
+ +

◆ dmxArr

+ +
+
+ + + + + +
+ + + + +
aJsonObject* dmxArr
+
+extern
+
+ +
+
+ +

◆ DMXin

+ +
+
+ + + + +
uint8_t* DMXin = NULL
+
+ +
+
+ +

◆ items

+ +
+
+ + + + + +
+ + + + +
aJsonObject* items
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/dmx_8h.html b/docs/html/dmx_8h.html new file mode 100644 index 0000000..282b130 --- /dev/null +++ b/docs/html/dmx_8h.html @@ -0,0 +1,417 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
dmx.h File Reference
+
+
+
#include "options.h"
+#include "aJSON.h"
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Macros

#define D_UPDATED1   1
 
#define D_UPDATED2   2
 
#define D_UPDATED3   4
 
#define D_UPDATED4   8
 
#define D_CHECKT   300
 
#define MAX_CHANNELS   60
 
+ + + + + + + + + + + + + + + + + +

+Functions

void DMXput (void)
 
void DMXinSetup (int channels)
 
void DMXoutSetup (int channels)
 
void ArtnetSetup ()
 
void DMXCheck (void)
 
int itemCtrl2 (char *name, int r, int g, int b, int w)
 
void DmxWriteBuf (uint16_t chan, uint8_t val)
 
void DMXOUT_propagate ()
 
+ + + +

+Variables

aJsonObject * dmxArr
 
+

Macro Definition Documentation

+ +

◆ D_CHECKT

+ +
+
+ + + + +
#define D_CHECKT   300
+
+ +
+
+ +

◆ D_UPDATED1

+ +
+
+ + + + +
#define D_UPDATED1   1
+
+ +
+
+ +

◆ D_UPDATED2

+ +
+
+ + + + +
#define D_UPDATED2   2
+
+ +
+
+ +

◆ D_UPDATED3

+ +
+
+ + + + +
#define D_UPDATED3   4
+
+ +
+
+ +

◆ D_UPDATED4

+ +
+
+ + + + +
#define D_UPDATED4   8
+
+ +
+
+ +

◆ MAX_CHANNELS

+ +
+
+ + + + +
#define MAX_CHANNELS   60
+
+ +
+
+

Function Documentation

+ +

◆ ArtnetSetup()

+ +
+
+ + + + + + + +
void ArtnetSetup ()
+
+ +
+
+ +

◆ DMXCheck()

+ +
+
+ + + + + + + + +
void DMXCheck (void )
+
+ +
+
+ +

◆ DMXinSetup()

+ +
+
+ + + + + + + + +
void DMXinSetup (int channels)
+
+

ToDo: re-init

+ +
+
+ +

◆ DMXOUT_propagate()

+ +
+
+ + + + + + + +
void DMXOUT_propagate ()
+
+ +
+
+ +

◆ DMXoutSetup()

+ +
+
+ + + + + + + + +
void DMXoutSetup (int channels)
+
+ +
+
+ +

◆ DMXput()

+ +
+
+ + + + + + + + +
void DMXput (void )
+
+ +
+
+ +

◆ DmxWriteBuf()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void DmxWriteBuf (uint16_t chan,
uint8_t val 
)
+
+ +
+
+ +

◆ itemCtrl2()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int itemCtrl2 (char * name,
int r,
int g,
int b,
int w 
)
+
+ +
+
+

Variable Documentation

+ +

◆ dmxArr

+ +
+
+ + + + + +
+ + + + +
aJsonObject* dmxArr
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/dmx_8h_source.html b/docs/html/dmx_8h_source.html new file mode 100644 index 0000000..ad6617e --- /dev/null +++ b/docs/html/dmx_8h_source.html @@ -0,0 +1,203 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
dmx.h
+
+
+Go to the documentation of this file.
1 /* Copyright © 2017-2018 Andrey Klimov. All rights reserved.
+
2 
+
3 Licensed under the Apache License, Version 2.0 (the "License");
+
4 you may not use this file except in compliance with the License.
+
5 You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9 Unless required by applicable law or agreed to in writing, software
+
10 distributed under the License is distributed on an "AS IS" BASIS,
+
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12 See the License for the specific language governing permissions and
+
13 limitations under the License.
+
14 
+
15 Homepage: http://lazyhome.ru
+
16 GIT: https://github.com/anklimov/lighthub
+
17 e-mail anklimov@gmail.com
+
18 
+
19 */
+
20 #define D_UPDATED1 1
+
21 #define D_UPDATED2 2
+
22 #define D_UPDATED3 4
+
23 #define D_UPDATED4 8
+
24 #define D_CHECKT 300
+
25 
+
26 #define MAX_CHANNELS 60
+
27 //define MAX_IN_CHANNELS 16
+
28 
+
29 //#define DMX_OUT_PIN 3
+
30 
+
31 #include "options.h"
+
32 
+
33 #if defined(_dmxout)
+
34 
+
35 #if defined DMX_SMOOTH
+
36 
+
37 #if defined(ARDUINO_ARCH_AVR)
+
38 #include <DmxSimple.h>
+
39 #define DmxWrite DmxSimple.write
+
40 //#define DmxWrite DmxWriteBuf
+
41 #endif
+
42 
+
43 #if defined(ESP8266)
+
44 #include <ESPDMX.h>
+
45 extern DMXESPSerial dmxout;
+
46 #define DmxWrite dmxout.write
+
47 //#define DmxWrite DmxWriteBuf
+
48 #endif
+
49 
+
50 #if defined(ARDUINO_ARCH_ESP32)
+
51 #include <ESPDMX.h>
+
52 extern DMXESPSerial dmxout;
+
53 #define DmxWrite dmxout.write
+
54 //#define DmxWrite DmxWriteBuf
+
55 #endif
+
56 
+
57 #if defined(__SAM3X8E__)
+
58 #include <DmxDue.h>
+
59 #define DmxWrite2 dmxout.write
+
60 #define DmxWrite DmxWriteBuf
+
61 #endif
+
62 
+
63 #else
+
64 #if defined(ARDUINO_ARCH_AVR)
+
65 #include <DmxSimple.h>
+
66 #define DmxWrite DmxSimple.write
+
67 #endif
+
68 
+
69 #if defined(ESP8266)
+
70 #include <ESPDMX.h>
+
71 extern DMXESPSerial dmxout;
+
72 #define DmxWrite dmxout.write
+
73 #endif
+
74 
+
75 #if defined(ARDUINO_ARCH_ESP32)
+
76 #include <ESPDMX.h>
+
77 extern DMXESPSerial dmxout;
+
78 #define DmxWrite dmxout.write
+
79 #endif
+
80 
+
81 #if defined(__SAM3X8E__)
+
82 #include <DmxDue.h>
+
83 #define DmxWrite dmxout.write
+
84 #endif
+
85 
+
86 #endif
+
87 #endif
+
88 
+
89 #ifdef _artnet
+
90 #include <Artnet.h>
+
91 extern Artnet *artnet;
+
92 #endif
+
93 
+
94 #ifdef _dmxin
+
95 #if defined(ARDUINO_ARCH_AVR)
+
96 #include <DMXSerial.h>
+
97 #endif
+
98 #endif
+
99 
+
100 #include "aJSON.h"
+
101 
+
102 extern aJsonObject *dmxArr;
+
103 
+
104 
+
105 void DMXput(void);
+
106 void DMXinSetup(int channels);
+
107 void DMXoutSetup(int channels);
+
108 void ArtnetSetup();
+
109 void DMXCheck(void);
+
110 int itemCtrl2(char* name,int r,int g, int b, int w);
+
111 void ArtnetSetup();
+
112 void DmxWriteBuf(uint16_t chan,uint8_t val);
+
113 void DMXOUT_propagate();
+
+
void DMXCheck(void)
Definition: dmx.cpp:168
+
void DmxWriteBuf(uint16_t chan, uint8_t val)
Definition: dmx.cpp:308
+
void DMXinSetup(int channels)
Definition: dmx.cpp:211
+ +
void ArtnetSetup()
Definition: dmx.cpp:298
+
#define b
Definition: item.cpp:1097
+
aJsonObject * dmxArr
Definition: main.cpp:151
+
void DMXput(void)
Definition: dmx.cpp:123
+
int itemCtrl2(char *name, int r, int g, int b, int w)
Definition: dmx.cpp:60
+
void DMXOUT_propagate()
Definition: dmx.cpp:271
+
void DMXoutSetup(int channels)
Definition: dmx.cpp:240
+ + + + diff --git a/docs/html/doc.png b/docs/html/doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/docs/html/doxygen.css b/docs/html/doxygen.css new file mode 100644 index 0000000..f640966 --- /dev/null +++ b/docs/html/doxygen.css @@ -0,0 +1,1732 @@ +/* The standard CSS for doxygen 1.8.20 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +p.reference, p.definition { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +ul.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +th p.starttd, th p.intertd, th p.endtd { + font-size: 100%; + font-weight: 700; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +p.interli { +} + +p.interdd { +} + +p.intertd { +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #FFFFFF; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #FFFFFF; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +ul { + overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ +} + +#side-nav ul { + overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ +} + +#main-nav ul { + overflow: visible; /* reset ul rule for the navigation bar drop down lists */ +} + +.fragment { + text-align: left; + direction: ltr; + overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ + overflow-y: hidden; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +.lineno { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +div.ah, span.ah { + background-color: black; + font-weight: bold; + color: #FFFFFF; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl, img.inline { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +blockquote.DocNodeRTL { + border-left: 0; + border-right: 2px solid #9CAFD4; + margin: 0 4px 0 24px; + padding: 0 16px 0 12px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight, .memTemplItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtitle { + padding: 8px; + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + border-top-right-radius: 4px; + border-top-left-radius: 4px; + margin-bottom: -1px; + background-image: url('nav_f.png'); + background-repeat: repeat-x; + background-color: #E2E8F2; + line-height: 1.25; + font-weight: 300; + float:left; +} + +.permalink +{ + font-size: 65%; + display: inline-block; + vertical-align: middle; +} + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: 400; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-color: #DFE5F1; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + +} + +.overload { + font-family: "courier new",courier,monospace; + font-size: 65%; +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype, .tparams .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir, .tparams .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + font-weight: 400; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +.PageDocRTL-title div.headertitle { + text-align: right; + direction: rtl; +} + +dl { + padding: 0 0 0 0; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ +dl.section { + margin-left: 0px; + padding-left: 0px; +} + +dl.section.DocNodeRTL { + margin-right: 0px; + padding-right: 0px; +} + +dl.note { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #D0C000; +} + +dl.note.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #FF0000; +} + +dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00D000; +} + +dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00D000; +} + +dl.deprecated { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #505050; +} + +dl.deprecated.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #505050; +} + +dl.todo { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00C0E0; +} + +dl.todo.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00C0E0; +} + +dl.test { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #3030E0; +} + +dl.test.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #3030E0; +} + +dl.bug { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #C08050; +} + +dl.bug.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.plantumlgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; + text-align:right; + width:52px; +} + +dl.citelist dd { + margin:2px 0 2px 72px; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +.PageDocRTL-title div.toc { + float: left !important; + text-align: right; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +.PageDocRTL-title div.toc li { + background-position-x: right !important; + padding-left: 0 !important; + padding-right: 10px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.PageDocRTL-title div.toc li.level1 { + margin-left: 0 !important; + margin-right: 0; +} + +.PageDocRTL-title div.toc li.level2 { + margin-left: 0 !important; + margin-right: 15px; +} + +.PageDocRTL-title div.toc li.level3 { + margin-left: 0 !important; + margin-right: 30px; +} + +.PageDocRTL-title div.toc li.level4 { + margin-left: 0 !important; + margin-right: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + +/* @group Markdown */ + +table.markdownTable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, table.markdownTable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.markdownTable tr { +} + +th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft, td.markdownTableBodyLeft { + text-align: left +} + +th.markdownTableHeadRight, td.markdownTableBodyRight { + text-align: right +} + +th.markdownTableHeadCenter, td.markdownTableBodyCenter { + text-align: center +} + +.DocNodeRTL { + text-align: right; + direction: rtl; +} + +.DocNodeLTR { + text-align: left; + direction: ltr; +} + +table.DocNodeRTL { + width: auto; + margin-right: 0; + margin-left: auto; +} + +table.DocNodeLTR { + width: auto; + margin-right: auto; + margin-left: 0; +} + +tt, code, kbd, samp +{ + display: inline-block; + direction:ltr; +} +/* @end */ + +u { + text-decoration: underline; +} + diff --git a/docs/html/doxygen.svg b/docs/html/doxygen.svg new file mode 100644 index 0000000..d42dad5 --- /dev/null +++ b/docs/html/doxygen.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/html/dynsections.js b/docs/html/dynsections.js new file mode 100644 index 0000000..3174bd7 --- /dev/null +++ b/docs/html/dynsections.js @@ -0,0 +1,121 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + + +LightHub: File List + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
File List
+
+ + + + + diff --git a/docs/html/folderclosed.png b/docs/html/folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/docs/html/functions.html b/docs/html/functions.html new file mode 100644 index 0000000..d700a80 --- /dev/null +++ b/docs/html/functions.html @@ -0,0 +1,124 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- a -

+
+ + + + diff --git a/docs/html/functions_b.html b/docs/html/functions_b.html new file mode 100644 index 0000000..5d00c28 --- /dev/null +++ b/docs/html/functions_b.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- b -

+
+ + + + diff --git a/docs/html/functions_c.html b/docs/html/functions_c.html new file mode 100644 index 0000000..68ad19c --- /dev/null +++ b/docs/html/functions_c.html @@ -0,0 +1,137 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- c -

+
+ + + + diff --git a/docs/html/functions_d.html b/docs/html/functions_d.html new file mode 100644 index 0000000..96d4b64 --- /dev/null +++ b/docs/html/functions_d.html @@ -0,0 +1,99 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- d -

+
+ + + + diff --git a/docs/html/functions_e.html b/docs/html/functions_e.html new file mode 100644 index 0000000..21450cd --- /dev/null +++ b/docs/html/functions_e.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- e -

+
+ + + + diff --git a/docs/html/functions_f.html b/docs/html/functions_f.html new file mode 100644 index 0000000..1acce90 --- /dev/null +++ b/docs/html/functions_f.html @@ -0,0 +1,90 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- f -

+
+ + + + diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html new file mode 100644 index 0000000..dc891d9 --- /dev/null +++ b/docs/html/functions_func.html @@ -0,0 +1,102 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- a -

+
+ + + + diff --git a/docs/html/functions_func_b.html b/docs/html/functions_func_b.html new file mode 100644 index 0000000..a94ed11 --- /dev/null +++ b/docs/html/functions_func_b.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- b -

+
+ + + + diff --git a/docs/html/functions_func_c.html b/docs/html/functions_func_c.html new file mode 100644 index 0000000..f8bc856 --- /dev/null +++ b/docs/html/functions_func_c.html @@ -0,0 +1,116 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- c -

+
+ + + + diff --git a/docs/html/functions_func_d.html b/docs/html/functions_func_d.html new file mode 100644 index 0000000..70f0034 --- /dev/null +++ b/docs/html/functions_func_d.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- d -

+
+ + + + diff --git a/docs/html/functions_func_e.html b/docs/html/functions_func_e.html new file mode 100644 index 0000000..ff6f435 --- /dev/null +++ b/docs/html/functions_func_e.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- e -

+
+ + + + diff --git a/docs/html/functions_func_f.html b/docs/html/functions_func_f.html new file mode 100644 index 0000000..e69b065 --- /dev/null +++ b/docs/html/functions_func_f.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- f -

+
+ + + + diff --git a/docs/html/functions_func_g.html b/docs/html/functions_func_g.html new file mode 100644 index 0000000..fdf5b38 --- /dev/null +++ b/docs/html/functions_func_g.html @@ -0,0 +1,147 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- g -

+
+ + + + diff --git a/docs/html/functions_func_h.html b/docs/html/functions_func_h.html new file mode 100644 index 0000000..909accb --- /dev/null +++ b/docs/html/functions_func_h.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- h -

+
+ + + + diff --git a/docs/html/functions_func_i.html b/docs/html/functions_func_i.html new file mode 100644 index 0000000..5601335 --- /dev/null +++ b/docs/html/functions_func_i.html @@ -0,0 +1,131 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- i -

+
+ + + + diff --git a/docs/html/functions_func_l.html b/docs/html/functions_func_l.html new file mode 100644 index 0000000..945cba9 --- /dev/null +++ b/docs/html/functions_func_l.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- l -

+
+ + + + diff --git a/docs/html/functions_func_m.html b/docs/html/functions_func_m.html new file mode 100644 index 0000000..fb4a3e4 --- /dev/null +++ b/docs/html/functions_func_m.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- m -

    +
  • mb_fail() +: Item +
  • +
  • modbusDimmerSet() +: Item +
  • +
+
+ + + + diff --git a/docs/html/functions_func_n.html b/docs/html/functions_func_n.html new file mode 100644 index 0000000..7822056 --- /dev/null +++ b/docs/html/functions_func_n.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- n -

    +
  • nextPollTime() +: Input +
  • +
+
+ + + + diff --git a/docs/html/functions_func_o.html b/docs/html/functions_func_o.html new file mode 100644 index 0000000..aab8897 --- /dev/null +++ b/docs/html/functions_func_o.html @@ -0,0 +1,129 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- o -

+
+ + + + diff --git a/docs/html/functions_func_p.html b/docs/html/functions_func_p.html new file mode 100644 index 0000000..062062a --- /dev/null +++ b/docs/html/functions_func_p.html @@ -0,0 +1,128 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- p -

+
+ + + + diff --git a/docs/html/functions_func_r.html b/docs/html/functions_func_r.html new file mode 100644 index 0000000..e8c88b9 --- /dev/null +++ b/docs/html/functions_func_r.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- r -

+
+ + + + diff --git a/docs/html/functions_func_s.html b/docs/html/functions_func_s.html new file mode 100644 index 0000000..2d0aba5 --- /dev/null +++ b/docs/html/functions_func_s.html @@ -0,0 +1,171 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- s -

+
+ + + + diff --git a/docs/html/functions_func_t.html b/docs/html/functions_func_t.html new file mode 100644 index 0000000..8445fc4 --- /dev/null +++ b/docs/html/functions_func_t.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- t -

+
+ + + + diff --git a/docs/html/functions_func_u.html b/docs/html/functions_func_u.html new file mode 100644 index 0000000..78e4a48 --- /dev/null +++ b/docs/html/functions_func_u.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- u -

    +
  • uptimePoll() +: Input +
  • +
+
+ + + + diff --git a/docs/html/functions_func_v.html b/docs/html/functions_func_v.html new file mode 100644 index 0000000..39f7c79 --- /dev/null +++ b/docs/html/functions_func_v.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- v -

    +
  • VacomSetFan() +: Item +
  • +
  • VacomSetHeat() +: Item +
  • +
+
+ + + + diff --git a/docs/html/functions_func_w.html b/docs/html/functions_func_w.html new file mode 100644 index 0000000..e57b025 --- /dev/null +++ b/docs/html/functions_func_w.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- w -

+
+ + + + diff --git a/docs/html/functions_func_~.html b/docs/html/functions_func_~.html new file mode 100644 index 0000000..74bd4fb --- /dev/null +++ b/docs/html/functions_func_~.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members - Functions + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- ~ -

+
+ + + + diff --git a/docs/html/functions_g.html b/docs/html/functions_g.html new file mode 100644 index 0000000..22363f4 --- /dev/null +++ b/docs/html/functions_g.html @@ -0,0 +1,150 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- g -

+
+ + + + diff --git a/docs/html/functions_h.html b/docs/html/functions_h.html new file mode 100644 index 0000000..4bdafb3 --- /dev/null +++ b/docs/html/functions_h.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- h -

+
+ + + + diff --git a/docs/html/functions_i.html b/docs/html/functions_i.html new file mode 100644 index 0000000..9041278 --- /dev/null +++ b/docs/html/functions_i.html @@ -0,0 +1,168 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- i -

+
+ + + + diff --git a/docs/html/functions_l.html b/docs/html/functions_l.html new file mode 100644 index 0000000..84baddc --- /dev/null +++ b/docs/html/functions_l.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- l -

+
+ + + + diff --git a/docs/html/functions_m.html b/docs/html/functions_m.html new file mode 100644 index 0000000..35d96b3 --- /dev/null +++ b/docs/html/functions_m.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- m -

+
+ + + + diff --git a/docs/html/functions_n.html b/docs/html/functions_n.html new file mode 100644 index 0000000..c8d698a --- /dev/null +++ b/docs/html/functions_n.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- n -

+
+ + + + diff --git a/docs/html/functions_o.html b/docs/html/functions_o.html new file mode 100644 index 0000000..a2822bd --- /dev/null +++ b/docs/html/functions_o.html @@ -0,0 +1,129 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- o -

+
+ + + + diff --git a/docs/html/functions_p.html b/docs/html/functions_p.html new file mode 100644 index 0000000..e3ba7b4 --- /dev/null +++ b/docs/html/functions_p.html @@ -0,0 +1,153 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- p -

+
+ + + + diff --git a/docs/html/functions_r.html b/docs/html/functions_r.html new file mode 100644 index 0000000..307096d --- /dev/null +++ b/docs/html/functions_r.html @@ -0,0 +1,96 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- r -

+
+ + + + diff --git a/docs/html/functions_s.html b/docs/html/functions_s.html new file mode 100644 index 0000000..1bd070a --- /dev/null +++ b/docs/html/functions_s.html @@ -0,0 +1,199 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- s -

+
+ + + + diff --git a/docs/html/functions_t.html b/docs/html/functions_t.html new file mode 100644 index 0000000..09d3700 --- /dev/null +++ b/docs/html/functions_t.html @@ -0,0 +1,100 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- t -

+
+ + + + diff --git a/docs/html/functions_u.html b/docs/html/functions_u.html new file mode 100644 index 0000000..832ef82 --- /dev/null +++ b/docs/html/functions_u.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- u -

    +
  • UID_Byte +: UID +
  • +
  • UID_Long +: UID +
  • +
  • uptimePoll() +: Input +
  • +
+
+ + + + diff --git a/docs/html/functions_v.html b/docs/html/functions_v.html new file mode 100644 index 0000000..12d6ffd --- /dev/null +++ b/docs/html/functions_v.html @@ -0,0 +1,88 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- v -

+
+ + + + diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html new file mode 100644 index 0000000..b5d9d03 --- /dev/null +++ b/docs/html/functions_vars.html @@ -0,0 +1,382 @@ + + + + + + + +LightHub: Class Members - Variables + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- f -

+ + +

- g -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

    +
  • UID_Byte +: UID +
  • +
  • UID_Long +: UID +
  • +
+ + +

- v -

+ + +

- w -

+
+ + + + diff --git a/docs/html/functions_w.html b/docs/html/functions_w.html new file mode 100644 index 0000000..00fb9a3 --- /dev/null +++ b/docs/html/functions_w.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- w -

+
+ + + + diff --git a/docs/html/functions_~.html b/docs/html/functions_~.html new file mode 100644 index 0000000..cbf7bbb --- /dev/null +++ b/docs/html/functions_~.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: Class Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- ~ -

+
+ + + + diff --git a/docs/html/globals.html b/docs/html/globals.html new file mode 100644 index 0000000..442893b --- /dev/null +++ b/docs/html/globals.html @@ -0,0 +1,90 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- _ -

+
+ + + + diff --git a/docs/html/globals_a.html b/docs/html/globals_a.html new file mode 100644 index 0000000..3eace05 --- /dev/null +++ b/docs/html/globals_a.html @@ -0,0 +1,113 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- a -

+
+ + + + diff --git a/docs/html/globals_b.html b/docs/html/globals_b.html new file mode 100644 index 0000000..98b29e6 --- /dev/null +++ b/docs/html/globals_b.html @@ -0,0 +1,108 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- b -

+
+ + + + diff --git a/docs/html/globals_c.html b/docs/html/globals_c.html new file mode 100644 index 0000000..22894e4 --- /dev/null +++ b/docs/html/globals_c.html @@ -0,0 +1,308 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- c -

+
+ + + + diff --git a/docs/html/globals_d.html b/docs/html/globals_d.html new file mode 100644 index 0000000..e55e98d --- /dev/null +++ b/docs/html/globals_d.html @@ -0,0 +1,190 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- d -

+
+ + + + diff --git a/docs/html/globals_defs.html b/docs/html/globals_defs.html new file mode 100644 index 0000000..53a6cc7 --- /dev/null +++ b/docs/html/globals_defs.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- _ -

+
+ + + + diff --git a/docs/html/globals_defs_a.html b/docs/html/globals_defs_a.html new file mode 100644 index 0000000..1c9df13 --- /dev/null +++ b/docs/html/globals_defs_a.html @@ -0,0 +1,102 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- a -

+
+ + + + diff --git a/docs/html/globals_defs_b.html b/docs/html/globals_defs_b.html new file mode 100644 index 0000000..2948d8b --- /dev/null +++ b/docs/html/globals_defs_b.html @@ -0,0 +1,108 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- b -

+
+ + + + diff --git a/docs/html/globals_defs_c.html b/docs/html/globals_defs_c.html new file mode 100644 index 0000000..a600af3 --- /dev/null +++ b/docs/html/globals_defs_c.html @@ -0,0 +1,240 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- c -

+
+ + + + diff --git a/docs/html/globals_defs_d.html b/docs/html/globals_defs_d.html new file mode 100644 index 0000000..6c4affb --- /dev/null +++ b/docs/html/globals_defs_d.html @@ -0,0 +1,117 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- d -

+
+ + + + diff --git a/docs/html/globals_defs_e.html b/docs/html/globals_defs_e.html new file mode 100644 index 0000000..4fee084 --- /dev/null +++ b/docs/html/globals_defs_e.html @@ -0,0 +1,93 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- e -

+
+ + + + diff --git a/docs/html/globals_defs_f.html b/docs/html/globals_defs_f.html new file mode 100644 index 0000000..a2e656b --- /dev/null +++ b/docs/html/globals_defs_f.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- f -

+
+ + + + diff --git a/docs/html/globals_defs_h.html b/docs/html/globals_defs_h.html new file mode 100644 index 0000000..baff25b --- /dev/null +++ b/docs/html/globals_defs_h.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- h -

+
+ + + + diff --git a/docs/html/globals_defs_i.html b/docs/html/globals_defs_i.html new file mode 100644 index 0000000..4f2af59 --- /dev/null +++ b/docs/html/globals_defs_i.html @@ -0,0 +1,195 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- i -

+
+ + + + diff --git a/docs/html/globals_defs_l.html b/docs/html/globals_defs_l.html new file mode 100644 index 0000000..86162d1 --- /dev/null +++ b/docs/html/globals_defs_l.html @@ -0,0 +1,123 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- l -

+
+ + + + diff --git a/docs/html/globals_defs_m.html b/docs/html/globals_defs_m.html new file mode 100644 index 0000000..b193bbd --- /dev/null +++ b/docs/html/globals_defs_m.html @@ -0,0 +1,126 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- m -

+
+ + + + diff --git a/docs/html/globals_defs_n.html b/docs/html/globals_defs_n.html new file mode 100644 index 0000000..4c691de --- /dev/null +++ b/docs/html/globals_defs_n.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- n -

+
+ + + + diff --git a/docs/html/globals_defs_o.html b/docs/html/globals_defs_o.html new file mode 100644 index 0000000..0ef95fa --- /dev/null +++ b/docs/html/globals_defs_o.html @@ -0,0 +1,108 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- o -

+
+ + + + diff --git a/docs/html/globals_defs_p.html b/docs/html/globals_defs_p.html new file mode 100644 index 0000000..0dd94af --- /dev/null +++ b/docs/html/globals_defs_p.html @@ -0,0 +1,123 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- p -

+
+ + + + diff --git a/docs/html/globals_defs_q.html b/docs/html/globals_defs_q.html new file mode 100644 index 0000000..afc97dc --- /dev/null +++ b/docs/html/globals_defs_q.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- q -

+
+ + + + diff --git a/docs/html/globals_defs_r.html b/docs/html/globals_defs_r.html new file mode 100644 index 0000000..9b17a57 --- /dev/null +++ b/docs/html/globals_defs_r.html @@ -0,0 +1,81 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- r -

+
+ + + + diff --git a/docs/html/globals_defs_s.html b/docs/html/globals_defs_s.html new file mode 100644 index 0000000..8cfd133 --- /dev/null +++ b/docs/html/globals_defs_s.html @@ -0,0 +1,243 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- s -

+
+ + + + diff --git a/docs/html/globals_defs_t.html b/docs/html/globals_defs_t.html new file mode 100644 index 0000000..867be60 --- /dev/null +++ b/docs/html/globals_defs_t.html @@ -0,0 +1,108 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- t -

+
+ + + + diff --git a/docs/html/globals_defs_u.html b/docs/html/globals_defs_u.html new file mode 100644 index 0000000..40169f8 --- /dev/null +++ b/docs/html/globals_defs_u.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- u -

+
+ + + + diff --git a/docs/html/globals_defs_v.html b/docs/html/globals_defs_v.html new file mode 100644 index 0000000..4977374 --- /dev/null +++ b/docs/html/globals_defs_v.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- v -

+
+ + + + diff --git a/docs/html/globals_defs_w.html b/docs/html/globals_defs_w.html new file mode 100644 index 0000000..4ea58df --- /dev/null +++ b/docs/html/globals_defs_w.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- w -

+
+ + + + diff --git a/docs/html/globals_e.html b/docs/html/globals_e.html new file mode 100644 index 0000000..f296a29 --- /dev/null +++ b/docs/html/globals_e.html @@ -0,0 +1,117 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- e -

+
+ + + + diff --git a/docs/html/globals_enum.html b/docs/html/globals_enum.html new file mode 100644 index 0000000..92988a5 --- /dev/null +++ b/docs/html/globals_enum.html @@ -0,0 +1,79 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+ + + + diff --git a/docs/html/globals_eval.html b/docs/html/globals_eval.html new file mode 100644 index 0000000..3d5821c --- /dev/null +++ b/docs/html/globals_eval.html @@ -0,0 +1,121 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+ + + + diff --git a/docs/html/globals_f.html b/docs/html/globals_f.html new file mode 100644 index 0000000..dece07a --- /dev/null +++ b/docs/html/globals_f.html @@ -0,0 +1,87 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- f -

+
+ + + + diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html new file mode 100644 index 0000000..f9f5251 --- /dev/null +++ b/docs/html/globals_func.html @@ -0,0 +1,543 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- _ -

+ + +

- a -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- g -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+
+ + + + diff --git a/docs/html/globals_g.html b/docs/html/globals_g.html new file mode 100644 index 0000000..7afaf8f --- /dev/null +++ b/docs/html/globals_g.html @@ -0,0 +1,93 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- g -

+
+ + + + diff --git a/docs/html/globals_h.html b/docs/html/globals_h.html new file mode 100644 index 0000000..8850019 --- /dev/null +++ b/docs/html/globals_h.html @@ -0,0 +1,88 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- h -

+
+ + + + diff --git a/docs/html/globals_i.html b/docs/html/globals_i.html new file mode 100644 index 0000000..b62fe41 --- /dev/null +++ b/docs/html/globals_i.html @@ -0,0 +1,268 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- i -

+
+ + + + diff --git a/docs/html/globals_l.html b/docs/html/globals_l.html new file mode 100644 index 0000000..20c5b9c --- /dev/null +++ b/docs/html/globals_l.html @@ -0,0 +1,165 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- l -

+
+ + + + diff --git a/docs/html/globals_m.html b/docs/html/globals_m.html new file mode 100644 index 0000000..f48eab2 --- /dev/null +++ b/docs/html/globals_m.html @@ -0,0 +1,173 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- m -

+
+ + + + diff --git a/docs/html/globals_n.html b/docs/html/globals_n.html new file mode 100644 index 0000000..753d6d8 --- /dev/null +++ b/docs/html/globals_n.html @@ -0,0 +1,98 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- n -

+
+ + + + diff --git a/docs/html/globals_o.html b/docs/html/globals_o.html new file mode 100644 index 0000000..027b13a --- /dev/null +++ b/docs/html/globals_o.html @@ -0,0 +1,172 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- o -

+
+ + + + diff --git a/docs/html/globals_p.html b/docs/html/globals_p.html new file mode 100644 index 0000000..2befb36 --- /dev/null +++ b/docs/html/globals_p.html @@ -0,0 +1,193 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- p -

+
+ + + + diff --git a/docs/html/globals_q.html b/docs/html/globals_q.html new file mode 100644 index 0000000..f127fe0 --- /dev/null +++ b/docs/html/globals_q.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- q -

+
+ + + + diff --git a/docs/html/globals_r.html b/docs/html/globals_r.html new file mode 100644 index 0000000..68ecfbf --- /dev/null +++ b/docs/html/globals_r.html @@ -0,0 +1,113 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- r -

+
+ + + + diff --git a/docs/html/globals_s.html b/docs/html/globals_s.html new file mode 100644 index 0000000..99c0e2a --- /dev/null +++ b/docs/html/globals_s.html @@ -0,0 +1,311 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- s -

+
+ + + + diff --git a/docs/html/globals_t.html b/docs/html/globals_t.html new file mode 100644 index 0000000..59eee79 --- /dev/null +++ b/docs/html/globals_t.html @@ -0,0 +1,155 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- t -

+
+ + + + diff --git a/docs/html/globals_type.html b/docs/html/globals_type.html new file mode 100644 index 0000000..5ce99ab --- /dev/null +++ b/docs/html/globals_type.html @@ -0,0 +1,79 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+ + + + diff --git a/docs/html/globals_u.html b/docs/html/globals_u.html new file mode 100644 index 0000000..7f60bb8 --- /dev/null +++ b/docs/html/globals_u.html @@ -0,0 +1,78 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- u -

+
+ + + + diff --git a/docs/html/globals_v.html b/docs/html/globals_v.html new file mode 100644 index 0000000..9c53127 --- /dev/null +++ b/docs/html/globals_v.html @@ -0,0 +1,84 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- v -

+
+ + + + diff --git a/docs/html/globals_vars.html b/docs/html/globals_vars.html new file mode 100644 index 0000000..4f16f25 --- /dev/null +++ b/docs/html/globals_vars.html @@ -0,0 +1,352 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- q -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- w -

+
+ + + + diff --git a/docs/html/globals_w.html b/docs/html/globals_w.html new file mode 100644 index 0000000..d6da55a --- /dev/null +++ b/docs/html/globals_w.html @@ -0,0 +1,88 @@ + + + + + + + +LightHub: File Members + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- w -

+
+ + + + diff --git a/docs/html/hierarchy.html b/docs/html/hierarchy.html new file mode 100644 index 0000000..97e8008 --- /dev/null +++ b/docs/html/hierarchy.html @@ -0,0 +1,106 @@ + + + + + + + +LightHub: Class Hierarchy + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CabstractCh
 CabstractIn
 Cin_ccs811
 Cin_hdc1080
 CabstractOut
 CcolorChannel
 Cout_dmx
 Cout_pwm
 Cout_SPILed
 Cout_AC
 Cout_Modbus
 Cout_Motor
 CchPersistent
 CmbPersistent
 CInput
 CinStore
 CItem
 CitemArgStore
 CitemCmd
 CitemCmdStore
 CPrint
 CStreamlog
 CreadCache
 Creg_t
 Cserial_t
 CstatusLED
 CUID
+
+
+ + + + diff --git a/docs/html/in__ccs811__hdc1080_8cpp.html b/docs/html/in__ccs811__hdc1080_8cpp.html new file mode 100644 index 0000000..578e83e --- /dev/null +++ b/docs/html/in__ccs811__hdc1080_8cpp.html @@ -0,0 +1,132 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in_ccs811_hdc1080.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
in_ccs811_hdc1080.cpp File Reference
+
+
+
#include "modules/in_ccs811_hdc1080.h"
+#include "Arduino.h"
+#include "options.h"
+#include "Streaming.h"
+#include "item.h"
+#include "main.h"
+
+ + + +

+Functions

void i2cReset ()
 
+ + + +

+Variables

long ccs811Baseline
 
+

Function Documentation

+ +

◆ i2cReset()

+ +
+
+ + + + + + + +
void i2cReset ()
+
+ +
+
+

Variable Documentation

+ +

◆ ccs811Baseline

+ +
+
+ + + + +
long ccs811Baseline
+
+ +
+
+
+ + + + diff --git a/docs/html/in__ccs811__hdc1080_8h.html b/docs/html/in__ccs811__hdc1080_8h.html new file mode 100644 index 0000000..3829645 --- /dev/null +++ b/docs/html/in__ccs811__hdc1080_8h.html @@ -0,0 +1,117 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in_ccs811_hdc1080.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
in_ccs811_hdc1080.h File Reference
+
+
+
#include <inputs.h>
+#include <abstractin.h>
+#include <Wire.h>
+#include "ClosedCube_HDC1080.h"
+#include "SparkFunCCS811.h"
+
+

Go to the source code of this file.

+ + + + + + +

+Classes

class  in_ccs811
 
class  in_hdc1080
 
+ + + +

+Macros

#define CCS811_ADDR   0x5A
 
+

Macro Definition Documentation

+ +

◆ CCS811_ADDR

+ +
+
+ + + + +
#define CCS811_ADDR   0x5A
+
+ +
+
+
+ + + + diff --git a/docs/html/in__ccs811__hdc1080_8h_source.html b/docs/html/in__ccs811__hdc1080_8h_source.html new file mode 100644 index 0000000..e420b0d --- /dev/null +++ b/docs/html/in__ccs811__hdc1080_8h_source.html @@ -0,0 +1,164 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in_ccs811_hdc1080.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
in_ccs811_hdc1080.h
+
+
+Go to the documentation of this file.
1 
+
2 #pragma once
+
3 #ifndef CSSHDC_DISABLE
+
4 #include <inputs.h>
+
5 #include <abstractin.h>
+
6 #include <Wire.h>
+
7 #include "ClosedCube_HDC1080.h"
+
8 #include "SparkFunCCS811.h" //Click here to get the library: http://librarymanager/All#SparkFun_CCS811
+
9 
+
10 //#define CCS811_ADDR 0x5B //Default I2C Address
+
11 #define CCS811_ADDR 0x5A //Alternate I2C Address
+
12 
+
13 #if defined (ARDUINO_ARCH_ESP8266)
+
14 #define twi_scl D1
+
15 #ifndef WAK_PIN
+
16 #define WAK_PIN D3
+
17 #endif
+
18 
+
19 #define SCL_LOW() (GPES = (1 << twi_scl))
+
20 #define SCL_HIGH() (GPEC = (1 << twi_scl))
+
21 #define SCL_RESET
+
22 #endif
+
23 
+
24 /*
+
25 #if defined (__SAM3X8E__)
+
26 #define SCL_LOW() digitalWrite(21,LOW)
+
27 #define SCL_HIGH() digitalWrite(21,HIGH)
+
28 #define SCL_RESET
+
29 #endif
+
30 */
+
31 
+
32 #if defined (ARDUINO_ARCH_ESP32)
+
33 #undef WAK_PIN
+
34 //#ifndef WAK_PIN
+
35 //#define WAK_PIN 17
+
36 //#endif
+
37 #endif
+
38 
+
39 #if defined(ARDUINO_ARCH_AVR)
+
40 #ifndef WAK_PIN
+
41 #define WAK_PIN 3 // for LightHub UEXT SCS Pin
+
42 #endif
+
43 #endif
+
44 
+
45 
+
46 class Input;
+
47 class in_ccs811 : public abstractIn {
+
48 public:
+
49  //CCS811 ccs811(CCS811_ADDR);
+
50  //uint16_t ccs811Baseline;
+
51  in_ccs811(Input * _in):abstractIn(_in){};
+
52  int Setup() override;
+
53  int Poll(short cause) override;
+
54 
+
55 protected:
+
56  void printDriverError( CCS811Core::status errorCode );
+
57  void printSensorError();
+
58 };
+
59 
+
60 class in_hdc1080 : public abstractIn {
+
61 public:
+
62  //ClosedCube_HDC1080 hdc1080;
+
63  in_hdc1080(Input * _in):abstractIn(_in){};
+
64  int Setup() override;
+
65  int Poll(short cause) override;
+
66 
+
67 protected:
+
68  void printSerialNumber();
+
69 };
+
70 #endif
+
+
in_hdc1080(Input *_in)
Definition: in_ccs811_hdc1080.h:63
+
void printSerialNumber()
Definition: in_ccs811_hdc1080.cpp:181
+
int Setup() override
Definition: in_ccs811_hdc1080.cpp:61
+
void printSensorError()
Definition: in_ccs811_hdc1080.cpp:220
+ +
int Setup() override
Definition: in_ccs811_hdc1080.cpp:22
+
Definition: in_ccs811_hdc1080.h:47
+
int Poll(short cause) override
Definition: in_ccs811_hdc1080.cpp:88
+
Definition: inputs.h:131
+ +
void printDriverError(CCS811Core::status errorCode)
Definition: in_ccs811_hdc1080.cpp:194
+
int Poll(short cause) override
Definition: in_ccs811_hdc1080.cpp:128
+
in_ccs811(Input *_in)
Definition: in_ccs811_hdc1080.h:51
+
Definition: abstractin.h:6
+
Definition: in_ccs811_hdc1080.h:60
+ + + + diff --git a/docs/html/index.html b/docs/html/index.html new file mode 100644 index 0000000..3b8e3cc --- /dev/null +++ b/docs/html/index.html @@ -0,0 +1,75 @@ + + + + + + + +LightHub: Main Page + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
LightHub Documentation
+
+
+
+ + + + diff --git a/docs/html/inputs_8cpp.html b/docs/html/inputs_8cpp.html new file mode 100644 index 0000000..b0f5cab --- /dev/null +++ b/docs/html/inputs_8cpp.html @@ -0,0 +1,230 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
inputs.cpp File Reference
+
+
+
#include "inputs.h"
+#include "item.h"
+#include "utils.h"
+#include <PubSubClient.h>
+#include "main.h"
+#include "itemCmd.h"
+#include "DHT.h"
+
+ + + +

+Functions

void cleanStore (aJsonObject *input)
 
+ + + + + + + + + + + +

+Variables

PubSubClient mqttClient
 
aJsonObject * root
 
int8_t ethernetIdleCount
 
int8_t configLocked
 
readCache inCache
 
+

Function Documentation

+ +

◆ cleanStore()

+ +
+
+ + + + + + + + +
void cleanStore (aJsonObject * input)
+
+ +
+
+

Variable Documentation

+ +

◆ configLocked

+ +
+
+ + + + + +
+ + + + +
int8_t configLocked
+
+extern
+
+ +
+
+ +

◆ ethernetIdleCount

+ +
+
+ + + + + +
+ + + + +
int8_t ethernetIdleCount
+
+extern
+
+ +
+
+ +

◆ inCache

+ +
+
+ + + + +
readCache inCache
+
+ +
+
+ +

◆ mqttClient

+ +
+
+ + + + + +
+ + + + +
PubSubClient mqttClient
+
+extern
+
+ +
+
+ +

◆ root

+ +
+
+ + + + + +
+ + + + +
aJsonObject* root
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/inputs_8h.html b/docs/html/inputs_8h.html new file mode 100644 index 0000000..b919ea9 --- /dev/null +++ b/docs/html/inputs_8h.html @@ -0,0 +1,729 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
inputs.h File Reference
+
+
+
#include <aJSON.h>
+#include "modules/in_ccs811_hdc1080.h"
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

union  inStore
 
class  Input
 
class  readCache
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define IN_ACTIVE_HIGH   2
 
#define IN_ANALOG   64
 
#define IN_RE   32
 
#define IN_I2C   128
 
#define IN_PUSH_ON   0
 
#define IN_PUSH_TOGGLE   1
 
#define IN_DHT22   4
 
#define IN_CCS811   5
 
#define IN_HDC1080   6
 
#define IN_COUNTER   8
 
#define IN_UPTIME   16
 
#define IS_IDLE   0
 
#define IS_PRESSED   1
 
#define IS_RELEASED   2
 
#define IS_LONG   3
 
#define IS_REPEAT   4
 
#define IS_WAITPRESS   5
 
#define IS_PRESSED2   6
 
#define IS_RELEASED2   7
 
#define IS_LONG2   8u
 
#define IS_REPEAT2   9u
 
#define IS_PRESSED3   10u
 
#define IS_LONG3   11u
 
#define IS_REPEAT3   12u
 
#define IS_WAITRELEASE   13u
 
#define IS_REQSTATE   0xFF
 
#define SAME_STATE_ATTEMPTS   3
 
#define ANALOG_STATE_ATTEMPTS   6
 
#define ANALOG_NOIZE   1
 
#define CHECK_SENSOR   1
 
#define CHECK_INPUT   2
 
#define CHECK_INTERRUPT   3
 
#define T_LONG   1000
 
#define T_IDLE   600
 
#define T_RPT   300
 
#define T_RPT_PULSE   150
 
+ + + + + +

+Variables

aJsonObject * inputs
 
readCache inCache
 
+

Macro Definition Documentation

+ +

◆ ANALOG_NOIZE

+ +
+
+ + + + +
#define ANALOG_NOIZE   1
+
+ +
+
+ +

◆ ANALOG_STATE_ATTEMPTS

+ +
+
+ + + + +
#define ANALOG_STATE_ATTEMPTS   6
+
+ +
+
+ +

◆ CHECK_INPUT

+ +
+
+ + + + +
#define CHECK_INPUT   2
+
+ +
+
+ +

◆ CHECK_INTERRUPT

+ +
+
+ + + + +
#define CHECK_INTERRUPT   3
+
+ +
+
+ +

◆ CHECK_SENSOR

+ +
+
+ + + + +
#define CHECK_SENSOR   1
+
+ +
+
+ +

◆ IN_ACTIVE_HIGH

+ +
+
+ + + + +
#define IN_ACTIVE_HIGH   2
+
+ +
+
+ +

◆ IN_ANALOG

+ +
+
+ + + + +
#define IN_ANALOG   64
+
+ +
+
+ +

◆ IN_CCS811

+ +
+
+ + + + +
#define IN_CCS811   5
+
+ +
+
+ +

◆ IN_COUNTER

+ +
+
+ + + + +
#define IN_COUNTER   8
+
+ +
+
+ +

◆ IN_DHT22

+ +
+
+ + + + +
#define IN_DHT22   4
+
+ +
+
+ +

◆ IN_HDC1080

+ +
+
+ + + + +
#define IN_HDC1080   6
+
+ +
+
+ +

◆ IN_I2C

+ +
+
+ + + + +
#define IN_I2C   128
+
+ +
+
+ +

◆ IN_PUSH_ON

+ +
+
+ + + + +
#define IN_PUSH_ON   0
+
+ +
+
+ +

◆ IN_PUSH_TOGGLE

+ +
+
+ + + + +
#define IN_PUSH_TOGGLE   1
+
+ +
+
+ +

◆ IN_RE

+ +
+
+ + + + +
#define IN_RE   32
+
+ +
+
+ +

◆ IN_UPTIME

+ +
+
+ + + + +
#define IN_UPTIME   16
+
+ +
+
+ +

◆ IS_IDLE

+ +
+
+ + + + +
#define IS_IDLE   0
+
+ +
+
+ +

◆ IS_LONG

+ +
+
+ + + + +
#define IS_LONG   3
+
+ +
+
+ +

◆ IS_LONG2

+ +
+
+ + + + +
#define IS_LONG2   8u
+
+ +
+
+ +

◆ IS_LONG3

+ +
+
+ + + + +
#define IS_LONG3   11u
+
+ +
+
+ +

◆ IS_PRESSED

+ +
+
+ + + + +
#define IS_PRESSED   1
+
+ +
+
+ +

◆ IS_PRESSED2

+ +
+
+ + + + +
#define IS_PRESSED2   6
+
+ +
+
+ +

◆ IS_PRESSED3

+ +
+
+ + + + +
#define IS_PRESSED3   10u
+
+ +
+
+ +

◆ IS_RELEASED

+ +
+
+ + + + +
#define IS_RELEASED   2
+
+ +
+
+ +

◆ IS_RELEASED2

+ +
+
+ + + + +
#define IS_RELEASED2   7
+
+ +
+
+ +

◆ IS_REPEAT

+ +
+
+ + + + +
#define IS_REPEAT   4
+
+ +
+
+ +

◆ IS_REPEAT2

+ +
+
+ + + + +
#define IS_REPEAT2   9u
+
+ +
+
+ +

◆ IS_REPEAT3

+ +
+
+ + + + +
#define IS_REPEAT3   12u
+
+ +
+
+ +

◆ IS_REQSTATE

+ +
+
+ + + + +
#define IS_REQSTATE   0xFF
+
+ +
+
+ +

◆ IS_WAITPRESS

+ +
+
+ + + + +
#define IS_WAITPRESS   5
+
+ +
+
+ +

◆ IS_WAITRELEASE

+ +
+
+ + + + +
#define IS_WAITRELEASE   13u
+
+ +
+
+ +

◆ SAME_STATE_ATTEMPTS

+ +
+
+ + + + +
#define SAME_STATE_ATTEMPTS   3
+
+ +
+
+ +

◆ T_IDLE

+ +
+
+ + + + +
#define T_IDLE   600
+
+ +
+
+ +

◆ T_LONG

+ +
+
+ + + + +
#define T_LONG   1000
+
+ +
+
+ +

◆ T_RPT

+ +
+
+ + + + +
#define T_RPT   300
+
+ +
+
+ +

◆ T_RPT_PULSE

+ +
+
+ + + + +
#define T_RPT_PULSE   150
+
+ +
+
+

Variable Documentation

+ +

◆ inCache

+ +
+
+ + + + + +
+ + + + +
readCache inCache
+
+extern
+
+ +
+
+ +

◆ inputs

+ +
+
+ + + + + +
+ + + + +
aJsonObject* inputs
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/inputs_8h_source.html b/docs/html/inputs_8h_source.html new file mode 100644 index 0000000..b5b8804 --- /dev/null +++ b/docs/html/inputs_8h_source.html @@ -0,0 +1,337 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
inputs.h
+
+
+Go to the documentation of this file.
1 /* Copyright © 2017-2018 Andrey Klimov. All rights reserved.
+
2 
+
3 Licensed under the Apache License, Version 2.0 (the "License");
+
4 you may not use this file except in compliance with the License.
+
5 You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9 Unless required by applicable law or agreed to in writing, software
+
10 distributed under the License is distributed on an "AS IS" BASIS,
+
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12 See the License for the specific language governing permissions and
+
13 limitations under the License.
+
14 
+
15 Homepage: http://lazyhome.ru
+
16 GIT: https://github.com/anklimov/lighthub
+
17 e-mail anklimov@gmail.com
+
18 
+
19 */
+
20 #pragma once
+
21 #include <aJSON.h>
+ +
23 
+
24 #define IN_ACTIVE_HIGH 2 // High level = PUSHED/ CLOSED/ ON othervise :Low Level. Use INPUT mode instead of INPUT_PULLUP for digital pin
+
25 #define IN_ANALOG 64 // Analog input
+
26 #define IN_RE 32 // Rotary Encoder (for further use)
+
27 #define IN_I2C 128 // MCP23017
+
28 
+
29 #define IN_PUSH_ON 0 // PUSH - ON, Release - OFF (ovverrided by pcmd/rcmd) - DEFAULT
+
30 #define IN_PUSH_TOGGLE 1 // Used for push buttons. Every physicall push toggle logical switch on/off. Toggle on leading edge
+
31 
+
32 #define IN_DHT22 4
+
33 #define IN_CCS811 5
+
34 #define IN_HDC1080 6
+
35 
+
36 #define IN_COUNTER 8
+
37 #define IN_UPTIME 16
+
38 
+
39 #define IS_IDLE 0
+
40 #define IS_PRESSED 1
+
41 #define IS_RELEASED 2
+
42 #define IS_LONG 3
+
43 #define IS_REPEAT 4
+
44 #define IS_WAITPRESS 5
+
45 #define IS_PRESSED2 6
+
46 #define IS_RELEASED2 7
+
47 #define IS_LONG2 8u
+
48 #define IS_REPEAT2 9u
+
49 #define IS_PRESSED3 10u
+
50 #define IS_LONG3 11u
+
51 #define IS_REPEAT3 12u
+
52 #define IS_WAITRELEASE 13u
+
53 #define IS_REQSTATE 0xFF
+
54 
+
55 
+
56 
+
57 #define SAME_STATE_ATTEMPTS 3
+
58 #define ANALOG_STATE_ATTEMPTS 6
+
59 #define ANALOG_NOIZE 1
+
60 
+
61 #define CHECK_SENSOR 1
+
62 #define CHECK_INPUT 2
+
63 #define CHECK_INTERRUPT 3
+
64 
+
65 
+
66 #define T_LONG 1000
+
67 #define T_IDLE 600
+
68 #define T_RPT 300
+
69 #define T_RPT_PULSE 150
+
70 
+
71 
+
72 
+
73 // in syntaxis
+
74 // "pin": { "T":"N", "emit":"out_emit", item:"out_item", "scmd": "ON,OFF,TOGGLE,INCREASE,DECREASE", "rcmd": "ON,OFF,TOGGLE,INCREASE,DECREASE", "rcmd":"repeat_command" }
+
75 
+
76 //
+
77 //Switch/Restore all
+
78 //"pin": { "T":"1", "emit":"/all", item:"local_all", "scmd": "OFF", "rcmd": "RESTORE"}
+
79 
+
80 //
+
81 //Normal (not button) Switch (toggled mode)
+
82 //"pin": { "T":"0", "emit":"/light1", item:"light1", "scmd": "TOGGLE", "rcmd": "TOGGLE"}
+
83 // or
+
84 // "pin": { "T":"xx", "emit":"/light1", item:"light1"}
+
85 
+
86 //Use Button
+
87 //"pin": { "T":"1", "emit":"/light1", item:"light1", "scmd": "ON", "rcmd": "OFF"}
+
88 // or
+
89 // "pin": { "T":"1", "emit":"/light1", item:"light1"}
+
90 //or
+
91 // "pin": { "emit":"/light1", item:"light1"}
+
92 
+
93 //1-Button dimmer
+
94 //"pin": { "T":"1", "emit":"/light1", item:"light1", "scmd": "ON", srcmd:"INCREASE",rrcmd:"DECREASE", "rcmd": "OFF"}
+
95 // or
+
96 // "pin": { "T":"xx", "emit":"/light1", item:"light1"}
+
97 
+
98 //2-Buttons dimmer
+
99 //"pin1": { "T":"0", "emit":"/light1", item:"light1", "scmd": "ON", repcmd:"INCREASE"}
+
100 //"pin2": { "T":"0", "emit":"/light1", item:"light1", "scmd": "OFF", repcmd:"INCREASE"}
+
101 
+
102 
+
103 extern aJsonObject *inputs;
+
104 
+
105 
+
106 typedef union {
+
107  long int aslong;
+
108  uint32_t timestamp;
+
109  // Analog input structure
+
110  struct {
+
111  uint8_t reserved;
+
112  uint8_t logicState;
+
113  int16_t currentValue;
+
114  };
+
115  // Digital input structure
+
116  struct {
+
117  uint8_t toggle1:1;
+
118  uint8_t toggle2:1;
+
119  uint8_t toggle3:1;
+
120  uint8_t lastValue:1;
+
121  uint8_t delayedState:1;
+
122  uint8_t bounce:3;
+
123  uint8_t state:4;
+
124  uint8_t reqState:4;
+
125  uint16_t timestamp16;
+
126 
+
127  };
+
128 
+
129 } inStore;
+
130 
+
131 class Input {
+
132 public:
+
133  aJsonObject *inputObj;
+
134  uint8_t inType;
+
135  uint8_t pin;
+ +
137 
+
138  Input(aJsonObject *obj, aJsonObject * configObj = NULL);
+
139  Input(char *name);
+
140 
+
141  boolean isValid();
+
142 
+
143  void onContactChanged(int newValue);
+
144  void onAnalogChanged(float newValue);
+
145 
+
146  int Poll(short cause);
+
147  void setup();
+
148 
+
149  static void inline onCounterChanged(int i);
+
150  static void onCounterChanged0();
+
151  static void onCounterChanged1();
+
152  static void onCounterChanged2();
+
153  static void onCounterChanged3();
+
154  static void onCounterChanged4();
+
155  static void onCounterChanged5();
+
156 
+
157 
+
158 
+
159 protected:
+
160  void Parse(aJsonObject * configObj = NULL);
+
161 
+
162  void contactPoll(short cause);
+
163  void analogPoll(short cause);
+
164 
+
165  void dht22Poll();
+
166 
+
167 
+
168  void counterPoll();
+
169 
+
170  void attachInterruptPinIrq(int realPin, int irq);
+
171 
+
172  unsigned long nextPollTime() const;
+
173  void setNextPollTime(unsigned long pollTime);
+
174 
+
175 
+
176  void uptimePoll();
+
177 
+
178  bool publishDataToDomoticz(int , aJsonObject *, const char *format, ...);
+
179 
+
180  char* getIdxField();
+
181  bool changeState(uint8_t newState, short cause);
+
182  //bool executeCommand(aJsonObject* cmd, int8_t toggle = -1, char* defCmd = NULL);
+
183 };
+
184 
+
185 
+
186 
+
187 class readCache {
+
188 public:
+
189  readCache();
+
190  uint16_t analogReadCached (uint8_t pin);
+
191  uint8_t digitalReadCached(uint8_t pin);
+
192  #ifdef MCP23017
+
193  uint8_t I2CReadBit(uint8_t type, uint8_t addr, uint8_t pin);
+
194  #endif
+
195  void invalidateInputCache();
+
196 protected:
+
197  uint8_t addr;
+
198  uint8_t type;
+
199  uint16_t cached_data;
+
200 };
+
201 
+
202 extern readCache inCache;
+
+
int Poll(short cause)
Definition: inputs.cpp:224
+
static void onCounterChanged5()
Definition: inputs.cpp:422
+
uint8_t toggle1
Definition: inputs.h:117
+
void dht22Poll()
Definition: inputs.cpp:458
+
uint16_t cached_data
Definition: inputs.h:199
+
uint32_t timestamp
Definition: inputs.h:108
+
static void onCounterChanged(int i)
Definition: inputs.cpp:397
+
bool publishDataToDomoticz(int, aJsonObject *, const char *format,...)
Definition: inputs.cpp:1063
+
uint8_t bounce
Definition: inputs.h:122
+
void onAnalogChanged(float newValue)
Definition: inputs.cpp:1028
+
uint8_t reqState
Definition: inputs.h:124
+
void counterPoll()
Definition: inputs.cpp:291
+
readCache()
Definition: inputs.cpp:1095
+
void analogPoll(short cause)
Definition: inputs.cpp:897
+
void contactPoll(short cause)
Definition: inputs.cpp:706
+
uint8_t type
Definition: inputs.h:198
+
bool changeState(uint8_t newState, short cause)
Definition: inputs.cpp:591
+
inStore * store
Definition: inputs.h:136
+
uint8_t toggle3
Definition: inputs.h:119
+
static void onCounterChanged0()
Definition: inputs.cpp:407
+
uint8_t addr
Definition: inputs.h:197
+
aJsonObject * inputs
Definition: main.cpp:141
+
void Parse(aJsonObject *configObj=NULL)
Definition: inputs.cpp:96
+
uint8_t inType
Definition: inputs.h:134
+
char * getIdxField()
Definition: inputs.cpp:1086
+
void setNextPollTime(unsigned long pollTime)
Definition: inputs.cpp:442
+
unsigned long nextPollTime() const
Definition: inputs.cpp:429
+
void setup()
Definition: inputs.cpp:154
+
uint8_t state
Definition: inputs.h:123
+
Input(aJsonObject *obj, aJsonObject *configObj=NULL)
Definition: inputs.cpp:83
+
boolean isValid()
Definition: inputs.cpp:90
+
void onContactChanged(int newValue)
Definition: inputs.cpp:976
+
Definition: inputs.h:131
+
uint16_t timestamp16
Definition: inputs.h:125
+
Definition: inputs.h:106
+
int16_t currentValue
Definition: inputs.h:113
+
static void onCounterChanged3()
Definition: inputs.cpp:416
+
uint8_t reserved
Definition: inputs.h:111
+
Definition: inputs.h:187
+ +
uint8_t logicState
Definition: inputs.h:112
+
void uptimePoll()
Definition: inputs.cpp:376
+
uint8_t delayedState
Definition: inputs.h:121
+
uint16_t analogReadCached(uint8_t pin)
Definition: inputs.cpp:1101
+
uint8_t pin
Definition: inputs.h:135
+
void attachInterruptPinIrq(int realPin, int irq)
Definition: inputs.cpp:338
+
static void onCounterChanged1()
Definition: inputs.cpp:410
+
static void onCounterChanged2()
Definition: inputs.cpp:413
+
readCache inCache
Definition: inputs.cpp:71
+
aJsonObject * inputObj
Definition: inputs.h:133
+
uint8_t lastValue
Definition: inputs.h:120
+
uint8_t toggle2
Definition: inputs.h:118
+
long int aslong
Definition: inputs.h:107
+
uint8_t digitalReadCached(uint8_t pin)
Definition: inputs.cpp:1110
+
void invalidateInputCache()
Definition: inputs.cpp:1128
+
static void onCounterChanged4()
Definition: inputs.cpp:419
+ + + + diff --git a/docs/html/item_8cpp.html b/docs/html/item_8cpp.html new file mode 100644 index 0000000..a43c077 --- /dev/null +++ b/docs/html/item_8cpp.html @@ -0,0 +1,382 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/item.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
item.cpp File Reference
+
+
+
#include "options.h"
+#include "item.h"
+#include "aJSON.h"
+#include "utils.h"
+#include "textconst.h"
+#include "main.h"
+#include "bright.h"
+#include "itemCmd.h"
+#include "dmx.h"
+#include <Adafruit_NeoPixel.h>
+#include <ModbusMaster.h>
+#include <PubSubClient.h>
+#include "modules/out_spiled.h"
+#include "modules/out_ac.h"
+#include "modules/out_motor.h"
+#include "modules/out_modbus.h"
+#include "modules/out_dmx.h"
+#include "modules/out_pwm.h"
+
+ + + + + +

+Macros

#define a   0.1842f
 
#define b   -36.68f
 
+ + + + + + + +

+Functions

int retrieveCode (char **psubItem)
 
int subitem2cmd (char *payload)
 
int txt2subItem (char *payload)
 
+ + + + + + + + + + + + + + + + + +

+Variables

short modbusBusy = 0
 
aJsonObject * pollingItem
 
PubSubClient mqttClient
 
int8_t ethernetIdleCount
 
int8_t configLocked
 
lan_status lanStatus
 
const short defval [4] = {0, 0, 0, 0}
 
ModbusMaster node
 
+

Macro Definition Documentation

+ +

◆ a

+ +
+
+ + + + +
#define a   0.1842f
+
+ +
+
+ +

◆ b

+ +
+
+ + + + +
#define b   -36.68f
+
+ +
+
+

Function Documentation

+ +

◆ retrieveCode()

+ +
+
+ + + + + + + + +
int retrieveCode (char ** psubItem)
+
+ +
+
+ +

◆ subitem2cmd()

+ +
+
+ + + + + + + + +
int subitem2cmd (char * payload)
+
+ +
+
+ +

◆ txt2subItem()

+ +
+
+ + + + + + + + +
int txt2subItem (char * payload)
+
+ +
+
+

Variable Documentation

+ +

◆ configLocked

+ +
+
+ + + + + +
+ + + + +
int8_t configLocked
+
+extern
+
+ +
+
+ +

◆ defval

+ +
+
+ + + + +
const short defval[4] = {0, 0, 0, 0}
+
+ +
+
+ +

◆ ethernetIdleCount

+ +
+
+ + + + + +
+ + + + +
int8_t ethernetIdleCount
+
+extern
+
+ +
+
+ +

◆ lanStatus

+ +
+
+ + + + + +
+ + + + +
lan_status lanStatus
+
+extern
+
+ +
+
+ +

◆ modbusBusy

+ +
+
+ + + + +
short modbusBusy = 0
+
+ +
+
+ +

◆ mqttClient

+ +
+
+ + + + + +
+ + + + +
PubSubClient mqttClient
+
+extern
+
+ +
+
+ +

◆ node

+ +
+
+ + + + + +
+ + + + +
ModbusMaster node
+
+extern
+
+ +
+
+ +

◆ pollingItem

+ +
+
+ + + + + +
+ + + + +
aJsonObject* pollingItem
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/item_8h.html b/docs/html/item_8h.html new file mode 100644 index 0000000..917778b --- /dev/null +++ b/docs/html/item_8h.html @@ -0,0 +1,870 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/item.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
item.h File Reference
+
+
+
#include "options.h"
+#include "abstractout.h"
+#include "itemCmd.h"
+#include "aJSON.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  Item
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define S_NOTFOUND   0
 
#define S_CMD   1
 
#define S_SET   2
 
#define S_HSV   3
 
#define S_RGB   4
 
#define S_FAN   5
 
#define S_MODE   6
 
#define S_HUE   7
 
#define S_SAT   8
 
#define S_TEMP   9
 
#define S_ADDITIONAL   9
 
#define CH_DIMMER   0
 
#define CH_RGBW   1
 
#define CH_RGB   2
 
#define CH_PWM   3
 
#define CH_MODBUS   4
 
#define CH_THERMO   5
 
#define CH_RELAY   6
 
#define CH_GROUP   7
 
#define CH_VCTEMP   8
 
#define CH_VC   9
 
#define CH_AC   10
 
#define CH_SPILED   11
 
#define CH_MOTOR   12
 
#define CH_MBUS   14
 
#define CH_WHITE   127
 
#define POLLING_SLOW   1
 
#define POLLING_FAST   2
 
#define POLLING_INT   3
 
#define I_TYPE   0
 
#define I_ARG   1
 
#define I_VAL   2
 
#define I_CMD   3
 
#define I_EXT   4
 
#define MODBUS_CMD_ARG_ADDR   0
 
#define MODBUS_CMD_ARG_REG   1
 
#define MODBUS_CMD_ARG_MASK   2
 
#define MODBUS_CMD_ARG_MAX_SCALE   3
 
#define MODBUS_CMD_ARG_REG_TYPE   4
 
#define MODBUS_COIL_REG_TYPE   0
 
#define MODBUS_DISCRETE_REG_TYPE   1
 
#define MODBUS_HOLDING_REG_TYPE   2
 
#define MODBUS_INPUT_REG_TYPE   3
 
+ + + + + +

+Functions

short thermoSetCurTemp (char *name, float t)
 
int txt2cmd (char *payload)
 
+ + + +

+Variables

aJsonObject * items
 
+

Macro Definition Documentation

+ +

◆ CH_AC

+ +
+
+ + + + +
#define CH_AC   10
+
+ +
+
+ +

◆ CH_DIMMER

+ +
+
+ + + + +
#define CH_DIMMER   0
+
+ +
+
+ +

◆ CH_GROUP

+ +
+
+ + + + +
#define CH_GROUP   7
+
+ +
+
+ +

◆ CH_MBUS

+ +
+
+ + + + +
#define CH_MBUS   14
+
+ +
+
+ +

◆ CH_MODBUS

+ +
+
+ + + + +
#define CH_MODBUS   4
+
+ +
+
+ +

◆ CH_MOTOR

+ +
+
+ + + + +
#define CH_MOTOR   12
+
+ +
+
+ +

◆ CH_PWM

+ +
+
+ + + + +
#define CH_PWM   3
+
+ +
+
+ +

◆ CH_RELAY

+ +
+
+ + + + +
#define CH_RELAY   6
+
+ +
+
+ +

◆ CH_RGB

+ +
+
+ + + + +
#define CH_RGB   2
+
+ +
+
+ +

◆ CH_RGBW

+ +
+
+ + + + +
#define CH_RGBW   1
+
+ +
+
+ +

◆ CH_SPILED

+ +
+
+ + + + +
#define CH_SPILED   11
+
+ +
+
+ +

◆ CH_THERMO

+ +
+
+ + + + +
#define CH_THERMO   5
+
+ +
+
+ +

◆ CH_VC

+ +
+
+ + + + +
#define CH_VC   9
+
+ +
+
+ +

◆ CH_VCTEMP

+ +
+
+ + + + +
#define CH_VCTEMP   8
+
+ +
+
+ +

◆ CH_WHITE

+ +
+
+ + + + +
#define CH_WHITE   127
+
+ +
+
+ +

◆ I_ARG

+ +
+
+ + + + +
#define I_ARG   1
+
+ +
+
+ +

◆ I_CMD

+ +
+
+ + + + +
#define I_CMD   3
+
+ +
+
+ +

◆ I_EXT

+ +
+
+ + + + +
#define I_EXT   4
+
+ +
+
+ +

◆ I_TYPE

+ +
+
+ + + + +
#define I_TYPE   0
+
+ +
+
+ +

◆ I_VAL

+ +
+
+ + + + +
#define I_VAL   2
+
+ +
+
+ +

◆ MODBUS_CMD_ARG_ADDR

+ +
+
+ + + + +
#define MODBUS_CMD_ARG_ADDR   0
+
+ +
+
+ +

◆ MODBUS_CMD_ARG_MASK

+ +
+
+ + + + +
#define MODBUS_CMD_ARG_MASK   2
+
+ +
+
+ +

◆ MODBUS_CMD_ARG_MAX_SCALE

+ +
+
+ + + + +
#define MODBUS_CMD_ARG_MAX_SCALE   3
+
+ +
+
+ +

◆ MODBUS_CMD_ARG_REG

+ +
+
+ + + + +
#define MODBUS_CMD_ARG_REG   1
+
+ +
+
+ +

◆ MODBUS_CMD_ARG_REG_TYPE

+ +
+
+ + + + +
#define MODBUS_CMD_ARG_REG_TYPE   4
+
+ +
+
+ +

◆ MODBUS_COIL_REG_TYPE

+ +
+
+ + + + +
#define MODBUS_COIL_REG_TYPE   0
+
+ +
+
+ +

◆ MODBUS_DISCRETE_REG_TYPE

+ +
+
+ + + + +
#define MODBUS_DISCRETE_REG_TYPE   1
+
+ +
+
+ +

◆ MODBUS_HOLDING_REG_TYPE

+ +
+
+ + + + +
#define MODBUS_HOLDING_REG_TYPE   2
+
+ +
+
+ +

◆ MODBUS_INPUT_REG_TYPE

+ +
+
+ + + + +
#define MODBUS_INPUT_REG_TYPE   3
+
+ +
+
+ +

◆ POLLING_FAST

+ +
+
+ + + + +
#define POLLING_FAST   2
+
+ +
+
+ +

◆ POLLING_INT

+ +
+
+ + + + +
#define POLLING_INT   3
+
+ +
+
+ +

◆ POLLING_SLOW

+ +
+
+ + + + +
#define POLLING_SLOW   1
+
+ +
+
+ +

◆ S_ADDITIONAL

+ +
+
+ + + + +
#define S_ADDITIONAL   9
+
+ +
+
+ +

◆ S_CMD

+ +
+
+ + + + +
#define S_CMD   1
+
+ +
+
+ +

◆ S_FAN

+ +
+
+ + + + +
#define S_FAN   5
+
+ +
+
+ +

◆ S_HSV

+ +
+
+ + + + +
#define S_HSV   3
+
+ +
+
+ +

◆ S_HUE

+ +
+
+ + + + +
#define S_HUE   7
+
+ +
+
+ +

◆ S_MODE

+ +
+
+ + + + +
#define S_MODE   6
+
+ +
+
+ +

◆ S_NOTFOUND

+ +
+
+ + + + +
#define S_NOTFOUND   0
+
+ +
+
+ +

◆ S_RGB

+ +
+
+ + + + +
#define S_RGB   4
+
+ +
+
+ +

◆ S_SAT

+ +
+
+ + + + +
#define S_SAT   8
+
+ +
+
+ +

◆ S_SET

+ +
+
+ + + + +
#define S_SET   2
+
+ +
+
+ +

◆ S_TEMP

+ +
+
+ + + + +
#define S_TEMP   9
+
+ +
+
+

Function Documentation

+ +

◆ thermoSetCurTemp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
short thermoSetCurTemp (char * name,
float t 
)
+
+ +
+
+ +

◆ txt2cmd()

+ +
+
+ + + + + + + + +
int txt2cmd (char * payload)
+
+ +
+
+

Variable Documentation

+ +

◆ items

+ +
+
+ + + + + +
+ + + + +
aJsonObject* items
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/item_8h_source.html b/docs/html/item_8h_source.html new file mode 100644 index 0000000..1473b6a --- /dev/null +++ b/docs/html/item_8h_source.html @@ -0,0 +1,295 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/item.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
item.h
+
+
+Go to the documentation of this file.
1 /* Copyright © 2017-2020 Andrey Klimov. All rights reserved.
+
2 
+
3 Licensed under the Apache License, Version 2.0 (the "License");
+
4 you may not use this file except in compliance with the License.
+
5 You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9 Unless required by applicable law or agreed to in writing, software
+
10 distributed under the License is distributed on an "AS IS" BASIS,
+
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12 See the License for the specific language governing permissions and
+
13 limitations under the License.
+
14 
+
15 Homepage: http://lazyhome.ru
+
16 GIT: https://github.com/anklimov/lighthub
+
17 e-mail anklimov@gmail.com
+
18 
+
19 */
+
20 #pragma once
+
21 #include "options.h"
+
22 #include "abstractout.h"
+
23 #include "itemCmd.h"
+
24 
+
25 #define S_NOTFOUND 0
+
26 //#define S_SETnCMD 0
+
27 #define S_CMD 1
+
28 #define S_SET 2
+
29 #define S_HSV 3
+
30 #define S_RGB 4
+
31 #define S_FAN 5
+
32 #define S_MODE 6
+
33 #define S_HUE 7
+
34 #define S_SAT 8
+
35 #define S_TEMP 9
+
36 #define S_ADDITIONAL 9
+
37 
+
38 #define CH_DIMMER 0 //DMX 1 ch
+
39 #define CH_RGBW 1 //DMX 4 ch
+
40 #define CH_RGB 2 //DMX 3 ch
+
41 #define CH_PWM 3 //PWM output directly to PIN
+
42 #define CH_MODBUS 4 //Modbus AC Dimmer
+
43 #define CH_THERMO 5 //Simple ON/OFF thermostat
+
44 #define CH_RELAY 6 //ON_OFF relay output
+
45 #define CH_GROUP 7 //Group pseudochannel
+
46 #define CH_VCTEMP 8 //Vacom PID regulator
+
47 #define CH_VC 9 //Vacom modbus motor regulator
+
48 #define CH_AC 10 //AC Haier
+
49 #define CH_SPILED 11
+
50 #define CH_MOTOR 12
+
51 #define CH_MBUS 14
+
52 //#define CHANNEL_TYPES 13
+
53 
+
54 //static uint32_t pollInterval[CHANNEL_TYPES] = {0,0,0,0,MODB};
+
55 //static uint32_t nextPollTime[CHANNEL_TYPES] = {0,0,0,0,0,0,0,0,0,0,0,0,0};
+
56 
+
57 #define CH_WHITE 127//
+
58 
+
59 
+
60 
+
61 
+
62 #define POLLING_SLOW 1
+
63 #define POLLING_FAST 2
+
64 #define POLLING_INT 3
+
65 
+
66 
+
67 #define I_TYPE 0 //Type of item
+
68 #define I_ARG 1 //Chanel-type depended argument or array of arguments (pin, address etc)
+
69 #define I_VAL 2 //Latest preset (int or array of presets)
+
70 #define I_CMD 3 //Latest CMD received
+
71 #define I_EXT 4 //Chanell-depended extension - array
+
72 
+
73 #define MODBUS_CMD_ARG_ADDR 0
+
74 #define MODBUS_CMD_ARG_REG 1
+
75 #define MODBUS_CMD_ARG_MASK 2
+
76 #define MODBUS_CMD_ARG_MAX_SCALE 3
+
77 #define MODBUS_CMD_ARG_REG_TYPE 4
+
78 
+
79 #define MODBUS_COIL_REG_TYPE 0
+
80 #define MODBUS_DISCRETE_REG_TYPE 1
+
81 #define MODBUS_HOLDING_REG_TYPE 2
+
82 #define MODBUS_INPUT_REG_TYPE 3
+
83 
+
84 #include "aJSON.h"
+
85 
+
86 extern aJsonObject *items;
+
87 extern short thermoSetCurTemp(char *name, float t);
+
88 
+
89 int txt2cmd (char * payload);
+
90 
+
91 class Item
+
92 {
+
93  public:
+
94  aJsonObject *itemArr, *itemArg,*itemVal,*itemExt;
+
95  uint8_t itemType;
+ +
97 
+
98  Item(char * name);
+
99  Item(aJsonObject * obj);
+
100  ~Item();
+
101 
+
102  boolean isValid ();
+
103  boolean Setup();
+
104  void Stop();
+
105  //int Ctrl(short cmd, short n=0, int * Parameters=NULL, int suffixCode=0, char* subItem=NULL);
+
106  int Ctrl(itemCmd cmd, char* subItem=NULL);
+
107  int Ctrl(char * payload, char * subItem=NULL);
+
108 
+
109  int getArg(short n=0);
+
110  short getArgCount();
+
111  //int getVal(short n); //From VAL array. Negative if no array
+
112  long int getVal(); //From int val OR array
+
113  uint8_t getSubtype();
+
114  uint8_t getCmd();
+
115  long int getExt(); //From int val OR array
+
116  void setExt(long int par);
+ + +
119  void setCmd(uint8_t cmdValue);
+
120  short getFlag (short flag=FLAG_MASK);
+
121  void setFlag (short flag);
+
122  void clearFlag (short flag);
+
123  void setVal(long int par);
+
124  void setSubtype(uint8_t par);
+
125  int Poll(int cause);
+
126  int SendStatus(int sendFlags);
+
127  int isActive();
+
128  int getChanType();
+
129  inline int On (){return Ctrl(itemCmd(ST_VOID,CMD_ON));};
+
130  inline int Off(){return Ctrl(itemCmd(ST_VOID,CMD_OFF));};
+
131  inline int Toggle(){return Ctrl(itemCmd(ST_VOID,CMD_TOGGLE));};
+
132 
+
133  protected:
+
134  //short cmd2changeActivity(int lastActivity, short defaultCmd = CMD_SET);
+
135  int VacomSetFan (itemCmd st);
+
136  int VacomSetHeat(itemCmd st);
+
137  int modbusDimmerSet(itemCmd st);
+
138 
+
139  int modbusDimmerSet(int addr, uint16_t _reg, int _regType, int _mask, uint16_t value);
+
140  void mb_fail();
+
141  void Parse();
+
142  int checkModbusDimmer();
+
143  int checkModbusDimmer(int data);
+
144  boolean checkModbusRetry();
+
145  boolean checkVCRetry();
+
146  boolean checkHeatRetry();
+
147  void sendDelayedStatus();
+
148 
+
149  int checkFM();
+
150  char defaultSubItem[10];
+ +
152 
+
153 };
+
+
void setCmd(uint8_t cmdValue)
Definition: item.cpp:242
+
boolean checkModbusRetry()
Definition: item.cpp:1294
+
boolean isValid()
Definition: item.cpp:410
+
uint8_t getSubtype()
Definition: item.cpp:324
+
int isActive()
Definition: item.cpp:866
+
int Toggle()
Definition: item.h:131
+ +
Definition: itemCmd.h:174
+
int getArg(short n=0)
Definition: item.cpp:283
+
#define ST_VOID
Definition: itemCmd.h:98
+
chPersistent * setPersistent(chPersistent *par)
Definition: item.cpp:393
+
Definition: abstractout.h:7
+
~Item()
Definition: item.cpp:195
+
void setExt(long int par)
Definition: item.cpp:371
+
void Parse()
Definition: item.cpp:117
+
long int getVal()
Definition: item.cpp:313
+
int Off()
Definition: item.h:130
+
#define FLAG_MASK
Definition: itemCmd.h:60
+ +
Definition: abstractout.h:8
+
int SendStatus(int sendFlags)
Definition: item.cpp:1497
+
aJsonObject * items
Definition: main.cpp:140
+
int getChanType()
Definition: item.cpp:1663
+
void clearFlag(short flag)
Definition: item.cpp:272
+
char defaultSubItem[10]
Definition: item.h:150
+
#define CMD_OFF
Definition: itemCmd.h:35
+
boolean Setup()
Definition: item.cpp:174
+
int modbusDimmerSet(itemCmd st)
Definition: item.cpp:1015
+
void setSubtype(uint8_t par)
Definition: item.cpp:353
+
#define CMD_TOGGLE
Definition: itemCmd.h:37
+
int defaultSuffixCode
Definition: item.h:151
+
uint8_t getCmd()
Definition: item.cpp:234
+
void Stop()
Definition: item.cpp:186
+
int checkModbusDimmer()
Definition: item.cpp:1336
+
uint8_t itemType
Definition: item.h:95
+
int Ctrl(itemCmd cmd, char *subItem=NULL)
Definition: item.cpp:542
+
int txt2cmd(char *payload)
Definition: itemCmd.cpp:13
+
chPersistent * getPersistent()
Definition: item.cpp:386
+
#define CMD_ON
Definition: itemCmd.h:34
+
aJsonObject * itemVal
Definition: item.h:94
+
int checkFM()
Definition: item.cpp:1188
+
aJsonObject * itemExt
Definition: item.h:94
+
void sendDelayedStatus()
Definition: item.cpp:1486
+
short thermoSetCurTemp(char *name, float t)
Definition: main.cpp:2151
+
Definition: item.h:92
+
aJsonObject * itemArg
Definition: item.h:94
+
short getFlag(short flag=FLAG_MASK)
Definition: item.cpp:251
+ +
int On()
Definition: item.h:129
+
int VacomSetHeat(itemCmd st)
move to float todo
Definition: item.cpp:1100
+
boolean checkHeatRetry()
Definition: item.cpp:1322
+
int VacomSetFan(itemCmd st)
Definition: item.cpp:1055
+
byte data[37]
Definition: out_ac.cpp:31
+
void setFlag(short flag)
Definition: item.cpp:261
+
abstractOut * driver
Definition: item.h:96
+
int Poll(int cause)
Definition: item.cpp:1442
+
void setVal(long int par)
Definition: item.cpp:346
+
boolean checkVCRetry()
Definition: item.cpp:1308
+
long int getExt()
Definition: item.cpp:360
+
Item(char *name)
Definition: item.cpp:204
+
void mb_fail()
Definition: item.cpp:1045
+
short getArgCount()
Definition: item.cpp:293
+
aJsonObject * itemArr
Definition: item.h:94
+ + + + diff --git a/docs/html/item_cmd_8cpp.html b/docs/html/item_cmd_8cpp.html new file mode 100644 index 0000000..c9d439d --- /dev/null +++ b/docs/html/item_cmd_8cpp.html @@ -0,0 +1,112 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
itemCmd.cpp File Reference
+
+
+
#include <Arduino.h>
+#include "itemCmd.h"
+#include "main.h"
+#include "Streaming.h"
+#include "item.h"
+#include <Adafruit_NeoPixel.h>
+
+ + + +

+Functions

int txt2cmd (char *payload)
 
+

Function Documentation

+ +

◆ txt2cmd()

+ +
+
+ + + + + + + + +
int txt2cmd (char * payload)
+
+ +
+
+
+ + + + diff --git a/docs/html/item_cmd_8h.html b/docs/html/item_cmd_8h.html new file mode 100644 index 0000000..83ac1bb --- /dev/null +++ b/docs/html/item_cmd_8h.html @@ -0,0 +1,991 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
itemCmd.h File Reference
+
+
+
#include "Arduino.h"
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

union  itemCmdStore
 
union  itemArgStore
 
class  itemCmd
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define commandsNum   sizeof(commands_P)/sizeof(cmdstr)
 
#define CMD_ON   1
 
#define CMD_OFF   2
 
#define CMD_RESTORE   3
 
#define CMD_TOGGLE   4
 
#define CMD_HALT   5
 
#define CMD_XON   6
 
#define CMD_XOFF   7
 
#define CMD_UP   8
 
#define CMD_DN   9
 
#define CMD_HEAT   0xa
 
#define CMD_COOL   0xb
 
#define CMD_AUTO   0xc
 
#define CMD_FAN   0xd
 
#define CMD_DRY   0xe
 
#define CMD_STOP   0xf
 
#define CMD_HIGH   0x10
 
#define CMD_MED   0x11
 
#define CMD_LOW   0x12
 
#define CMD_ENABLED   0x13
 
#define CMD_DISABLED   0x14
 
#define CMD_TRUE   0x15
 
#define CMD_FALSE   0x16
 
#define CMD_RGB   0x17
 
#define CMD_HSV   0x18
 
#define CMD_MASK   0xff
 
#define FLAG_MASK   0xff00
 
#define CMD_VOID   0
 
#define CMD_UNKNOWN   -1
 
#define CMD_JSON   -2
 
#define SEND_COMMAND   0x100
 
#define SEND_PARAMETERS   0x200
 
#define SEND_RETRY   0x400
 
#define SEND_DEFFERED   0x800
 
#define ACTION_NEEDED   0x1000
 
#define ACTION_IN_PROCESS   0x2000
 
#define ST_VOID   0
 
#define ST_PERCENTS   1
 
#define ST_TENS   2
 
#define ST_HSV   3
 
#define ST_HS   4
 
#define ST_FLOAT_CELSIUS   5
 
#define ST_FLOAT_FARENHEIT   6
 
#define ST_RGB   7
 
#define ST_RGBW   8
 
#define ST_PERCENTS255   9
 
#define ST_HSV255   10
 
#define ST_INT32   11
 
#define ST_UINT32   12
 
#define ST_STRING   13
 
#define ST_FLOAT   14
 
+ + + + +

+Typedefs

typedef char cmdstr[9]
 #include "item.h" More...
 
+ + + +

+Functions

int txt2cmd (char *payload)
 
+ + + +

+Variables

const cmdstr commands_P[] PROGMEM
 
+

Macro Definition Documentation

+ +

◆ ACTION_IN_PROCESS

+ +
+
+ + + + +
#define ACTION_IN_PROCESS   0x2000
+
+ +
+
+ +

◆ ACTION_NEEDED

+ +
+
+ + + + +
#define ACTION_NEEDED   0x1000
+
+ +
+
+ +

◆ CMD_AUTO

+ +
+
+ + + + +
#define CMD_AUTO   0xc
+
+ +
+
+ +

◆ CMD_COOL

+ +
+
+ + + + +
#define CMD_COOL   0xb
+
+ +
+
+ +

◆ CMD_DISABLED

+ +
+
+ + + + +
#define CMD_DISABLED   0x14
+
+ +
+
+ +

◆ CMD_DN

+ +
+
+ + + + +
#define CMD_DN   9
+
+ +
+
+ +

◆ CMD_DRY

+ +
+
+ + + + +
#define CMD_DRY   0xe
+
+ +
+
+ +

◆ CMD_ENABLED

+ +
+
+ + + + +
#define CMD_ENABLED   0x13
+
+ +
+
+ +

◆ CMD_FALSE

+ +
+
+ + + + +
#define CMD_FALSE   0x16
+
+ +
+
+ +

◆ CMD_FAN

+ +
+
+ + + + +
#define CMD_FAN   0xd
+
+ +
+
+ +

◆ CMD_HALT

+ +
+
+ + + + +
#define CMD_HALT   5
+
+ +
+
+ +

◆ CMD_HEAT

+ +
+
+ + + + +
#define CMD_HEAT   0xa
+
+ +
+
+ +

◆ CMD_HIGH

+ +
+
+ + + + +
#define CMD_HIGH   0x10
+
+ +
+
+ +

◆ CMD_HSV

+ +
+
+ + + + +
#define CMD_HSV   0x18
+
+ +
+
+ +

◆ CMD_JSON

+ +
+
+ + + + +
#define CMD_JSON   -2
+
+ +
+
+ +

◆ CMD_LOW

+ +
+
+ + + + +
#define CMD_LOW   0x12
+
+ +
+
+ +

◆ CMD_MASK

+ +
+
+ + + + +
#define CMD_MASK   0xff
+
+ +
+
+ +

◆ CMD_MED

+ +
+
+ + + + +
#define CMD_MED   0x11
+
+ +
+
+ +

◆ CMD_OFF

+ +
+
+ + + + +
#define CMD_OFF   2
+
+ +
+
+ +

◆ CMD_ON

+ +
+
+ + + + +
#define CMD_ON   1
+
+ +
+
+ +

◆ CMD_RESTORE

+ +
+
+ + + + +
#define CMD_RESTORE   3
+
+ +
+
+ +

◆ CMD_RGB

+ +
+
+ + + + +
#define CMD_RGB   0x17
+
+ +
+
+ +

◆ CMD_STOP

+ +
+
+ + + + +
#define CMD_STOP   0xf
+
+ +
+
+ +

◆ CMD_TOGGLE

+ +
+
+ + + + +
#define CMD_TOGGLE   4
+
+ +
+
+ +

◆ CMD_TRUE

+ +
+
+ + + + +
#define CMD_TRUE   0x15
+
+ +
+
+ +

◆ CMD_UNKNOWN

+ +
+
+ + + + +
#define CMD_UNKNOWN   -1
+
+ +
+
+ +

◆ CMD_UP

+ +
+
+ + + + +
#define CMD_UP   8
+
+ +
+
+ +

◆ CMD_VOID

+ +
+
+ + + + +
#define CMD_VOID   0
+
+ +
+
+ +

◆ CMD_XOFF

+ +
+
+ + + + +
#define CMD_XOFF   7
+
+ +
+
+ +

◆ CMD_XON

+ +
+
+ + + + +
#define CMD_XON   6
+
+ +
+
+ +

◆ commandsNum

+ +
+
+ + + + +
#define commandsNum   sizeof(commands_P)/sizeof(cmdstr)
+
+ +
+
+ +

◆ FLAG_MASK

+ +
+
+ + + + +
#define FLAG_MASK   0xff00
+
+ +
+
+ +

◆ SEND_COMMAND

+ +
+
+ + + + +
#define SEND_COMMAND   0x100
+
+ +
+
+ +

◆ SEND_DEFFERED

+ +
+
+ + + + +
#define SEND_DEFFERED   0x800
+
+ +
+
+ +

◆ SEND_PARAMETERS

+ +
+
+ + + + +
#define SEND_PARAMETERS   0x200
+
+ +
+
+ +

◆ SEND_RETRY

+ +
+
+ + + + +
#define SEND_RETRY   0x400
+
+ +
+
+ +

◆ ST_FLOAT

+ +
+
+ + + + +
#define ST_FLOAT   14
+
+ +
+
+ +

◆ ST_FLOAT_CELSIUS

+ +
+
+ + + + +
#define ST_FLOAT_CELSIUS   5
+
+ +
+
+ +

◆ ST_FLOAT_FARENHEIT

+ +
+
+ + + + +
#define ST_FLOAT_FARENHEIT   6
+
+ +
+
+ +

◆ ST_HS

+ +
+
+ + + + +
#define ST_HS   4
+
+ +
+
+ +

◆ ST_HSV

+ +
+
+ + + + +
#define ST_HSV   3
+
+ +
+
+ +

◆ ST_HSV255

+ +
+
+ + + + +
#define ST_HSV255   10
+
+ +
+
+ +

◆ ST_INT32

+ +
+
+ + + + +
#define ST_INT32   11
+
+ +
+
+ +

◆ ST_PERCENTS

+ +
+
+ + + + +
#define ST_PERCENTS   1
+
+ +
+
+ +

◆ ST_PERCENTS255

+ +
+
+ + + + +
#define ST_PERCENTS255   9
+
+ +
+
+ +

◆ ST_RGB

+ +
+
+ + + + +
#define ST_RGB   7
+
+ +
+
+ +

◆ ST_RGBW

+ +
+
+ + + + +
#define ST_RGBW   8
+
+ +
+
+ +

◆ ST_STRING

+ +
+
+ + + + +
#define ST_STRING   13
+
+ +
+
+ +

◆ ST_TENS

+ +
+
+ + + + +
#define ST_TENS   2
+
+ +
+
+ +

◆ ST_UINT32

+ +
+
+ + + + +
#define ST_UINT32   12
+
+ +
+
+ +

◆ ST_VOID

+ +
+
+ + + + +
#define ST_VOID   0
+
+ +
+
+

Typedef Documentation

+ +

◆ cmdstr

+ +
+
+ + + + +
typedef char cmdstr[9]
+
+ +

#include "item.h"

+ +
+
+

Function Documentation

+ +

◆ txt2cmd()

+ +
+
+ + + + + + + + +
int txt2cmd (char * payload)
+
+ +
+
+

Variable Documentation

+ +

◆ PROGMEM

+ +
+
+ + + + +
const cmdstr commands_P [] PROGMEM
+
+Initial value:
=
+
{
+
"","ON","OFF","REST","TOGGLE","HALT","XON","XOFF","INCREASE","DECREASE",
+
"HEAT","COOL","AUTO","FAN_ONLY","DRY","STOP","HIGH","MEDIUM","LOW",
+
"TRUE","FALSE","ENABLED","DISABLED","RGB","HSV"
+
}
+
+
+
+
+ + + + diff --git a/docs/html/item_cmd_8h_source.html b/docs/html/item_cmd_8h_source.html new file mode 100644 index 0000000..ea40659 --- /dev/null +++ b/docs/html/item_cmd_8h_source.html @@ -0,0 +1,377 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
itemCmd.h
+
+
+Go to the documentation of this file.
1 /* Copyright © 2017-2020 Andrey Klimov. All rights reserved.
+
2 
+
3 Licensed under the Apache License, Version 2.0 (the "License");
+
4 you may not use this file except in compliance with the License.
+
5 You may obtain a copy of the License at
+
6 
+
7  http://www.apache.org/licenses/LICENSE-2.0
+
8 
+
9 Unless required by applicable law or agreed to in writing, software
+
10 distributed under the License is distributed on an "AS IS" BASIS,
+
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+
12 See the License for the specific language governing permissions and
+
13 limitations under the License.
+
14 
+
15 Homepage: http://lazyhome.ru
+
16 GIT: https://github.com/anklimov/lighthub
+
17 e-mail anklimov@gmail.com
+
18 
+
19 */
+
20 #pragma once
+
21 #include "Arduino.h"
+
23 
+
24 typedef char cmdstr[9];
+
25 
+
26 const cmdstr commands_P[] PROGMEM =
+
27 {
+
28 "","ON","OFF","REST","TOGGLE","HALT","XON","XOFF","INCREASE","DECREASE",
+
29 "HEAT","COOL","AUTO","FAN_ONLY","DRY","STOP","HIGH","MEDIUM","LOW",
+
30 "TRUE","FALSE","ENABLED","DISABLED","RGB","HSV"
+
31 };
+
32 #define commandsNum sizeof(commands_P)/sizeof(cmdstr)
+
33 
+
34 #define CMD_ON 1
+
35 #define CMD_OFF 2
+
36 #define CMD_RESTORE 3 //on only if was turned off by CMD_HALT
+
37 #define CMD_TOGGLE 4
+
38 #define CMD_HALT 5 //just Off
+
39 #define CMD_XON 6 //just on
+
40 #define CMD_XOFF 7 //off only if was previously turned on by CMD_XON
+
41 #define CMD_UP 8 //increase
+
42 #define CMD_DN 9 //decrease
+
43 #define CMD_HEAT 0xa
+
44 #define CMD_COOL 0xb
+
45 #define CMD_AUTO 0xc
+
46 #define CMD_FAN 0xd
+
47 #define CMD_DRY 0xe
+
48 #define CMD_STOP 0xf
+
49 #define CMD_HIGH 0x10 //AC fan leve
+
50 #define CMD_MED 0x11
+
51 #define CMD_LOW 0x12
+
52 #define CMD_ENABLED 0x13
+
53 #define CMD_DISABLED 0x14
+
54 #define CMD_TRUE 0x15
+
55 #define CMD_FALSE 0x16
+
56 #define CMD_RGB 0x17
+
57 #define CMD_HSV 0x18
+
58 //#define CMD_CURTEMP 0xf
+
59 #define CMD_MASK 0xff
+
60 #define FLAG_MASK 0xff00
+
61 
+
62 #define CMD_VOID 0
+
63 #define CMD_UNKNOWN -1
+
64 #define CMD_JSON -2
+
65 //#define CMD_RGB -3
+
66 //#define CMD_HSV -4
+
67 
+
68 #define SEND_COMMAND 0x100
+
69 #define SEND_PARAMETERS 0x200
+
70 #define SEND_RETRY 0x400
+
71 #define SEND_DEFFERED 0x800
+
72 #define ACTION_NEEDED 0x1000
+
73 #define ACTION_IN_PROCESS 0x2000
+
74 
+
75 
+
76 int txt2cmd (char * payload);
+
77 
+
78 /*
+
79 enum itemStoreType {
+
80 ST_VOID = 0,
+
81 ST_PERCENTS = 1,
+
82 ST_TENS = 2,
+
83 ST_HSV = 3,
+
84 ST_FLOAT_CELSIUS= 4,
+
85 ST_FLOAT_FARENHEIT= 5,
+
86 ST_RGB = 6,
+
87 ST_RGBW = 7,
+
88 ST_PERCENTS255 = 8,
+
89 ST_HSV255 = 9,
+
90 ST_INT32 = 10,
+
91 ST_UINT32 = 11,
+
92 ST_STRING = 12,
+
93 ST_FLOAT = 13//,
+
94 //ST_COMMAND = 15
+
95 };
+
96 */
+
97 
+
98 #define ST_VOID 0
+
99 #define ST_PERCENTS 1
+
100 #define ST_TENS 2
+
101 #define ST_HSV 3
+
102 #define ST_HS 4
+
103 #define ST_FLOAT_CELSIUS 5
+
104 #define ST_FLOAT_FARENHEIT 6
+
105 #define ST_RGB 7
+
106 #define ST_RGBW 8
+
107 #define ST_PERCENTS255 9
+
108 #define ST_HSV255 10
+
109 #define ST_INT32 11
+
110 #define ST_UINT32 12
+
111 #define ST_STRING 13
+
112 #define ST_FLOAT 14
+
113 
+
114 
+
115 #pragma pack(push, 1)
+
116 
+
117 typedef union
+
118 {
+
119  long int aslong;
+
120  int32_t asInt32;
+
121  uint32_t asUint32;
+
122  struct
+
123  {
+
124  uint8_t cmdCode;
+
125  union {
+
126  uint8_t cmdFlag;
+
127 /*
+
128  struct
+
129  { uint8_t suffixCode:4;
+
130  uint8_t itemArgType:4;
+
131  };
+
132  */
+
133  };
+
134  struct
+
135  { uint8_t suffixCode:4;
+
136  uint8_t itemArgType:4;
+
137  };
+
138  // uint8_t cmdEffect;
+
139  uint8_t cmdParam;
+
140  };
+
141 } itemCmdStore;
+
142 
+
143 typedef union
+
144 {
+
145  long int aslong;
+
146  int32_t asInt32;
+
147  uint32_t asUint32;
+
148  char* asString;
+
149  float asfloat;
+
150 
+
151  struct
+
152  { uint8_t v;
+
153  uint8_t s;
+
154  uint16_t h:9;
+
155  uint16_t colorTemp:7;
+
156  };
+
157  struct
+
158  { int8_t signed_v;
+
159  int8_t signed_s;
+
160  int16_t signed_h:9;
+
161  int16_t signed_colorTemp:7;
+
162  };
+
163  struct
+
164  {
+
165  uint8_t r;
+
166  uint8_t g;
+
167  uint8_t b;
+
168  uint8_t w;
+
169  };
+
170 } itemArgStore;
+
171 
+
172 class Item;
+
173 class itemCmd
+
174 {
+
175 public:
+ + +
178 
+
179  itemCmd(uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID);
+
180  itemCmd(float val);
+
181  itemCmd assignFrom(itemCmd from);
+
182 
+
183  bool loadItem(Item * item, bool includeCommand=false );
+
184  bool saveItem(Item * item, bool includeCommand=false);
+
185 
+
186  itemCmd Int(int32_t i);
+
187  itemCmd Int(uint32_t i);
+
188  itemCmd Cmd(uint8_t i);
+
189  itemCmd HSV(uint16_t h, uint8_t s, uint8_t v);
+
190  itemCmd HS(uint16_t h, uint8_t s);
+
191  itemCmd RGB(uint8_t r, uint8_t g, uint8_t b);
+
192  itemCmd RGBW(uint8_t r, uint8_t g, uint8_t b, uint8_t w);
+
193  bool setH(uint16_t);
+
194  bool setS(uint8_t);
+
195  uint16_t getH();
+
196  uint16_t getS();
+
197  itemCmd setArgType(uint8_t);
+
198  itemCmd Percents(int i);
+
199  itemCmd Percents255(int i);
+
200 
+
201  uint8_t getSuffix();
+
202  itemCmd setSuffix(uint8_t suffix);
+
203 
+
204  bool incrementPercents(int16_t);
+
205  bool incrementH(int16_t);
+
206  bool incrementS(int16_t);
+
207 
+
208  long int getInt();
+
209  short getPercents(bool inverse=false);
+
210  short getPercents255(bool inverse=false);
+
211  uint8_t getCmd();
+
212  uint8_t getArgType();
+
213  uint8_t getCmdParam();
+
214  char * toString(char * Buffer, int bufLen, int sendFlags = SEND_COMMAND | SEND_PARAMETERS );
+
215 
+
216  bool isCommand();
+
217  bool isValue();
+
218  bool isColor();
+
219 
+ +
221  itemCmd setChanType(short chanType);
+
222  void debugOut();
+
223  };
+
224 
+
225 #pragma pack(pop)
+
+
float asfloat
Definition: itemCmd.h:149
+
itemCmd assignFrom(itemCmd from)
Definition: itemCmd.cpp:224
+
bool incrementPercents(int16_t)
Definition: itemCmd.cpp:161
+
uint8_t s
Definition: itemCmd.h:153
+
itemCmd Percents255(int i)
Definition: itemCmd.cpp:499
+
char * toString(char *Buffer, int bufLen, int sendFlags=SEND_COMMAND|SEND_PARAMETERS)
Definition: itemCmd.cpp:633
+
Definition: itemCmd.h:144
+
Definition: itemCmd.h:174
+
uint8_t suffixCode
Definition: itemCmd.h:135
+
long int aslong
Definition: itemCmd.h:119
+
#define ST_VOID
Definition: itemCmd.h:98
+
itemCmd RGBW(uint8_t r, uint8_t g, uint8_t b, uint8_t w)
Definition: itemCmd.cpp:561
+
itemCmd(uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)
Definition: itemCmd.cpp:40
+
itemArgStore param
Definition: itemCmd.h:177
+
char * asString
Definition: itemCmd.h:148
+
itemCmd Cmd(uint8_t i)
Definition: itemCmd.cpp:580
+
#define CMD_VOID
Definition: itemCmd.h:62
+
uint8_t itemArgType
Definition: itemCmd.h:136
+
long int aslong
Definition: itemCmd.h:145
+
itemCmd setDefault()
Definition: itemCmd.cpp:84
+
int16_t signed_colorTemp
Definition: itemCmd.h:161
+
bool setS(uint8_t)
Definition: itemCmd.cpp:128
+
int16_t signed_h
Definition: itemCmd.h:160
+
uint16_t getS()
Definition: itemCmd.cpp:156
+
uint16_t h
Definition: itemCmd.h:154
+
itemCmd setChanType(short chanType)
Definition: itemCmd.cpp:58
+
uint32_t asUint32
Definition: itemCmd.h:121
+
uint32_t asUint32
Definition: itemCmd.h:147
+
itemCmd Percents(int i)
Definition: itemCmd.cpp:476
+
#define b
Definition: item.cpp:1097
+
bool isValue()
Definition: itemCmd.cpp:383
+
bool saveItem(Item *item, bool includeCommand=false)
Definition: itemCmd.cpp:617
+
bool isColor()
Definition: itemCmd.cpp:388
+
bool setH(uint16_t)
Definition: itemCmd.cpp:107
+
bool loadItem(Item *item, bool includeCommand=false)
Definition: itemCmd.cpp:599
+
uint8_t getCmdParam()
Definition: itemCmd.cpp:470
+
void debugOut()
Definition: itemCmd.cpp:695
+
int8_t signed_s
Definition: itemCmd.h:159
+
itemCmd setArgType(uint8_t)
Definition: itemCmd.cpp:464
+
itemCmd setSuffix(uint8_t suffix)
Definition: itemCmd.cpp:593
+
short getPercents255(bool inverse=false)
Definition: itemCmd.cpp:436
+
char cmdstr[9]
#include "item.h"
Definition: itemCmd.h:24
+
int8_t signed_v
Definition: itemCmd.h:158
+
uint8_t w
Definition: itemCmd.h:168
+
itemCmdStore cmd
Definition: itemCmd.h:176
+
int32_t asInt32
Definition: itemCmd.h:146
+
uint8_t getCmd()
Definition: itemCmd.cpp:454
+
uint8_t r
Definition: itemCmd.h:165
+
long int getInt()
Definition: itemCmd.cpp:394
+
bool isCommand()
Definition: itemCmd.cpp:378
+
uint16_t colorTemp
Definition: itemCmd.h:155
+
uint8_t v
Definition: itemCmd.h:152
+
uint8_t g
Definition: itemCmd.h:166
+
#define SEND_COMMAND
Definition: itemCmd.h:68
+
int txt2cmd(char *payload)
Definition: itemCmd.cpp:13
+
#define SEND_PARAMETERS
Definition: itemCmd.h:69
+
Definition: item.h:92
+
itemCmd RGB(uint8_t r, uint8_t g, uint8_t b)
Definition: itemCmd.cpp:551
+
uint16_t getH()
Definition: itemCmd.cpp:151
+
const cmdstr commands_P[] PROGMEM
Definition: itemCmd.h:26
+
uint8_t cmdCode
Definition: itemCmd.h:124
+
uint8_t cmdParam
Definition: itemCmd.h:139
+
itemCmd Int(int32_t i)
Definition: itemCmd.cpp:522
+
uint8_t getSuffix()
Definition: itemCmd.cpp:588
+
uint8_t getArgType()
Definition: itemCmd.cpp:459
+
short getPercents(bool inverse=false)
Definition: itemCmd.cpp:418
+
bool incrementS(int16_t)
Definition: itemCmd.cpp:200
+
Definition: itemCmd.h:118
+
uint8_t cmdFlag
Definition: itemCmd.h:126
+
int32_t asInt32
Definition: itemCmd.h:120
+
itemCmd HS(uint16_t h, uint8_t s)
Definition: itemCmd.cpp:541
+
bool incrementH(int16_t)
Definition: itemCmd.cpp:183
+
itemCmd HSV(uint16_t h, uint8_t s, uint8_t v)
Definition: itemCmd.cpp:531
+
uint8_t b
Definition: itemCmd.h:167
+ + + + diff --git a/docs/html/jquery.js b/docs/html/jquery.js new file mode 100644 index 0000000..103c32d --- /dev/null +++ b/docs/html/jquery.js @@ -0,0 +1,35 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element +},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** + * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler + * Licensed under MIT + * @author Ariel Flesler + * @version 2.1.2 + */ +;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 + * http://www.smartmenus.org/ + * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/docs/html/lh.png b/docs/html/lh.png new file mode 100644 index 0000000000000000000000000000000000000000..051350c2e7ed2c8c45870ba9f2adf0e3ddf9276d GIT binary patch literal 16277 zcmeHOd0bQ1wq_Is5tS->5u(*fRU}a>C>Ua^RVhQ-S_`6(C<^tWAcG);Bq(|*MWr|Z zijWQh4q$|c5T*o~M24uT3_=LV7!wkvjAXd`MBA%y-hc1j_ulXES0Fj(>@|Gr+iS12 zPQuq7yG@P%W~`&5W9qVJ=eIgK2HSOX^t@*4fp3PN82q85vs}kz=jY#@zB$Z^VrTEW z_RFMNM}=Ct@dgQ9X5s&Ph zs0BwdcQ3t4_lW45b7Q=?zu6{?BYH*PFxK72to^Mqh7v%1x`_YN$VCNGGY71y6E}h@ zz(9ZK2-fP&0v}A&>?P2@Rm<_v$K1GBUGRaLJM-g=5&nZncyKkAu6}c%OGYOBxXwSx zus5V;vvk==!X|2GG*)6%IdTihoQIYeOl+?T(VXS|pLdR*MBi|N8v<4J*@0?BXJR{I{*KGw*6)})XJ)5m z>-n!TaAOPd@jA`)ktC7g2{K(=z%C*VRpTh*@q(m;(LK0WtF`#p?FMdpbvG^4%RVOY zdbYVEh%~}g_ug!ENo`diDci>H28x>0PnIN17`FYYH*5Az=4XpgD_7ue0R1z@hI(1n zqg4$N8+?5E7D;WPt>svMa?FL#6?%fNb@dHC#@{ebOP-H%2Qpi?$0!~-ln1hd{%E+T zo+!>^p*7!1q}xT1(H5b$FW1Yy6T5VdF8ecr?NFjCwK$L)=fS-a9`!O(K$BkxD+(a5 z2zQ5huy3)dxlYr2k6{XlOr<#T-|$5Z>d>L9Fe1y9V!8!6MzFbuH|EWl$V(K_S;$)a zHJD55Z$@=VibS-imguOLzmr0SO^~vhCCcCz7WjDMCClgQvcF?qI2U{D272+Wkl~9` zgp5aXSncC0&X~-6xbk`d!!ddVQ8(gttghYyl)GW$9^jOAzt8o|oRt%;m&(H9*!_hh z0XrbLyb@Wvo%z{EAKIYp2U5tGX>iQsh6M50U7T7{Bkj@*3Z&at^GqJ>Fq}L8$Jk?Q z@w>iYe%54dVt{72L(XnWO=^NF%sAv9o;(;G0!yxPgUK>;+!lxO4faewdz|L!I?{&hk6`E2F zBxMJcz3yWUl_+{)gped|@Pn}!-c(pNn1GDw{cR$2sLr8mIL+N=U)$rvPo^WX(r)yz z2~q_jl2`dGN5s+ejoX#1C+uvqfv3!3nbhZ{X$vyYm0&E&D$nJV76BCS-c?lV+#2#nOi_)!7yINeb1o2bNFQ zWB+0Y&e*dR6ij4Y<$C-Jeg8U&qVLckr%csTs9t^;CU{aF|DJ>)RGT3Q;_k&Lv_Yc> zL)F`WAdevfRUtc*rw4`YS#xZMB)i zGy1DOcCsVx05g0M%84WW1?Ll5;}fVtx9ym2^OSo+j*Z; z(?kT$^C~q?%McQtQSIojn+u&^>cOq?x}^hwo@lT*-Uzv37=@2ev{xZJM`1?!Z3c{$w3Y_2BeXnSVPAB1{fE&?QjD}>P&Ajy8qR5 zKovaSCRMs(+8=IKfzZpp1o!~`#-g=iQ!>8vuuPNNKDj&5o|mZ0G(~d&IXF>f#7qf7*6XYMOAs@ zj)cSDkiI3j;RLkNOVW5a26%=fhZwP@PwV zi5^Nt?!nka?f{`K2jmlA#yDALgX5=1cuZfUAbp#7Vw^kKzK>_rAG8jC*k=!LqtR}h zs*%Q`iixE#X+^u02YP&fOyZ96BKtCd{yyIU4$4Dp>6xGf@8_?R!f;%Hbt*25MKYo! zlbnTg;LI$;Mh`Pt^>t5Qg2)?J<^bbNpQCj(n)AU2uaY+I0{Z*-1IZG1AE!@t*|aJY zDj0ydjVs5Isy>kK1RTxs(AGp7&qQqRw`Fa^akr|AI}h940iHoBZIy8`|UGfBqE1(rF3+aYU+6b z+*;s{MJO^$N}RZAVpl=Tt83o_Ba)`Zy=YtblR=g{Mr{8rBvTX-BR@YL)TJKr#y;FI zO{mCElbqFp1(-5hRawVrKy-Tkp31)<|8>|j+Nw^tdHU5OhvC9Cs=Kb=Fss+%Bc79E zq#-sLB(`_(=5pXB-6ZSE8%4=3W>LiM;1fmBrry+c6rUFV}cp(Sa*!)Z_T)qCnH@1W@ z)otOIaw-IGO4-N<&Dx7kQeXY7aoj(Z1_n?6U3Zgq`E%>=1@E6$!2=efu0X1|73-~b zegEJ;bJM#D$c!QW1BUp=s(WusA{o7R3>$Aj;cI?Bc18W&w^gVQe6XkB?%NXC)=Y1v z8`x|Yp?Zv$T+Y3#Ekb<&>6yoZxSlb>j1k^4{0tIiknrD%goI#3#BqhDCVXfac0GRe z+a$zruFLnQ>RifnElEKJjlcc>VDvQGz-5cK+Z>D8UH~ehunz8^W2jdmuqWZ5vt##ErJ~&(7i%l3a z1>-Az*b-7+U8gxzLu}b%8|yJ2bzXWQcK<_Kg`8-%O?*vs@G|MjsoPNP>YVJQ$XCJK z0m_<}341`1>DdPfjlM65Zz?4U_6B4j0(?M0cM*y(bS6HN2nxO` z*rfYnXUko1%V6vj94myf?HJF9J4;(Qc9+U!JPRBNlw4_*)0MA#(S2@jurfZybcJ zOOhQ~0JTb%?}u4qEc$q7m%VC0?t_8z-gO%q&m*5gq3GjZJh5jwDm%;ej#r z)1ENO&9?L_6N7R51<`P}@_BvD(|7AYHUC9$^>*Mw*Li7RjAF>$#)r|;DvF0uqNN** zyC|MU+PN?+c7RH-ojtxn!O@PC6jl&CVT3BMKM-6j@}oGeQ=RPG0TwZto0f!#mJ~X4 zFjyDsrj(jC(!Bude*44xJW46h7l^d5$9EjmRZdCn7&oY4xp;P(10#?lX()6N3mWl1&aJ4_v=M-(RHfu~h?gINQW9 zD|~V$6_9(HIkf@p3y|n%*l5`mF_C@cKIr~?LjAp|3w$Odbl;)I3|`JP2khhcH8bYj z{8XXyi9^$Nf_6U_|98ZGLb(VqoYlv8XK0*^b6Vp~p=k%MJ|JB|et6~5!65RabGpM= z3h;J>HAC%R4wNR&YCOd43~fbY?~5x_;Mfoy3W%ND*NtOEzXISOn53!9w)Xy%C(RWn zr$8Oesc=$-K3(ddVRzNB!n?r@lXKFF$~5QL%_T?k%xFho%*4Ba!H7GPcl&IuyAI4W zyb52T8NUZj;T1a9KZg3uQ=y^rh%0%L!wCOekOgjVH%nv1^gqU^dHIFT`s%&Rhq>=> zm$bT#b1hV0R*)okc$)wM^~Ms^WQ=km5y=S4qg?WYTL9&;MO;fhJ(y1*iGdD#^#+uw5XmW@~0WSmmx1*$UIOkwPDryfTkjMk;!Ux136)%XpgO#x>0 z^28R0;cSw%F|t!!J;)#>$1eR8KW}m%rBoOdn#V9EK+|ATktwFXV{AjWLESLsihzT3 zab}@3On}?H8z8a}MejPi4+8qIzn;lrPH!jNr-n zINU)#Ch0m1JPb?E#U_|835Qd>?Gu9wv1{Oh^?$=JFHC+7Gi>|?#;j+3UW0svI~lw8 zh10JGFygFn+U|24nD|?qTbZ9u#bVEQDZwDr3A*5tpdRl46B35}5UxI!*x!+QD`1CN zh1{p^g!735lI;(6!!6J0dBYb@rjjw6&?^@HImvQ_rAvU@M%#!Unx^%^D&`#C`us}u zqy>x7-x5#bT5G2UKFHv~a5(z)^#F>dl12S0>8FdMaR{g3BF5xi$(5CtVFGAA^UwJe zvkUSVwr{$}mY3AhkESL1V1E8wh;}n)WTseK_K=`0Rw1LcQxo^YL8emq`l_X7(&>^r z_0oJyR9h5-D{S>y3j;%w*HJ^s0Tt?UZq{I3rtA!PtN5|2vc#1L6Ty`S4;Brd0a;x{ z^iR2bjkwt_3DaLIsH>U<&2&z|x5+?%2}z+|8~r#M;5W#9$W5T00>=RSNs7 zuGBJqm62*K+B-tQ<%S4CY`8zGRy~2U@u~;%iS#bz{oYW1za>}0sY=>*MYV9x>goH! z;=Yl#Ua}k{_E?uxkh%*Wr6U?iI^odk0#n)P$&n5)aHXV&+1vU^oV%}%Kk7_TWj$X2 zquX*y7-_N&?8>RM>;_9NsWBU;IAxIwlM0)ZbZ4dds@q3fo4-TiG+iR=7#UAM{m~jO zHmpLV3`r)vp|2!I_j~ik3RfbD-76Tvvpz7H*y4%i^+nEO zqWBDl>vl#&i9;)QV!I^11`j9dhT`ta9bD=2y*GGcV3d69rims^rMqDjj9u}oE}?mf zYtdU3)qG!4yQmbNL*ha-aab#LhHJ#F253CBPIFTgg3?Y0Pf6(TdmeEFno<)zILk0Y z;hX^Ttx#6vJ{H{6<(2r?vF+SCLpKgMO701LDY#fT`$bOY`v=UKZ{HrYXY4RzhncvT z;fEQX{Im4<<%S9NtL2roW + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/main.cpp File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
main.cpp File Reference
+
+
+
#include "main.h"
+#include "statusled.h"
+#include <Dhcp.h>
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

PubSubClient mqttClient (ethClient)
 
void cleanConf ()
 
bool isNotRetainingStatus ()
 
void mqttCallback (char *topic, byte *payload, unsigned int length)
 
void printMACAddress ()
 
char * getStringFromConfig (aJsonObject *a, int i)
 
char * getStringFromConfig (aJsonObject *a, char *name)
 
void setupOTA (void)
 
void setupSyslog ()
 
lan_status lanLoop ()
 
void onMQTTConnect ()
 
void ip_ready_config_loaded_connecting_to_broker ()
 
void onInitialStateInitLAN ()
 
void resetHard ()
 
void Changed (int i, DeviceAddress addr, float currentTemp)
 
void cmdFunctionHelp (int arg_cnt, char **args)
 
void printCurentLanConfig ()
 
void cmdFunctionKill (int arg_cnt, char **args)
 
void cmdFunctionReboot (int arg_cnt, char **args)
 
void applyConfig ()
 
void printConfigSummary ()
 
void cmdFunctionLoad (int arg_cnt, char **args)
 
int loadConfigFromEEPROM ()
 
void cmdFunctionReq (int arg_cnt, char **args)
 
int mqttConfigRequest (int arg_cnt, char **args)
 
int mqttConfigResp (char *as)
 
void cmdFunctionSave (int arg_cnt, char **args)
 
void cmdFunctionIp (int arg_cnt, char **args)
 
void cmdFunctionClearEEPROM (int arg_cnt, char **args)
 
void cmdFunctionPwd (int arg_cnt, char **args)
 
void cmdFunctionSetMac (int arg_cnt, char **args)
 
void cmdFunctionGet (int arg_cnt, char **args)
 
void printBool (bool arg)
 
void saveFlash (short n, char *str)
 
int loadFlash (short n, char *str, short l)
 
void saveFlash (short n, IPAddress &ip)
 
int ipLoadFromFlash (short n, IPAddress &ip)
 
lan_status loadConfigFromHttp (int arg_cnt, char **args)
 
void preTransmission ()
 
void postTransmission ()
 
void setup_main ()
 
void printFirmwareVersionAndBuildOptions ()
 
void publishStat ()
 
void setupMacAddress ()
 
void setupCmdArduino ()
 
void loop_main ()
 
void owIdle (void)
 
void ethernetIdle (void)
 
void modbusIdle (void)
 
void inputLoop (void)
 
void inputSetup (void)
 
void pollingLoop (void)
 
bool isThermostatWithMinArraySize (aJsonObject *item, int minimalArraySize)
 
bool thermoDisabledOrDisconnected (aJsonObject *thermoExtensionArray, int thermoStateCommand)
 
void thermoLoop (void)
 
short thermoSetCurTemp (char *name, float t)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

EthernetClient ethClient
 
Streamlog debugSerialdebugSerialPort
 
statusLED LED (ledRED)
 
lan_status lanStatus = INITIAL_STATE
 
const char configserver[] PROGMEM = CONFIG_SERVER
 
char * deviceName = NULL
 
aJsonObject * topics = NULL
 
aJsonObject * root = NULL
 
aJsonObject * items = NULL
 
aJsonObject * inputs = NULL
 
aJsonObject * mqttArr = NULL
 
aJsonObject * modbusObj = NULL
 
aJsonObject * owArr = NULL
 
aJsonObject * dmxArr = NULL
 
uint32_t nextPollingCheck = 0
 
uint32_t nextInputCheck = 0
 
uint32_t nextLanCheckTime = 0
 
uint32_t nextThermostatCheck = 0
 
uint32_t nextSensorCheck =0
 
uint32_t WiFiAwaitingTime =0
 
aJsonObject * pollingItem = NULL
 
bool owReady = false
 
bool configOk = false
 
bool configLoaded = false
 
bool initializedListeners = false
 
int8_t ethernetIdleCount =0
 
int8_t configLocked = 0
 
ModbusMaster node
 
byte mac [6]
 
bool wifiInitialized
 
int mqttErrorRate
 
+

Function Documentation

+ +

◆ applyConfig()

+ +
+
+ + + + + + + +
void applyConfig ()
+
+ +
+
+ +

◆ Changed()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Changed (int i,
DeviceAddress addr,
float currentTemp 
)
+
+

TODO: Refactore using Items interface

+ +
+
+ +

◆ cleanConf()

+ +
+
+ + + + + + + +
void cleanConf ()
+
+ +
+
+ +

◆ cmdFunctionClearEEPROM()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionClearEEPROM (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionGet()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionGet (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionHelp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionHelp (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionIp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionIp (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionKill()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionKill (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionLoad()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionLoad (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionPwd()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionPwd (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionReboot()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionReboot (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionReq()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionReq (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionSave()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionSave (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionSetMac()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionSetMac (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ ethernetIdle()

+ +
+
+ + + + + + + + +
void ethernetIdle (void )
+
+ +
+
+ +

◆ getStringFromConfig() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
char* getStringFromConfig (aJsonObject * a,
char * name 
)
+
+ +
+
+ +

◆ getStringFromConfig() [2/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
char* getStringFromConfig (aJsonObject * a,
int i 
)
+
+ +
+
+ +

◆ inputLoop()

+ +
+
+ + + + + + + + +
void inputLoop (void )
+
+ +
+
+ +

◆ inputSetup()

+ +
+
+ + + + + + + + +
void inputSetup (void )
+
+ +
+
+ +

◆ ip_ready_config_loaded_connecting_to_broker()

+ +
+
+ + + + + + + +
void ip_ready_config_loaded_connecting_to_broker ()
+
+ +
+
+ +

◆ ipLoadFromFlash()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int ipLoadFromFlash (short n,
IPAddress & ip 
)
+
+ +
+
+ +

◆ isNotRetainingStatus()

+ +
+
+ + + + + + + +
bool isNotRetainingStatus ()
+
+ +
+
+ +

◆ isThermostatWithMinArraySize()

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool isThermostatWithMinArraySize (aJsonObject * item,
int minimalArraySize 
)
+
+ +
+
+ +

◆ lanLoop()

+ +
+
+ + + + + + + +
lan_status lanLoop ()
+
+ +
+
+ +

◆ loadConfigFromEEPROM()

+ +
+
+ + + + + + + +
int loadConfigFromEEPROM ()
+
+ +
+
+ +

◆ loadConfigFromHttp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
lan_status loadConfigFromHttp (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ loadFlash()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int loadFlash (short n,
char * str,
short l 
)
+
+ +
+
+ +

◆ loop_main()

+ +
+
+ + + + + + + +
void loop_main ()
+
+ +
+
+ +

◆ modbusIdle()

+ +
+
+ + + + + + + + +
void modbusIdle (void )
+
+ +
+
+ +

◆ mqttCallback()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void mqttCallback (char * topic,
byte * payload,
unsigned int length 
)
+
+ +
+
+ +

◆ mqttClient()

+ +
+
+ + + + + + + + +
PubSubClient mqttClient (ethClient )
+
+ +
+
+ +

◆ mqttConfigRequest()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int mqttConfigRequest (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ mqttConfigResp()

+ +
+
+ + + + + + + + +
int mqttConfigResp (char * as)
+
+ +
+
+ +

◆ onInitialStateInitLAN()

+ +
+
+ + + + + + + +
void onInitialStateInitLAN ()
+
+ +
+
+ +

◆ onMQTTConnect()

+ +
+
+ + + + + + + +
void onMQTTConnect ()
+
+

strncat(buf,item->name,sizeof(buf)); strncat(buf,",",sizeof(buf));

+

mqttClient.publish(topic,buf,true);

+ +
+
+ +

◆ owIdle()

+ +
+
+ + + + + + + + +
void owIdle (void )
+
+ +
+
+ +

◆ pollingLoop()

+ +
+
+ + + + + + + + +
void pollingLoop (void )
+
+ +
+
+ +

◆ postTransmission()

+ +
+
+ + + + + + + +
void postTransmission ()
+
+ +
+
+ +

◆ preTransmission()

+ +
+
+ + + + + + + +
void preTransmission ()
+
+ +
+
+ +

◆ printBool()

+ +
+
+ + + + + + + + +
void printBool (bool arg)
+
+ +
+
+ +

◆ printConfigSummary()

+ +
+
+ + + + + + + +
void printConfigSummary ()
+
+ +
+
+ +

◆ printCurentLanConfig()

+ +
+
+ + + + + + + +
void printCurentLanConfig ()
+
+ +
+
+ +

◆ printFirmwareVersionAndBuildOptions()

+ +
+
+ + + + + + + +
void printFirmwareVersionAndBuildOptions ()
+
+ +
+
+ +

◆ printMACAddress()

+ +
+
+ + + + + + + +
void printMACAddress ()
+
+ +
+
+ +

◆ publishStat()

+ +
+
+ + + + + + + +
void publishStat ()
+
+ +
+
+ +

◆ resetHard()

+ +
+
+ + + + + + + +
void resetHard ()
+
+ +
+
+ +

◆ saveFlash() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
void saveFlash (short n,
char * str 
)
+
+ +
+
+ +

◆ saveFlash() [2/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
void saveFlash (short n,
IPAddress & ip 
)
+
+ +
+
+ +

◆ setup_main()

+ +
+
+ + + + + + + +
void setup_main ()
+
+ +
+
+ +

◆ setupCmdArduino()

+ +
+
+ + + + + + + +
void setupCmdArduino ()
+
+ +
+
+ +

◆ setupMacAddress()

+ +
+
+ + + + + + + +
void setupMacAddress ()
+
+ +
+
+ +

◆ setupOTA()

+ +
+
+ + + + + + + + +
void setupOTA (void )
+
+ +
+
+ +

◆ setupSyslog()

+ +
+
+ + + + + + + +
void setupSyslog ()
+
+ +
+
+ +

◆ thermoDisabledOrDisconnected()

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool thermoDisabledOrDisconnected (aJsonObject * thermoExtensionArray,
int thermoStateCommand 
)
+
+ +
+
+ +

◆ thermoLoop()

+ +
+
+ + + + + + + + +
void thermoLoop (void )
+
+ +
+
+ +

◆ thermoSetCurTemp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
short thermoSetCurTemp (char * name,
float t 
)
+
+ +
+
+

Variable Documentation

+ +

◆ configLoaded

+ +
+
+ + + + +
bool configLoaded = false
+
+ +
+
+ +

◆ configLocked

+ +
+
+ + + + +
int8_t configLocked = 0
+
+ +
+
+ +

◆ configOk

+ +
+
+ + + + +
bool configOk = false
+
+ +
+
+ +

◆ debugSerialPort

+ +
+
+ + + + +
Streamlog infoSerial& debugSerialPort
+
+ +
+
+ +

◆ deviceName

+ +
+
+ + + + +
char* deviceName = NULL
+
+ +
+
+ +

◆ dmxArr

+ +
+
+ + + + +
aJsonObject* dmxArr = NULL
+
+ +
+
+ +

◆ ethClient

+ +
+
+ + + + +
EthernetClient ethClient
+
+ +
+
+ +

◆ ethernetIdleCount

+ +
+
+ + + + +
int8_t ethernetIdleCount =0
+
+ +
+
+ +

◆ initializedListeners

+ +
+
+ + + + +
bool initializedListeners = false
+
+ +
+
+ +

◆ inputs

+ +
+
+ + + + +
aJsonObject* inputs = NULL
+
+ +
+
+ +

◆ items

+ +
+
+ + + + +
aJsonObject* items = NULL
+
+ +
+
+ +

◆ lanStatus

+ +
+
+ + + + +
lan_status lanStatus = INITIAL_STATE
+
+ +
+
+ +

◆ LED

+ +
+
+ + + + +
statusLED LED(ledRED)
+
+ +
+
+ +

◆ mac

+ +
+
+ + + + +
byte mac[6]
+
+ +
+
+ +

◆ modbusObj

+ +
+
+ + + + +
aJsonObject* modbusObj = NULL
+
+ +
+
+ +

◆ mqttArr

+ +
+
+ + + + +
aJsonObject* mqttArr = NULL
+
+ +
+
+ +

◆ mqttErrorRate

+ +
+
+ + + + +
int mqttErrorRate
+
+ +
+
+ +

◆ nextInputCheck

+ +
+
+ + + + +
uint32_t nextInputCheck = 0
+
+ +
+
+ +

◆ nextLanCheckTime

+ +
+
+ + + + +
uint32_t nextLanCheckTime = 0
+
+ +
+
+ +

◆ nextPollingCheck

+ +
+
+ + + + +
uint32_t nextPollingCheck = 0
+
+ +
+
+ +

◆ nextSensorCheck

+ +
+
+ + + + +
uint32_t nextSensorCheck =0
+
+ +
+
+ +

◆ nextThermostatCheck

+ +
+
+ + + + +
uint32_t nextThermostatCheck = 0
+
+ +
+
+ +

◆ node

+ +
+
+ + + + +
ModbusMaster node
+
+ +
+
+ +

◆ owArr

+ +
+
+ + + + +
aJsonObject* owArr = NULL
+
+ +
+
+ +

◆ owReady

+ +
+
+ + + + +
bool owReady = false
+
+ +
+
+ +

◆ pollingItem

+ +
+
+ + + + +
aJsonObject* pollingItem = NULL
+
+ +
+
+ +

◆ PROGMEM

+ +
+
+ + + + +
const char verval_P [] PROGMEM = CONFIG_SERVER
+
+ +
+
+ +

◆ root

+ +
+
+ + + + +
aJsonObject* root = NULL
+
+ +
+
+ +

◆ topics

+ +
+
+ + + + +
aJsonObject* topics = NULL
+
+ +
+
+ +

◆ WiFiAwaitingTime

+ +
+
+ + + + +
uint32_t WiFiAwaitingTime =0
+
+ +
+
+ +

◆ wifiInitialized

+ +
+
+ + + + +
bool wifiInitialized
+
+ +
+
+
+ + + + diff --git a/docs/html/main_8h.html b/docs/html/main_8h.html new file mode 100644 index 0000000..dd3386a --- /dev/null +++ b/docs/html/main_8h.html @@ -0,0 +1,1296 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/main.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
main.h File Reference
+
+
+
#include "options.h"
+#include "streamlog.h"
+#include "DallasTemperature.h"
+#include <ModbusMaster.h>
+#include "owTerm.h"
+#include "dmx.h"
+#include <Ethernet.h>
+#include "Arduino.h"
+#include "utils.h"
+#include "textconst.h"
+#include <PubSubClient.h>
+#include <SPI.h>
+#include <string.h>
+#include "aJSON.h"
+#include <Cmd.h>
+#include "stdarg.h"
+#include "item.h"
+#include "inputs.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

union  UID
 
+ + + +

+Macros

#define DHCP_RETRY_INTERVAL   60000
 
+ + + +

+Enumerations

enum  lan_status {
+  INITIAL_STATE = 0, +AWAITING_ADDRESS = 1, +HAVE_IP_ADDRESS = 2, +LIBS_INITIALIZED = 3, +
+  IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER = 4, +RETAINING_COLLECTING = 5, +OPERATION = 6, +DO_REINIT = -10, +
+  REINIT = - 11, +DO_RECONNECT = 12, +RECONNECT = 13, +READ_RE_CONFIG = 14, +
+  DO_NOTHING = -15 +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

bool isNotRetainingStatus ()
 
void mqttCallback (char *topic, byte *payload, unsigned int length)
 
void printMACAddress ()
 
lan_status lanLoop ()
 
void Changed (int i, DeviceAddress addr, float currentTemp)
 
void modbusIdle (void)
 
void cmdFunctionHelp (int arg_cnt, char **args)
 
void cmdFunctionKill (int arg_cnt, char **args)
 
void applyConfig ()
 
void cmdFunctionLoad (int arg_cnt, char **args)
 
int loadConfigFromEEPROM ()
 
void cmdFunctionReq (int arg_cnt, char **args)
 
int mqttConfigRequest (int arg_cnt, char **args)
 
int mqttConfigResp (char *as)
 
void cmdFunctionSave (int arg_cnt, char **args)
 
void cmdFunctionSetMac (int arg_cnt, char **args)
 
void cmdFunctionGet (int arg_cnt, char **args)
 
void printBool (bool arg)
 
void saveFlash (short n, char *str)
 
int loadFlash (short n, char *str, short l=MAXFLASHSTR)
 
void saveFlash (short n, IPAddress &ip)
 
int ipLoadFromFlash (short n, IPAddress &ip)
 
lan_status loadConfigFromHttp (int arg_cnt=0, char **args=NULL)
 
void preTransmission ()
 
void postTransmission ()
 
void setup_main ()
 
void loop_main ()
 
void owIdle (void)
 
void inputLoop (void)
 
void inputSetup (void)
 
void pollingLoop (void)
 
void thermoLoop (void)
 
short thermoSetCurTemp (char *name, float t)
 
void printConfigSummary ()
 
void setupCmdArduino ()
 
void setupMacAddress ()
 
void printFirmwareVersionAndBuildOptions ()
 
bool IsThermostat (const aJsonObject *item)
 
bool disabledDisconnected (const aJsonObject *thermoExtensionArray, int thermoLatestCommand)
 
void resetHard ()
 
void onInitialStateInitLAN ()
 
void ip_ready_config_loaded_connecting_to_broker ()
 
void printCurentLanConfig ()
 
+ + + + + + + +

+Variables

Streamlog debugSerial
 
Streamlog infoSerial
 
Streamlog errorSerial
 
+

Macro Definition Documentation

+ +

◆ DHCP_RETRY_INTERVAL

+ +
+
+ + + + +
#define DHCP_RETRY_INTERVAL   60000
+
+ +
+
+

Enumeration Type Documentation

+ +

◆ lan_status

+ +
+
+ + + + +
enum lan_status
+
+ + + + + + + + + + + + + + +
Enumerator
INITIAL_STATE 
AWAITING_ADDRESS 
HAVE_IP_ADDRESS 
LIBS_INITIALIZED 
IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER 
RETAINING_COLLECTING 
OPERATION 
DO_REINIT 
REINIT 
DO_RECONNECT 
RECONNECT 
READ_RE_CONFIG 
DO_NOTHING 
+ +
+
+

Function Documentation

+ +

◆ applyConfig()

+ +
+
+ + + + + + + +
void applyConfig ()
+
+ +
+
+ +

◆ Changed()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Changed (int i,
DeviceAddress addr,
float currentTemp 
)
+
+

TODO: Refactore using Items interface

+ +
+
+ +

◆ cmdFunctionGet()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionGet (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionHelp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionHelp (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionKill()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionKill (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionLoad()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionLoad (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionReq()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionReq (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionSave()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionSave (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ cmdFunctionSetMac()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void cmdFunctionSetMac (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ disabledDisconnected()

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool disabledDisconnected (const aJsonObject * thermoExtensionArray,
int thermoLatestCommand 
)
+
+ +
+
+ +

◆ inputLoop()

+ +
+
+ + + + + + + + +
void inputLoop (void )
+
+ +
+
+ +

◆ inputSetup()

+ +
+
+ + + + + + + + +
void inputSetup (void )
+
+ +
+
+ +

◆ ip_ready_config_loaded_connecting_to_broker()

+ +
+
+ + + + + + + +
void ip_ready_config_loaded_connecting_to_broker ()
+
+ +
+
+ +

◆ ipLoadFromFlash()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int ipLoadFromFlash (short n,
IPAddress & ip 
)
+
+ +
+
+ +

◆ isNotRetainingStatus()

+ +
+
+ + + + + + + +
bool isNotRetainingStatus ()
+
+ +
+
+ +

◆ IsThermostat()

+ +
+
+ + + + + + + + +
bool IsThermostat (const aJsonObject * item)
+
+ +
+
+ +

◆ lanLoop()

+ +
+
+ + + + + + + +
lan_status lanLoop ()
+
+ +
+
+ +

◆ loadConfigFromEEPROM()

+ +
+
+ + + + + + + +
int loadConfigFromEEPROM ()
+
+ +
+
+ +

◆ loadConfigFromHttp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
lan_status loadConfigFromHttp (int arg_cnt = 0,
char ** args = NULL 
)
+
+ +
+
+ +

◆ loadFlash()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int loadFlash (short n,
char * str,
short l = MAXFLASHSTR 
)
+
+ +
+
+ +

◆ loop_main()

+ +
+
+ + + + + + + +
void loop_main ()
+
+ +
+
+ +

◆ modbusIdle()

+ +
+
+ + + + + + + + +
void modbusIdle (void )
+
+ +
+
+ +

◆ mqttCallback()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void mqttCallback (char * topic,
byte * payload,
unsigned int length 
)
+
+ +
+
+ +

◆ mqttConfigRequest()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int mqttConfigRequest (int arg_cnt,
char ** args 
)
+
+ +
+
+ +

◆ mqttConfigResp()

+ +
+
+ + + + + + + + +
int mqttConfigResp (char * as)
+
+ +
+
+ +

◆ onInitialStateInitLAN()

+ +
+
+ + + + + + + +
void onInitialStateInitLAN ()
+
+ +
+
+ +

◆ owIdle()

+ +
+
+ + + + + + + + +
void owIdle (void )
+
+ +
+
+ +

◆ pollingLoop()

+ +
+
+ + + + + + + + +
void pollingLoop (void )
+
+ +
+
+ +

◆ postTransmission()

+ +
+
+ + + + + + + +
void postTransmission ()
+
+ +
+
+ +

◆ preTransmission()

+ +
+
+ + + + + + + +
void preTransmission ()
+
+ +
+
+ +

◆ printBool()

+ +
+
+ + + + + + + + +
void printBool (bool arg)
+
+ +
+
+ +

◆ printConfigSummary()

+ +
+
+ + + + + + + +
void printConfigSummary ()
+
+ +
+
+ +

◆ printCurentLanConfig()

+ +
+
+ + + + + + + +
void printCurentLanConfig ()
+
+ +
+
+ +

◆ printFirmwareVersionAndBuildOptions()

+ +
+
+ + + + + + + +
void printFirmwareVersionAndBuildOptions ()
+
+ +
+
+ +

◆ printMACAddress()

+ +
+
+ + + + + + + +
void printMACAddress ()
+
+ +
+
+ +

◆ resetHard()

+ +
+
+ + + + + + + +
void resetHard ()
+
+ +
+
+ +

◆ saveFlash() [1/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
void saveFlash (short n,
char * str 
)
+
+ +
+
+ +

◆ saveFlash() [2/2]

+ +
+
+ + + + + + + + + + + + + + + + + + +
void saveFlash (short n,
IPAddress & ip 
)
+
+ +
+
+ +

◆ setup_main()

+ +
+
+ + + + + + + +
void setup_main ()
+
+ +
+
+ +

◆ setupCmdArduino()

+ +
+
+ + + + + + + +
void setupCmdArduino ()
+
+ +
+
+ +

◆ setupMacAddress()

+ +
+
+ + + + + + + +
void setupMacAddress ()
+
+ +
+
+ +

◆ thermoLoop()

+ +
+
+ + + + + + + + +
void thermoLoop (void )
+
+ +
+
+ +

◆ thermoSetCurTemp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
short thermoSetCurTemp (char * name,
float t 
)
+
+ +
+
+

Variable Documentation

+ +

◆ debugSerial

+ +
+
+ + + + + +
+ + + + +
Streamlog debugSerial
+
+extern
+
+ +
+
+ +

◆ errorSerial

+ +
+
+ + + + + +
+ + + + +
Streamlog errorSerial
+
+extern
+
+ +
+
+ +

◆ infoSerial

+ +
+
+ + + + + +
+ + + + +
Streamlog infoSerial
+
+extern
+
+ +
+
+
+ + + + diff --git a/docs/html/main_8h_source.html b/docs/html/main_8h_source.html new file mode 100644 index 0000000..3c8d37f --- /dev/null +++ b/docs/html/main_8h_source.html @@ -0,0 +1,461 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/main.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
LightHub +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
main.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 
+
3 #include "options.h"
+
4 
+
5 #if defined(M5STACK)
+
6 #include <M5Stack.h>
+
7 #endif
+
8 
+
9 #if defined(__SAM3X8E__)
+
10 #include <DueFlashStorage.h>
+
11 #include <watchdog.h>
+
12 #include <ArduinoHttpClient.h>
+
13 #endif
+
14 
+
15 #if defined(ARDUINO_ARCH_AVR)
+
16 #include "HTTPClientAVR.h"
+
17 #include <avr/pgmspace.h>
+
18 #include <avr/wdt.h>
+
19 #include <EEPROM.h>
+
20 #endif
+
21 
+
22 #if defined(ARDUINO_ARCH_ESP8266)
+
23 #include <FS.h> //this needs to be first, or it all crashes and burns...
+
24 //#include "SPIFFS.h"
+
25 #include <ESP_EEPROM.h>
+
26 //#include <ESP8266HTTPClient.h>
+
27 //#include <ArduinoHttpClient.h>
+
28 //#include "HttpClient.h"
+
29 //#include <WiFiManager.h>
+
30 //#include <DNSServer.h>
+
31 //#include <ESP8266WebServer.h>
+
32 //#include <ESP8266WiFi.h>
+
33 #include <user_interface.h>
+
34 //#define Ethernet WiFi
+
35 #endif
+
36 
+
37 #if defined ARDUINO_ARCH_ESP32
+
38 #include <FS.h> //this needs to be first, or it all crashes and burns...
+
39 //#include "SPIFFS.h"
+
40 //#include <EEPROM.h>
+
41 #include <NRFFlashStorage.h>
+
42 //#include "HttpClient.h"
+
43 //#include <ArduinoHttpClient.h>
+
44 //#include <HTTPClient.h>
+
45 //#include <WiFi.h>
+
46 //#include <WiFiClient.h>
+
47 //#include <WiFiClientSecure.h>
+
48 //#include <WebServer.h>
+
49 //#include <WiFiManager.h>
+
50 //include <DNSServer.h>
+
51 
+
52 //#define Ethernet WiFi
+
53 #endif
+
54 
+
55 #ifdef NRF5
+
56 #include <NRFFlashStorage.h>
+
57 #include <ArduinoHttpClient.h>
+
58 #endif
+
59 
+
60 #ifdef ARDUINO_ARCH_STM32
+
61 #include "HttpClient.h"
+
62 //#include "UIPEthernet.h"
+
63 #include <NRFFlashStorage.h>
+
64 //#include <EEPROM.h>
+
65 #endif
+
66 
+
67 #include "streamlog.h"
+
68 extern Streamlog debugSerial;
+
69 extern Streamlog infoSerial;
+
70 extern Streamlog errorSerial;
+
71 
+
72 #if defined(__SAM3X8E__)
+
73 #define wdt_res() watchdogReset()
+
74 #define wdt_en()
+
75 #define wdt_dis()
+
76 #endif
+
77 
+
78 #ifndef DHCP_RETRY_INTERVAL
+
79 #define DHCP_RETRY_INTERVAL 60000
+
80 #endif
+
81 
+
82 #if defined(ESP8266)
+
83 #define wdt_en() wdt_enable(WDTO_8S)
+
84 #define wdt_dis() wdt_disable()
+
85 #define wdt_res() wdt_reset()
+
86 #endif
+
87 
+
88 #ifdef ARDUINO_ARCH_ESP32
+
89 #define wdt_res()
+
90 #define wdt_en()
+
91 #define wdt_dis()
+
92 #endif
+
93 
+
94 #if defined(NRF5)
+
95 #define wdt_res()
+
96 #define wdt_en()
+
97 #define wdt_dis()
+
98 #endif
+
99 
+
100 #if defined(ARDUINO_ARCH_STM32)
+
101 #define wdt_res()
+
102 #define wdt_en()
+
103 #define wdt_dis()
+
104 #endif
+
105 
+
106 //#if defined(ESP8266)
+
107 //#define wdt_res()
+
108 //#define wdt_en()
+
109 //#define wdt_dis()
+
110 //#endif
+
111 #if defined(ARDUINO_ARCH_AVR)
+
112 #if defined(WATCH_DOG_TICKER_DISABLE)
+
113 #define wdt_en() wdt_disable()
+
114 #define wdt_dis() wdt_disable()
+
115 #define wdt_res() wdt_disable()
+
116 #else
+
117 #define wdt_en() wdt_enable(WDTO_8S)
+
118 #define wdt_dis() wdt_disable()
+
119 #define wdt_res() wdt_reset()
+
120 #endif
+
121 #endif
+
122 
+
123 #ifndef OWIRE_DISABLE
+
124 #include "DallasTemperature.h"
+
125 #endif
+
126 
+
127 #ifdef _modbus
+
128 #include <ModbusMaster.h>
+
129 #endif
+
130 
+
131 //#ifndef DMX_DISABLE
+
132 //#include "FastLED.h"
+
133 //#endif
+
134 
+
135 #ifdef _owire
+
136 #include "owTerm.h"
+
137 #endif
+
138 
+
139 #if defined(_dmxin) || defined(_dmxout) || defined (_artnet)
+
140 #include "dmx.h"
+
141 #endif
+
142 
+
143 #ifdef WIFI_ENABLE
+
144 
+
145  #if defined(ARDUINO_ARCH_ESP32)
+
146  #include <WiFi.h>
+
147  #include <HTTPClient.h>
+
148  #include <WiFiClient.h>
+
149  #include <WiFiClientSecure.h>
+
150  #include <WiFiManager.h>
+
151  #include <WebServer.h>
+
152  #else
+
153  #include <ESP8266WiFi.h>
+
154  #include <ESP8266HTTPClient.h>
+
155  #include <WiFiManager.h>
+
156  #include <DNSServer.h>
+
157  #include <ESP8266WebServer.h>
+
158  #endif
+
159 #define Ethernet WiFi
+
160 #else //Wired connection
+
161  #ifdef Wiz5500
+
162  #include <Ethernet2.h>
+
163  #else
+
164  #ifdef ARDUINO_ARCH_STM32
+
165  #include "UIPEthernet.h"
+
166  #else
+
167  #include <Ethernet.h>
+
168  #endif
+
169  #endif
+
170 #endif
+
171 
+
172 
+
173 #ifdef _artnet
+
174 #include <Artnet.h>
+
175 #endif
+
176 
+
177 #ifdef SD_CARD_INSERTED
+
178 #include "sd_card_w5100.h"
+
179 #endif
+
180 
+
181 #include "Arduino.h"
+
182 #include "utils.h"
+
183 #include "textconst.h"
+
184 #include <PubSubClient.h>
+
185 #include <SPI.h>
+
186 #include <string.h>
+
187 #include "aJSON.h"
+
188 #include <Cmd.h>
+
189 #include "stdarg.h"
+
190 #include "item.h"
+
191 #include "inputs.h"
+
192 
+
193 #ifdef _artnet
+
194 extern Artnet *artnet;
+
195 #endif
+
196 
+ + + + + + + + +
205 
+
206  DO_REINIT = -10,
+
207  REINIT = - 11,
+ +
209  RECONNECT = 13,
+ +
211  DO_NOTHING = -15
+
212 };
+
213 
+
214 typedef union {
+
215  uint32_t UID_Long[5];
+
216  uint8_t UID_Byte[20];
+
217 } UID;
+
218 
+
219 bool isNotRetainingStatus();
+
220 //void watchdogSetup(void);
+
221 
+
222 void mqttCallback(char *topic, byte *payload, unsigned int length);
+
223 
+
224 void printMACAddress();
+
225 
+ +
227 
+
228 #ifndef OWIRE_DISABLE
+
229 void Changed(int i, DeviceAddress addr, float currentTemp);
+
230 #endif
+
231 
+
232 void modbusIdle(void);
+
233 
+
234 void cmdFunctionHelp(int arg_cnt, char **args);
+
235 
+
236 void cmdFunctionKill(int arg_cnt, char **args);
+
237 
+
238 void applyConfig();
+
239 
+
240 void cmdFunctionLoad(int arg_cnt, char **args);
+
241 
+ +
243 
+
244 void cmdFunctionReq(int arg_cnt, char **args);
+
245 
+
246 int mqttConfigRequest(int arg_cnt, char **args);
+
247 
+
248 int mqttConfigResp(char *as);
+
249 
+
250 void cmdFunctionSave(int arg_cnt, char **args);
+
251 
+
252 void cmdFunctionSetMac(int arg_cnt, char **args);
+
253 
+
254 void cmdFunctionGet(int arg_cnt, char **args);
+
255 
+
256 void printBool(bool arg);
+
257 
+
258 void saveFlash(short n, char *str);
+
259 
+
260 int loadFlash(short n, char *str, short l=MAXFLASHSTR);
+
261 
+
262 void saveFlash(short n, IPAddress& ip);
+
263 
+
264 int ipLoadFromFlash(short n, IPAddress &ip);
+
265 
+
266 lan_status loadConfigFromHttp(int arg_cnt = 0, char **args = NULL);
+
267 
+
268 void preTransmission();
+
269 
+
270 void postTransmission();
+
271 
+
272 void setup_main();
+
273 
+
274 void loop_main();
+
275 
+
276 void owIdle(void);
+
277 
+
278 void modbusIdle(void);
+
279 
+
280 void inputLoop(void);
+
281 
+
282 void inputSetup(void);
+
283 
+
284 void pollingLoop(void);
+
285 
+
286 void thermoLoop(void);
+
287 
+
288 short thermoSetCurTemp(char *name, float t);
+
289 
+
290 void modbusIdle(void);
+
291 
+
292 void printConfigSummary();
+
293 
+
294 void setupCmdArduino();
+
295 
+
296 void setupMacAddress();
+
297 
+ +
299 
+
300 bool IsThermostat(const aJsonObject *item);
+
301 
+
302 bool disabledDisconnected(const aJsonObject *thermoExtensionArray, int thermoLatestCommand);
+
303 
+
304 void resetHard();
+
305 
+
306 void onInitialStateInitLAN();
+
307 
+ +
309 
+
310 void printCurentLanConfig();
+
311 
+
312 //void printFreeRam();
+
+
int loadFlash(short n, char *str, short l=MAXFLASHSTR)
Definition: main.cpp:1346
+
void ip_ready_config_loaded_connecting_to_broker()
Definition: main.cpp:700
+
void cmdFunctionKill(int arg_cnt, char **args)
Definition: main.cpp:996
+
void modbusIdle(void)
Definition: main.cpp:1938
+ +
@ DO_NOTHING
Definition: main.h:211
+
void printMACAddress()
Definition: main.cpp:337
+
void setupMacAddress()
Definition: main.cpp:1802
+
@ REINIT
Definition: main.h:207
+
@ RETAINING_COLLECTING
Definition: main.h:203
+
bool IsThermostat(const aJsonObject *item)
+
Streamlog errorSerial
+
int mqttConfigRequest(int arg_cnt, char **args)
Definition: main.cpp:1177
+ +
lan_status loadConfigFromHttp(int arg_cnt=0, char **args=NULL)
Definition: main.cpp:1370
+
@ IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER
Definition: main.h:202
+
void cmdFunctionGet(int arg_cnt, char **args)
Definition: main.cpp:1325
+
void printConfigSummary()
Definition: main.cpp:1111
+
@ OPERATION
Definition: main.h:204
+ +
@ AWAITING_ADDRESS
Definition: main.h:199
+
void onInitialStateInitLAN()
Definition: main.cpp:809
+
void cmdFunctionLoad(int arg_cnt, char **args)
Definition: main.cpp:1140
+
void printCurentLanConfig()
Definition: main.cpp:988
+ +
void printBool(bool arg)
Definition: main.cpp:1331
+
void cmdFunctionSave(int arg_cnt, char **args)
Definition: main.cpp:1229
+
void inputLoop(void)
Definition: main.cpp:1963
+
lan_status
Definition: main.h:197
+ +
@ INITIAL_STATE
Definition: main.h:198
+
short thermoSetCurTemp(char *name, float t)
Definition: main.cpp:2151
+
void mqttCallback(char *topic, byte *payload, unsigned int length)
Definition: main.cpp:255
+
void setup_main()
Definition: main.cpp:1550
+
void setupCmdArduino()
Definition: main.cpp:1842
+
@ LIBS_INITIALIZED
Definition: main.h:201
+
void saveFlash(short n, char *str)
Definition: main.cpp:1333
+
@ RECONNECT
Definition: main.h:209
+
void loop_main()
Definition: main.cpp:1860
+ +
void printFirmwareVersionAndBuildOptions()
Definition: main.cpp:1634
+
void preTransmission()
Definition: main.cpp:1532
+
void Changed(int i, DeviceAddress addr, float currentTemp)
Definition: main.cpp:920
+
void owIdle(void)
Definition: main.cpp:1912
+
void cmdFunctionHelp(int arg_cnt, char **args)
Definition: main.cpp:972
+
Streamlog infoSerial
+
Definition: streamlog.h:23
+
void applyConfig()
Definition: main.cpp:1008
+ +
Streamlog debugSerial
+
lan_status lanLoop()
Definition: main.cpp:420
+
@ READ_RE_CONFIG
Definition: main.h:210
+
void pollingLoop(void)
Definition: main.cpp:2032
+
Definition: main.h:214
+
#define MAXFLASHSTR
Definition: options.h:46
+
int loadConfigFromEEPROM()
Definition: main.cpp:1146
+
bool isNotRetainingStatus()
Definition: main.cpp:251
+
int mqttConfigResp(char *as)
Definition: main.cpp:1194
+
void cmdFunctionSetMac(int arg_cnt, char **args)
Definition: main.cpp:1314
+
void thermoLoop(void)
Definition: main.cpp:2092
+
void resetHard()
Definition: main.cpp:905
+
bool disabledDisconnected(const aJsonObject *thermoExtensionArray, int thermoLatestCommand)
+
void postTransmission()
Definition: main.cpp:1541
+
void inputSetup(void)
Definition: main.cpp:2016
+
void cmdFunctionReq(int arg_cnt, char **args)
Definition: main.cpp:1171
+
int ipLoadFromFlash(short n, IPAddress &ip)
Definition: main.cpp:1365
+
@ HAVE_IP_ADDRESS
Definition: main.h:200
+
@ DO_REINIT
Definition: main.h:206
+ +
@ DO_RECONNECT
Definition: main.h:208
+ + + + diff --git a/docs/html/menu.js b/docs/html/menu.js new file mode 100644 index 0000000..2fe2214 --- /dev/null +++ b/docs/html/menu.js @@ -0,0 +1,51 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { + function makeTree(data,relPath) { + var result=''; + if ('children' in data) { + result+=''; + } + return result; + } + + $('#main-nav').append(makeTree(menudata,relPath)); + $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); + if (searchEnabled) { + if (serverSide) { + $('#main-menu').append('
  • '); + } else { + $('#main-menu').append('
  • '); + } + } + $('#main-menu').smartmenus(); +} +/* @license-end */ diff --git a/docs/html/menudata.js b/docs/html/menudata.js new file mode 100644 index 0000000..3a8da7b --- /dev/null +++ b/docs/html/menudata.js @@ -0,0 +1,178 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file +*/ +var menudata={children:[ +{text:"Main Page",url:"index.html"}, +{text:"Classes",url:"annotated.html",children:[ +{text:"Class List",url:"annotated.html"}, +{text:"Class Index",url:"classes.html"}, +{text:"Class Hierarchy",url:"hierarchy.html"}, +{text:"Class Members",url:"functions.html",children:[ +{text:"All",url:"functions.html",children:[ +{text:"a",url:"functions.html#index_a"}, +{text:"b",url:"functions_b.html#index_b"}, +{text:"c",url:"functions_c.html#index_c"}, +{text:"d",url:"functions_d.html#index_d"}, +{text:"e",url:"functions_e.html#index_e"}, +{text:"f",url:"functions_f.html#index_f"}, +{text:"g",url:"functions_g.html#index_g"}, +{text:"h",url:"functions_h.html#index_h"}, +{text:"i",url:"functions_i.html#index_i"}, +{text:"l",url:"functions_l.html#index_l"}, +{text:"m",url:"functions_m.html#index_m"}, +{text:"n",url:"functions_n.html#index_n"}, +{text:"o",url:"functions_o.html#index_o"}, +{text:"p",url:"functions_p.html#index_p"}, +{text:"r",url:"functions_r.html#index_r"}, +{text:"s",url:"functions_s.html#index_s"}, +{text:"t",url:"functions_t.html#index_t"}, +{text:"u",url:"functions_u.html#index_u"}, +{text:"v",url:"functions_v.html#index_v"}, +{text:"w",url:"functions_w.html#index_w"}, +{text:"~",url:"functions_~.html#index__7E"}]}, +{text:"Functions",url:"functions_func.html",children:[ +{text:"a",url:"functions_func.html#index_a"}, +{text:"b",url:"functions_func_b.html#index_b"}, +{text:"c",url:"functions_func_c.html#index_c"}, +{text:"d",url:"functions_func_d.html#index_d"}, +{text:"e",url:"functions_func_e.html#index_e"}, +{text:"f",url:"functions_func_f.html#index_f"}, +{text:"g",url:"functions_func_g.html#index_g"}, +{text:"h",url:"functions_func_h.html#index_h"}, +{text:"i",url:"functions_func_i.html#index_i"}, +{text:"l",url:"functions_func_l.html#index_l"}, +{text:"m",url:"functions_func_m.html#index_m"}, +{text:"n",url:"functions_func_n.html#index_n"}, +{text:"o",url:"functions_func_o.html#index_o"}, +{text:"p",url:"functions_func_p.html#index_p"}, +{text:"r",url:"functions_func_r.html#index_r"}, +{text:"s",url:"functions_func_s.html#index_s"}, +{text:"t",url:"functions_func_t.html#index_t"}, +{text:"u",url:"functions_func_u.html#index_u"}, +{text:"v",url:"functions_func_v.html#index_v"}, +{text:"w",url:"functions_func_w.html#index_w"}, +{text:"~",url:"functions_func_~.html#index__7E"}]}, +{text:"Variables",url:"functions_vars.html",children:[ +{text:"a",url:"functions_vars.html#index_a"}, +{text:"b",url:"functions_vars.html#index_b"}, +{text:"c",url:"functions_vars.html#index_c"}, +{text:"d",url:"functions_vars.html#index_d"}, +{text:"f",url:"functions_vars.html#index_f"}, +{text:"g",url:"functions_vars.html#index_g"}, +{text:"h",url:"functions_vars.html#index_h"}, +{text:"i",url:"functions_vars.html#index_i"}, +{text:"l",url:"functions_vars.html#index_l"}, +{text:"m",url:"functions_vars.html#index_m"}, +{text:"n",url:"functions_vars.html#index_n"}, +{text:"p",url:"functions_vars.html#index_p"}, +{text:"r",url:"functions_vars.html#index_r"}, +{text:"s",url:"functions_vars.html#index_s"}, +{text:"t",url:"functions_vars.html#index_t"}, +{text:"u",url:"functions_vars.html#index_u"}, +{text:"v",url:"functions_vars.html#index_v"}, +{text:"w",url:"functions_vars.html#index_w"}]}]}]}, +{text:"Files",url:"files.html",children:[ +{text:"File List",url:"files.html"}, +{text:"File Members",url:"globals.html",children:[ +{text:"All",url:"globals.html",children:[ +{text:"_",url:"globals.html#index__5F"}, +{text:"a",url:"globals_a.html#index_a"}, +{text:"b",url:"globals_b.html#index_b"}, +{text:"c",url:"globals_c.html#index_c"}, +{text:"d",url:"globals_d.html#index_d"}, +{text:"e",url:"globals_e.html#index_e"}, +{text:"f",url:"globals_f.html#index_f"}, +{text:"g",url:"globals_g.html#index_g"}, +{text:"h",url:"globals_h.html#index_h"}, +{text:"i",url:"globals_i.html#index_i"}, +{text:"l",url:"globals_l.html#index_l"}, +{text:"m",url:"globals_m.html#index_m"}, +{text:"n",url:"globals_n.html#index_n"}, +{text:"o",url:"globals_o.html#index_o"}, +{text:"p",url:"globals_p.html#index_p"}, +{text:"q",url:"globals_q.html#index_q"}, +{text:"r",url:"globals_r.html#index_r"}, +{text:"s",url:"globals_s.html#index_s"}, +{text:"t",url:"globals_t.html#index_t"}, +{text:"u",url:"globals_u.html#index_u"}, +{text:"v",url:"globals_v.html#index_v"}, +{text:"w",url:"globals_w.html#index_w"}]}, +{text:"Functions",url:"globals_func.html",children:[ +{text:"_",url:"globals_func.html#index__5F"}, +{text:"a",url:"globals_func.html#index_a"}, +{text:"c",url:"globals_func.html#index_c"}, +{text:"d",url:"globals_func.html#index_d"}, +{text:"e",url:"globals_func.html#index_e"}, +{text:"f",url:"globals_func.html#index_f"}, +{text:"g",url:"globals_func.html#index_g"}, +{text:"h",url:"globals_func.html#index_h"}, +{text:"i",url:"globals_func.html#index_i"}, +{text:"l",url:"globals_func.html#index_l"}, +{text:"m",url:"globals_func.html#index_m"}, +{text:"o",url:"globals_func.html#index_o"}, +{text:"p",url:"globals_func.html#index_p"}, +{text:"r",url:"globals_func.html#index_r"}, +{text:"s",url:"globals_func.html#index_s"}, +{text:"t",url:"globals_func.html#index_t"}]}, +{text:"Variables",url:"globals_vars.html",children:[ +{text:"c",url:"globals_vars.html#index_c"}, +{text:"d",url:"globals_vars.html#index_d"}, +{text:"e",url:"globals_vars.html#index_e"}, +{text:"h",url:"globals_vars.html#index_h"}, +{text:"i",url:"globals_vars.html#index_i"}, +{text:"l",url:"globals_vars.html#index_l"}, +{text:"m",url:"globals_vars.html#index_m"}, +{text:"n",url:"globals_vars.html#index_n"}, +{text:"o",url:"globals_vars.html#index_o"}, +{text:"p",url:"globals_vars.html#index_p"}, +{text:"q",url:"globals_vars.html#index_q"}, +{text:"r",url:"globals_vars.html#index_r"}, +{text:"s",url:"globals_vars.html#index_s"}, +{text:"t",url:"globals_vars.html#index_t"}, +{text:"w",url:"globals_vars.html#index_w"}]}, +{text:"Typedefs",url:"globals_type.html"}, +{text:"Enumerations",url:"globals_enum.html"}, +{text:"Enumerator",url:"globals_eval.html"}, +{text:"Macros",url:"globals_defs.html",children:[ +{text:"_",url:"globals_defs.html#index__5F"}, +{text:"a",url:"globals_defs_a.html#index_a"}, +{text:"b",url:"globals_defs_b.html#index_b"}, +{text:"c",url:"globals_defs_c.html#index_c"}, +{text:"d",url:"globals_defs_d.html#index_d"}, +{text:"e",url:"globals_defs_e.html#index_e"}, +{text:"f",url:"globals_defs_f.html#index_f"}, +{text:"h",url:"globals_defs_h.html#index_h"}, +{text:"i",url:"globals_defs_i.html#index_i"}, +{text:"l",url:"globals_defs_l.html#index_l"}, +{text:"m",url:"globals_defs_m.html#index_m"}, +{text:"n",url:"globals_defs_n.html#index_n"}, +{text:"o",url:"globals_defs_o.html#index_o"}, +{text:"p",url:"globals_defs_p.html#index_p"}, +{text:"q",url:"globals_defs_q.html#index_q"}, +{text:"r",url:"globals_defs_r.html#index_r"}, +{text:"s",url:"globals_defs_s.html#index_s"}, +{text:"t",url:"globals_defs_t.html#index_t"}, +{text:"u",url:"globals_defs_u.html#index_u"}, +{text:"v",url:"globals_defs_v.html#index_v"}, +{text:"w",url:"globals_defs_w.html#index_w"}]}]}]}]} diff --git a/docs/html/nav_f.png b/docs/html/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U literal 0 HcmV?d00001 diff --git a/docs/html/nav_g.png b/docs/html/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/options.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    options.h File Reference
    +
    +
    + +

    Go to the source code of this file.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define SYSLOG_LOCAL_SOCKET   514
     
    #define ADAFRUIT_LED
     
    #define CONTROLLER   TM1809
     
    #define DATA_PIN   4
     
    #define ORDER   BRG
     
    #define TXEnablePin   13
     
    #define ESP_EEPROM_SIZE   2048
     
    #define AVR_DMXOUT_PIN   18
     
    #define T_ATTEMPTS   200
     
    #define IET_TEMP   0
     
    #define IET_ATTEMPTS   1
     
    #define THERMO_GIST_CELSIUS   1.
     
    #define THERMO_OVERHEAT_CELSIUS   38.
     
    #define FM_OVERHEAT_CELSIUS   40.
     
    #define MIN_VOLUME   25
     
    #define INIT_VOLUME   40
     
    #define MAXFLASHSTR   32
     
    #define PWDFLASHSTR   16
     
    #define EEPROM_SIGNATURE   "LHCF"
     
    #define EEPROM_SIGNATURE_LENGTH   4
     
    #define OFFSET_MAC   0
     
    #define OFFSET_IP   OFFSET_MAC+6
     
    #define OFFSET_DNS   OFFSET_IP+4
     
    #define OFFSET_GW   OFFSET_DNS+4
     
    #define OFFSET_MASK   OFFSET_GW+4
     
    #define OFFSET_CONFIGSERVER   OFFSET_MASK+4
     
    #define OFFSET_MQTT_PWD   OFFSET_CONFIGSERVER+MAXFLASHSTR
     
    #define OFFSET_SIGNATURE   OFFSET_MQTT_PWD+PWDFLASHSTR
     
    #define EEPROM_offset_NotAlligned   OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
     
    #define EEPROM_offsetJSON   EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
     
    #define EEPROM_FIX_PART_LEN   EEPROM_offsetJSON-OFFSET_MAC
     
    #define INTERVAL_CHECK_INPUT   15
     
    #define INTERVAL_CHECK_SENSOR   5000
     
    #define INTERVAL_CHECK_MODBUS   2000
     
    #define INTERVAL_POLLING   100
     
    #define THERMOSTAT_CHECK_PERIOD   30000
     
    #define OW_UPDATE_INTERVAL   5000
     
    #define MODBUS_SERIAL_BAUD   9600
     
    #define MODBUS_DIMMER_PARAM   SERIAL_8N1
     
    #define dimPar   MODBUS_DIMMER_PARAM
     
    #define fmPar   SERIAL_8N1
     
    #define SERIAL_BAUD   115200
     
    #define DEFAULT_FIRMWARE_MAC   {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
     
    #define CONFIG_SERVER   "lazyhome.ru"
     
    #define HOMETOPIC   "myhome"
     
    #define OUTTOPIC   "s_out"
     
    #define CMDTOPIC   "$command"
     
    #define INTOPIC   "in"
     
    #define MQTT_SUBJECT_LENGTH   20
     
    #define MQTT_TOPIC_LENGTH   64
     
    #define _dmxin
     
    #define _dmxout
     
    #define _owire
     
    #define _modbus
     
    #define LAN_INIT_DELAY   500
     
    #define DEFAULT_INC_STEP   5
     
    #define DHT_POLL_DELAY_DEFAULT   15000
     
    #define UPTIME_POLL_DELAY_DEFAULT   30000
     
    #define DMX_SMOOTH_DELAY   10
     
    #define debugSerialPort   Serial
     
    #define W5100_ETHERNET_SHIELD
     
    +

    Macro Definition Documentation

    + +

    ◆ _dmxin

    + +
    +
    + + + + +
    #define _dmxin
    +
    + +
    +
    + +

    ◆ _dmxout

    + +
    +
    + + + + +
    #define _dmxout
    +
    + +
    +
    + +

    ◆ _modbus

    + +
    +
    + + + + +
    #define _modbus
    +
    + +
    +
    + +

    ◆ _owire

    + +
    +
    + + + + +
    #define _owire
    +
    + +
    +
    + +

    ◆ ADAFRUIT_LED

    + +
    +
    + + + + +
    #define ADAFRUIT_LED
    +
    + +
    +
    + +

    ◆ AVR_DMXOUT_PIN

    + +
    +
    + + + + +
    #define AVR_DMXOUT_PIN   18
    +
    + +
    +
    + +

    ◆ CMDTOPIC

    + +
    +
    + + + + +
    #define CMDTOPIC   "$command"
    +
    + +
    +
    + +

    ◆ CONFIG_SERVER

    + +
    +
    + + + + +
    #define CONFIG_SERVER   "lazyhome.ru"
    +
    + +
    +
    + +

    ◆ CONTROLLER

    + +
    +
    + + + + +
    #define CONTROLLER   TM1809
    +
    + +
    +
    + +

    ◆ DATA_PIN

    + +
    +
    + + + + +
    #define DATA_PIN   4
    +
    + +
    +
    + +

    ◆ debugSerialPort

    + +
    +
    + + + + +
    Streamlog infoSerial & debugSerialPort   Serial
    +
    + +
    +
    + +

    ◆ DEFAULT_FIRMWARE_MAC

    + +
    +
    + + + + +
    #define DEFAULT_FIRMWARE_MAC   {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
    +
    + +
    +
    + +

    ◆ DEFAULT_INC_STEP

    + +
    +
    + + + + +
    #define DEFAULT_INC_STEP   5
    +
    + +
    +
    + +

    ◆ DHT_POLL_DELAY_DEFAULT

    + +
    +
    + + + + +
    #define DHT_POLL_DELAY_DEFAULT   15000
    +
    + +
    +
    + +

    ◆ dimPar

    + +
    +
    + + + + +
    #define dimPar   MODBUS_DIMMER_PARAM
    +
    + +
    +
    + +

    ◆ DMX_SMOOTH_DELAY

    + +
    +
    + + + + +
    #define DMX_SMOOTH_DELAY   10
    +
    + +
    +
    + +

    ◆ EEPROM_FIX_PART_LEN

    + +
    +
    + + + + +
    #define EEPROM_FIX_PART_LEN   EEPROM_offsetJSON-OFFSET_MAC
    +
    + +
    +
    + +

    ◆ EEPROM_offset_NotAlligned

    + +
    +
    + + + + +
    #define EEPROM_offset_NotAlligned   OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
    +
    + +
    +
    + +

    ◆ EEPROM_offsetJSON

    + +
    +
    + + + + +
    #define EEPROM_offsetJSON   EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
    +
    + +
    +
    + +

    ◆ EEPROM_SIGNATURE

    + +
    +
    + + + + +
    #define EEPROM_SIGNATURE   "LHCF"
    +
    + +
    +
    + +

    ◆ EEPROM_SIGNATURE_LENGTH

    + +
    +
    + + + + +
    #define EEPROM_SIGNATURE_LENGTH   4
    +
    + +
    +
    + +

    ◆ ESP_EEPROM_SIZE

    + +
    +
    + + + + +
    #define ESP_EEPROM_SIZE   2048
    +
    + +
    +
    + +

    ◆ FM_OVERHEAT_CELSIUS

    + +
    +
    + + + + +
    #define FM_OVERHEAT_CELSIUS   40.
    +
    + +
    +
    + +

    ◆ fmPar

    + +
    +
    + + + + +
    #define fmPar   SERIAL_8N1
    +
    + +
    +
    + +

    ◆ HOMETOPIC

    + +
    +
    + + + + +
    #define HOMETOPIC   "myhome"
    +
    + +
    +
    + +

    ◆ IET_ATTEMPTS

    + +
    +
    + + + + +
    #define IET_ATTEMPTS   1
    +
    + +
    +
    + +

    ◆ IET_TEMP

    + +
    +
    + + + + +
    #define IET_TEMP   0
    +
    + +
    +
    + +

    ◆ INIT_VOLUME

    + +
    +
    + + + + +
    #define INIT_VOLUME   40
    +
    + +
    +
    + +

    ◆ INTERVAL_CHECK_INPUT

    + +
    +
    + + + + +
    #define INTERVAL_CHECK_INPUT   15
    +
    + +
    +
    + +

    ◆ INTERVAL_CHECK_MODBUS

    + +
    +
    + + + + +
    #define INTERVAL_CHECK_MODBUS   2000
    +
    + +
    +
    + +

    ◆ INTERVAL_CHECK_SENSOR

    + +
    +
    + + + + +
    #define INTERVAL_CHECK_SENSOR   5000
    +
    + +
    +
    + +

    ◆ INTERVAL_POLLING

    + +
    +
    + + + + +
    #define INTERVAL_POLLING   100
    +
    + +
    +
    + +

    ◆ INTOPIC

    + +
    +
    + + + + +
    #define INTOPIC   "in"
    +
    + +
    +
    + +

    ◆ LAN_INIT_DELAY

    + +
    +
    + + + + +
    #define LAN_INIT_DELAY   500
    +
    + +
    +
    + +

    ◆ MAXFLASHSTR

    + +
    +
    + + + + +
    #define MAXFLASHSTR   32
    +
    + +
    +
    + +

    ◆ MIN_VOLUME

    + +
    +
    + + + + +
    #define MIN_VOLUME   25
    +
    + +
    +
    + +

    ◆ MODBUS_DIMMER_PARAM

    + +
    +
    + + + + +
    #define MODBUS_DIMMER_PARAM   SERIAL_8N1
    +
    + +
    +
    + +

    ◆ MODBUS_SERIAL_BAUD

    + +
    +
    + + + + +
    #define MODBUS_SERIAL_BAUD   9600
    +
    + +
    +
    + +

    ◆ MQTT_SUBJECT_LENGTH

    + +
    +
    + + + + +
    #define MQTT_SUBJECT_LENGTH   20
    +
    + +
    +
    + +

    ◆ MQTT_TOPIC_LENGTH

    + +
    +
    + + + + +
    #define MQTT_TOPIC_LENGTH   64
    +
    + +
    +
    + +

    ◆ OFFSET_CONFIGSERVER

    + +
    +
    + + + + +
    #define OFFSET_CONFIGSERVER   OFFSET_MASK+4
    +
    + +
    +
    + +

    ◆ OFFSET_DNS

    + +
    +
    + + + + +
    #define OFFSET_DNS   OFFSET_IP+4
    +
    + +
    +
    + +

    ◆ OFFSET_GW

    + +
    +
    + + + + +
    #define OFFSET_GW   OFFSET_DNS+4
    +
    + +
    +
    + +

    ◆ OFFSET_IP

    + +
    +
    + + + + +
    #define OFFSET_IP   OFFSET_MAC+6
    +
    + +
    +
    + +

    ◆ OFFSET_MAC

    + +
    +
    + + + + +
    #define OFFSET_MAC   0
    +
    + +
    +
    + +

    ◆ OFFSET_MASK

    + +
    +
    + + + + +
    #define OFFSET_MASK   OFFSET_GW+4
    +
    + +
    +
    + +

    ◆ OFFSET_MQTT_PWD

    + +
    +
    + + + + +
    #define OFFSET_MQTT_PWD   OFFSET_CONFIGSERVER+MAXFLASHSTR
    +
    + +
    +
    + +

    ◆ OFFSET_SIGNATURE

    + +
    +
    + + + + +
    #define OFFSET_SIGNATURE   OFFSET_MQTT_PWD+PWDFLASHSTR
    +
    + +
    +
    + +

    ◆ ORDER

    + +
    +
    + + + + +
    #define ORDER   BRG
    +
    + +
    +
    + +

    ◆ OUTTOPIC

    + +
    +
    + + + + +
    #define OUTTOPIC   "s_out"
    +
    + +
    +
    + +

    ◆ OW_UPDATE_INTERVAL

    + +
    +
    + + + + +
    #define OW_UPDATE_INTERVAL   5000
    +
    + +
    +
    + +

    ◆ PWDFLASHSTR

    + +
    +
    + + + + +
    #define PWDFLASHSTR   16
    +
    + +
    +
    + +

    ◆ SERIAL_BAUD

    + +
    +
    + + + + +
    #define SERIAL_BAUD   115200
    +
    + +
    +
    + +

    ◆ SYSLOG_LOCAL_SOCKET

    + +
    +
    + + + + +
    #define SYSLOG_LOCAL_SOCKET   514
    +
    + +
    +
    + +

    ◆ T_ATTEMPTS

    + +
    +
    + + + + +
    #define T_ATTEMPTS   200
    +
    + +
    +
    + +

    ◆ THERMO_GIST_CELSIUS

    + +
    +
    + + + + +
    #define THERMO_GIST_CELSIUS   1.
    +
    + +
    +
    + +

    ◆ THERMO_OVERHEAT_CELSIUS

    + +
    +
    + + + + +
    #define THERMO_OVERHEAT_CELSIUS   38.
    +
    + +
    +
    + +

    ◆ THERMOSTAT_CHECK_PERIOD

    + +
    +
    + + + + +
    #define THERMOSTAT_CHECK_PERIOD   30000
    +
    + +
    +
    + +

    ◆ TXEnablePin

    + +
    +
    + + + + +
    #define TXEnablePin   13
    +
    + +
    +
    + +

    ◆ UPTIME_POLL_DELAY_DEFAULT

    + +
    +
    + + + + +
    #define UPTIME_POLL_DELAY_DEFAULT   30000
    +
    + +
    +
    + +

    ◆ W5100_ETHERNET_SHIELD

    + +
    +
    + + + + +
    #define W5100_ETHERNET_SHIELD
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/options_8h_source.html b/docs/html/options_8h_source.html new file mode 100644 index 0000000..9119e2d --- /dev/null +++ b/docs/html/options_8h_source.html @@ -0,0 +1,349 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/options.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    options.h
    +
    +
    +Go to the documentation of this file.
    1 // Configuration of drivers enabled
    +
    2 #define SYSLOG_LOCAL_SOCKET 514
    +
    3 
    +
    4 #ifndef FASTLED
    +
    5 #define ADAFRUIT_LED
    +
    6 #endif
    +
    7 // ADAFRUIT library allow to dynamically configure SPI LED Strip Parameters
    +
    8 
    +
    9 // If not defined ADAFRUIT_LED - FastLED library will be used instead
    +
    10 // And strip type, pin, order must defined on compilation time
    +
    11 #ifndef CONTROLLER
    +
    12 #define CONTROLLER TM1809
    +
    13 #endif
    +
    14 
    +
    15 #ifndef DATA_PIN
    +
    16 #define DATA_PIN 4
    +
    17 #endif
    +
    18 
    +
    19 #ifndef ORDER
    +
    20 #define ORDER BRG
    +
    21 #endif
    +
    22 
    +
    23 #ifndef MODBUS_TX_PIN
    +
    24 #define TXEnablePin 13
    +
    25 #else
    +
    26 #define TXEnablePin MODBUS_TX_PIN
    +
    27 #endif
    +
    28 
    +
    29 #define ESP_EEPROM_SIZE 2048
    +
    30 
    +
    31 #ifndef AVR_DMXOUT_PIN
    +
    32 #define AVR_DMXOUT_PIN 18
    +
    33 #endif
    +
    34 
    +
    35 #define T_ATTEMPTS 200
    +
    36 #define IET_TEMP 0
    +
    37 #define IET_ATTEMPTS 1
    +
    38 
    +
    39 #define THERMO_GIST_CELSIUS 1.
    +
    40 #define THERMO_OVERHEAT_CELSIUS 38.
    +
    41 #define FM_OVERHEAT_CELSIUS 40.
    +
    42 
    +
    43 #define MIN_VOLUME 25
    +
    44 #define INIT_VOLUME 40
    +
    45 
    +
    46 #define MAXFLASHSTR 32
    +
    47 #define PWDFLASHSTR 16
    +
    48 #define EEPROM_SIGNATURE "LHCF"
    +
    49 #define EEPROM_SIGNATURE_LENGTH 4
    +
    50 
    +
    51 #define OFFSET_MAC 0
    +
    52 #define OFFSET_IP OFFSET_MAC+6
    +
    53 #define OFFSET_DNS OFFSET_IP+4
    +
    54 #define OFFSET_GW OFFSET_DNS+4
    +
    55 #define OFFSET_MASK OFFSET_GW+4
    +
    56 #define OFFSET_CONFIGSERVER OFFSET_MASK+4
    +
    57 #define OFFSET_MQTT_PWD OFFSET_CONFIGSERVER+MAXFLASHSTR
    +
    58 #define OFFSET_SIGNATURE OFFSET_MQTT_PWD+PWDFLASHSTR
    +
    59 #define EEPROM_offset_NotAlligned OFFSET_SIGNATURE+EEPROM_SIGNATURE_LENGTH
    +
    60 #define EEPROM_offsetJSON EEPROM_offset_NotAlligned + (4 -(EEPROM_offset_NotAlligned & 3))
    +
    61 #define EEPROM_FIX_PART_LEN EEPROM_offsetJSON-OFFSET_MAC
    +
    62 
    +
    63 
    +
    64 #ifndef INTERVAL_CHECK_INPUT
    +
    65 #define INTERVAL_CHECK_INPUT 15
    +
    66 #endif
    +
    67 
    +
    68 #ifndef INTERVAL_CHECK_SENSOR
    +
    69 #define INTERVAL_CHECK_SENSOR 5000
    +
    70 #endif
    +
    71 
    +
    72 #define INTERVAL_CHECK_MODBUS 2000
    +
    73 #define INTERVAL_POLLING 100
    +
    74 #define THERMOSTAT_CHECK_PERIOD 30000
    +
    75 
    +
    76 #ifndef OW_UPDATE_INTERVAL
    +
    77 #define OW_UPDATE_INTERVAL 5000
    +
    78 #endif
    +
    79 
    +
    80 #ifndef MODBUS_SERIAL_BAUD
    +
    81 #define MODBUS_SERIAL_BAUD 9600
    +
    82 #endif
    +
    83 
    +
    84 #ifndef MODBUS_DIMMER_PARAM
    +
    85 #define MODBUS_DIMMER_PARAM SERIAL_8N1
    +
    86 #endif
    +
    87 
    +
    88 #define dimPar MODBUS_DIMMER_PARAM
    +
    89 #define fmPar SERIAL_8N1
    +
    90 
    +
    91 #ifndef SERIAL_BAUD
    +
    92 #define SERIAL_BAUD 115200
    +
    93 #endif
    +
    94 
    +
    95 #ifndef CUSTOM_FIRMWARE_MAC
    +
    96 #define DEFAULT_FIRMWARE_MAC {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFF}
    +
    97 #endif
    +
    98 
    +
    99 #ifndef MY_CONFIG_SERVER
    +
    100 #define CONFIG_SERVER "lazyhome.ru"
    +
    101 #else
    +
    102 #define CONFIG_SERVER QUOTE(MY_CONFIG_SERVER)
    +
    103 #endif
    +
    104 
    +
    105 #ifndef HOMETOPIC
    +
    106 #define HOMETOPIC "myhome"
    +
    107 #endif
    +
    108 
    +
    109 //Default output topic
    +
    110 #ifndef OUTTOPIC
    +
    111 #define OUTTOPIC "s_out"
    +
    112 #endif
    +
    113 
    +
    114 //Topic to receive CLI commands
    +
    115 #ifndef CMDTOPIC
    +
    116 #define CMDTOPIC "$command"
    +
    117 #endif
    +
    118 
    +
    119 //Default broadcast topic
    +
    120 #ifndef INTOPIC
    +
    121 #define INTOPIC "in"
    +
    122 #endif
    +
    123 
    +
    124 #define MQTT_SUBJECT_LENGTH 20
    +
    125 #define MQTT_TOPIC_LENGTH 64
    +
    126 
    +
    127 #ifndef DMX_DISABLE
    +
    128 #define _dmxin
    +
    129 #define _dmxout
    +
    130 #endif
    +
    131 
    +
    132 #ifndef OWIRE_DISABLE
    +
    133 #define _owire
    +
    134 #endif
    +
    135 
    +
    136 #if !(defined (MODBUS_DISABLE) && defined (MBUS_DISABLE))
    +
    137 #define _modbus
    +
    138 #endif
    +
    139 
    +
    140 #ifdef ARTNET_ENABLE
    +
    141 #define _artnet
    +
    142 #endif
    +
    143 
    +
    144 #ifndef LAN_INIT_DELAY
    +
    145 #define LAN_INIT_DELAY 500
    +
    146 #endif
    +
    147 
    +
    148 #define DEFAULT_INC_STEP 5
    +
    149 
    +
    150 #if defined(ARDUINO_ARCH_AVR)
    +
    151 //All options available
    +
    152 #ifdef CONTROLLINO
    +
    153 #define modbusSerial Serial3
    +
    154 #define AC_Serial Serial2
    +
    155 #else
    +
    156 #define modbusSerial Serial2
    +
    157 #define AC_Serial Serial3
    +
    158 #endif
    +
    159 #define dmxin DMXSerial
    +
    160 #define dmxout DmxSimple
    +
    161 #endif
    +
    162 
    +
    163 #if defined(__SAM3X8E__)
    +
    164 #define modbusSerial Serial2
    +
    165 #define AC_Serial Serial3
    +
    166 #define dmxout DmxDue1
    +
    167 #define dmxin DmxDue1
    +
    168 #endif
    +
    169 
    +
    170 #if defined(NRF5)
    +
    171 //#define modbusSerial Serial1
    +
    172 #undef _dmxin
    +
    173 #undef _dmxout
    +
    174 #undef _modbus
    +
    175 #endif
    +
    176 
    +
    177 #if defined(ARDUINO_ARCH_ESP8266)
    +
    178 #undef _dmxin
    +
    179 //#undef _modbus
    +
    180 
    +
    181 #ifndef DMX_DISABLE
    +
    182 #define _espdmx
    +
    183 #endif
    +
    184 
    +
    185 #define modbusSerial Serial1
    +
    186 #define AC_Serial Serial1
    +
    187 #endif
    +
    188 
    +
    189 #if defined(ARDUINO_ARCH_ESP32)
    +
    190 #undef _dmxin
    +
    191 //#undef _modbus
    +
    192 
    +
    193 #ifndef DMX_DISABLE
    +
    194 #define _espdmx
    +
    195 #endif
    +
    196 //#undef _dmxout
    +
    197 //#undef modbusSerial
    +
    198 #define modbusSerial Serial2
    +
    199 #define AC_Serial Serial2
    +
    200 #endif
    +
    201 
    +
    202 #ifndef _dmxout
    +
    203 #undef _artnet
    +
    204 #endif
    +
    205 
    +
    206 #ifdef WIFI_MANAGER_DISABLE
    +
    207 #ifndef ESP_WIFI_AP
    +
    208 #define ESP_WIFI_AP mywifiap
    +
    209 #endif
    +
    210 
    +
    211 #ifndef ESP_WIFI_PWD
    +
    212 #define ESP_WIFI_PWD mywifipass
    +
    213 #endif
    +
    214 #endif
    +
    215 
    +
    216 #define DHT_POLL_DELAY_DEFAULT 15000
    +
    217 #define UPTIME_POLL_DELAY_DEFAULT 30000
    +
    218 
    +
    219 #ifdef ARDUINO_ARCH_STM32F1
    +
    220 #define strncpy_P strncpy
    +
    221 #endif
    +
    222 
    +
    223 #ifndef DMX_SMOOTH_DELAY
    +
    224 #define DMX_SMOOTH_DELAY 10
    +
    225 #endif
    +
    226 
    +
    227 //#ifdef M5STACK
    +
    228 //#define debugSerial M5.Lcd
    +
    229 //#endif
    +
    230 
    +
    231 #ifndef debugSerialPort
    +
    232 #define debugSerialPort Serial
    +
    233 #endif
    +
    234 
    +
    235 
    +
    236 #ifndef Wiz5500
    +
    237 #define W5100_ETHERNET_SHIELD
    +
    238 #else
    +
    239 #define W5500_ETHERNET_SHIELD
    +
    240 #endif
    +
    241 
    +
    242 
    +
    243 #if defined(ARDUINO_ARCH_AVR)
    +
    244 #define PINS_COUNT NUM_DIGITAL_PINS
    +
    245 #define isAnalogPin(p) ((p >= 54) && (p<=69))
    +
    246 #endif
    +
    247 
    +
    248 #if defined(__SAM3X8E__)
    +
    249 #define isAnalogPin(p) (g_APinDescription[p].ulPinAttribute & PIN_ATTR_ANALOG) == PIN_ATTR_ANALOG
    +
    250 #endif
    +
    251 
    +
    252 #if defined(ARDUINO_ARCH_STM32)
    +
    253 #define PINS_COUNT NUM_DIGITAL_PINS
    +
    254 #define isAnalogPin(p) ((p >= 44) && (p<=57))
    +
    255 #endif
    +
    256 
    +
    257 #if defined(ESP8266)
    +
    258 #define PINS_COUNT NUM_DIGITAL_PINS
    +
    259 #define isAnalogPin(p) ( p ==17 )
    +
    260 #endif
    +
    261 
    +
    262 #if defined(ARDUINO_ARCH_ESP32)
    +
    263 #define PINS_COUNT NUM_DIGITAL_PINS
    +
    264 #define isAnalogPin(p) ((p ==4) || (p>=12)&& (p<=15) || (p>=25)&& (p<=27)||(p>=32)&& (p<=33) || (p>=37)&& (p<=38))
    +
    265 #endif
    +
    266 
    +
    267 #if defined(NRF5)
    +
    268 #define PINS_COUNT NUM_DIGITAL_PINS
    +
    269 #define isAnalogPin(p) ((p >= 14) && (p<=21))
    +
    270 #endif
    +
    + + + + diff --git a/docs/html/out__ac_8cpp.html b/docs/html/out__ac_8cpp.html new file mode 100644 index 0000000..401c3d5 --- /dev/null +++ b/docs/html/out__ac_8cpp.html @@ -0,0 +1,351 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_ac.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_ac.cpp File Reference
    +
    +
    +
    #include "modules/out_ac.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include "textconst.h"
    +#include "main.h"
    +
    + + + + + +

    +Macros

    #define AC_Serial   Serial3
     
    #define INTERVAL_AC_POLLING   5000L
     
    + + + + + + + +

    +Functions

    byte getCRC (byte req[], size_t size)
     
    void SendData (byte req[], size_t size)
     
    unsigned char toHex (char ch)
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    long prevPolling = 0
     
    byte inCheck = 0
     
    byte qstn [] = {255,255,10,0,0,0,0,0,1,1,77,1,90}
     
    byte data [37] = {}
     
    byte on [] = {255,255,10,0,0,0,0,0,1,1,77,2,91}
     
    byte off [] = {255,255,10,0,0,0,0,0,1,1,77,3,92}
     
    byte lock [] = {255,255,10,0,0,0,0,0,1,3,0,0,14}
     
    const char LOCK_P[] PROGMEM = "lock"
     
    +

    Macro Definition Documentation

    + +

    ◆ AC_Serial

    + +
    +
    + + + + +
    #define AC_Serial   Serial3
    +
    + +
    +
    + +

    ◆ INTERVAL_AC_POLLING

    + +
    +
    + + + + +
    #define INTERVAL_AC_POLLING   5000L
    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ getCRC()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    byte getCRC (byte req[],
    size_t size 
    )
    +
    + +
    +
    + +

    ◆ SendData()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void SendData (byte req[],
    size_t size 
    )
    +
    + +
    +
    + +

    ◆ toHex()

    + +
    +
    + + + + + +
    + + + + + + + + +
    unsigned char toHex (char ch)
    +
    +inline
    +
    + +
    +
    +

    Variable Documentation

    + +

    ◆ data

    + +
    +
    + + + + +
    byte data[37] = {}
    +
    + +
    +
    + +

    ◆ inCheck

    + +
    +
    + + + + +
    byte inCheck = 0
    +
    + +
    +
    + +

    ◆ lock

    + +
    +
    + + + + +
    byte lock[] = {255,255,10,0,0,0,0,0,1,3,0,0,14}
    +
    + +
    +
    + +

    ◆ off

    + +
    +
    + + + + +
    byte off[] = {255,255,10,0,0,0,0,0,1,1,77,3,92}
    +
    + +
    +
    + +

    ◆ on

    + +
    +
    + + + + +
    byte on[] = {255,255,10,0,0,0,0,0,1,1,77,2,91}
    +
    + +
    +
    + +

    ◆ prevPolling

    + +
    +
    + + + + +
    long prevPolling = 0
    +
    + +
    +
    + +

    ◆ PROGMEM

    + +
    +
    + + + + +
    const char RAW_P [] PROGMEM = "lock"
    +
    + +
    +
    + +

    ◆ qstn

    + +
    +
    + + + + +
    byte qstn[] = {255,255,10,0,0,0,0,0,1,1,77,1,90}
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/out__ac_8h.html b/docs/html/out__ac_8h.html new file mode 100644 index 0000000..d3f0def --- /dev/null +++ b/docs/html/out__ac_8h.html @@ -0,0 +1,344 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_ac.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_ac.h File Reference
    +
    +
    +
    #include <abstractout.h>
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  out_AC
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define LEN_B   37
     
    #define B_CUR_TMP   13
     
    #define B_CMD   17
     
    #define B_MODE   23
     
    #define B_FAN_SPD   25
     
    #define B_SWING   27
     
    #define B_LOCK_REM   28
     
    #define B_POWER   29
     
    #define B_FRESH   31
     
    #define B_SET_TMP   35
     
    #define S_LOCK   S_ADDITIONAL+1
     
    #define S_QUIET   S_ADDITIONAL+2
     
    #define S_SWING   S_ADDITIONAL+3
     
    #define S_RAW   S_ADDITIONAL+4
     
    + + + +

    +Functions

    void modbusIdle (void)
     
    +

    Macro Definition Documentation

    + +

    ◆ B_CMD

    + +
    +
    + + + + +
    #define B_CMD   17
    +
    + +
    +
    + +

    ◆ B_CUR_TMP

    + +
    +
    + + + + +
    #define B_CUR_TMP   13
    +
    + +
    +
    + +

    ◆ B_FAN_SPD

    + +
    +
    + + + + +
    #define B_FAN_SPD   25
    +
    + +
    +
    + +

    ◆ B_FRESH

    + +
    +
    + + + + +
    #define B_FRESH   31
    +
    + +
    +
    + +

    ◆ B_LOCK_REM

    + +
    +
    + + + + +
    #define B_LOCK_REM   28
    +
    + +
    +
    + +

    ◆ B_MODE

    + +
    +
    + + + + +
    #define B_MODE   23
    +
    + +
    +
    + +

    ◆ B_POWER

    + +
    +
    + + + + +
    #define B_POWER   29
    +
    + +
    +
    + +

    ◆ B_SET_TMP

    + +
    +
    + + + + +
    #define B_SET_TMP   35
    +
    + +
    +
    + +

    ◆ B_SWING

    + +
    +
    + + + + +
    #define B_SWING   27
    +
    + +
    +
    + +

    ◆ LEN_B

    + +
    +
    + + + + +
    #define LEN_B   37
    +
    + +
    +
    + +

    ◆ S_LOCK

    + +
    +
    + + + + +
    #define S_LOCK   S_ADDITIONAL+1
    +
    + +
    +
    + +

    ◆ S_QUIET

    + +
    +
    + + + + +
    #define S_QUIET   S_ADDITIONAL+2
    +
    + +
    +
    + +

    ◆ S_RAW

    + +
    +
    + + + + +
    #define S_RAW   S_ADDITIONAL+4
    +
    + +
    +
    + +

    ◆ S_SWING

    + +
    +
    + + + + +
    #define S_SWING   S_ADDITIONAL+3
    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ modbusIdle()

    + +
    +
    + + + + + + + + +
    void modbusIdle (void )
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/out__ac_8h_source.html b/docs/html/out__ac_8h_source.html new file mode 100644 index 0000000..38935ea --- /dev/null +++ b/docs/html/out__ac_8h_source.html @@ -0,0 +1,132 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_ac.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_ac.h
    +
    +
    +Go to the documentation of this file.
    1 
    +
    2 #pragma once
    +
    3 #ifndef AC_DISABLE
    +
    4 #include <abstractout.h>
    +
    5 
    +
    6 #define LEN_B 37
    +
    7 #define B_CUR_TMP 13 //Текущая температура
    +
    8 #define B_CMD 17 // 00-команда 7F-ответ ???
    +
    9 #define B_MODE 23 //04 - DRY, 01 - cool, 02 - heat, 00 - smart 03 - вентиляция
    +
    10 #define B_FAN_SPD 25 //Скорость 02 - min, 01 - mid, 00 - max, 03 - auto
    +
    11 #define B_SWING 27 //01 - верхний и нижний предел вкл. 00 - выкл. 02 - левый/правый вкл. 03 - оба вкл
    +
    12 #define B_LOCK_REM 28 //80 блокировка вкл. 00 - выкл
    +
    13 #define B_POWER 29 //on/off 01 - on, 00 - off (10, 11)-Компрессор??? 09 - QUIET
    +
    14 #define B_FRESH 31 //fresh 00 - off, 01 - on
    +
    15 #define B_SET_TMP 35 //Установленная температура
    +
    16 
    +
    17 #define S_LOCK S_ADDITIONAL+1
    +
    18 #define S_QUIET S_ADDITIONAL+2
    +
    19 #define S_SWING S_ADDITIONAL+3
    +
    20 #define S_RAW S_ADDITIONAL+4
    +
    21 
    +
    22 extern void modbusIdle(void) ;
    +
    23 class out_AC : public abstractOut {
    +
    24 public:
    +
    25 
    +
    26  out_AC(Item * _item):abstractOut(_item){};
    +
    27  int Setup() override;
    +
    28  int Poll(short cause) override;
    +
    29  int Stop() override;
    +
    30  int Status() override;
    +
    31  int isActive() override;
    +
    32  //int Ctrl(short cmd, short n=0, int * Parameters=NULL, int suffixCode=0, char* subItem=NULL) override;
    +
    33  int Ctrl(itemCmd cmd, char* subItem=NULL, bool toExecute=true) override;
    +
    34 
    +
    35 protected:
    +
    36  void InsertData(byte data[], size_t size);
    +
    37 };
    +
    38 #endif
    +
    +
    int isActive() override
    Definition: out_ac.cpp:235
    +
    Definition: itemCmd.h:174
    +
    void modbusIdle(void)
    Definition: main.cpp:1938
    +
    void InsertData(byte data[], size_t size)
    Definition: out_ac.cpp:52
    +
    Definition: out_ac.h:23
    +
    int Poll(short cause) override
    Definition: out_ac.cpp:240
    +
    int Setup() override
    Definition: out_ac.cpp:214
    +
    Definition: abstractout.h:8
    +
    out_AC(Item *_item)
    Definition: out_ac.h:26
    +
    int Status() override
    Definition: out_ac.cpp:230
    +
    int Stop() override
    Definition: out_ac.cpp:222
    +
    Definition: item.h:92
    +
    int Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
    Definition: out_ac.cpp:266
    + +
    byte data[37]
    Definition: out_ac.cpp:31
    + + + + diff --git a/docs/html/out__dmx_8cpp.html b/docs/html/out__dmx_8cpp.html new file mode 100644 index 0000000..1d826db --- /dev/null +++ b/docs/html/out__dmx_8cpp.html @@ -0,0 +1,86 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_dmx.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_dmx.cpp File Reference
    +
    +
    +
    #include "modules/out_dmx.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include "main.h"
    +#include "dmx.h"
    +
    + + + + diff --git a/docs/html/out__dmx_8h.html b/docs/html/out__dmx_8h.html new file mode 100644 index 0000000..0e20456 --- /dev/null +++ b/docs/html/out__dmx_8h.html @@ -0,0 +1,93 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_dmx.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_dmx.h File Reference
    +
    +
    +
    #include "options.h"
    +#include <abstractout.h>
    +#include <item.h>
    +#include "colorchannel.h"
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  out_dmx
     
    +
    + + + + diff --git a/docs/html/out__dmx_8h_source.html b/docs/html/out__dmx_8h_source.html new file mode 100644 index 0000000..b4178fe --- /dev/null +++ b/docs/html/out__dmx_8h_source.html @@ -0,0 +1,121 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_dmx.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_dmx.h
    +
    +
    +Go to the documentation of this file.
    1 
    +
    2 #pragma once
    +
    3 #include "options.h"
    +
    4 #ifndef DMX_DISABLE
    +
    5 
    +
    6 #include <abstractout.h>
    +
    7 #include <item.h>
    +
    8 #include "colorchannel.h"
    +
    9 
    +
    10 class out_dmx : public colorChannel {
    +
    11 public:
    +
    12 
    +
    13  out_dmx(Item * _item):colorChannel(_item){};
    +
    14  int Setup() override;
    +
    15  int Poll(short cause) override;
    +
    16  int Stop() override;
    +
    17  int Status() override;
    +
    18  int isActive() override;
    +
    19  int getChanType() override;
    +
    20 // int Ctrl(itemCmd cmd, char* subItem=NULL) override;
    +
    21 // int PixelCtrl(itemCmd cmd) override;
    +
    22  virtual int PixelCtrl(itemCmd cmd, char* subItem=NULL, bool show=true ) override;
    +
    23 
    +
    24 protected:
    +
    25 };
    +
    26 #endif
    +
    +
    Definition: itemCmd.h:174
    +
    Definition: out_dmx.h:10
    + +
    int Poll(short cause) override
    Definition: out_dmx.cpp:41
    +
    virtual int PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) override
    Definition: out_dmx.cpp:63
    +
    int Setup() override
    Definition: out_dmx.cpp:14
    +
    int getChanType() override
    Definition: out_dmx.cpp:46
    +
    int isActive() override
    Definition: out_dmx.cpp:33
    +
    Definition: colorchannel.h:9
    +
    int Status() override
    Definition: out_dmx.cpp:28
    + +
    Definition: item.h:92
    +
    out_dmx(Item *_item)
    Definition: out_dmx.h:13
    + +
    int Stop() override
    Definition: out_dmx.cpp:21
    + + + + + diff --git a/docs/html/out__modbus_8cpp.html b/docs/html/out__modbus_8cpp.html new file mode 100644 index 0000000..f499691 --- /dev/null +++ b/docs/html/out__modbus_8cpp.html @@ -0,0 +1,476 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_modbus.cpp File Reference
    +
    +
    +
    #include "modules/out_modbus.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "utils.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include <ModbusMaster.h>
    +#include "main.h"
    +#include <HardwareSerial.h>
    +
    + + + + + +

    +Classes

    struct  reg_t
     
    struct  serial_t
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define PAR_I16   1
     
    #define PAR_I32   2
     
    #define PAR_U16   3
     
    #define PAR_U32   4
     
    #define PAR_I8H   5
     
    #define PAR_I8L   6
     
    #define PAR_U8H   7
     
    #define PAR_U8L   8
     
    #define regSizeNum   sizeof(regSize_P)/sizeof(reg_t)
     
    #define serialModesNum   sizeof(serialModes_P)/sizeof(serial_t)
     
    + + + + + + + + + +

    +Functions

    void modbusIdle (void)
     
    uint16_t str2SerialParam (char *str)
     
    int str2regSize (char *str)
     
    bool readModbus (uint16_t reg, int regType, int count)
     
    + + + + + + + + + +

    +Variables

    aJsonObject * modbusObj
     
    ModbusMaster node
     
    short modbusBusy
     
    const reg_t regSize_P[] PROGMEM
     
    +

    Macro Definition Documentation

    + +

    ◆ PAR_I16

    + +
    +
    + + + + +
    #define PAR_I16   1
    +
    + +
    +
    + +

    ◆ PAR_I32

    + +
    +
    + + + + +
    #define PAR_I32   2
    +
    + +
    +
    + +

    ◆ PAR_I8H

    + +
    +
    + + + + +
    #define PAR_I8H   5
    +
    + +
    +
    + +

    ◆ PAR_I8L

    + +
    +
    + + + + +
    #define PAR_I8L   6
    +
    + +
    +
    + +

    ◆ PAR_U16

    + +
    +
    + + + + +
    #define PAR_U16   3
    +
    + +
    +
    + +

    ◆ PAR_U32

    + +
    +
    + + + + +
    #define PAR_U32   4
    +
    + +
    +
    + +

    ◆ PAR_U8H

    + +
    +
    + + + + +
    #define PAR_U8H   7
    +
    + +
    +
    + +

    ◆ PAR_U8L

    + +
    +
    + + + + +
    #define PAR_U8L   8
    +
    + +
    +
    + +

    ◆ regSizeNum

    + +
    +
    + + + + +
    #define regSizeNum   sizeof(regSize_P)/sizeof(reg_t)
    +
    + +
    +
    + +

    ◆ serialModesNum

    + +
    +
    + + + + +
    #define serialModesNum   sizeof(serialModes_P)/sizeof(serial_t)
    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ modbusIdle()

    + +
    +
    + + + + + + + + +
    void modbusIdle (void )
    +
    + +
    +
    + +

    ◆ readModbus()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    bool readModbus (uint16_t reg,
    int regType,
    int count 
    )
    +
    + +
    +
    + +

    ◆ str2regSize()

    + +
    +
    + + + + + + + + +
    int str2regSize (char * str)
    +
    + +
    +
    + +

    ◆ str2SerialParam()

    + +
    +
    + + + + + + + + +
    uint16_t str2SerialParam (char * str)
    +
    + +
    +
    +

    Variable Documentation

    + +

    ◆ modbusBusy

    + +
    +
    + + + + + +
    + + + + +
    short modbusBusy
    +
    +extern
    +
    + +
    +
    + +

    ◆ modbusObj

    + +
    +
    + + + + + +
    + + + + +
    aJsonObject* modbusObj
    +
    +extern
    +
    + +
    +
    + +

    ◆ node

    + +
    +
    + + + + + +
    + + + + +
    ModbusMaster node
    +
    +extern
    +
    + +
    +
    + +

    ◆ PROGMEM

    + +
    +
    + + + + +
    const serial_t serialModes_P [] PROGMEM
    +
    +Initial value:
    =
    +
    {
    +
    { "i16", (uint8_t) PAR_I16 },
    +
    { "i32", (uint8_t) PAR_I32 },
    +
    { "u16", (uint8_t) PAR_U16 },
    +
    { "u32", (uint8_t) PAR_U32 },
    +
    { "i8h", (uint8_t) PAR_I8H },
    +
    { "i8l", (uint8_t) PAR_I8L },
    +
    { "u8h", (uint8_t) PAR_U8H },
    +
    { "u8l", (uint8_t) PAR_U8L }
    +
    }
    +
    +
    +
    +
    +
    #define PAR_U32
    Definition: out_modbus.cpp:34
    +
    #define PAR_I16
    Definition: out_modbus.cpp:31
    +
    #define PAR_I32
    Definition: out_modbus.cpp:32
    +
    #define PAR_U16
    Definition: out_modbus.cpp:33
    +
    #define PAR_I8H
    Definition: out_modbus.cpp:35
    +
    #define PAR_I8L
    Definition: out_modbus.cpp:36
    +
    #define PAR_U8H
    Definition: out_modbus.cpp:37
    +
    #define PAR_U8L
    Definition: out_modbus.cpp:38
    + + + + diff --git a/docs/html/out__modbus_8h.html b/docs/html/out__modbus_8h.html new file mode 100644 index 0000000..9ece6b8 --- /dev/null +++ b/docs/html/out__modbus_8h.html @@ -0,0 +1,94 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_modbus.h File Reference
    +
    +
    +
    #include "options.h"
    +#include <abstractout.h>
    +#include <item.h>
    +
    +

    Go to the source code of this file.

    + + + + + + +

    +Classes

    class  mbPersistent
     
    class  out_Modbus
     
    +
    + + + + diff --git a/docs/html/out__modbus_8h_source.html b/docs/html/out__modbus_8h_source.html new file mode 100644 index 0000000..324178e --- /dev/null +++ b/docs/html/out__modbus_8h_source.html @@ -0,0 +1,150 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_modbus.h
    +
    +
    +Go to the documentation of this file.
    1 #pragma once
    +
    2 #include "options.h"
    +
    3 #ifndef MBUS_DISABLE
    +
    4 #include <abstractout.h>
    +
    5 #include <item.h>
    +
    6 
    +
    7 
    +
    8 class mbPersistent : public chPersistent {
    +
    9 
    +
    10 public:
    +
    11 // int addr
    +
    12  int8_t driverStatus;
    +
    13  int baud;
    +
    14  uint16_t serialParam;
    +
    15  uint16_t pollingInterval;
    +
    16  uint32_t timestamp;
    +
    17  aJsonObject * pollingRegisters;
    +
    18  aJsonObject * parameters;
    +
    19 
    +
    20 };
    +
    21 
    +
    22 
    +
    23 
    +
    24 class out_Modbus : public abstractOut {
    +
    25 public:
    +
    26 
    + +
    28  int Setup() override;
    +
    29  int Poll(short cause) override;
    +
    30  int Stop() override;
    +
    31  int Status() override;
    +
    32  int isActive() override;
    +
    33  int getChanType() override;
    +
    34  int Ctrl(itemCmd cmd, char* subItem=NULL, bool toExecute=true) override;
    +
    35  //int Ctrl(short cmd, short n=0, int * Parameters=NULL, int suffixCode=0, char* subItem=NULL) override;
    +
    36 
    +
    37 protected:
    + +
    39  bool getConfig();
    +
    40  int findRegister(int registerNum, int posInBuffer);
    +
    41 };
    +
    42 #endif
    +
    +
    bool getConfig()
    Definition: out_modbus.cpp:96
    +
    aJsonObject * pollingRegisters
    Definition: out_modbus.h:17
    +
    Definition: itemCmd.h:174
    +
    out_Modbus(Item *_item)
    Definition: out_modbus.h:27
    +
    Definition: abstractout.h:7
    +
    int Setup() override
    Definition: out_modbus.cpp:138
    + +
    Definition: abstractout.h:8
    +
    int getChanType() override
    Definition: out_modbus.cpp:334
    +
    int Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
    Definition: out_modbus.cpp:341
    +
    int8_t driverStatus
    Definition: out_modbus.h:12
    +
    int isActive() override
    Definition: out_modbus.cpp:179
    +
    int Stop() override
    Definition: out_modbus.cpp:162
    +
    chPersistent * getPersistent()
    Definition: item.cpp:386
    +
    int Poll(short cause) override
    Definition: out_modbus.cpp:267
    +
    aJsonObject * parameters
    Definition: out_modbus.h:18
    +
    int findRegister(int registerNum, int posInBuffer)
    Definition: out_modbus.cpp:210
    +
    Definition: item.h:92
    +
    Definition: out_modbus.h:8
    +
    int baud
    Definition: out_modbus.h:13
    +
    mbPersistent * store
    Definition: out_modbus.h:38
    +
    int Status() override
    Definition: out_modbus.cpp:172
    + +
    uint32_t timestamp
    Definition: out_modbus.h:16
    +
    Definition: out_modbus.h:24
    +
    uint16_t serialParam
    Definition: out_modbus.h:14
    +
    Item * item
    Definition: abstractout.h:16
    +
    uint16_t pollingInterval
    Definition: out_modbus.h:15
    + + + + + diff --git a/docs/html/out__motor_8cpp.html b/docs/html/out__motor_8cpp.html new file mode 100644 index 0000000..5a491f0 --- /dev/null +++ b/docs/html/out__motor_8cpp.html @@ -0,0 +1,85 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_motor.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_motor.cpp File Reference
    +
    +
    +
    #include "modules/out_motor.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include "main.h"
    +
    + + + + diff --git a/docs/html/out__motor_8h.html b/docs/html/out__motor_8h.html new file mode 100644 index 0000000..452b9dd --- /dev/null +++ b/docs/html/out__motor_8h.html @@ -0,0 +1,129 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_motor.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_motor.h File Reference
    +
    +
    +
    #include "options.h"
    +#include <abstractout.h>
    +#include <item.h>
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  out_Motor
     
    + + + + + +

    +Macros

    #define POS_ERR   2
     
    #define MOTOR_QUOTE   2
     
    +

    Macro Definition Documentation

    + +

    ◆ MOTOR_QUOTE

    + +
    +
    + + + + +
    #define MOTOR_QUOTE   2
    +
    + +
    +
    + +

    ◆ POS_ERR

    + +
    +
    + + + + +
    #define POS_ERR   2
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/out__motor_8h_source.html b/docs/html/out__motor_8h_source.html new file mode 100644 index 0000000..380aee0 --- /dev/null +++ b/docs/html/out__motor_8h_source.html @@ -0,0 +1,142 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_motor.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_motor.h
    +
    +
    +Go to the documentation of this file.
    1 #pragma once
    +
    2 #include "options.h"
    +
    3 #ifndef MOTOR_DISABLE
    +
    4 #include <abstractout.h>
    +
    5 #include <item.h>
    +
    6 
    +
    7 #ifndef POS_ERR
    +
    8 #define POS_ERR 2
    +
    9 #endif
    +
    10 
    +
    11 // The number of simultaniusly working motors
    +
    12 #ifndef MOTOR_QUOTE
    +
    13 #define MOTOR_QUOTE 2
    +
    14 #endif
    +
    15 
    +
    16 static int8_t motorQuote = MOTOR_QUOTE;
    +
    17 
    +
    18 class out_Motor : public abstractOut {
    +
    19 public:
    +
    20 
    +
    21  out_Motor(Item * _item):abstractOut(_item){getConfig();};
    +
    22  int Setup() override;
    +
    23  int Poll(short cause) override;
    +
    24  int Stop() override;
    +
    25  int Status() override;
    +
    26  int isActive() override;
    +
    27  int getChanType() override;
    +
    28  //int Ctrl(short cmd, short n=0, int * Parameters=NULL, int suffixCode=0, char* subItem=NULL) override;
    +
    29  int Ctrl(itemCmd cmd, char* subItem=NULL, bool toExecute=true) override;
    +
    30 
    +
    31  int8_t pinUp;
    +
    32  int8_t pinDown;
    +
    33  int8_t pinFeedback;
    +
    34  int16_t maxOnTime;
    +
    35  uint16_t feedbackOpen;
    +
    36  uint16_t feedbackClosed;
    +
    37 protected:
    +
    38  void getConfig();
    +
    39 };
    +
    40 #endif
    +
    +
    int8_t pinFeedback
    Definition: out_motor.h:33
    +
    Definition: itemCmd.h:174
    +
    int isActive() override
    Definition: out_motor.cpp:67
    +
    uint16_t feedbackClosed
    Definition: out_motor.h:36
    + +
    Definition: abstractout.h:8
    +
    void getConfig()
    Definition: out_motor.cpp:13
    +
    uint16_t feedbackOpen
    Definition: out_motor.h:35
    +
    int Status() override
    Definition: out_motor.cpp:62
    +
    int Setup() override
    Definition: out_motor.cpp:35
    +
    Definition: out_motor.h:18
    +
    int8_t pinDown
    Definition: out_motor.h:32
    +
    Definition: item.h:92
    +
    int8_t pinUp
    Definition: out_motor.h:31
    + +
    int16_t maxOnTime
    Definition: out_motor.h:34
    +
    int Stop() override
    Definition: out_motor.cpp:52
    +
    #define MOTOR_QUOTE
    Definition: out_motor.h:13
    +
    int Ctrl(itemCmd cmd, char *subItem=NULL, bool toExecute=true) override
    Definition: out_motor.cpp:214
    +
    int getChanType() override
    Definition: out_motor.cpp:207
    +
    out_Motor(Item *_item)
    Definition: out_motor.h:21
    +
    int Poll(short cause) override
    Definition: out_motor.cpp:72
    + + + + + diff --git a/docs/html/out__pwm_8cpp.html b/docs/html/out__pwm_8cpp.html new file mode 100644 index 0000000..90594f2 --- /dev/null +++ b/docs/html/out__pwm_8cpp.html @@ -0,0 +1,86 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_pwm.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_pwm.cpp File Reference
    +
    +
    +
    #include "modules/out_pwm.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include "main.h"
    +#include "dmx.h"
    +
    + + + + diff --git a/docs/html/out__pwm_8h.html b/docs/html/out__pwm_8h.html new file mode 100644 index 0000000..6647f11 --- /dev/null +++ b/docs/html/out__pwm_8h.html @@ -0,0 +1,93 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_pwm.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_pwm.h File Reference
    +
    +
    +
    #include "options.h"
    +#include <abstractout.h>
    +#include <item.h>
    +#include "colorchannel.h"
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  out_pwm
     
    +
    + + + + diff --git a/docs/html/out__pwm_8h_source.html b/docs/html/out__pwm_8h_source.html new file mode 100644 index 0000000..2cd4fbb --- /dev/null +++ b/docs/html/out__pwm_8h_source.html @@ -0,0 +1,122 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_pwm.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_pwm.h
    +
    +
    +Go to the documentation of this file.
    1 
    +
    2 #pragma once
    +
    3 #include "options.h"
    +
    4 #ifndef DMX_DISABLE
    +
    5 
    +
    6 #include <abstractout.h>
    +
    7 #include <item.h>
    +
    8 #include "colorchannel.h"
    +
    9 
    +
    10 class out_pwm : public colorChannel {
    +
    11 public:
    +
    12 
    +
    13  out_pwm(Item * _item):colorChannel(_item){};
    +
    14  int Setup() override;
    +
    15  int Poll(short cause) override;
    +
    16  int Stop() override;
    +
    17  int Status() override;
    +
    18  int isActive() override;
    +
    19  int getChanType() override;
    +
    20  //int Ctrl(itemCmd cmd, char* subItem=NULL) override;
    +
    21  int PixelCtrl(itemCmd cmd, char* subItem=NULL, bool show=true ) override;
    +
    22 
    +
    23 protected:
    +
    24  short numChannels;
    +
    25 };
    +
    26 #endif
    +
    +
    Definition: out_pwm.h:10
    +
    int Stop() override
    Definition: out_pwm.cpp:60
    +
    Definition: itemCmd.h:174
    +
    int Poll(short cause) override
    Definition: out_pwm.cpp:93
    +
    int getChanType() override
    Definition: out_pwm.cpp:98
    +
    int Setup() override
    Definition: out_pwm.cpp:19
    +
    int Status() override
    Definition: out_pwm.cpp:80
    +
    int PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) override
    Definition: out_pwm.cpp:115
    +
    out_pwm(Item *_item)
    Definition: out_pwm.h:13
    + +
    int isActive() override
    Definition: out_pwm.cpp:85
    +
    Definition: colorchannel.h:9
    + +
    Definition: item.h:92
    +
    short numChannels
    Definition: out_pwm.h:24
    + + + + + + diff --git a/docs/html/out__spiled_8cpp.html b/docs/html/out__spiled_8cpp.html new file mode 100644 index 0000000..c890fbb --- /dev/null +++ b/docs/html/out__spiled_8cpp.html @@ -0,0 +1,109 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_spiled.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_spiled.cpp File Reference
    +
    +
    +
    #include "modules/out_spiled.h"
    +#include "Arduino.h"
    +#include "options.h"
    +#include "Streaming.h"
    +#include "item.h"
    +#include "main.h"
    +#include "FastLED.h"
    +
    + + + +

    +Macros

    #define NUM_LEDS   43
     
    +

    Macro Definition Documentation

    + +

    ◆ NUM_LEDS

    + +
    +
    + + + + +
    #define NUM_LEDS   43
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/out__spiled_8h.html b/docs/html/out__spiled_8h.html new file mode 100644 index 0000000..cc63306 --- /dev/null +++ b/docs/html/out__spiled_8h.html @@ -0,0 +1,94 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_spiled.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    out_spiled.h File Reference
    +
    +
    +
    #include "options.h"
    +#include "colorchannel.h"
    +#include <abstractout.h>
    +#include <item.h>
    +#include "FastLED.h"
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  out_SPILed
     
    +
    + + + + diff --git a/docs/html/out__spiled_8h_source.html b/docs/html/out__spiled_8h_source.html new file mode 100644 index 0000000..e5de83d --- /dev/null +++ b/docs/html/out__spiled_8h_source.html @@ -0,0 +1,134 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_spiled.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    out_spiled.h
    +
    +
    +Go to the documentation of this file.
    1 
    +
    2 #pragma once
    +
    3 #include "options.h"
    +
    4 #include "colorchannel.h"
    +
    5 #ifndef SPILED_DISABLE
    +
    6 #include <abstractout.h>
    +
    7 #include <item.h>
    +
    8 
    +
    9 #ifdef ADAFRUIT_LED
    +
    10 #include <Adafruit_NeoPixel.h>
    +
    11 #else
    +
    12 #include "FastLED.h"
    +
    13 #endif
    +
    14 
    +
    15 class out_SPILed : public colorChannel {
    +
    16 public:
    +
    17 
    +
    18  out_SPILed(Item * _item):colorChannel(_item){getConfig();};
    +
    19  int Setup() override;
    +
    20  int Poll(short cause) override;
    +
    21  int Stop() override;
    +
    22  int Status() override;
    +
    23  int isActive() override;
    +
    24  int getChanType() override;
    +
    25  //int Ctrl(short cmd, short n=0, int * Parameters=NULL, int suffixCode=0, char* subItem=NULL) override;
    +
    26  //int Ctrl(itemCmd cmd, char* subItem=NULL) override;
    +
    27  int PixelCtrl(itemCmd cmd, char* subItem=NULL, bool show=true ) override;
    +
    28  //int PixelCtrl(itemCmd cmd, int from =0 , int to = 1024, bool show = 1) override;
    +
    29  int numLeds;
    +
    30  int8_t pin;
    +
    31  int ledsType;
    +
    32 protected:
    +
    33  void getConfig();
    +
    34 };
    +
    35 #endif
    +
    +
    int numLeds
    Definition: out_spiled.h:29
    +
    Definition: itemCmd.h:174
    +
    int isActive() override
    Definition: out_spiled.cpp:90
    +
    int getChanType() override
    Definition: out_spiled.cpp:103
    +
    int Setup() override
    Definition: out_spiled.cpp:44
    +
    int Status() override
    Definition: out_spiled.cpp:85
    + +
    Definition: out_spiled.h:15
    +
    int Stop() override
    Definition: out_spiled.cpp:69
    +
    out_SPILed(Item *_item)
    Definition: out_spiled.h:18
    +
    Definition: colorchannel.h:9
    + +
    Definition: item.h:92
    + +
    int PixelCtrl(itemCmd cmd, char *subItem=NULL, bool show=true) override
    Definition: out_spiled.cpp:112
    +
    void getConfig()
    Definition: out_spiled.cpp:29
    +
    int ledsType
    Definition: out_spiled.h:31
    +
    int8_t pin
    Definition: out_spiled.h:30
    +
    int Poll(short cause) override
    Definition: out_spiled.cpp:98
    + + + + + diff --git a/docs/html/ow_term_8cpp.html b/docs/html/ow_term_8cpp.html new file mode 100644 index 0000000..a78c68f --- /dev/null +++ b/docs/html/ow_term_8cpp.html @@ -0,0 +1,362 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    owTerm.cpp File Reference
    +
    +
    +
    #include "owTerm.h"
    +#include <Arduino.h>
    +#include "utils.h"
    +#include "options.h"
    +#include "main.h"
    +
    + + + + + + + + + + + + + + + +

    +Functions

    int owUpdate ()
     
    int owSetup (owChangedType owCh)
     
    int sensors_loop (void)
     
    void owLoop ()
     
    int owFind (DeviceAddress addr)
     
    void owAdd (DeviceAddress addr)
     
    void setupOwIdle (void(*ptr)())
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    OneWire * oneWire = NULL
     
    DeviceAddress * term = NULL
     
    uint16_t * wstat = NULL
     
    DallasTemperature * sensors = NULL
     
    short si = 0
     
    int t_count = 0
     
    unsigned long owTimer = 0
     
    owChangedType owChanged
     
    +

    Function Documentation

    + +

    ◆ owAdd()

    + +
    +
    + + + + + + + + +
    void owAdd (DeviceAddress addr)
    +
    + +
    +
    + +

    ◆ owFind()

    + +
    +
    + + + + + + + + +
    int owFind (DeviceAddress addr)
    +
    + +
    +
    + +

    ◆ owLoop()

    + +
    +
    + + + + + + + +
    void owLoop ()
    +
    + +
    +
    + +

    ◆ owSetup()

    + +
    +
    + + + + + + + + +
    int owSetup (owChangedType owCh)
    +
    + +
    +
    + +

    ◆ owUpdate()

    + +
    +
    + + + + + + + +
    int owUpdate ()
    +
    + +
    +
    + +

    ◆ sensors_loop()

    + +
    +
    + + + + + + + + +
    int sensors_loop (void )
    +
    + +
    +
    + +

    ◆ setupOwIdle()

    + +
    +
    + + + + + + + + +
    void setupOwIdle (void(*)() ptr)
    +
    + +
    +
    +

    Variable Documentation

    + +

    ◆ oneWire

    + +
    +
    + + + + +
    OneWire* oneWire = NULL
    +
    + +
    +
    + +

    ◆ owChanged

    + +
    +
    + + + + +
    owChangedType owChanged
    +
    + +
    +
    + +

    ◆ owTimer

    + +
    +
    + + + + +
    unsigned long owTimer = 0
    +
    + +
    +
    + +

    ◆ sensors

    + +
    +
    + + + + +
    DallasTemperature* sensors = NULL
    +
    + +
    +
    + +

    ◆ si

    + +
    +
    + + + + +
    short si = 0
    +
    + +
    +
    + +

    ◆ t_count

    + +
    +
    + + + + +
    int t_count = 0
    +
    + +
    +
    + +

    ◆ term

    + +
    +
    + + + + +
    DeviceAddress* term = NULL
    +
    + +
    +
    + +

    ◆ wstat

    + +
    +
    + + + + +
    uint16_t* wstat = NULL
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/ow_term_8h.html b/docs/html/ow_term_8h.html new file mode 100644 index 0000000..0d8677a --- /dev/null +++ b/docs/html/ow_term_8h.html @@ -0,0 +1,857 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    owTerm.h File Reference
    +
    +
    +
    #include <DallasTemperature.h>
    +#include "aJSON.h"
    +#include <Wire.h>
    +#include <DS2482_OneWire.h>
    +
    +

    Go to the source code of this file.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define SW_AUX0   0x40
     
    #define SW_AUX1   0x80
     
    #define SW_STAT0   0x4
     
    #define SW_STAT1   0x8
     
    #define SW_OUT0   0x20
     
    #define SW_OUT1   0x10
     
    #define SW_MASK   0xF
     
    #define SW_INMASK   0xFC
     
    #define recheck_interval   5
     
    #define check_circle   2000/t_count
     
    #define SW_FIND   1
     
    #define SW_DOUBLECHECK   2
     
    #define SW_PULSE0   4
     
    #define SW_PULSE1   8
     
    #define SW_PULSE_P0   0x10
     
    #define SW_PULSE_P1   0x20
     
    #define SW_CHANGED_P0   0x40
     
    #define SW_CHANGED_P1   0x80
     
    #define SW_PULSE0_R   0x100
     
    #define SW_PULSE1_R   0x200
     
    #define recheck_interval   5
     
    #define check_circle   2000/t_count
     
    #define t_max   20
     
    #define TEMPERATURE_PRECISION   12
     
    #define DS2482_100_I2C_TO_1W_BRIDGE
     
    + + + +

    +Typedefs

    typedef void(* owChangedType) (int, DeviceAddress, float)
     
    + + + + + + + + + + + + + +

    +Functions

    int owUpdate ()
     
    int owSetup (owChangedType owCh)
     
    void owLoop ()
     
    void setupOwIdle (void(*)())
     
    int owFind (DeviceAddress addr)
     
    void owAdd (DeviceAddress addr)
     
    + + + + + + + + + + + + + + + + + + + +

    +Variables

    aJsonObject * owArr
     
    OneWire * oneWire
     
    DallasTemperature * sensors
     
    DeviceAddress * term
     
    int * regs
     
    uint16_t * wstat
     
    int t_count
     
    short si
     
    owChangedType owChanged
     
    +

    Macro Definition Documentation

    + +

    ◆ check_circle [1/2]

    + +
    +
    + + + + +
    #define check_circle   2000/t_count
    +
    + +
    +
    + +

    ◆ check_circle [2/2]

    + +
    +
    + + + + +
    #define check_circle   2000/t_count
    +
    + +
    +
    + +

    ◆ DS2482_100_I2C_TO_1W_BRIDGE

    + +
    +
    + + + + +
    #define DS2482_100_I2C_TO_1W_BRIDGE
    +
    + +
    +
    + +

    ◆ recheck_interval [1/2]

    + +
    +
    + + + + +
    #define recheck_interval   5
    +
    + +
    +
    + +

    ◆ recheck_interval [2/2]

    + +
    +
    + + + + +
    #define recheck_interval   5
    +
    + +
    +
    + +

    ◆ SW_AUX0

    + +
    +
    + + + + +
    #define SW_AUX0   0x40
    +
    + +
    +
    + +

    ◆ SW_AUX1

    + +
    +
    + + + + +
    #define SW_AUX1   0x80
    +
    + +
    +
    + +

    ◆ SW_CHANGED_P0

    + +
    +
    + + + + +
    #define SW_CHANGED_P0   0x40
    +
    + +
    +
    + +

    ◆ SW_CHANGED_P1

    + +
    +
    + + + + +
    #define SW_CHANGED_P1   0x80
    +
    + +
    +
    + +

    ◆ SW_DOUBLECHECK

    + +
    +
    + + + + +
    #define SW_DOUBLECHECK   2
    +
    + +
    +
    + +

    ◆ SW_FIND

    + +
    +
    + + + + +
    #define SW_FIND   1
    +
    + +
    +
    + +

    ◆ SW_INMASK

    + +
    +
    + + + + +
    #define SW_INMASK   0xFC
    +
    + +
    +
    + +

    ◆ SW_MASK

    + +
    +
    + + + + +
    #define SW_MASK   0xF
    +
    + +
    +
    + +

    ◆ SW_OUT0

    + +
    +
    + + + + +
    #define SW_OUT0   0x20
    +
    + +
    +
    + +

    ◆ SW_OUT1

    + +
    +
    + + + + +
    #define SW_OUT1   0x10
    +
    + +
    +
    + +

    ◆ SW_PULSE0

    + +
    +
    + + + + +
    #define SW_PULSE0   4
    +
    + +
    +
    + +

    ◆ SW_PULSE0_R

    + +
    +
    + + + + +
    #define SW_PULSE0_R   0x100
    +
    + +
    +
    + +

    ◆ SW_PULSE1

    + +
    +
    + + + + +
    #define SW_PULSE1   8
    +
    + +
    +
    + +

    ◆ SW_PULSE1_R

    + +
    +
    + + + + +
    #define SW_PULSE1_R   0x200
    +
    + +
    +
    + +

    ◆ SW_PULSE_P0

    + +
    +
    + + + + +
    #define SW_PULSE_P0   0x10
    +
    + +
    +
    + +

    ◆ SW_PULSE_P1

    + +
    +
    + + + + +
    #define SW_PULSE_P1   0x20
    +
    + +
    +
    + +

    ◆ SW_STAT0

    + +
    +
    + + + + +
    #define SW_STAT0   0x4
    +
    + +
    +
    + +

    ◆ SW_STAT1

    + +
    +
    + + + + +
    #define SW_STAT1   0x8
    +
    + +
    +
    + +

    ◆ t_max

    + +
    +
    + + + + +
    #define t_max   20
    +
    + +
    +
    + +

    ◆ TEMPERATURE_PRECISION

    + +
    +
    + + + + +
    #define TEMPERATURE_PRECISION   12
    +
    + +
    +
    +

    Typedef Documentation

    + +

    ◆ owChangedType

    + +
    +
    + + + + +
    typedef void(* owChangedType) (int, DeviceAddress, float)
    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ owAdd()

    + +
    +
    + + + + + + + + +
    void owAdd (DeviceAddress addr)
    +
    + +
    +
    + +

    ◆ owFind()

    + +
    +
    + + + + + + + + +
    int owFind (DeviceAddress addr)
    +
    + +
    +
    + +

    ◆ owLoop()

    + +
    +
    + + + + + + + +
    void owLoop ()
    +
    + +
    +
    + +

    ◆ owSetup()

    + +
    +
    + + + + + + + + +
    int owSetup (owChangedType owCh)
    +
    + +
    +
    + +

    ◆ owUpdate()

    + +
    +
    + + + + + + + +
    int owUpdate ()
    +
    + +
    +
    + +

    ◆ setupOwIdle()

    + +
    +
    + + + + + + + + +
    void setupOwIdle (void(*)() )
    +
    + +
    +
    +

    Variable Documentation

    + +

    ◆ oneWire

    + +
    +
    + + + + + +
    + + + + +
    OneWire* oneWire
    +
    +extern
    +
    + +
    +
    + +

    ◆ owArr

    + +
    +
    + + + + + +
    + + + + +
    aJsonObject* owArr
    +
    +extern
    +
    + +
    +
    + +

    ◆ owChanged

    + +
    +
    + + + + + +
    + + + + +
    owChangedType owChanged
    +
    +extern
    +
    + +
    +
    + +

    ◆ regs

    + +
    +
    + + + + + +
    + + + + +
    int* regs
    +
    +extern
    +
    + +
    +
    + +

    ◆ sensors

    + +
    +
    + + + + + +
    + + + + +
    DallasTemperature* sensors
    +
    +extern
    +
    + +
    +
    + +

    ◆ si

    + +
    +
    + + + + + +
    + + + + +
    short si
    +
    +extern
    +
    + +
    +
    + +

    ◆ t_count

    + +
    +
    + + + + + +
    + + + + +
    int t_count
    +
    +extern
    +
    + +
    +
    + +

    ◆ term

    + +
    +
    + + + + + +
    + + + + +
    DeviceAddress* term
    +
    +extern
    +
    + +
    +
    + +

    ◆ wstat

    + +
    +
    + + + + + +
    + + + + +
    uint16_t* wstat
    +
    +extern
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/ow_term_8h_source.html b/docs/html/ow_term_8h_source.html new file mode 100644 index 0000000..534ad57 --- /dev/null +++ b/docs/html/ow_term_8h_source.html @@ -0,0 +1,191 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    owTerm.h
    +
    +
    +Go to the documentation of this file.
    1 /* Copyright © 2017-2020 Andrey Klimov. All rights reserved.
    +
    2 
    +
    3 Licensed under the Apache License, Version 2.0 (the "License");
    +
    4 you may not use this file except in compliance with the License.
    +
    5 You may obtain a copy of the License at
    +
    6 
    +
    7  http://www.apache.org/licenses/LICENSE-2.0
    +
    8 
    +
    9 Unless required by applicable law or agreed to in writing, software
    +
    10 distributed under the License is distributed on an "AS IS" BASIS,
    +
    11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +
    12 See the License for the specific language governing permissions and
    +
    13 limitations under the License.
    +
    14 
    +
    15 Homepage: http://lazyhome.ru
    +
    16 GIT: https://github.com/anklimov/lighthub
    +
    17 e-mail anklimov@gmail.com
    +
    18 
    +
    19 */
    +
    20 
    +
    21 //define APU_OFF
    +
    22 #pragma once
    +
    23 
    +
    24 #define SW_AUX0 0x40
    +
    25 #define SW_AUX1 0x80
    +
    26 #define SW_STAT0 0x4
    +
    27 #define SW_STAT1 0x8
    +
    28 #define SW_OUT0 0x20
    +
    29 #define SW_OUT1 0x10
    +
    30 #define SW_MASK 0xF
    +
    31 #define SW_INMASK 0xFC
    +
    32 
    +
    33 #define recheck_interval 5
    +
    34 #define check_circle 2000/t_count
    +
    35 
    +
    36 #define SW_FIND 1
    +
    37 #define SW_DOUBLECHECK 2 //Doublecheck required
    +
    38 #define SW_PULSE0 4 //Pulse Reset started
    +
    39 #define SW_PULSE1 8 //Pulse Reset stsrted
    +
    40 #define SW_PULSE_P0 0x10 //Pulse reset in process
    +
    41 #define SW_PULSE_P1 0x20 //Pulse reset in process
    +
    42 #define SW_CHANGED_P0 0x40 //Changes while pulse in progress
    +
    43 #define SW_CHANGED_P1 0x80 //Changes while pulse in progress
    +
    44 #define SW_PULSE0_R 0x100 //Pulse Reset requested
    +
    45 #define SW_PULSE1_R 0x200 //Pulse Reset requested
    +
    46 
    +
    47 
    +
    48 #define recheck_interval 5
    +
    49 #define check_circle 2000/t_count
    +
    50 
    +
    51 #define t_max 20 //Maximum number of 1w devices
    +
    52 #define TEMPERATURE_PRECISION 12 //9
    +
    53 
    +
    54 #ifndef OWIRE_DISABLE
    +
    55 
    +
    56 #include <DallasTemperature.h>
    +
    57 #include "aJSON.h"
    +
    58 
    +
    59 extern aJsonObject *owArr;
    +
    60 
    +
    61 typedef void (*owChangedType) (int , DeviceAddress, float) ;
    +
    62 
    +
    63 #ifndef USE_1W_PIN
    +
    64 #define DS2482_100_I2C_TO_1W_BRIDGE // HW driver
    +
    65 #include <Wire.h>
    +
    66  #ifndef ARDUINO_ARCH_STM32F1
    +
    67  #include <DS2482_OneWire.h>
    +
    68  #endif
    +
    69 #else
    +
    70 #include <OneWire.h> //Software driver
    +
    71 #define wireReset reset
    +
    72 #define wireSearch search
    +
    73 #endif
    +
    74 
    +
    75 
    +
    76 extern OneWire *oneWire;
    +
    77 
    +
    78 extern DallasTemperature *sensors;
    +
    79 extern DeviceAddress *term ;
    +
    80 extern int *regs ;
    +
    81 extern uint16_t *wstat;
    +
    82 extern int t_count;
    +
    83 extern short si;
    +
    84 
    + +
    86 
    +
    87 
    +
    88 
    +
    89 int owUpdate();
    +
    90 int owSetup(owChangedType owCh);
    +
    91 void owLoop();
    +
    92 void setupOwIdle(void (*)()) ;
    +
    93 int owFind(DeviceAddress addr);
    +
    94 void owAdd (DeviceAddress addr);
    +
    95 
    +
    96 #endif
    +
    +
    void setupOwIdle(void(*)())
    Definition: owTerm.cpp:218
    +
    int owFind(DeviceAddress addr)
    Definition: owTerm.cpp:195
    +
    int owUpdate()
    Definition: owTerm.cpp:43
    +
    int owSetup(owChangedType owCh)
    Definition: owTerm.cpp:92
    +
    owChangedType owChanged
    Definition: owTerm.cpp:41
    +
    aJsonObject * owArr
    Definition: main.cpp:148
    +
    short si
    Definition: owTerm.cpp:37
    +
    int t_count
    Definition: owTerm.cpp:38
    +
    uint16_t * wstat
    Definition: owTerm.cpp:34
    +
    OneWire * oneWire
    Definition: owTerm.cpp:30
    +
    void(* owChangedType)(int, DeviceAddress, float)
    Definition: owTerm.h:61
    +
    void owAdd(DeviceAddress addr)
    Definition: owTerm.cpp:200
    +
    DeviceAddress * term
    Definition: owTerm.cpp:32
    +
    void owLoop()
    Definition: owTerm.cpp:190
    +
    DallasTemperature * sensors
    Definition: owTerm.cpp:35
    +
    int * regs
    + + + + diff --git a/docs/html/search/all_0.html b/docs/html/search/all_0.html new file mode 100644 index 0000000..a34319f --- /dev/null +++ b/docs/html/search/all_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js new file mode 100644 index 0000000..f72bcf6 --- /dev/null +++ b/docs/html/search/all_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['_5f_5fattribute_5f_5f_0',['__attribute__',['../utils_8cpp.html#abf2ee9f926c45315d1a91ae9d4bdba26',1,'utils.cpp']]], + ['_5fdmxin_1',['_dmxin',['../options_8h.html#ad54ae9a16c5077af731dfeed78b700c8',1,'options.h']]], + ['_5fdmxout_2',['_dmxout',['../options_8h.html#a894c0d8dfff112dcfe75b67a128c5562',1,'options.h']]], + ['_5fmodbus_3',['_modbus',['../options_8h.html#a3c1dfe0b98e8a89fc314fd5880f67652',1,'options.h']]], + ['_5fowire_4',['_owire',['../options_8h.html#ad5287891697598444dfa4597895b4ac6',1,'options.h']]] +]; diff --git a/docs/html/search/all_1.html b/docs/html/search/all_1.html new file mode 100644 index 0000000..51aff6f --- /dev/null +++ b/docs/html/search/all_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_1.js b/docs/html/search/all_1.js new file mode 100644 index 0000000..3c56357 --- /dev/null +++ b/docs/html/search/all_1.js @@ -0,0 +1,35 @@ +var searchData= +[ + ['a_5',['a',['../item_8cpp.html#a8d3c3518d793541417a4845125da1ae1',1,'item.cpp']]], + ['abstractch_6',['abstractCh',['../classabstract_ch.html',1,'abstractCh'],['../classabstract_ch.html#a8f13aa9c0f6749f7f064d1930667aaed',1,'abstractCh::abstractCh()']]], + ['abstractch_2ecpp_7',['abstractch.cpp',['../abstractch_8cpp.html',1,'']]], + ['abstractch_2eh_8',['abstractch.h',['../abstractch_8h.html',1,'']]], + ['abstractin_9',['abstractIn',['../classabstract_in.html',1,'abstractIn'],['../classabstract_in.html#ab6b1dfafab3f52fe383d7e4014150ffb',1,'abstractIn::abstractIn()']]], + ['abstractin_2ecpp_10',['abstractin.cpp',['../abstractin_8cpp.html',1,'']]], + ['abstractin_2eh_11',['abstractin.h',['../abstractin_8h.html',1,'']]], + ['abstractout_12',['abstractOut',['../classabstract_out.html',1,'abstractOut'],['../classabstract_out.html#adec371468752bd5027c282cf933ba035',1,'abstractOut::abstractOut()']]], + ['abstractout_2eh_13',['abstractout.h',['../abstractout_8h.html',1,'']]], + ['ac_5fserial_14',['AC_Serial',['../out__ac_8cpp.html#a4c67a3c95b053662ba0e195ff4611ca2',1,'out_ac.cpp']]], + ['action_5fin_5fprocess_15',['ACTION_IN_PROCESS',['../item_cmd_8h.html#a7c17785e1674783a1b4ba4274ae3fb44',1,'itemCmd.h']]], + ['action_5fneeded_16',['ACTION_NEEDED',['../item_cmd_8h.html#a2bfeb847a3993b4da4f0a5811af7b995',1,'itemCmd.h']]], + ['adafruit_5fled_17',['ADAFRUIT_LED',['../options_8h.html#a26b65d67289c43289cc3758c517c55ba',1,'options.h']]], + ['addr_18',['addr',['../classread_cache.html#acc32e1362354c4374519167c5dc5ea21',1,'readCache']]], + ['analog_5fnoize_19',['ANALOG_NOIZE',['../inputs_8h.html#a0e590b44f2e40d50c90c35a3deac7251',1,'inputs.h']]], + ['analog_5fstate_5fattempts_20',['ANALOG_STATE_ATTEMPTS',['../inputs_8h.html#a7c48e9a4c306cc8cfea4e4162d0249e8',1,'inputs.h']]], + ['analogpoll_21',['analogPoll',['../class_input.html#acb26235ba50553fa073a95096ebbbc69',1,'Input']]], + ['analogreadcached_22',['analogReadCached',['../classread_cache.html#aa6e9ec22513d70ee0d77b6ab7304d140',1,'readCache']]], + ['anounce_23',['Anounce',['../classabstract_ch.html#a2e75f5b76a25accdb1de0c936951a93f',1,'abstractCh']]], + ['applyconfig_24',['applyConfig',['../main_8cpp.html#a82529a2f0678bfb6b0808935865ba42d',1,'applyConfig(): main.cpp'],['../main_8h.html#a82529a2f0678bfb6b0808935865ba42d',1,'applyConfig(): main.cpp']]], + ['ardbuffer_25',['ARDBUFFER',['../utils_8cpp.html#ab124609cb16e44db8bf5c1ac5932044f',1,'utils.cpp']]], + ['artnetsetup_26',['ArtnetSetup',['../dmx_8cpp.html#af7ba5611c2c7485938cbf745ed65741f',1,'ArtnetSetup(): dmx.cpp'],['../dmx_8h.html#af7ba5611c2c7485938cbf745ed65741f',1,'ArtnetSetup(): dmx.cpp']]], + ['asfloat_27',['asfloat',['../unionitem_arg_store.html#afc507c941b3df2187f0ce0f055ad53c1',1,'itemArgStore']]], + ['asint32_28',['asInt32',['../unionitem_cmd_store.html#a7e558d8a27f1df27f283c96e35798281',1,'itemCmdStore::asInt32()'],['../unionitem_arg_store.html#ab92c8e89f341000942b58664ffb1f81f',1,'itemArgStore::asInt32()']]], + ['aslong_29',['aslong',['../unionin_store.html#a16a83a9f8fd433154711d7dbd5cdc98a',1,'inStore::aslong()'],['../unionitem_cmd_store.html#a6d539a0bb202bf370351886a6e91f3df',1,'itemCmdStore::aslong()'],['../unionitem_arg_store.html#a5b049f7f12afd54b21e544e3d837a660',1,'itemArgStore::aslong()']]], + ['assignfrom_30',['assignFrom',['../classitem_cmd.html#ae41a813edbb1cdbc09792cae5dd2f434',1,'itemCmd']]], + ['asstring_31',['asString',['../unionitem_arg_store.html#a74b64f04a772272879ec6269d87091f1',1,'itemArgStore']]], + ['asuint32_32',['asUint32',['../unionitem_cmd_store.html#a1b35e73d4496147f882278f73cfe10fe',1,'itemCmdStore::asUint32()'],['../unionitem_arg_store.html#ab0057169d79517093337e298197429f5',1,'itemArgStore::asUint32()']]], + ['attachinterruptpinirq_33',['attachInterruptPinIrq',['../class_input.html#ab272ddf677bc7ebaa20c0a8677b49b80',1,'Input']]], + ['available_34',['available',['../class_streamlog.html#ae7a165675188ecb1bf305b025efbf47b',1,'Streamlog']]], + ['avr_5fdmxout_5fpin_35',['AVR_DMXOUT_PIN',['../options_8h.html#abb18d4c1c4db26508cb496f6467feb54',1,'options.h']]], + ['awaiting_5faddress_36',['AWAITING_ADDRESS',['../main_8h.html#a98b39d850b041da059cf5de62463a473aff1c53b962fb36482e2ef34640bd6eb9',1,'main.h']]] +]; diff --git a/docs/html/search/all_10.html b/docs/html/search/all_10.html new file mode 100644 index 0000000..e6ca18b --- /dev/null +++ b/docs/html/search/all_10.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_10.js b/docs/html/search/all_10.js new file mode 100644 index 0000000..3d39771 --- /dev/null +++ b/docs/html/search/all_10.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['r_534',['r',['../unionitem_arg_store.html#a06c84d5f22df304ea2e4a530ed8f23f6',1,'itemArgStore']]], + ['read_535',['read',['../class_streamlog.html#acbea1e8e890180c66757bd7647703d54',1,'Streamlog']]], + ['read_5fre_5fconfig_536',['READ_RE_CONFIG',['../main_8h.html#a98b39d850b041da059cf5de62463a473af3d074e791c337efc66c7e5bd378e946',1,'main.h']]], + ['readcache_537',['readCache',['../classread_cache.html',1,'readCache'],['../classread_cache.html#ab40001f6ce6d9c8e183751c4a0cd57c9',1,'readCache::readCache()']]], + ['readmodbus_538',['readModbus',['../out__modbus_8cpp.html#ada41a67a60f6db43d5af00c5de696db0',1,'out_modbus.cpp']]], + ['readuniqueid_539',['ReadUniqueID',['../utils_8h.html#a1380fbc9c2170180770dd1bdcc5ac647',1,'utils.h']]], + ['recheck_5finterval_540',['recheck_interval',['../ow_term_8h.html#ab8f08116296551612d3ccdad9e14e23a',1,'recheck_interval(): owTerm.h'],['../ow_term_8h.html#ab8f08116296551612d3ccdad9e14e23a',1,'recheck_interval(): owTerm.h']]], + ['reconnect_541',['RECONNECT',['../main_8h.html#a98b39d850b041da059cf5de62463a473af0a5833d071a9c74f91cd1ef5063d2dc',1,'main.h']]], + ['reg_5ft_542',['reg_t',['../structreg__t.html',1,'']]], + ['regs_543',['regs',['../ow_term_8h.html#a51d8312908b2e5f09ac8e40879c2f1a9',1,'owTerm.h']]], + ['regsizenum_544',['regSizeNum',['../out__modbus_8cpp.html#a49c9c8a2424dd60fa4fefb6ee0188db6',1,'out_modbus.cpp']]], + ['reinit_545',['REINIT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a8d100cff0932a4777f300647958ca8ba',1,'main.h']]], + ['reqstate_546',['reqState',['../unionin_store.html#a1c67a8ed876e1320206c1b1b9651fd10',1,'inStore']]], + ['reserved_547',['reserved',['../unionin_store.html#a80c2c10e46083179d86fa7c4511d671d',1,'inStore']]], + ['resethard_548',['resetHard',['../main_8cpp.html#a8a8de594b1a60fc6867b639d1c50a34b',1,'resetHard(): main.cpp'],['../main_8h.html#a8a8de594b1a60fc6867b639d1c50a34b',1,'resetHard(): main.cpp']]], + ['retaining_5fcollecting_549',['RETAINING_COLLECTING',['../main_8h.html#a98b39d850b041da059cf5de62463a473ade482451d4b1a70137e1590d5d9e0fe8',1,'main.h']]], + ['retrievecode_550',['retrieveCode',['../item_8cpp.html#a4aef78280fd80bcca6d297030691f57b',1,'item.cpp']]], + ['rgb_551',['RGB',['../classitem_cmd.html#aa820840f665aa22da6a25361ac5a3e37',1,'itemCmd']]], + ['rgbw_552',['RGBW',['../classitem_cmd.html#a07a886dbecc927d8d016436197a2f554',1,'itemCmd']]], + ['root_553',['root',['../inputs_8cpp.html#a2e223992d94c34788bec64fb05f780ba',1,'root(): main.cpp'],['../main_8cpp.html#a2e223992d94c34788bec64fb05f780ba',1,'root(): main.cpp']]] +]; diff --git a/docs/html/search/all_11.html b/docs/html/search/all_11.html new file mode 100644 index 0000000..7cf685f --- /dev/null +++ b/docs/html/search/all_11.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_11.js b/docs/html/search/all_11.js new file mode 100644 index 0000000..8d9c0cf --- /dev/null +++ b/docs/html/search/all_11.js @@ -0,0 +1,115 @@ +var searchData= +[ + ['s_554',['s',['../unionitem_arg_store.html#ad2a54b2adf7e42caf0a022839b06d949',1,'itemArgStore']]], + ['s_5fadditional_555',['S_ADDITIONAL',['../item_8h.html#a52a219c38e8fb816c139cbd252e3c3d5',1,'item.h']]], + ['s_5fcmd_556',['S_CMD',['../item_8h.html#a7fc4fdff41f72de35ff7f31a88d2ef17',1,'item.h']]], + ['s_5ffan_557',['S_FAN',['../item_8h.html#ad3cdbaefd6a2dfcd2a87bdc60f6874d4',1,'item.h']]], + ['s_5fhsv_558',['S_HSV',['../item_8h.html#a8c9b4a8b457fa12f533dbdf16850a2f1',1,'item.h']]], + ['s_5fhue_559',['S_HUE',['../item_8h.html#a87a96d42c1cafebc18c7e558c015137b',1,'item.h']]], + ['s_5flock_560',['S_LOCK',['../out__ac_8h.html#af48855306ef6f18c2de9e01f107e1cad',1,'out_ac.h']]], + ['s_5fmode_561',['S_MODE',['../item_8h.html#af90af1bc68960811e82d0ca3782b8c46',1,'item.h']]], + ['s_5fnotfound_562',['S_NOTFOUND',['../item_8h.html#a131cfabb558ab1b7ad493e75d5e060c9',1,'item.h']]], + ['s_5fquiet_563',['S_QUIET',['../out__ac_8h.html#ac0d28426799e4da770644952ec858461',1,'out_ac.h']]], + ['s_5fraw_564',['S_RAW',['../out__ac_8h.html#ab7b18454392c93599b25faad65d6a370',1,'out_ac.h']]], + ['s_5frgb_565',['S_RGB',['../item_8h.html#a110d6e77da40715a6d53921bab49b3f3',1,'item.h']]], + ['s_5fsat_566',['S_SAT',['../item_8h.html#aca68093e2923b0b080643fc4bba25e75',1,'item.h']]], + ['s_5fset_567',['S_SET',['../item_8h.html#a9937ac1220b7ab4dbc8d79911e81a709',1,'item.h']]], + ['s_5fswing_568',['S_SWING',['../out__ac_8h.html#ad4502e82e76e09f450e19153afa0234b',1,'out_ac.h']]], + ['s_5ftemp_569',['S_TEMP',['../item_8h.html#a9073478a392efbb9bf25be0f83f8654e',1,'item.h']]], + ['same_5fstate_5fattempts_570',['SAME_STATE_ATTEMPTS',['../inputs_8h.html#ac274440d36c9abe1f71f18596c4dfea4',1,'inputs.h']]], + ['saveflash_571',['saveFlash',['../main_8cpp.html#a3d9b2a443a58bf0d3e28c174d2c43b8f',1,'saveFlash(short n, char *str): main.cpp'],['../main_8cpp.html#a881f36fdc5bf71038ea93823437e7751',1,'saveFlash(short n, IPAddress &ip): main.cpp'],['../main_8h.html#a3d9b2a443a58bf0d3e28c174d2c43b8f',1,'saveFlash(short n, char *str): main.cpp'],['../main_8h.html#a881f36fdc5bf71038ea93823437e7751',1,'saveFlash(short n, IPAddress &ip): main.cpp']]], + ['saveitem_572',['saveItem',['../classitem_cmd.html#ab1b5e501888d0944b6c1215d58b524cf',1,'itemCmd']]], + ['scan_5fi2c_5fbus_573',['scan_i2c_bus',['../utils_8cpp.html#af585ed9b15b9980b72fbec6d9c9dba67',1,'scan_i2c_bus(): utils.cpp'],['../utils_8h.html#af585ed9b15b9980b72fbec6d9c9dba67',1,'scan_i2c_bus(): utils.cpp']]], + ['send_5fcommand_574',['SEND_COMMAND',['../item_cmd_8h.html#aebe7823b286110926c2da2893b56a7da',1,'itemCmd.h']]], + ['send_5fdeffered_575',['SEND_DEFFERED',['../item_cmd_8h.html#a33ea54bfccbf6af4fc41fdd08b6d0e57',1,'itemCmd.h']]], + ['send_5fparameters_576',['SEND_PARAMETERS',['../item_cmd_8h.html#adba0eeb6b1a5678cea10f4a823829b24',1,'itemCmd.h']]], + ['send_5fretry_577',['SEND_RETRY',['../item_cmd_8h.html#a73ec395d869a354733c01a5331c942f1',1,'itemCmd.h']]], + ['senddata_578',['SendData',['../out__ac_8cpp.html#a59d76c8166fd1a36485f4bdf3323e272',1,'out_ac.cpp']]], + ['senddelayedstatus_579',['sendDelayedStatus',['../class_item.html#af767f604dcaed8a497438255c28129fd',1,'Item']]], + ['sendstatus_580',['SendStatus',['../class_item.html#a525c4e3f723a85af5e818c1b5834e277',1,'Item']]], + ['sensors_581',['sensors',['../ow_term_8cpp.html#ab5e031d55a57a0dd79468e5a7cbb5e64',1,'sensors(): owTerm.cpp'],['../ow_term_8h.html#ab5e031d55a57a0dd79468e5a7cbb5e64',1,'sensors(): owTerm.cpp']]], + ['sensors_5floop_582',['sensors_loop',['../ow_term_8cpp.html#a3c7848115ede4d67192d7964e5157591',1,'owTerm.cpp']]], + ['serial_5fbaud_583',['SERIAL_BAUD',['../options_8h.html#a94df10e7efe7613d074c105099c7fd0e',1,'options.h']]], + ['serial_5ft_584',['serial_t',['../structserial__t.html',1,'']]], + ['serialmodesnum_585',['serialModesNum',['../out__modbus_8cpp.html#a4d3d61e309ead27e6e008e455d75ceb5',1,'out_modbus.cpp']]], + ['serialparam_586',['serialParam',['../classmb_persistent.html#a3c94371c87997c1b90d04fce1e076f24',1,'mbPersistent']]], + ['set_587',['set',['../classstatus_l_e_d.html#a3e1eff776b7ffdac123d76b7419c89e6',1,'statusLED']]], + ['setaddr_588',['SetAddr',['../utils_8cpp.html#a4dd6705cb24a3eab32d9abc8393844b3',1,'SetAddr(char *out, uint8_t *addr): utils.cpp'],['../utils_8h.html#a4dd6705cb24a3eab32d9abc8393844b3',1,'SetAddr(char *out, uint8_t *addr): utils.cpp']]], + ['setargtype_589',['setArgType',['../classitem_cmd.html#a599d3dda4601b317d4bc8c5d28309553',1,'itemCmd']]], + ['setbytes_590',['SetBytes',['../utils_8cpp.html#a85a33f14fc0eefef02be4c6bacf5c8f0',1,'SetBytes(uint8_t *addr, uint8_t count, char *out): utils.cpp'],['../utils_8h.html#a85a33f14fc0eefef02be4c6bacf5c8f0',1,'SetBytes(uint8_t *addr, uint8_t count, char *out): utils.cpp']]], + ['setchantype_591',['setChanType',['../classitem_cmd.html#af635936afc4c65095b1828bd32d5e9ca',1,'itemCmd']]], + ['setcmd_592',['setCmd',['../class_item.html#a188910459fc0ded60ca268664bf9b212',1,'Item']]], + ['setdefault_593',['setDefault',['../classitem_cmd.html#acd8e47506003ffd28db64d6a6c443300',1,'itemCmd']]], + ['setext_594',['setExt',['../class_item.html#ad4e62aba1f62917a8df4c47c2894a3ad',1,'Item']]], + ['setflag_595',['setFlag',['../class_item.html#abd22bfa75e71849cc0fadcee9eef330d',1,'Item']]], + ['seth_596',['setH',['../classitem_cmd.html#a80e4577e896d7d015402709153cc66cd',1,'itemCmd']]], + ['setnextpolltime_597',['setNextPollTime',['../class_input.html#a8efca39cb91c24dc80a62d660fd9ea2a',1,'Input']]], + ['setpersistent_598',['setPersistent',['../class_item.html#af023950bb9b9760b98c5de7287bc467d',1,'Item']]], + ['sets_599',['setS',['../classitem_cmd.html#aed6c891043edd0083ea036494956da93',1,'itemCmd']]], + ['setsubtype_600',['setSubtype',['../class_item.html#a47b261677ded48fb1c51088b9d956dcc',1,'Item']]], + ['setsuffix_601',['setSuffix',['../classitem_cmd.html#ab0c9dd09c598686d46dec923550d2e47',1,'itemCmd']]], + ['settopic_602',['setTopic',['../utils_8cpp.html#ab33cdb70ba57128d05b7efe3317b5a82',1,'setTopic(char *buf, int8_t buflen, topicType tt, const char *suffix): utils.cpp'],['../utils_8h.html#aa0045f41bb76629662ed1ee7952f856e',1,'setTopic(char *buf, int8_t buflen, topicType tt, const char *suffix=NULL): utils.cpp']]], + ['setup_603',['Setup',['../classabstract_ch.html#aeaf6346625245be1774a6d27d9cece4e',1,'abstractCh::Setup()'],['../class_item.html#ae84f04e796546f4c34db79a060b0d443',1,'Item::Setup()'],['../classin__ccs811.html#adc24e341d0df945dc9db85051fe03e48',1,'in_ccs811::Setup()'],['../classin__hdc1080.html#ae8e077105f9b80dcf682cdc2bd4a95e3',1,'in_hdc1080::Setup()'],['../classout___a_c.html#a3a7b5b20a7d66870551f3dd485e66de2',1,'out_AC::Setup()'],['../classout__dmx.html#a7bf52f6c7ce630f879de60596b82dd87',1,'out_dmx::Setup()'],['../classout___modbus.html#acf5452aac576901614eca795ab4ca440',1,'out_Modbus::Setup()'],['../classout___motor.html#ab9f2b433a4fedd6fec5b9cb504b934f4',1,'out_Motor::Setup()'],['../classout__pwm.html#a0ba3173e9df1cb61b74a705c270ef7b6',1,'out_pwm::Setup()'],['../classout___s_p_i_led.html#adbe9d6b9a2a5e515e9a372a4c4675b15',1,'out_SPILed::Setup()'],['../class_input.html#af875dd162373e90e21f8213f928f8032',1,'Input::setup()']]], + ['setup_5fmain_604',['setup_main',['../main_8cpp.html#aa34675c2dc6eb3d0744844d8e67e3af8',1,'setup_main(): main.cpp'],['../main_8h.html#aa34675c2dc6eb3d0744844d8e67e3af8',1,'setup_main(): main.cpp']]], + ['setupcmdarduino_605',['setupCmdArduino',['../main_8cpp.html#abec54b31996557c73a31054ce068c8fa',1,'setupCmdArduino(): main.cpp'],['../main_8h.html#abec54b31996557c73a31054ce068c8fa',1,'setupCmdArduino(): main.cpp']]], + ['setupmacaddress_606',['setupMacAddress',['../main_8cpp.html#a2186513a50a77b9bd9bb453d4584c5f8',1,'setupMacAddress(): main.cpp'],['../main_8h.html#a2186513a50a77b9bd9bb453d4584c5f8',1,'setupMacAddress(): main.cpp']]], + ['setupota_607',['setupOTA',['../main_8cpp.html#acfca2f2b3c22e56799e7fd1f66952729',1,'main.cpp']]], + ['setupowidle_608',['setupOwIdle',['../ow_term_8cpp.html#aaa733da2383859748e802f38409546da',1,'setupOwIdle(void(*ptr)()): owTerm.cpp'],['../ow_term_8h.html#acbf132b42d0828077bbd21e2b205c5fc',1,'setupOwIdle(void(*)()): owTerm.cpp']]], + ['setupsyslog_609',['setupSyslog',['../main_8cpp.html#afa048a9d2e392a67cb5af8ab00b3ec0f',1,'main.cpp']]], + ['setval_610',['setVal',['../class_item.html#ad2a38c039f8b3cee14cb97c9526d9260',1,'Item']]], + ['show_611',['show',['../classstatus_l_e_d.html#a611fa4b90edb00fa5b42923ea091cd9c',1,'statusLED']]], + ['si_612',['si',['../ow_term_8cpp.html#ac37ce0c409c53b6a18aefbfc3ad46b4a',1,'si(): owTerm.cpp'],['../ow_term_8h.html#ac37ce0c409c53b6a18aefbfc3ad46b4a',1,'si(): owTerm.cpp']]], + ['signed_5fcolortemp_613',['signed_colorTemp',['../unionitem_arg_store.html#a5b454ee59d0a9b5d4b2c52b3fa40d846',1,'itemArgStore']]], + ['signed_5fh_614',['signed_h',['../unionitem_arg_store.html#a137005bda50cdb8e76f6b6cb93958c9f',1,'itemArgStore']]], + ['signed_5fs_615',['signed_s',['../unionitem_arg_store.html#a20fde40d8b89eea89ffe4d8379c74fdc',1,'itemArgStore']]], + ['signed_5fv_616',['signed_v',['../unionitem_arg_store.html#a3d1cdc762efb0d385441d14e92d95829',1,'itemArgStore']]], + ['softrebootfunc_617',['softRebootFunc',['../utils_8h.html#a7facb8f2c84692ab65024785eb64b541',1,'utils.h']]], + ['st_5ffloat_618',['ST_FLOAT',['../item_cmd_8h.html#ad8579fb5b68f5adc9862a20aeb3d9913',1,'itemCmd.h']]], + ['st_5ffloat_5fcelsius_619',['ST_FLOAT_CELSIUS',['../item_cmd_8h.html#a644980a3323313ed2e620aebdd993537',1,'itemCmd.h']]], + ['st_5ffloat_5ffarenheit_620',['ST_FLOAT_FARENHEIT',['../item_cmd_8h.html#a38685184c002f8c14fab409847cdd9a5',1,'itemCmd.h']]], + ['st_5fhs_621',['ST_HS',['../item_cmd_8h.html#abac7e90eb597c98d2f5870c6528c09da',1,'itemCmd.h']]], + ['st_5fhsv_622',['ST_HSV',['../item_cmd_8h.html#a67ad81da37213da74d71033ecd62a00c',1,'itemCmd.h']]], + ['st_5fhsv255_623',['ST_HSV255',['../item_cmd_8h.html#af1ffdc01c9fc9cc648518fef4fde8a52',1,'itemCmd.h']]], + ['st_5fint32_624',['ST_INT32',['../item_cmd_8h.html#a9bbd91c0ea3ac6af8f0deadcddce706c',1,'itemCmd.h']]], + ['st_5fpercents_625',['ST_PERCENTS',['../item_cmd_8h.html#a0612f5b4f1bcd3a696c6a17b7e3e059e',1,'itemCmd.h']]], + ['st_5fpercents255_626',['ST_PERCENTS255',['../item_cmd_8h.html#ad5b8ab06d61866259ae7bc34655701a8',1,'itemCmd.h']]], + ['st_5frgb_627',['ST_RGB',['../item_cmd_8h.html#a0cc85c763ceffc24cddfe74853f1d2ee',1,'itemCmd.h']]], + ['st_5frgbw_628',['ST_RGBW',['../item_cmd_8h.html#a5f433ae9408b87addac620079cb92f1a',1,'itemCmd.h']]], + ['st_5fstring_629',['ST_STRING',['../item_cmd_8h.html#a9eb365863cb3267d934a4f517c3d4aad',1,'itemCmd.h']]], + ['st_5ftens_630',['ST_TENS',['../item_cmd_8h.html#a6291bb44d8bcbb4f371c010314f059cb',1,'itemCmd.h']]], + ['st_5fuint32_631',['ST_UINT32',['../item_cmd_8h.html#a6af0c39035eaf94f9c436ab0260c1d94',1,'itemCmd.h']]], + ['st_5fvoid_632',['ST_VOID',['../item_cmd_8h.html#a89b3fb099d3038f85ed3b573ba64d031',1,'itemCmd.h']]], + ['state_633',['state',['../unionin_store.html#a5db18504795773dee8dd1cca020994f7',1,'inStore']]], + ['status_634',['Status',['../classabstract_ch.html#aefb8821172a2e66f49ea0da9b7c205a5',1,'abstractCh::Status()'],['../classout___a_c.html#aba0d1953f95f7d04a24582c40cd26196',1,'out_AC::Status()'],['../classout__dmx.html#aa5f2590101b1951f4cf5eb57449d8365',1,'out_dmx::Status()'],['../classout___modbus.html#acc0fc0ecdb6928cfc7906986b8139780',1,'out_Modbus::Status()'],['../classout___motor.html#a47de22f0ce071787ac14a19897337cea',1,'out_Motor::Status()'],['../classout__pwm.html#a01edf9d010b717601898bf3fddecbc3f',1,'out_pwm::Status()'],['../classout___s_p_i_led.html#a9486de18e156758a12fa257f68314e20',1,'out_SPILed::Status()']]], + ['statusled_635',['statusLED',['../classstatus_l_e_d.html',1,'statusLED'],['../classstatus_l_e_d.html#ae9a8652af566b29edf336fff51e239e1',1,'statusLED::statusLED()']]], + ['statusled_2ecpp_636',['statusled.cpp',['../statusled_8cpp.html',1,'']]], + ['statusled_2eh_637',['statusled.h',['../statusled_8h.html',1,'']]], + ['stop_638',['Stop',['../classabstract_ch.html#afb7b6f4586412a13f8f6ac08061e5ae0',1,'abstractCh::Stop()'],['../class_item.html#ac382f69ca11e6eebfec1f40133fddd42',1,'Item::Stop()'],['../classout___a_c.html#a763ace53db4e64692d061db48f396aba',1,'out_AC::Stop()'],['../classout__dmx.html#a0b9383e7fe30707142915cbc3d0ec772',1,'out_dmx::Stop()'],['../classout___modbus.html#a9cb4b395f5f8a6d15dcc429664a4174b',1,'out_Modbus::Stop()'],['../classout___motor.html#aafdbaaaf47776dd8c0c5d6bfa32bb3c2',1,'out_Motor::Stop()'],['../classout__pwm.html#a9f3fc73a1fff6ecf991d42564a7b8273',1,'out_pwm::Stop()'],['../classout___s_p_i_led.html#a4e24b8a490f8353452b8594dffff8396',1,'out_SPILed::Stop()']]], + ['store_639',['store',['../class_input.html#a2c8307bf192b3e07bbc7cd605efeeb81',1,'Input::store()'],['../classout___modbus.html#a78e591ac7d7de9e7a3ab0a6d96263c2b',1,'out_Modbus::store()']]], + ['str2regsize_640',['str2regSize',['../out__modbus_8cpp.html#a6b595bdd94e3d76226b079ba5d7d7239',1,'out_modbus.cpp']]], + ['str2serialparam_641',['str2SerialParam',['../out__modbus_8cpp.html#ae62352d2766976d85ca20006e681f254',1,'out_modbus.cpp']]], + ['streamlog_642',['Streamlog',['../class_streamlog.html',1,'Streamlog'],['../class_streamlog.html#a51cd1bbe03b32ad2d4235b4ef7945d37',1,'Streamlog::Streamlog()']]], + ['streamlog_2ecpp_643',['streamlog.cpp',['../streamlog_8cpp.html',1,'']]], + ['streamlog_2eh_644',['streamlog.h',['../streamlog_8h.html',1,'']]], + ['subitem2cmd_645',['subitem2cmd',['../item_8cpp.html#a44da304670c8b0446f674b318ebc9294',1,'item.cpp']]], + ['suffixcode_646',['suffixCode',['../unionitem_cmd_store.html#a60ffaa3ef4ac448d5b31a519dd2d8ba9',1,'itemCmdStore']]], + ['sw_5faux0_647',['SW_AUX0',['../ow_term_8h.html#a9842f177c8e00b6c38daf3aca290e300',1,'owTerm.h']]], + ['sw_5faux1_648',['SW_AUX1',['../ow_term_8h.html#ac0309c49990b7232afdf7d27f30f42b4',1,'owTerm.h']]], + ['sw_5fchanged_5fp0_649',['SW_CHANGED_P0',['../ow_term_8h.html#a89104025a8859791e89115fef5bc1d74',1,'owTerm.h']]], + ['sw_5fchanged_5fp1_650',['SW_CHANGED_P1',['../ow_term_8h.html#a78449cd6b324f70f052efa1c7684f939',1,'owTerm.h']]], + ['sw_5fdoublecheck_651',['SW_DOUBLECHECK',['../ow_term_8h.html#a04b690d8ae7ea22fc1cd850cb28d1a89',1,'owTerm.h']]], + ['sw_5ffind_652',['SW_FIND',['../ow_term_8h.html#a2e409a3583ffd8bf522847aa2babcc65',1,'owTerm.h']]], + ['sw_5finmask_653',['SW_INMASK',['../ow_term_8h.html#a2566855e014080775e472bf2b959b510',1,'owTerm.h']]], + ['sw_5fmask_654',['SW_MASK',['../ow_term_8h.html#a240dee0900895c9dc452fc3e94319116',1,'owTerm.h']]], + ['sw_5fout0_655',['SW_OUT0',['../ow_term_8h.html#a1db8ee4f7494dbd6852b582086bf8618',1,'owTerm.h']]], + ['sw_5fout1_656',['SW_OUT1',['../ow_term_8h.html#a2b4445eee4ea221bc240c0db281e14d8',1,'owTerm.h']]], + ['sw_5fpulse0_657',['SW_PULSE0',['../ow_term_8h.html#a3312fd9b274e02275c7e6e14812d8b77',1,'owTerm.h']]], + ['sw_5fpulse0_5fr_658',['SW_PULSE0_R',['../ow_term_8h.html#a394220e3a4d07cd1c110c655332bbed1',1,'owTerm.h']]], + ['sw_5fpulse1_659',['SW_PULSE1',['../ow_term_8h.html#ac48f14c4bbb976160877b913707b0555',1,'owTerm.h']]], + ['sw_5fpulse1_5fr_660',['SW_PULSE1_R',['../ow_term_8h.html#aa5279ea909ec370f1ca60c619cea7b2f',1,'owTerm.h']]], + ['sw_5fpulse_5fp0_661',['SW_PULSE_P0',['../ow_term_8h.html#a0ae32f8bd855e4f0d54f2efa7f749432',1,'owTerm.h']]], + ['sw_5fpulse_5fp1_662',['SW_PULSE_P1',['../ow_term_8h.html#aea6e1f060eb378a3f5ac7b0fb75e3321',1,'owTerm.h']]], + ['sw_5fstat0_663',['SW_STAT0',['../ow_term_8h.html#a2a8205edd6a8a56bd3dcc301b5e89522',1,'owTerm.h']]], + ['sw_5fstat1_664',['SW_STAT1',['../ow_term_8h.html#a00243602c461da89cd31481290e64459',1,'owTerm.h']]], + ['syslog_5flocal_5fsocket_665',['SYSLOG_LOCAL_SOCKET',['../options_8h.html#a2ea96e90902d4db4f9db6d5f5e3298dd',1,'options.h']]] +]; diff --git a/docs/html/search/all_12.html b/docs/html/search/all_12.html new file mode 100644 index 0000000..b8bb491 --- /dev/null +++ b/docs/html/search/all_12.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_12.js b/docs/html/search/all_12.js new file mode 100644 index 0000000..210a638 --- /dev/null +++ b/docs/html/search/all_12.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['t_5fattempts_666',['T_ATTEMPTS',['../options_8h.html#a6a65f02746daae5d420afda0cada7b78',1,'options.h']]], + ['t_5fbcst_667',['T_BCST',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca26fa2da957fe6c55420ed0e1a7dd7a15',1,'utils.h']]], + ['t_5fcount_668',['t_count',['../ow_term_8cpp.html#a4e9707ca4dbcd2ddd6d14657f2e12700',1,'t_count(): owTerm.cpp'],['../ow_term_8h.html#a4e9707ca4dbcd2ddd6d14657f2e12700',1,'t_count(): owTerm.cpp']]], + ['t_5fdev_669',['T_DEV',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca3fa22e2ae357981afc104dc67d764c85',1,'utils.h']]], + ['t_5fidle_670',['T_IDLE',['../inputs_8h.html#a8a75f24034739896ac50bba24d242d32',1,'inputs.h']]], + ['t_5flong_671',['T_LONG',['../inputs_8h.html#a2d9ac9f51c75bdb21cf9dfd1412fa194',1,'inputs.h']]], + ['t_5fmax_672',['t_max',['../ow_term_8h.html#a9382f08ab82ba07c710f5b2e9e6ec0f3',1,'owTerm.h']]], + ['t_5fout_673',['T_OUT',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca27b2310c69298d62ed18dd416476a44d',1,'utils.h']]], + ['t_5frpt_674',['T_RPT',['../inputs_8h.html#a7182ef2ce51e276fb3b26cd8565eb954',1,'inputs.h']]], + ['t_5frpt_5fpulse_675',['T_RPT_PULSE',['../inputs_8h.html#a9fe7bdf99e30a49fd5aff60200a90172',1,'inputs.h']]], + ['temperature_5fprecision_676',['TEMPERATURE_PRECISION',['../ow_term_8h.html#a41a331314b46059bd942e76ffc60cf4a',1,'owTerm.h']]], + ['term_677',['term',['../ow_term_8cpp.html#ac8f950395764bcd345b63d2887dae1a0',1,'term(): owTerm.cpp'],['../ow_term_8h.html#ac8f950395764bcd345b63d2887dae1a0',1,'term(): owTerm.cpp']]], + ['textconst_2eh_678',['textconst.h',['../textconst_8h.html',1,'']]], + ['thermo_5fgist_5fcelsius_679',['THERMO_GIST_CELSIUS',['../options_8h.html#af589ab4b091beec656a4529510d63937',1,'options.h']]], + ['thermo_5foverheat_5fcelsius_680',['THERMO_OVERHEAT_CELSIUS',['../options_8h.html#af512e1ccc2f2a4fd372d0816603e961c',1,'options.h']]], + ['thermodisabledordisconnected_681',['thermoDisabledOrDisconnected',['../main_8cpp.html#a35f5a9d31c8cb726a3c7e77e7ad9c4b2',1,'main.cpp']]], + ['thermoloop_682',['thermoLoop',['../main_8cpp.html#a2d1cd6009a6e25d3605fee3e54065577',1,'thermoLoop(void): main.cpp'],['../main_8h.html#a2d1cd6009a6e25d3605fee3e54065577',1,'thermoLoop(void): main.cpp']]], + ['thermosetcurtemp_683',['thermoSetCurTemp',['../item_8h.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp'],['../main_8cpp.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp'],['../main_8h.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp']]], + ['thermostat_5fcheck_5fperiod_684',['THERMOSTAT_CHECK_PERIOD',['../options_8h.html#a265b8a391d46da3dd31693f510d02ad6',1,'options.h']]], + ['timestamp_685',['timestamp',['../unionin_store.html#a4bddf64e5bea1ba4101346caf0df2852',1,'inStore::timestamp()'],['../classmb_persistent.html#a74503e0f253cf91c1e83a1e35693d6fc',1,'mbPersistent::timestamp()']]], + ['timestamp16_686',['timestamp16',['../unionin_store.html#a53f6cadfd77d4bd024d6e6c395ae5364',1,'inStore']]], + ['toggle_687',['Toggle',['../class_item.html#a5ddbe231ea061c1001436dd5d57cc97b',1,'Item']]], + ['toggle1_688',['toggle1',['../unionin_store.html#a5e5cdaeda80c6eed6a55554a0780a128',1,'inStore']]], + ['toggle2_689',['toggle2',['../unionin_store.html#a8f5f08b35e330945b3b0df11eacdae72',1,'inStore']]], + ['toggle3_690',['toggle3',['../unionin_store.html#a4e4a1f17bcdd01c934df232175195a46',1,'inStore']]], + ['tohex_691',['toHex',['../out__ac_8cpp.html#a609d8aade61dfe61ef1100ddca6c3799',1,'out_ac.cpp']]], + ['topics_692',['topics',['../main_8cpp.html#addabf1c5a7be47e4e89beb38a435cb51',1,'topics(): main.cpp'],['../utils_8cpp.html#addabf1c5a7be47e4e89beb38a435cb51',1,'topics(): main.cpp']]], + ['topictype_693',['topicType',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fc',1,'utils.h']]], + ['tostring_694',['toString',['../classitem_cmd.html#a4400a0876f9f852f654bc7c5530ef00f',1,'itemCmd']]], + ['txenablepin_695',['TXEnablePin',['../options_8h.html#ab992e9e25bfa08a3572b6a2c4826a0dc',1,'options.h']]], + ['txt2cmd_696',['txt2cmd',['../item_8h.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp'],['../item_cmd_8cpp.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp'],['../item_cmd_8h.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp']]], + ['txt2subitem_697',['txt2subItem',['../item_8cpp.html#ac002f1e83a05b79e27bda8f93184bcee',1,'item.cpp']]], + ['type_698',['type',['../classread_cache.html#a76353391e6c92fdb6381e0d6b120fde5',1,'readCache']]] +]; diff --git a/docs/html/search/all_13.html b/docs/html/search/all_13.html new file mode 100644 index 0000000..bb149d4 --- /dev/null +++ b/docs/html/search/all_13.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_13.js b/docs/html/search/all_13.js new file mode 100644 index 0000000..ba8382a --- /dev/null +++ b/docs/html/search/all_13.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['uid_699',['UID',['../union_u_i_d.html',1,'']]], + ['uid_5fbyte_700',['UID_Byte',['../union_u_i_d.html#a2a1db307f2be0b2bc8951105a99c83aa',1,'UID']]], + ['uid_5flong_701',['UID_Long',['../union_u_i_d.html#a478d21c78d3100c5e236adca2c571e1e',1,'UID']]], + ['uptime_5fpoll_5fdelay_5fdefault_702',['UPTIME_POLL_DELAY_DEFAULT',['../options_8h.html#a9377a9603fb9295926b3292cd0506209',1,'options.h']]], + ['uptimepoll_703',['uptimePoll',['../class_input.html#a3d224f0fd4da038390abaa8f84478d5c',1,'Input']]], + ['utils_2ecpp_704',['utils.cpp',['../utils_8cpp.html',1,'']]], + ['utils_2eh_705',['utils.h',['../utils_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_14.html b/docs/html/search/all_14.html new file mode 100644 index 0000000..08e1d0b --- /dev/null +++ b/docs/html/search/all_14.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_14.js b/docs/html/search/all_14.js new file mode 100644 index 0000000..a1bd330 --- /dev/null +++ b/docs/html/search/all_14.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['v_706',['v',['../unionitem_arg_store.html#a8f1d8c23cb2bc96349dba77ebdc4409d',1,'itemArgStore']]], + ['vacomsetfan_707',['VacomSetFan',['../class_item.html#a127a28254a55fbd7fcbcd37816afe163',1,'Item']]], + ['vacomsetheat_708',['VacomSetHeat',['../class_item.html#aa0f1f997dd794068562d43eb4a3911a6',1,'Item']]], + ['value_709',['VALUE',['../utils_8h.html#ad705dc78222473228fa826e42eca95f1',1,'utils.h']]], + ['value_5fto_5fstring_710',['VALUE_TO_STRING',['../utils_8h.html#ad15c9a08925b1c0365fb1bd9ac826670',1,'utils.h']]], + ['var_5fname_5fvalue_711',['VAR_NAME_VALUE',['../utils_8h.html#a9a89328d94ddd2cdd4b39db22da01f79',1,'utils.h']]], + ['verb_712',['verb',['../structreg__t.html#a19c41c63cb0e2ae177246afda5b37711',1,'reg_t::verb()'],['../structserial__t.html#a8e4f99f18fbb7bf2282dc6f6d1d3eb51',1,'serial_t::verb()']]] +]; diff --git a/docs/html/search/all_15.html b/docs/html/search/all_15.html new file mode 100644 index 0000000..e438c03 --- /dev/null +++ b/docs/html/search/all_15.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_15.js b/docs/html/search/all_15.js new file mode 100644 index 0000000..90e5ca9 --- /dev/null +++ b/docs/html/search/all_15.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['w_713',['w',['../unionitem_arg_store.html#a8c6e262cae01ac0bb6d0070916989473',1,'itemArgStore']]], + ['w5100_5fethernet_5fshield_714',['W5100_ETHERNET_SHIELD',['../options_8h.html#a7658e9cd3f6887dd4e5cf06b3d865b52',1,'options.h']]], + ['wifiawaitingtime_715',['WiFiAwaitingTime',['../main_8cpp.html#ae4b71bfb7d27827d7d6c40fc3b745510',1,'main.cpp']]], + ['wifiinitialized_716',['wifiInitialized',['../main_8cpp.html#a6a547b8f65552a00acceaae5fb86fb0d',1,'main.cpp']]], + ['write_717',['write',['../class_streamlog.html#a944486d544c3677410e1505b9cd6858b',1,'Streamlog']]], + ['wstat_718',['wstat',['../ow_term_8cpp.html#a31e8c0d5ba0869a2bfbf32fd8caaac57',1,'wstat(): owTerm.cpp'],['../ow_term_8h.html#a31e8c0d5ba0869a2bfbf32fd8caaac57',1,'wstat(): owTerm.cpp']]] +]; diff --git a/docs/html/search/all_16.html b/docs/html/search/all_16.html new file mode 100644 index 0000000..cd0301f --- /dev/null +++ b/docs/html/search/all_16.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_16.js b/docs/html/search/all_16.js new file mode 100644 index 0000000..e21ce34 --- /dev/null +++ b/docs/html/search/all_16.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['_7eabstractch_719',['~abstractCh',['../classabstract_ch.html#a58f34f5341674622c30f5c005ceadead',1,'abstractCh']]], + ['_7eitem_720',['~Item',['../class_item.html#a11663c84075b78c3ae5e30fdfcd7c458',1,'Item']]] +]; diff --git a/docs/html/search/all_2.html b/docs/html/search/all_2.html new file mode 100644 index 0000000..1f81f66 --- /dev/null +++ b/docs/html/search/all_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_2.js b/docs/html/search/all_2.js new file mode 100644 index 0000000..f765bcf --- /dev/null +++ b/docs/html/search/all_2.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['b_37',['b',['../unionitem_arg_store.html#ab6e0d043707be121256740a7acb1f170',1,'itemArgStore::b()'],['../item_8cpp.html#ab2d05693952610f937e5acb3c4a8fa1b',1,'b(): item.cpp']]], + ['b_5fcmd_38',['B_CMD',['../out__ac_8h.html#a54c3b17281609e2073adc5d9c3577d9e',1,'out_ac.h']]], + ['b_5fcur_5ftmp_39',['B_CUR_TMP',['../out__ac_8h.html#aea839ca3c1b73e5d265a574085f7b353',1,'out_ac.h']]], + ['b_5ffan_5fspd_40',['B_FAN_SPD',['../out__ac_8h.html#a16e64054ce7537a58828f7ff0fdd5dd6',1,'out_ac.h']]], + ['b_5ffresh_41',['B_FRESH',['../out__ac_8h.html#a5170cf3a84e8662e32341dc99bd379ea',1,'out_ac.h']]], + ['b_5flock_5frem_42',['B_LOCK_REM',['../out__ac_8h.html#ae059f75818a612a4c40cfb9a9cfed1cd',1,'out_ac.h']]], + ['b_5fmode_43',['B_MODE',['../out__ac_8h.html#a64129c01f67098002dfc15bcf2e81345',1,'out_ac.h']]], + ['b_5fpower_44',['B_POWER',['../out__ac_8h.html#a810646cae39c2f8b13cd389aa91388cb',1,'out_ac.h']]], + ['b_5fset_5ftmp_45',['B_SET_TMP',['../out__ac_8h.html#a99d1516f267d0714663ac3ba3497e03f',1,'out_ac.h']]], + ['b_5fswing_46',['B_SWING',['../out__ac_8h.html#a8291ee313ea42010c029dcdecd9b922a',1,'out_ac.h']]], + ['baud_47',['baud',['../classmb_persistent.html#ad204e2cc5ee3a22f9ed332c3c5cab598',1,'mbPersistent']]], + ['begin_48',['begin',['../class_streamlog.html#ab9c1022fccf6b585b738f30f8577d613',1,'Streamlog']]], + ['bounce_49',['bounce',['../unionin_store.html#a0458b3c28da62ec08dfbe9c28546c939',1,'inStore']]], + ['bright_2ecpp_50',['bright.cpp',['../bright_8cpp.html',1,'']]], + ['bright_2eh_51',['bright.h',['../bright_8h.html',1,'']]], + ['bright_5flinear_52',['BRIGHT_LINEAR',['../bright_8h.html#a745288b6f8ea74e7efe2e7044f7d94d8',1,'bright.h']]] +]; diff --git a/docs/html/search/all_3.html b/docs/html/search/all_3.html new file mode 100644 index 0000000..2e31ab9 --- /dev/null +++ b/docs/html/search/all_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_3.js b/docs/html/search/all_3.js new file mode 100644 index 0000000..ad5569c --- /dev/null +++ b/docs/html/search/all_3.js @@ -0,0 +1,98 @@ +var searchData= +[ + ['cached_5fdata_53',['cached_data',['../classread_cache.html#a0040f14299d3ddf8373b9251f0a69831',1,'readCache']]], + ['ccs811_5faddr_54',['CCS811_ADDR',['../in__ccs811__hdc1080_8h.html#a4c3a63d41818b1c52526d478881f1403',1,'in_ccs811_hdc1080.h']]], + ['ccs811baseline_55',['ccs811Baseline',['../in__ccs811__hdc1080_8cpp.html#ac3bfd4c05f0b14fb919750932ee575ae',1,'in_ccs811_hdc1080.cpp']]], + ['ch_5fac_56',['CH_AC',['../item_8h.html#ae5faa28ae90e3c8658289b9c513d0f1f',1,'item.h']]], + ['ch_5fdimmer_57',['CH_DIMMER',['../item_8h.html#ae8deebae2223cc41b707c0ccc12110f7',1,'item.h']]], + ['ch_5fgroup_58',['CH_GROUP',['../item_8h.html#a8013a9895a9e2fa6afc8b411f2ee4d77',1,'item.h']]], + ['ch_5fmbus_59',['CH_MBUS',['../item_8h.html#a446f242b566032430f42ce9be6b366aa',1,'item.h']]], + ['ch_5fmodbus_60',['CH_MODBUS',['../item_8h.html#abdb1c8601e3997eeabfbe85b77ae9a9e',1,'item.h']]], + ['ch_5fmotor_61',['CH_MOTOR',['../item_8h.html#a7fc4d0ba1b07d30d6276ebda33dd6987',1,'item.h']]], + ['ch_5fpwm_62',['CH_PWM',['../item_8h.html#a2daad851379261136f0c22f056663fc2',1,'item.h']]], + ['ch_5frelay_63',['CH_RELAY',['../item_8h.html#ac9f09e5e652cb6797b7a05e93133d20f',1,'item.h']]], + ['ch_5frgb_64',['CH_RGB',['../item_8h.html#abbb5a64a224fe607fbf2fc5ac29e31cb',1,'item.h']]], + ['ch_5frgbw_65',['CH_RGBW',['../item_8h.html#abdcc93b4a9164bb10e473766c4083d8b',1,'item.h']]], + ['ch_5fspiled_66',['CH_SPILED',['../item_8h.html#ab43c8cc9fb5c1667a5956e48017826ff',1,'item.h']]], + ['ch_5fthermo_67',['CH_THERMO',['../item_8h.html#a3f68dec7d0ed1ba592fa281ee427a72a',1,'item.h']]], + ['ch_5fvc_68',['CH_VC',['../item_8h.html#a762566fb96b5a377eada6a32639c4e37',1,'item.h']]], + ['ch_5fvctemp_69',['CH_VCTEMP',['../item_8h.html#a0b5411d14d7fed59c97adaf6523323b7',1,'item.h']]], + ['ch_5fwhite_70',['CH_WHITE',['../item_8h.html#a63c6b75de3cb38d4287f404544617d49',1,'item.h']]], + ['changed_71',['Changed',['../main_8cpp.html#abbcbfa3bc0f5d93f1f1d84c3fdc23608',1,'Changed(int i, DeviceAddress addr, float currentTemp): main.cpp'],['../main_8h.html#abbcbfa3bc0f5d93f1f1d84c3fdc23608',1,'Changed(int i, DeviceAddress addr, float currentTemp): main.cpp']]], + ['changestate_72',['changeState',['../class_input.html#a08323a44c2d4ca714e4e6a14ae73fc4f',1,'Input']]], + ['check_5fcircle_73',['check_circle',['../ow_term_8h.html#a9db1df6249649d3fca671805ace0ed82',1,'check_circle(): owTerm.h'],['../ow_term_8h.html#a9db1df6249649d3fca671805ace0ed82',1,'check_circle(): owTerm.h']]], + ['check_5finput_74',['CHECK_INPUT',['../inputs_8h.html#a1a4fde3dbdd8e8f920a325f551fcfd94',1,'inputs.h']]], + ['check_5finterrupt_75',['CHECK_INTERRUPT',['../inputs_8h.html#a98a52bad4b628c2b09416a9819010e81',1,'inputs.h']]], + ['check_5fsensor_76',['CHECK_SENSOR',['../inputs_8h.html#a3e39b572f12612cbe5e7259fa57441e4',1,'inputs.h']]], + ['checkfm_77',['checkFM',['../class_item.html#aac323dbba691d2a1ffd0b760fdc2198d',1,'Item']]], + ['checkheatretry_78',['checkHeatRetry',['../class_item.html#a9fa6f17268398679295a57f7506089b8',1,'Item']]], + ['checkmodbusdimmer_79',['checkModbusDimmer',['../class_item.html#a899707e630b75eeb422fbc7ca3d829ce',1,'Item::checkModbusDimmer()'],['../class_item.html#a2d807aa2a634312bde779e174e28c4ce',1,'Item::checkModbusDimmer(int data)']]], + ['checkmodbusretry_80',['checkModbusRetry',['../class_item.html#a4454719134cb94ff27943cc35207fd74',1,'Item']]], + ['checkvcretry_81',['checkVCRetry',['../class_item.html#a353e817a01d39e0341fdc12b00351169',1,'Item']]], + ['chpersistent_82',['chPersistent',['../classch_persistent.html',1,'']]], + ['cleanconf_83',['cleanConf',['../main_8cpp.html#a19861585da4d4540b8f7c2601895607d',1,'main.cpp']]], + ['cleanstore_84',['cleanStore',['../inputs_8cpp.html#a4d0d8ca9d09c3caf99fbaec688ebef2a',1,'inputs.cpp']]], + ['clearflag_85',['clearFlag',['../class_item.html#a60c43acb3bd16c858ca4c1fa6b12145b',1,'Item']]], + ['cmd_86',['cmd',['../classitem_cmd.html#a4c421cb3f527b95459233ea210f6dfce',1,'itemCmd::cmd()'],['../classitem_cmd.html#a8b1cc0b2b9e5f30f4cf9bb4db21988ac',1,'itemCmd::Cmd(uint8_t i)']]], + ['cmd_5fauto_87',['CMD_AUTO',['../item_cmd_8h.html#ac6314f47e3a245eec13c6b5b0fa1c7db',1,'itemCmd.h']]], + ['cmd_5fcool_88',['CMD_COOL',['../item_cmd_8h.html#a4714e5ac85eca811a7d871e0cef7e720',1,'itemCmd.h']]], + ['cmd_5fdisabled_89',['CMD_DISABLED',['../item_cmd_8h.html#a9921eb85f3037b82c45510c726a444ee',1,'itemCmd.h']]], + ['cmd_5fdn_90',['CMD_DN',['../item_cmd_8h.html#a28e8a03e7dd6bd46383c79a8f329bda2',1,'itemCmd.h']]], + ['cmd_5fdry_91',['CMD_DRY',['../item_cmd_8h.html#a2f5d120eea10ae12a0da9cfecc64d75b',1,'itemCmd.h']]], + ['cmd_5fenabled_92',['CMD_ENABLED',['../item_cmd_8h.html#a6b3022e09de5e4e8677a44c47c14fd7f',1,'itemCmd.h']]], + ['cmd_5ffalse_93',['CMD_FALSE',['../item_cmd_8h.html#ace5569e1c56237a640e7321e71ce91ad',1,'itemCmd.h']]], + ['cmd_5ffan_94',['CMD_FAN',['../item_cmd_8h.html#ab321d93c256f9d29b4029a69711c6a12',1,'itemCmd.h']]], + ['cmd_5fhalt_95',['CMD_HALT',['../item_cmd_8h.html#a565ec1390b7b34a6ac42039ecb299455',1,'itemCmd.h']]], + ['cmd_5fheat_96',['CMD_HEAT',['../item_cmd_8h.html#a897c95ff7be54fc9316186b97412c9cf',1,'itemCmd.h']]], + ['cmd_5fhigh_97',['CMD_HIGH',['../item_cmd_8h.html#ae1666304f65177e83cebf6ae965d28d2',1,'itemCmd.h']]], + ['cmd_5fhsv_98',['CMD_HSV',['../item_cmd_8h.html#a6df5caa95ccde9d14fc620a8a7154aef',1,'itemCmd.h']]], + ['cmd_5fjson_99',['CMD_JSON',['../item_cmd_8h.html#a8ebc7dfd9ad3fa1a7ea3f5c1c4df02ab',1,'itemCmd.h']]], + ['cmd_5flow_100',['CMD_LOW',['../item_cmd_8h.html#a1d207679bdb2eb0b008bdb13fddd0f5c',1,'itemCmd.h']]], + ['cmd_5fmask_101',['CMD_MASK',['../item_cmd_8h.html#aede8404e1d3398c2c235eaa17ea2cd5d',1,'itemCmd.h']]], + ['cmd_5fmed_102',['CMD_MED',['../item_cmd_8h.html#aa903c4f6ec21104fa3f2960e2acdd2f6',1,'itemCmd.h']]], + ['cmd_5foff_103',['CMD_OFF',['../item_cmd_8h.html#a48422ade9d3e69812b682755ed27b51d',1,'itemCmd.h']]], + ['cmd_5fon_104',['CMD_ON',['../item_cmd_8h.html#ad22b3834e4e8a59a072b1b630b2a0cb7',1,'itemCmd.h']]], + ['cmd_5frestore_105',['CMD_RESTORE',['../item_cmd_8h.html#a55530b510f79a5db17ecf0a9db2ecaf7',1,'itemCmd.h']]], + ['cmd_5frgb_106',['CMD_RGB',['../item_cmd_8h.html#aed0d15abd0c058f50b31c3d77da9190b',1,'itemCmd.h']]], + ['cmd_5fstop_107',['CMD_STOP',['../item_cmd_8h.html#a46dc7ae84992bfe62cc00731959a67f4',1,'itemCmd.h']]], + ['cmd_5ftoggle_108',['CMD_TOGGLE',['../item_cmd_8h.html#a343682f7c52665540fd653195f727ef2',1,'itemCmd.h']]], + ['cmd_5ftrue_109',['CMD_TRUE',['../item_cmd_8h.html#a04b54affc87ca5d5434e05fb2ba287c1',1,'itemCmd.h']]], + ['cmd_5funknown_110',['CMD_UNKNOWN',['../item_cmd_8h.html#ae629f52b1af9bf75713ef35ea00b6ffa',1,'itemCmd.h']]], + ['cmd_5fup_111',['CMD_UP',['../item_cmd_8h.html#ad5c2fd894f208b25f6f8ed2b43660e7c',1,'itemCmd.h']]], + ['cmd_5fvoid_112',['CMD_VOID',['../item_cmd_8h.html#a9bbd3f606a1c37e525a172fa9b6b345d',1,'itemCmd.h']]], + ['cmd_5fxoff_113',['CMD_XOFF',['../item_cmd_8h.html#a5a0861b5be0a4e513580704940c32c38',1,'itemCmd.h']]], + ['cmd_5fxon_114',['CMD_XON',['../item_cmd_8h.html#a3871f1b01413297e1c23e1e484016a21',1,'itemCmd.h']]], + ['cmdcode_115',['cmdCode',['../unionitem_cmd_store.html#a84ce7db09b0fbd48c7266caf48636a61',1,'itemCmdStore']]], + ['cmdflag_116',['cmdFlag',['../unionitem_cmd_store.html#adc701d54e85ec503281a9ffcde0eabe2',1,'itemCmdStore']]], + ['cmdfunctioncleareeprom_117',['cmdFunctionClearEEPROM',['../main_8cpp.html#ab2e128aecd2d6a7c32257adb25b6bc0d',1,'main.cpp']]], + ['cmdfunctionget_118',['cmdFunctionGet',['../main_8cpp.html#a84a345181b5379a4dc0eec58f348deb7',1,'cmdFunctionGet(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a84a345181b5379a4dc0eec58f348deb7',1,'cmdFunctionGet(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionhelp_119',['cmdFunctionHelp',['../main_8cpp.html#a21fea6de1fe7b59684f3d18e3f4764d7',1,'cmdFunctionHelp(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a21fea6de1fe7b59684f3d18e3f4764d7',1,'cmdFunctionHelp(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionip_120',['cmdFunctionIp',['../main_8cpp.html#a5c6faf75e381fd57cf83b6efb002ceb4',1,'main.cpp']]], + ['cmdfunctionkill_121',['cmdFunctionKill',['../main_8cpp.html#ab854d947e87c345f801a07f196e50a67',1,'cmdFunctionKill(int arg_cnt, char **args): main.cpp'],['../main_8h.html#ab854d947e87c345f801a07f196e50a67',1,'cmdFunctionKill(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionload_122',['cmdFunctionLoad',['../main_8cpp.html#a3e35733dfdfb0fc4a3c55ab4bfc34fc1',1,'cmdFunctionLoad(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a3e35733dfdfb0fc4a3c55ab4bfc34fc1',1,'cmdFunctionLoad(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionpwd_123',['cmdFunctionPwd',['../main_8cpp.html#a46b3fce70062889d311e18a31d1dac28',1,'main.cpp']]], + ['cmdfunctionreboot_124',['cmdFunctionReboot',['../main_8cpp.html#a1f823c0616ac50cfe9d6d262c313b416',1,'main.cpp']]], + ['cmdfunctionreq_125',['cmdFunctionReq',['../main_8cpp.html#a1ebb3f04dc34df941a4bf974f7ad9443',1,'cmdFunctionReq(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a1ebb3f04dc34df941a4bf974f7ad9443',1,'cmdFunctionReq(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionsave_126',['cmdFunctionSave',['../main_8cpp.html#a66af021e24df0f8f82d9550cdb6bf865',1,'cmdFunctionSave(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a66af021e24df0f8f82d9550cdb6bf865',1,'cmdFunctionSave(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionsetmac_127',['cmdFunctionSetMac',['../main_8cpp.html#aea9177f835f6f4ad83d8f71dc0a4db77',1,'cmdFunctionSetMac(int arg_cnt, char **args): main.cpp'],['../main_8h.html#aea9177f835f6f4ad83d8f71dc0a4db77',1,'cmdFunctionSetMac(int arg_cnt, char **args): main.cpp']]], + ['cmdparam_128',['cmdParam',['../unionitem_cmd_store.html#a9177b4303781a900b2f6dace2e06980b',1,'itemCmdStore']]], + ['cmdstr_129',['cmdstr',['../item_cmd_8h.html#ac49c4ac803caeb10fcfb19ecd93f0cea',1,'itemCmd.h']]], + ['cmdtopic_130',['CMDTOPIC',['../options_8h.html#a351952e3a94b04d5f782d2cb69ea4209',1,'options.h']]], + ['colorchannel_131',['colorChannel',['../classcolor_channel.html',1,'colorChannel'],['../classcolor_channel.html#af5d8c0be99104c65484560a5a1c2cfd2',1,'colorChannel::colorChannel()']]], + ['colorchannel_2ecpp_132',['colorchannel.cpp',['../colorchannel_8cpp.html',1,'']]], + ['colorchannel_2eh_133',['colorchannel.h',['../colorchannel_8h.html',1,'']]], + ['colortemp_134',['colorTemp',['../unionitem_arg_store.html#a7fd4db655b58b154ac7852e1cba5aa18',1,'itemArgStore']]], + ['commandsnum_135',['commandsNum',['../item_cmd_8h.html#a4abe93c906bb31bebd4afd78fadec6f4',1,'itemCmd.h']]], + ['config_5fserver_136',['CONFIG_SERVER',['../options_8h.html#a979988f1e12c581103bd7dcd41be2a4a',1,'options.h']]], + ['configloaded_137',['configLoaded',['../main_8cpp.html#a235b23edd19d4c133a8d49bc1b09cedb',1,'main.cpp']]], + ['configlocked_138',['configLocked',['../inputs_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../item_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../main_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../utils_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp']]], + ['configok_139',['configOk',['../main_8cpp.html#a459dec3d2fac52eba9bf53c19d14bcc7',1,'main.cpp']]], + ['contactpoll_140',['contactPoll',['../class_input.html#a48dfeb886a0927b60d3200bbdea5765a',1,'Input']]], + ['controller_141',['CONTROLLER',['../options_8h.html#a6fa0e88c2f73f4e656831351dfdbf6e5',1,'options.h']]], + ['counterpoll_142',['counterPoll',['../class_input.html#a347f052d5de6b996d7e6cf4ac83485d9',1,'Input']]], + ['cst_5ffailed_143',['CST_FAILED',['../abstractch_8h.html#adcf23ecf1f6e4dbc5a6780645425399e',1,'abstractch.h']]], + ['cst_5finitialized_144',['CST_INITIALIZED',['../abstractch_8h.html#ab7dea1d4d49f436619dd52ce3da0d6c3',1,'abstractch.h']]], + ['cst_5funknown_145',['CST_UNKNOWN',['../abstractch_8h.html#ad5c9fbfc15fa16113c539de3867f54fc',1,'abstractch.h']]], + ['ctrl_146',['Ctrl',['../classabstract_out.html#aacaa5ef80fdc683ef96a4dc80d24692a',1,'abstractOut::Ctrl()'],['../classcolor_channel.html#a9d7354cc266c98067b7b43cbf8707feb',1,'colorChannel::Ctrl()'],['../class_item.html#a821048224e300ab4bb9eb047bf859b2c',1,'Item::Ctrl(itemCmd cmd, char *subItem=NULL)'],['../class_item.html#a51166376e10786d0daf684ea85988b75',1,'Item::Ctrl(char *payload, char *subItem=NULL)'],['../classout___a_c.html#aeaf2ac4088b2b4b2fd4e1b83755c9964',1,'out_AC::Ctrl()'],['../classout___modbus.html#a784be57c40d67b41488b9585fe792019',1,'out_Modbus::Ctrl()'],['../classout___motor.html#aa731e4d1848e07ac7dc4a99a0ddad942',1,'out_Motor::Ctrl()']]], + ['currentvalue_147',['currentValue',['../unionin_store.html#ab588498a30cd9248c4b98b939d6a3bd1',1,'inStore']]] +]; diff --git a/docs/html/search/all_4.html b/docs/html/search/all_4.html new file mode 100644 index 0000000..0540c16 --- /dev/null +++ b/docs/html/search/all_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_4.js b/docs/html/search/all_4.js new file mode 100644 index 0000000..2a67451 --- /dev/null +++ b/docs/html/search/all_4.js @@ -0,0 +1,47 @@ +var searchData= +[ + ['d_5fcheckt_148',['D_CHECKT',['../dmx_8h.html#a14052474033fc0b01cc36a5f52cfb575',1,'D_CHECKT(): dmx.h'],['../dmx_8cpp.html#a2bdd5f5b1312117028586d6a9a11a02c',1,'D_checkT(): dmx.cpp']]], + ['d_5fstate_149',['D_State',['../dmx_8cpp.html#aa205b5f0812aa803bb5ebe6067ca7bc7',1,'dmx.cpp']]], + ['d_5fupdated1_150',['D_UPDATED1',['../dmx_8h.html#aa2d5ab73cfb3c82efe053ca1c3ba2b9a',1,'dmx.h']]], + ['d_5fupdated2_151',['D_UPDATED2',['../dmx_8h.html#aaf60f29640da1e595ec01b5827cddc48',1,'dmx.h']]], + ['d_5fupdated3_152',['D_UPDATED3',['../dmx_8h.html#a7dfd71e0bf48e87b1310b8bf75297aed',1,'dmx.h']]], + ['d_5fupdated4_153',['D_UPDATED4',['../dmx_8h.html#a449cd019aa3e4cd80cb821450bd4f4bb',1,'dmx.h']]], + ['data_154',['data',['../out__ac_8cpp.html#a336725b3b566264f2223495f6294c3c7',1,'out_ac.cpp']]], + ['data_5fpin_155',['DATA_PIN',['../options_8h.html#adad67fe595ea440c8f8247ec2cddf070',1,'options.h']]], + ['debugout_156',['debugOut',['../classitem_cmd.html#a313a3ec3e6507dc0b7bc6238a81ce53a',1,'itemCmd']]], + ['debugserial_157',['debugSerial',['../main_8h.html#a9f5fbaf4b0a3b028eb31e734a5899428',1,'main.h']]], + ['debugserialport_158',['debugSerialPort',['../options_8h.html#ac24cce505133ea92266546bf33a6d713',1,'debugSerialPort(): options.h'],['../main_8cpp.html#a525e5725911fc3939bb449849aa1b5ab',1,'debugSerialPort(): main.cpp']]], + ['default_5ffirmware_5fmac_159',['DEFAULT_FIRMWARE_MAC',['../options_8h.html#abe0b358ba1d45a2a0aff0771182d4cb9',1,'options.h']]], + ['default_5finc_5fstep_160',['DEFAULT_INC_STEP',['../options_8h.html#ad04a0305cd8c165e0c8ae2aba5cf9f22',1,'options.h']]], + ['defaultsubitem_161',['defaultSubItem',['../class_item.html#a21371d449e5e6669b3f0eb0e080a7132',1,'Item']]], + ['defaultsuffixcode_162',['defaultSuffixCode',['../class_item.html#a4ff75a860339d86b006960b750a593e6',1,'Item']]], + ['defval_163',['defval',['../item_8cpp.html#abcb640867546187e7cbe6229cc3ec872',1,'item.cpp']]], + ['delayedstate_164',['delayedState',['../unionin_store.html#a719ff985b81bbfbd4905735ea5cee1a9',1,'inStore']]], + ['devicename_165',['deviceName',['../main_8cpp.html#a5da66826e811349c98b2daf2bafb78c2',1,'deviceName(): main.cpp'],['../utils_8cpp.html#a5da66826e811349c98b2daf2bafb78c2',1,'deviceName(): main.cpp']]], + ['dhcp_5fretry_5finterval_166',['DHCP_RETRY_INTERVAL',['../main_8h.html#a71a294b57014bc72835215290f1735fe',1,'main.h']]], + ['dht22poll_167',['dht22Poll',['../class_input.html#a70568f40b1008c2f5fdf378ada26a5c4',1,'Input']]], + ['dht_5fpoll_5fdelay_5fdefault_168',['DHT_POLL_DELAY_DEFAULT',['../options_8h.html#a1c0469867d0a25f440986acb7861fc7a',1,'options.h']]], + ['digitalreadcached_169',['digitalReadCached',['../classread_cache.html#a6fd0d58f3d2a4a027a80a2455999d9ae',1,'readCache']]], + ['dimpar_170',['dimPar',['../options_8h.html#a704a7ddbb1bdbf424a389aaa9210c931',1,'options.h']]], + ['disableddisconnected_171',['disabledDisconnected',['../main_8h.html#a4d31c49c58edcc310db78d660c434995',1,'main.h']]], + ['dmx_2ecpp_172',['dmx.cpp',['../dmx_8cpp.html',1,'']]], + ['dmx_2eh_173',['dmx.h',['../dmx_8h.html',1,'']]], + ['dmx_5fsmooth_5fdelay_174',['DMX_SMOOTH_DELAY',['../options_8h.html#ac9eefc1c2dc6cc5bf105a5acd40787ad',1,'options.h']]], + ['dmxarr_175',['dmxArr',['../dmx_8cpp.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp'],['../dmx_8h.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp'],['../main_8cpp.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp']]], + ['dmxcheck_176',['DMXCheck',['../dmx_8cpp.html#a0d740c517b312806bd34e2ac3155c3a5',1,'DMXCheck(void): dmx.cpp'],['../dmx_8h.html#a0d740c517b312806bd34e2ac3155c3a5',1,'DMXCheck(void): dmx.cpp']]], + ['dmximmediateupdate_177',['DMXImmediateUpdate',['../dmx_8cpp.html#a5e41f4011e2b2e2d400e4ac43a6541b1',1,'dmx.cpp']]], + ['dmxin_178',['DMXin',['../dmx_8cpp.html#adf18ba2ebc00417130f18dc9e34411c6',1,'dmx.cpp']]], + ['dmxinsetup_179',['DMXinSetup',['../dmx_8cpp.html#a45b57fab4ca3a3f7d3491506945c6326',1,'DMXinSetup(int channels): dmx.cpp'],['../dmx_8h.html#a45b57fab4ca3a3f7d3491506945c6326',1,'DMXinSetup(int channels): dmx.cpp']]], + ['dmxout_5fpropagate_180',['DMXOUT_propagate',['../dmx_8cpp.html#a7c166d810404d3d15f663706271de37f',1,'DMXOUT_propagate(): dmx.cpp'],['../dmx_8h.html#a7c166d810404d3d15f663706271de37f',1,'DMXOUT_propagate(): dmx.cpp']]], + ['dmxoutsetup_181',['DMXoutSetup',['../dmx_8cpp.html#af5aeb81882ff7b4fe7cccb66a12539df',1,'DMXoutSetup(int channels): dmx.cpp'],['../dmx_8h.html#af5aeb81882ff7b4fe7cccb66a12539df',1,'DMXoutSetup(int channels): dmx.cpp']]], + ['dmxput_182',['DMXput',['../dmx_8cpp.html#a9f36c84bdc0b4926f7d7b28bbe47cdc0',1,'DMXput(void): dmx.cpp'],['../dmx_8h.html#a9f36c84bdc0b4926f7d7b28bbe47cdc0',1,'DMXput(void): dmx.cpp']]], + ['dmxsemiimmediateupdate_183',['DMXSemiImmediateUpdate',['../dmx_8cpp.html#ac68a7598c52a61fd8e6300149f466b97',1,'dmx.cpp']]], + ['dmxupdate_184',['DMXUpdate',['../dmx_8cpp.html#a60c7644cd41f9525ada7b3799d015591',1,'dmx.cpp']]], + ['dmxwritebuf_185',['DmxWriteBuf',['../dmx_8cpp.html#a3faac041a7441faf18a1ad72021be077',1,'DmxWriteBuf(uint16_t chan, uint8_t val): dmx.cpp'],['../dmx_8h.html#a3faac041a7441faf18a1ad72021be077',1,'DmxWriteBuf(uint16_t chan, uint8_t val): dmx.cpp']]], + ['do_5fnothing_186',['DO_NOTHING',['../main_8h.html#a98b39d850b041da059cf5de62463a473aa3c06bc7e4d652a970cab72026c6fed1',1,'main.h']]], + ['do_5freconnect_187',['DO_RECONNECT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a9ea9900a7508394e36b0a3024397c285',1,'main.h']]], + ['do_5freinit_188',['DO_REINIT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a7b6874c83593674f516620bb883fff8b',1,'main.h']]], + ['driver_189',['driver',['../class_item.html#a93f339d62018da733bd6147797388eb2',1,'Item']]], + ['driverstatus_190',['driverStatus',['../classmb_persistent.html#aa394aed65c6af742dbae150639c7cfc3',1,'mbPersistent']]], + ['ds2482_5f100_5fi2c_5fto_5f1w_5fbridge_191',['DS2482_100_I2C_TO_1W_BRIDGE',['../ow_term_8h.html#a92c17810a48118ba0c75809050dd6bbe',1,'owTerm.h']]] +]; diff --git a/docs/html/search/all_5.html b/docs/html/search/all_5.html new file mode 100644 index 0000000..ebec30b --- /dev/null +++ b/docs/html/search/all_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_5.js b/docs/html/search/all_5.js new file mode 100644 index 0000000..91343f6 --- /dev/null +++ b/docs/html/search/all_5.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['eeprom_5ffix_5fpart_5flen_192',['EEPROM_FIX_PART_LEN',['../options_8h.html#aff59a0ac9e9d04f17868c674c13fbfdf',1,'options.h']]], + ['eeprom_5foffset_5fnotalligned_193',['EEPROM_offset_NotAlligned',['../options_8h.html#a003b1faba137828f090984d6ebc4817e',1,'options.h']]], + ['eeprom_5foffsetjson_194',['EEPROM_offsetJSON',['../options_8h.html#a5d3ef55d19773db32ebd9956edcc8b8d',1,'options.h']]], + ['eeprom_5fsignature_195',['EEPROM_SIGNATURE',['../options_8h.html#a084dba44a01332b67ab1ba8a599cde26',1,'EEPROM_SIGNATURE(): options.h'],['../textconst_8h.html#a2412d8e03a08775ec69a8d80fbcc2f53',1,'EEPROM_signature(): textconst.h']]], + ['eeprom_5fsignature_5flength_196',['EEPROM_SIGNATURE_LENGTH',['../options_8h.html#a9fe94e22a13344d105a17cf07a5842cd',1,'options.h']]], + ['end_197',['end',['../class_streamlog.html#ace6e3e265ae590b7f3b14b926bc3e60b',1,'Streamlog']]], + ['errorserial_198',['errorSerial',['../main_8h.html#a49f4668352e76de3b6187103927915f5',1,'main.h']]], + ['esp_5feeprom_5fsize_199',['ESP_EEPROM_SIZE',['../options_8h.html#a5b3cf2242175107b05c2f2b43c55a44c',1,'options.h']]], + ['ethclient_200',['ethClient',['../main_8cpp.html#a2a65545cb474469b22d80319e302a2f8',1,'main.cpp']]], + ['ethernetidle_201',['ethernetIdle',['../main_8cpp.html#ae161ded98969a4b68b902b79633edc3b',1,'main.cpp']]], + ['ethernetidlecount_202',['ethernetIdleCount',['../abstractch_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../inputs_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../item_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../main_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../utils_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp']]], + ['executecommand_203',['executeCommand',['../utils_8cpp.html#a132faa838403a6db82d1e7e65d4c4ff2',1,'executeCommand(aJsonObject *cmd, int8_t toggle): utils.cpp'],['../utils_8cpp.html#a2cd15a22b2799d0378a27850c96c6300',1,'executeCommand(aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd): utils.cpp'],['../utils_8h.html#a9843f57c765644bc93e675922da82beb',1,'executeCommand(aJsonObject *cmd, int8_t toggle=-1): utils.cpp'],['../utils_8h.html#a2cd15a22b2799d0378a27850c96c6300',1,'executeCommand(aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd): utils.cpp']]] +]; diff --git a/docs/html/search/all_6.html b/docs/html/search/all_6.html new file mode 100644 index 0000000..31cbd05 --- /dev/null +++ b/docs/html/search/all_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_6.js b/docs/html/search/all_6.js new file mode 100644 index 0000000..b9cc28c --- /dev/null +++ b/docs/html/search/all_6.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['feedbackclosed_204',['feedbackClosed',['../classout___motor.html#ad8179a6054b692c3f00c5fa350f59e3f',1,'out_Motor']]], + ['feedbackopen_205',['feedbackOpen',['../classout___motor.html#aa002cd716f47ee74a72dcd4e335b80ae',1,'out_Motor']]], + ['findregister_206',['findRegister',['../classout___modbus.html#a026f3ad193b151565f70a72d1c8ca48b',1,'out_Modbus']]], + ['flag_5fmask_207',['FLAG_MASK',['../item_cmd_8h.html#a890221cb651a3f30f6d1bca0d9b0e13d',1,'itemCmd.h']]], + ['flash_208',['flash',['../classstatus_l_e_d.html#a84044dc9116245b50a8c45792772dd7f',1,'statusLED']]], + ['flush_209',['flush',['../class_streamlog.html#aec3522140e0c8f95039e62747f841987',1,'Streamlog']]], + ['fm_5foverheat_5fcelsius_210',['FM_OVERHEAT_CELSIUS',['../options_8h.html#a9532a64e88b10a5317afd57397f99d3c',1,'options.h']]], + ['fmpar_211',['fmPar',['../options_8h.html#ab3adab6384decdb29117063df1a48ca7',1,'options.h']]], + ['freeram_212',['freeRam',['../utils_8h.html#a3c97971726a07a7d14fb701f4a4638f0',1,'utils.h']]] +]; diff --git a/docs/html/search/all_7.html b/docs/html/search/all_7.html new file mode 100644 index 0000000..18c555d --- /dev/null +++ b/docs/html/search/all_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js new file mode 100644 index 0000000..e5674d8 --- /dev/null +++ b/docs/html/search/all_7.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['g_213',['g',['../unionitem_arg_store.html#a37e8d18c09633f02fe99f16d9b995822',1,'itemArgStore']]], + ['getarg_214',['getArg',['../class_item.html#a04c95e83741aa896498ddbc869061886',1,'Item']]], + ['getargcount_215',['getArgCount',['../class_item.html#a9469cc0bb8560eb5f669d54903186433',1,'Item']]], + ['getargtype_216',['getArgType',['../classitem_cmd.html#afbb1ad437067315b7317b0846d71c7c7',1,'itemCmd']]], + ['getbright_217',['getBright',['../bright_8cpp.html#a773d31bb10e0abdf91e078da4326b7b0',1,'getBright(uint8_t percent): bright.cpp'],['../bright_8h.html#a773d31bb10e0abdf91e078da4326b7b0',1,'getBright(uint8_t percent): bright.cpp']]], + ['getbright255_218',['getBright255',['../bright_8cpp.html#a1707bc1c6aa92f67ef5a4456cbbec0c3',1,'getBright255(uint8_t percent): bright.cpp'],['../bright_8h.html#a1707bc1c6aa92f67ef5a4456cbbec0c3',1,'getBright255(uint8_t percent): bright.cpp']]], + ['getchanneladdr_219',['getChannelAddr',['../classcolor_channel.html#a09276ae99835316b9a222df20fb45097',1,'colorChannel']]], + ['getchantype_220',['getChanType',['../classabstract_out.html#a3f7033b9cda791ad810c4837ed5909f2',1,'abstractOut::getChanType()'],['../class_item.html#af1a89a9947e7759ce74f17d614346f46',1,'Item::getChanType()'],['../classout__dmx.html#a575351786cdc191555757cd39b4382f5',1,'out_dmx::getChanType()'],['../classout___modbus.html#a2752cf2376840f3763572963be8785db',1,'out_Modbus::getChanType()'],['../classout___motor.html#afd67d9b6e08f14074a236d5222809226',1,'out_Motor::getChanType()'],['../classout__pwm.html#a54bea9682560aa628f85a532a363d57a',1,'out_pwm::getChanType()'],['../classout___s_p_i_led.html#aac304bcdc354a3667ec99d4c06513b72',1,'out_SPILed::getChanType()']]], + ['getcmd_221',['getCmd',['../class_item.html#a25cddf040ae48d36375e54eb7fb31cf1',1,'Item::getCmd()'],['../classitem_cmd.html#a3ebb3c736df555ec4761713244195efb',1,'itemCmd::getCmd()']]], + ['getcmdparam_222',['getCmdParam',['../classitem_cmd.html#a96d4c944d09209825c3a5f770ff9b662',1,'itemCmd']]], + ['getconfig_223',['getConfig',['../classout___modbus.html#aea16d64ad349120558951f92205d5249',1,'out_Modbus::getConfig()'],['../classout___motor.html#a7ba2681d317e29a412e44741ae1ff5e4',1,'out_Motor::getConfig()'],['../classout___s_p_i_led.html#a6bcd6f13a335b380dfa655d5de4cbe75',1,'out_SPILed::getConfig()']]], + ['getcrc_224',['getCRC',['../out__ac_8cpp.html#afe1602b340d5fab3a7047498810fed25',1,'out_ac.cpp']]], + ['getdefaultonval_225',['getDefaultOnVal',['../classabstract_out.html#aedf98f968abc36332dcddb7eab00fe13',1,'abstractOut']]], + ['getext_226',['getExt',['../class_item.html#ab27cd47af857151cb695f7a4b4000424',1,'Item']]], + ['getflag_227',['getFlag',['../class_item.html#a15e9623fffd070c01c3dd87b1cc09ab3',1,'Item']]], + ['geth_228',['getH',['../classitem_cmd.html#ad694475a5854b6fc65de797814bf6c34',1,'itemCmd']]], + ['getidxfield_229',['getIdxField',['../class_input.html#a0697613f4b723bdb63e8c5510f85b9c6',1,'Input']]], + ['getint_230',['getInt',['../classitem_cmd.html#accd4361f950ca4929aaa9fd09aa82dd7',1,'itemCmd::getInt()'],['../utils_8cpp.html#a6037cfc7913c0856e93dbf8fc2133aac',1,'getInt(char **chan): utils.cpp'],['../utils_8h.html#a6037cfc7913c0856e93dbf8fc2133aac',1,'getInt(char **chan): utils.cpp']]], + ['getpercents_231',['getPercents',['../classitem_cmd.html#a7e931f05bd5160906078edc9b69f2a81',1,'itemCmd']]], + ['getpercents255_232',['getPercents255',['../classitem_cmd.html#a35a4a9458cc6550ed6a4891599e6bf9e',1,'itemCmd']]], + ['getpersistent_233',['getPersistent',['../class_item.html#ad1c452e68967188402a96a687aba6af0',1,'Item']]], + ['gets_234',['getS',['../classitem_cmd.html#ae583a6f85cc8e8f8c9fbca9e74874629',1,'itemCmd']]], + ['getstringfromconfig_235',['getStringFromConfig',['../main_8cpp.html#a900f9d7a9963ef64b642248a76175af7',1,'getStringFromConfig(aJsonObject *a, int i): main.cpp'],['../main_8cpp.html#a7d5e0e0612ab235c45bea4406faa5f76',1,'getStringFromConfig(aJsonObject *a, char *name): main.cpp']]], + ['getsubtype_236',['getSubtype',['../class_item.html#ad00923c702189ad97c6af2c3c20150fa',1,'Item']]], + ['getsuffix_237',['getSuffix',['../classitem_cmd.html#ac79ae89527f223885ef02db1c46ef20c',1,'itemCmd']]], + ['getval_238',['getVal',['../class_item.html#aba81303d678129315e393e11319b5ec5',1,'Item']]] +]; diff --git a/docs/html/search/all_8.html b/docs/html/search/all_8.html new file mode 100644 index 0000000..0f9eb41 --- /dev/null +++ b/docs/html/search/all_8.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_8.js b/docs/html/search/all_8.js new file mode 100644 index 0000000..741ba1d --- /dev/null +++ b/docs/html/search/all_8.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['h_239',['h',['../unionitem_arg_store.html#ab17b3df738c8f12a45efb2c96fa99f4d',1,'itemArgStore']]], + ['have_5fip_5faddress_240',['HAVE_IP_ADDRESS',['../main_8h.html#a98b39d850b041da059cf5de62463a473ad5eee46b7b3980a2e3434ec7f605fa4a',1,'main.h']]], + ['hex2dec_241',['HEX2DEC',['../utils_8cpp.html#a4cafbb82e446669dd50a2a386c1531fd',1,'HEX2DEC(char i): utils.cpp'],['../utils_8h.html#a215fd13be95cb1c21fe50b3693b85557',1,'HEX2DEC(char i): utils.cpp']]], + ['hexstr_242',['HEXSTR',['../utils_8cpp.html#a0317be66119cccdb71b5276f914cef50',1,'utils.cpp']]], + ['hometopic_243',['HOMETOPIC',['../options_8h.html#adc36ff54aa68faae86f3aacd10a05f30',1,'options.h']]], + ['hs_244',['HS',['../classitem_cmd.html#adf272eeb6a9d65581ea3b773e94a9f3f',1,'itemCmd']]], + ['hsv_245',['HSV',['../classitem_cmd.html#a7fcb37674371093f11886bc7d1d39825',1,'itemCmd']]] +]; diff --git a/docs/html/search/all_9.html b/docs/html/search/all_9.html new file mode 100644 index 0000000..d27c0f7 --- /dev/null +++ b/docs/html/search/all_9.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_9.js b/docs/html/search/all_9.js new file mode 100644 index 0000000..b7cf71c --- /dev/null +++ b/docs/html/search/all_9.js @@ -0,0 +1,98 @@ +var searchData= +[ + ['i2creset_246',['i2cReset',['../in__ccs811__hdc1080_8cpp.html#afb6d390da3bb3ce4bb8208512a7b6cdb',1,'in_ccs811_hdc1080.cpp']]], + ['i_5farg_247',['I_ARG',['../item_8h.html#af8d092a321ecfbeda6cdd7c4b66489d1',1,'item.h']]], + ['i_5fcmd_248',['I_CMD',['../item_8h.html#a238f99ac45b5fc2219c6832dde0c0c9c',1,'item.h']]], + ['i_5fext_249',['I_EXT',['../item_8h.html#acb5cc75c544a0305caec81705c5342d5',1,'item.h']]], + ['i_5ftype_250',['I_TYPE',['../item_8h.html#a685813f758ad8fb6fad67c0084c5ca09',1,'item.h']]], + ['i_5fval_251',['I_VAL',['../item_8h.html#a0b4d13f8b65a71a667a459ebad8e589b',1,'item.h']]], + ['iaddr_252',['iaddr',['../classcolor_channel.html#a4dd2fa654273b3bf9a3413ee2966fdce',1,'colorChannel']]], + ['id_253',['id',['../structreg__t.html#aa6f178d356ff8de15842a2070c46ff64',1,'reg_t']]], + ['iet_5fattempts_254',['IET_ATTEMPTS',['../options_8h.html#a826349834da27a108e00c318c756710d',1,'options.h']]], + ['iet_5ftemp_255',['IET_TEMP',['../options_8h.html#afae9befc056895af99a4ee18cd5abc8c',1,'options.h']]], + ['in_256',['in',['../classabstract_in.html#a626e3421b4830ca81ca8b48fa802c1ca',1,'abstractIn']]], + ['in_5factive_5fhigh_257',['IN_ACTIVE_HIGH',['../inputs_8h.html#aba343c99487259d92ad5bd6fbd3e01a0',1,'inputs.h']]], + ['in_5fanalog_258',['IN_ANALOG',['../inputs_8h.html#ae5e104b6991479f7964dcc6ed21bd974',1,'inputs.h']]], + ['in_5fccs811_259',['in_ccs811',['../classin__ccs811.html',1,'in_ccs811'],['../classin__ccs811.html#a7e09edfd07c7c4f2e429e64f008f31c3',1,'in_ccs811::in_ccs811()'],['../inputs_8h.html#a59e48c8bcc2a86b2173aeb7667134c2c',1,'IN_CCS811(): inputs.h']]], + ['in_5fccs811_5fhdc1080_2ecpp_260',['in_ccs811_hdc1080.cpp',['../in__ccs811__hdc1080_8cpp.html',1,'']]], + ['in_5fccs811_5fhdc1080_2eh_261',['in_ccs811_hdc1080.h',['../in__ccs811__hdc1080_8h.html',1,'']]], + ['in_5fcounter_262',['IN_COUNTER',['../inputs_8h.html#a7da1147e75fa22d9662c9294344168ba',1,'inputs.h']]], + ['in_5fdht22_263',['IN_DHT22',['../inputs_8h.html#a099689609ba9908f787941e40c15b434',1,'inputs.h']]], + ['in_5fhdc1080_264',['in_hdc1080',['../classin__hdc1080.html',1,'in_hdc1080'],['../classin__hdc1080.html#a1045683d0e3ef4ddddc5a12753df323e',1,'in_hdc1080::in_hdc1080()'],['../inputs_8h.html#a1e44d68ca398ab8d851125089790f0f1',1,'IN_HDC1080(): inputs.h']]], + ['in_5fi2c_265',['IN_I2C',['../inputs_8h.html#ac34df8e2157eb91e5674ec0c445bbc8a',1,'inputs.h']]], + ['in_5fpush_5fon_266',['IN_PUSH_ON',['../inputs_8h.html#a2ce550d73403239bdf30482a6882d2dd',1,'inputs.h']]], + ['in_5fpush_5ftoggle_267',['IN_PUSH_TOGGLE',['../inputs_8h.html#acc7e62f775448aa89e2b13df0019c993',1,'inputs.h']]], + ['in_5fre_268',['IN_RE',['../inputs_8h.html#ad4e2a819b46d5e31f5f1cacd885a7679',1,'inputs.h']]], + ['in_5fuptime_269',['IN_UPTIME',['../inputs_8h.html#a1b200efddb3fee0da5f4c0d38769b7ff',1,'inputs.h']]], + ['incache_270',['inCache',['../inputs_8cpp.html#a550fbf41418f36b963b995f7de144eea',1,'inCache(): inputs.cpp'],['../inputs_8h.html#a550fbf41418f36b963b995f7de144eea',1,'inCache(): inputs.cpp']]], + ['incheck_271',['inCheck',['../out__ac_8cpp.html#a82e58a1f3257f9121902c3edfc841445',1,'out_ac.cpp']]], + ['incrementh_272',['incrementH',['../classitem_cmd.html#ae0224e0c9b5d1aff2bb75f48c79f9711',1,'itemCmd']]], + ['incrementpercents_273',['incrementPercents',['../classitem_cmd.html#a2557d6a4edf34be8d98d5629327041b6',1,'itemCmd']]], + ['increments_274',['incrementS',['../classitem_cmd.html#ad4f3518f0b46b17152cdf18229e77f97',1,'itemCmd']]], + ['inet_5faton_275',['inet_aton',['../utils_8cpp.html#a2abeec32a0c7fe0b4aa02a8807ed9cee',1,'inet_aton(const char *aIPAddrString, IPAddress &aResult): utils.cpp'],['../utils_8h.html#a2abeec32a0c7fe0b4aa02a8807ed9cee',1,'inet_aton(const char *aIPAddrString, IPAddress &aResult): utils.cpp']]], + ['inet_5fntoa_5fr_276',['inet_ntoa_r',['../utils_8cpp.html#a5f3cdb518da692b8859ae48ed58196fc',1,'inet_ntoa_r(IPAddress addr, char *buf, int buflen): utils.cpp'],['../utils_8h.html#a5f3cdb518da692b8859ae48ed58196fc',1,'inet_ntoa_r(IPAddress addr, char *buf, int buflen): utils.cpp']]], + ['infoserial_277',['infoSerial',['../main_8h.html#a962d0234b6d650699159b02bbb1ba659',1,'main.h']]], + ['init_5fvolume_278',['INIT_VOLUME',['../options_8h.html#a10a53e1555887eda29a06279883b5407',1,'options.h']]], + ['initial_5fstate_279',['INITIAL_STATE',['../main_8h.html#a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f',1,'main.h']]], + ['initializedlisteners_280',['initializedListeners',['../main_8cpp.html#ad40189c6dffdd91758f3686c80484ac7',1,'main.cpp']]], + ['input_281',['Input',['../class_input.html',1,'Input'],['../classabstract_in.html#a24f5c11f0de37b93cc9da4f5023040f7',1,'abstractIn::Input()'],['../class_input.html#a52d1d1d4eb7890e186fa0faa11636b82',1,'Input::Input(aJsonObject *obj, aJsonObject *configObj=NULL)'],['../class_input.html#adae232acc9d1e127947a8b09f1665fb2',1,'Input::Input(char *name)']]], + ['inputloop_282',['inputLoop',['../main_8cpp.html#ad146ac5b8d70c1a9a590ba4029c3548e',1,'inputLoop(void): main.cpp'],['../main_8h.html#ad146ac5b8d70c1a9a590ba4029c3548e',1,'inputLoop(void): main.cpp']]], + ['inputobj_283',['inputObj',['../class_input.html#a4dbfdd3e7da95a3d4873286da07733f2',1,'Input']]], + ['inputs_284',['inputs',['../inputs_8h.html#a9e63aa63a6b8b667a41f94bec231d7aa',1,'inputs(): main.cpp'],['../main_8cpp.html#a9e63aa63a6b8b667a41f94bec231d7aa',1,'inputs(): main.cpp']]], + ['inputs_2ecpp_285',['inputs.cpp',['../inputs_8cpp.html',1,'']]], + ['inputs_2eh_286',['inputs.h',['../inputs_8h.html',1,'']]], + ['inputsetup_287',['inputSetup',['../main_8cpp.html#a312b53e977f386af72ed576bca617fef',1,'inputSetup(void): main.cpp'],['../main_8h.html#a312b53e977f386af72ed576bca617fef',1,'inputSetup(void): main.cpp']]], + ['insertdata_288',['InsertData',['../classout___a_c.html#ae1fe864367b2837872ad28f8f94f6cf0',1,'out_AC']]], + ['instore_289',['inStore',['../unionin_store.html',1,'']]], + ['int_290',['Int',['../classitem_cmd.html#aa6d1298546ecd8bfdbeae946e8d8fb93',1,'itemCmd::Int(int32_t i)'],['../classitem_cmd.html#a00d824ac0ccb48770e01c69c83f6f265',1,'itemCmd::Int(uint32_t i)']]], + ['interval_5fac_5fpolling_291',['INTERVAL_AC_POLLING',['../out__ac_8cpp.html#a4862ba1039c5c7ce3b51609c733cc091',1,'out_ac.cpp']]], + ['interval_5fcheck_5finput_292',['INTERVAL_CHECK_INPUT',['../options_8h.html#a67828bcb6f0269a0e14ccb7b3dd8bc36',1,'options.h']]], + ['interval_5fcheck_5fmodbus_293',['INTERVAL_CHECK_MODBUS',['../options_8h.html#ad122bb80520d348463d54eebac2ba4a5',1,'options.h']]], + ['interval_5fcheck_5fsensor_294',['INTERVAL_CHECK_SENSOR',['../options_8h.html#acfa30965b93565c71cdeb70b86d08560',1,'options.h']]], + ['interval_5fpolling_295',['INTERVAL_POLLING',['../options_8h.html#ad644e892aeb35da4ec2d602aa2fffb59',1,'options.h']]], + ['intopic_296',['INTOPIC',['../options_8h.html#a05897083928b56e953ae17a19bf42ecc',1,'options.h']]], + ['intype_297',['inType',['../class_input.html#a0354094b474b7b9fa305bfc3500d3cee',1,'Input']]], + ['invalidateinputcache_298',['invalidateInputCache',['../classread_cache.html#a7ecad823239b195a10fddb527b122dc7',1,'readCache']]], + ['ip_5fready_5fconfig_5floaded_5fconnecting_5fto_5fbroker_299',['IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER',['../main_8h.html#a98b39d850b041da059cf5de62463a473a3313433a81a25d16c72bb69503429b2d',1,'IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER(): main.h'],['../main_8cpp.html#aed1aedfd8ec1c64e58ca24e5de9470b2',1,'ip_ready_config_loaded_connecting_to_broker(): main.cpp'],['../main_8h.html#aed1aedfd8ec1c64e58ca24e5de9470b2',1,'ip_ready_config_loaded_connecting_to_broker(): main.cpp']]], + ['iploadfromflash_300',['ipLoadFromFlash',['../main_8cpp.html#a4ae13d2288d58c3ea8b731270fa798d3',1,'ipLoadFromFlash(short n, IPAddress &ip): main.cpp'],['../main_8h.html#a4ae13d2288d58c3ea8b731270fa798d3',1,'ipLoadFromFlash(short n, IPAddress &ip): main.cpp']]], + ['is_5fidle_301',['IS_IDLE',['../inputs_8h.html#a507029f213f840df9f2fe96dcc7073b6',1,'inputs.h']]], + ['is_5flong_302',['IS_LONG',['../inputs_8h.html#a85528d0ffe9c9bda0ee24df255b3b4e8',1,'inputs.h']]], + ['is_5flong2_303',['IS_LONG2',['../inputs_8h.html#a70196afd205ccebf16e0d21e28085463',1,'inputs.h']]], + ['is_5flong3_304',['IS_LONG3',['../inputs_8h.html#a7f49a84bcfd2ed0db0ef8286b2938ed3',1,'inputs.h']]], + ['is_5fpressed_305',['IS_PRESSED',['../inputs_8h.html#a60858d59aa9fd54683018c3023970db5',1,'inputs.h']]], + ['is_5fpressed2_306',['IS_PRESSED2',['../inputs_8h.html#a8ff81a2547cf3c73928f178421c138cd',1,'inputs.h']]], + ['is_5fpressed3_307',['IS_PRESSED3',['../inputs_8h.html#aa39f578ac73d4da04627db6fd5113560',1,'inputs.h']]], + ['is_5freleased_308',['IS_RELEASED',['../inputs_8h.html#a48d052eb1ddf55fa433b502a04c9f039',1,'inputs.h']]], + ['is_5freleased2_309',['IS_RELEASED2',['../inputs_8h.html#acc1208e582a1855b46186e8cbb2382cd',1,'inputs.h']]], + ['is_5frepeat_310',['IS_REPEAT',['../inputs_8h.html#ab3d60474188c792fa7bd73c7784cf20c',1,'inputs.h']]], + ['is_5frepeat2_311',['IS_REPEAT2',['../inputs_8h.html#affb5fbff8a836cebd5a45aee2887421e',1,'inputs.h']]], + ['is_5frepeat3_312',['IS_REPEAT3',['../inputs_8h.html#ab28e4094346017851f2af764b25caeea',1,'inputs.h']]], + ['is_5freqstate_313',['IS_REQSTATE',['../inputs_8h.html#aa55e3a1001f7520b5623aaf68fa400ef',1,'inputs.h']]], + ['is_5fwaitpress_314',['IS_WAITPRESS',['../inputs_8h.html#acf0965f44337b7a1204e76f274397aa9',1,'inputs.h']]], + ['is_5fwaitrelease_315',['IS_WAITRELEASE',['../inputs_8h.html#aa4d3605f66fe7dd02a6dcd8da2e61fce',1,'inputs.h']]], + ['isactive_316',['isActive',['../classabstract_out.html#aec9af01cfc42f385cdf36ce51c8f3387',1,'abstractOut::isActive()'],['../class_item.html#a4db79caf8ace960c0bf74181c0bf5faa',1,'Item::isActive()'],['../classout___a_c.html#ab2d5debf137c9cc91ce0b58a72da0766',1,'out_AC::isActive()'],['../classout__dmx.html#a691d16146df96df12df763a90cdc6d92',1,'out_dmx::isActive()'],['../classout___modbus.html#a6b94efbbbbea5a4ad3b489dba8f9b268',1,'out_Modbus::isActive()'],['../classout___motor.html#ac2a224d74421c1a28d34a83779a45bdc',1,'out_Motor::isActive()'],['../classout__pwm.html#a18f9c90ab80a5bf00049e25c2c4657a5',1,'out_pwm::isActive()'],['../classout___s_p_i_led.html#ae87041b49ca8c6484a72c3c29955fbfb',1,'out_SPILed::isActive()']]], + ['iscolor_317',['isColor',['../classitem_cmd.html#aac6f0edbc2226dab5086a50537e31eb8',1,'itemCmd']]], + ['iscommand_318',['isCommand',['../classitem_cmd.html#aedd2c4f5da90fbe521be950f8f0d5f67',1,'itemCmd']]], + ['isnotretainingstatus_319',['isNotRetainingStatus',['../main_8cpp.html#a9b73380a4525361ce5634b890e83c8d2',1,'isNotRetainingStatus(): main.cpp'],['../main_8h.html#a9b73380a4525361ce5634b890e83c8d2',1,'isNotRetainingStatus(): main.cpp']]], + ['isthermostat_320',['IsThermostat',['../main_8h.html#a31ee3eed42c2bdf317dca09913f89b27',1,'main.h']]], + ['isthermostatwithminarraysize_321',['isThermostatWithMinArraySize',['../main_8cpp.html#a5976046ebb500523e75d64f9c858d73d',1,'main.cpp']]], + ['istimeover_322',['isTimeOver',['../utils_8cpp.html#a1c013af2ccb8a6dd130f0ab706b1abc4',1,'isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo): utils.cpp'],['../utils_8h.html#acd6072104e482c3f61e5bfad35a58ac0',1,'isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo=0xFFFFFFFF): utils.cpp']]], + ['isvalid_323',['isValid',['../class_input.html#a2e60007024a65b9529d8db1873bf8696',1,'Input::isValid()'],['../class_item.html#a3bbd12527ff3638189cae5291e578a96',1,'Item::isValid()']]], + ['isvalue_324',['isValue',['../classitem_cmd.html#a1c268b594eb9f4ea77ae8683f777e7ef',1,'itemCmd']]], + ['item_325',['Item',['../class_item.html',1,'Item'],['../class_item.html#ac6f9ffe686b184cd30fb9ff023af9d35',1,'Item::Item(char *name)'],['../class_item.html#a8df555ab7f99a4bc363204c10d946934',1,'Item::Item(aJsonObject *obj)'],['../classabstract_out.html#af93f193ac2f0621d0ba08f1f1d11e8b7',1,'abstractOut::item()']]], + ['item_2ecpp_326',['item.cpp',['../item_8cpp.html',1,'']]], + ['item_2eh_327',['item.h',['../item_8h.html',1,'']]], + ['itemarg_328',['itemArg',['../class_item.html#ab831f5a6f56b59761a8ee5dbf38c0999',1,'Item']]], + ['itemargstore_329',['itemArgStore',['../unionitem_arg_store.html',1,'']]], + ['itemargtype_330',['itemArgType',['../unionitem_cmd_store.html#ad0bc30321304871f89b2ed223d739421',1,'itemCmdStore']]], + ['itemarr_331',['itemArr',['../class_item.html#a4332fe989485f159b4fefa871cc213b9',1,'Item']]], + ['itemcmd_332',['itemCmd',['../classitem_cmd.html',1,'itemCmd'],['../classitem_cmd.html#a0bb584552fc43e5f081ab839a56e6f47',1,'itemCmd::itemCmd(uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)'],['../classitem_cmd.html#a1d55aaa33dbc0e9cd5c24682434eceb5',1,'itemCmd::itemCmd(float val)']]], + ['itemcmd_2ecpp_333',['itemCmd.cpp',['../item_cmd_8cpp.html',1,'']]], + ['itemcmd_2eh_334',['itemCmd.h',['../item_cmd_8h.html',1,'']]], + ['itemcmdstore_335',['itemCmdStore',['../unionitem_cmd_store.html',1,'']]], + ['itemctrl2_336',['itemCtrl2',['../dmx_8cpp.html#abbcd6bfbf8b1c05b00ba38459d41ff4d',1,'itemCtrl2(char *name, int r, int g, int b, int w): dmx.cpp'],['../dmx_8h.html#abbcd6bfbf8b1c05b00ba38459d41ff4d',1,'itemCtrl2(char *name, int r, int g, int b, int w): dmx.cpp']]], + ['itemext_337',['itemExt',['../class_item.html#a39291138106342bc0d49ccfb125f7a95',1,'Item']]], + ['items_338',['items',['../dmx_8cpp.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp'],['../item_8h.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp'],['../main_8cpp.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp']]], + ['itemtype_339',['itemType',['../class_item.html#ae0bac41fded34ffbd1e3634e15772039',1,'Item']]], + ['itemval_340',['itemVal',['../class_item.html#aabf1180ef4ab072817a28020814bce48',1,'Item']]] +]; diff --git a/docs/html/search/all_a.html b/docs/html/search/all_a.html new file mode 100644 index 0000000..2c8b75b --- /dev/null +++ b/docs/html/search/all_a.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_a.js b/docs/html/search/all_a.js new file mode 100644 index 0000000..5739047 --- /dev/null +++ b/docs/html/search/all_a.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['lan_5finit_5fdelay_341',['LAN_INIT_DELAY',['../options_8h.html#ab6d9c8b27dcdac1da3fb43eed5dd893c',1,'options.h']]], + ['lan_5fstatus_342',['lan_status',['../main_8h.html#a98b39d850b041da059cf5de62463a473',1,'main.h']]], + ['lanloop_343',['lanLoop',['../main_8cpp.html#ac90757e5d1212e1b230bb4db8924d310',1,'lanLoop(): main.cpp'],['../main_8h.html#ac90757e5d1212e1b230bb4db8924d310',1,'lanLoop(): main.cpp']]], + ['lanstatus_344',['lanStatus',['../abstractch_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../abstractin_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../item_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../main_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp']]], + ['lastvalue_345',['lastValue',['../unionin_store.html#accec7f5bdcfc35e9cc86a66c301348e2',1,'inStore']]], + ['led_346',['LED',['../main_8cpp.html#a1c77e6f587043bdec86e0cabd956e2e2',1,'main.cpp']]], + ['ledblink_347',['ledBLINK',['../statusled_8h.html#afde6ff647a44b9f2bbcc0804b3c9d950',1,'statusled.h']]], + ['ledblue_348',['ledBLUE',['../statusled_8h.html#a54932b3e1a9e2111b9d6f1942c9502e2',1,'statusled.h']]], + ['leddelayms_349',['ledDelayms',['../statusled_8h.html#aaf229718aeb968c22e9aa6f593817c99',1,'statusled.h']]], + ['ledfastblink_350',['ledFASTBLINK',['../statusled_8h.html#ab9aeb6ac9ca5ac56497211a67cca7f8e',1,'statusled.h']]], + ['ledfastdelayms_351',['ledFastDelayms',['../statusled_8h.html#aff5146ea744dbe707098bdb5cdca32a6',1,'statusled.h']]], + ['ledflash_352',['ledFlash',['../statusled_8h.html#aa68d61961165bd42444cba4dcefb4726',1,'statusled.h']]], + ['ledgreen_353',['ledGREEN',['../statusled_8h.html#a3ee296c79e4936c800e6730f733737c5',1,'statusled.h']]], + ['ledhidden_354',['ledHidden',['../statusled_8h.html#a3e8259c89abd4a7013c4bc87274e09c7',1,'statusled.h']]], + ['ledparams_355',['ledParams',['../statusled_8h.html#ade6c6ff9e05c884cf0eae053230d3bf2',1,'statusled.h']]], + ['ledred_356',['ledRED',['../statusled_8h.html#abfe826857256aa93aa762e7d98390743',1,'statusled.h']]], + ['ledstype_357',['ledsType',['../classout___s_p_i_led.html#a974b04b25156932c97dac2ba794c729f',1,'out_SPILed']]], + ['len_5fb_358',['LEN_B',['../out__ac_8h.html#ad19ce971fd0a801e62b47ccc237e7adc',1,'out_ac.h']]], + ['libs_5finitialized_359',['LIBS_INITIALIZED',['../main_8h.html#a98b39d850b041da059cf5de62463a473a3e7fa6277fa286ce64cfab4f9e6d77c2',1,'main.h']]], + ['loadconfigfromeeprom_360',['loadConfigFromEEPROM',['../main_8cpp.html#a92e24c034fb886c8155d50831bae5823',1,'loadConfigFromEEPROM(): main.cpp'],['../main_8h.html#a92e24c034fb886c8155d50831bae5823',1,'loadConfigFromEEPROM(): main.cpp']]], + ['loadconfigfromhttp_361',['loadConfigFromHttp',['../main_8cpp.html#aa6db506a9d019ba9decab546c15eb819',1,'loadConfigFromHttp(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a1369dd2c9e03f46af35b247a5e8548df',1,'loadConfigFromHttp(int arg_cnt=0, char **args=NULL): main.cpp']]], + ['loadflash_362',['loadFlash',['../main_8cpp.html#aff5e7d5d674ed8a8fedcde644c725f68',1,'loadFlash(short n, char *str, short l): main.cpp'],['../main_8h.html#a7f53de7620c6cfb1462d7c94b5f9814c',1,'loadFlash(short n, char *str, short l=MAXFLASHSTR): main.cpp']]], + ['loaditem_363',['loadItem',['../classitem_cmd.html#aea24f60f90bfe69d65669c06007421fc',1,'itemCmd']]], + ['lock_364',['lock',['../out__ac_8cpp.html#a8348487a31a8c5d8e2f94ea77c5e70a7',1,'out_ac.cpp']]], + ['log_365',['log',['../utils_8cpp.html#aadf1050416e46077ad59157173438dad',1,'log(const char *str,...): utils.cpp'],['../utils_8h.html#aadf1050416e46077ad59157173438dad',1,'log(const char *str,...): utils.cpp']]], + ['log_5fdebug_366',['LOG_DEBUG',['../streamlog_8h.html#a6ff63e8955665c4a58b1598f2b07c51a',1,'streamlog.h']]], + ['log_5ferror_367',['LOG_ERROR',['../streamlog_8h.html#aced66975c154ea0e2a8ec3bc818b4e08',1,'streamlog.h']]], + ['log_5finfo_368',['LOG_INFO',['../streamlog_8h.html#aeb4f36db01bd128c7afeac5889dac311',1,'streamlog.h']]], + ['logbuffer_5fsize_369',['LOGBUFFER_SIZE',['../streamlog_8h.html#a2e75de3d470df65326791691c3039c70',1,'streamlog.h']]], + ['logicstate_370',['logicState',['../unionin_store.html#a44af41c00bfa555c4a9f7c7d5e2cfbc7',1,'inStore']]], + ['loop_5fmain_371',['loop_main',['../main_8cpp.html#a840f282fdf876a88d5ff634fd74f10be',1,'loop_main(): main.cpp'],['../main_8h.html#a840f282fdf876a88d5ff634fd74f10be',1,'loop_main(): main.cpp']]] +]; diff --git a/docs/html/search/all_b.html b/docs/html/search/all_b.html new file mode 100644 index 0000000..9a220b1 --- /dev/null +++ b/docs/html/search/all_b.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_b.js b/docs/html/search/all_b.js new file mode 100644 index 0000000..97e7565 --- /dev/null +++ b/docs/html/search/all_b.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['mac_372',['mac',['../main_8cpp.html#a775118f5b90a904c7e65066faabab1a2',1,'main.cpp']]], + ['main_2ecpp_373',['main.cpp',['../main_8cpp.html',1,'']]], + ['main_2eh_374',['main.h',['../main_8h.html',1,'']]], + ['mapint_375',['mapInt',['../utils_8cpp.html#ace8fa23ff29c3feb89c5d500ef87b914',1,'mapInt(int32_t arg, aJsonObject *map): utils.cpp'],['../utils_8h.html#ace8fa23ff29c3feb89c5d500ef87b914',1,'mapInt(int32_t arg, aJsonObject *map): utils.cpp']]], + ['max_5fchannels_376',['MAX_CHANNELS',['../dmx_8h.html#ac69ee46f4a51ed14f0d68628c2dec71d',1,'dmx.h']]], + ['maxflashstr_377',['MAXFLASHSTR',['../options_8h.html#a62d02da8c36fd3ab5519e373620382d1',1,'options.h']]], + ['maxontime_378',['maxOnTime',['../classout___motor.html#a58e72bff70d2915b7b508d0605a082e8',1,'out_Motor']]], + ['mb_5ffail_379',['mb_fail',['../class_item.html#a389156098d07ebdc5649668f61d87343',1,'Item']]], + ['mbpersistent_380',['mbPersistent',['../classmb_persistent.html',1,'']]], + ['min_5fvolume_381',['MIN_VOLUME',['../options_8h.html#aaec32701bf16879bd71fdddc223959c6',1,'options.h']]], + ['modbus_5fcmd_5farg_5faddr_382',['MODBUS_CMD_ARG_ADDR',['../item_8h.html#a33e16fb9464b81250690be772e5453b2',1,'item.h']]], + ['modbus_5fcmd_5farg_5fmask_383',['MODBUS_CMD_ARG_MASK',['../item_8h.html#a780e889b24bc8eef15a2a5ad322be003',1,'item.h']]], + ['modbus_5fcmd_5farg_5fmax_5fscale_384',['MODBUS_CMD_ARG_MAX_SCALE',['../item_8h.html#a03528b38365390c9e8059b0df0609c18',1,'item.h']]], + ['modbus_5fcmd_5farg_5freg_385',['MODBUS_CMD_ARG_REG',['../item_8h.html#a11473a232ebb7404cac737c76e923168',1,'item.h']]], + ['modbus_5fcmd_5farg_5freg_5ftype_386',['MODBUS_CMD_ARG_REG_TYPE',['../item_8h.html#ad4b2787dc56378c18bf75d617d14d6a3',1,'item.h']]], + ['modbus_5fcoil_5freg_5ftype_387',['MODBUS_COIL_REG_TYPE',['../item_8h.html#a787c9259a8994221c35a2b3002c4380e',1,'item.h']]], + ['modbus_5fdimmer_5fparam_388',['MODBUS_DIMMER_PARAM',['../options_8h.html#a3e6232d55dfd349c20e087bd7769c5ee',1,'options.h']]], + ['modbus_5fdiscrete_5freg_5ftype_389',['MODBUS_DISCRETE_REG_TYPE',['../item_8h.html#a7b8cf3bbb886d61a0142da2771f84ca0',1,'item.h']]], + ['modbus_5fholding_5freg_5ftype_390',['MODBUS_HOLDING_REG_TYPE',['../item_8h.html#abbf10f9ea9343e50ce072778b23b80f3',1,'item.h']]], + ['modbus_5finput_5freg_5ftype_391',['MODBUS_INPUT_REG_TYPE',['../item_8h.html#a3b7f235ae917b235caa3eef85e16b856',1,'item.h']]], + ['modbus_5fserial_5fbaud_392',['MODBUS_SERIAL_BAUD',['../options_8h.html#a0c85c2202ae5366e8a3b07c2cd90998d',1,'options.h']]], + ['modbusbusy_393',['modbusBusy',['../item_8cpp.html#a02d3e5fb154e56cf7fc169649e232078',1,'modbusBusy(): item.cpp'],['../out__modbus_8cpp.html#a02d3e5fb154e56cf7fc169649e232078',1,'modbusBusy(): item.cpp']]], + ['modbusdimmerset_394',['modbusDimmerSet',['../class_item.html#a6a8cdb4d647ba278a55560cd91bfc031',1,'Item::modbusDimmerSet(itemCmd st)'],['../class_item.html#a77913c1f28d823b1a096369e69cc5072',1,'Item::modbusDimmerSet(int addr, uint16_t _reg, int _regType, int _mask, uint16_t value)']]], + ['modbusidle_395',['modbusIdle',['../main_8cpp.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../main_8h.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../out__ac_8h.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../out__modbus_8cpp.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp']]], + ['modbusobj_396',['modbusObj',['../main_8cpp.html#aabc7159a42d55e7c474862449404d65c',1,'modbusObj(): main.cpp'],['../out__modbus_8cpp.html#aabc7159a42d55e7c474862449404d65c',1,'modbusObj(): main.cpp']]], + ['mode_397',['mode',['../structserial__t.html#a71ff16c34a2531c91586d864c415f1e7',1,'serial_t']]], + ['motor_5fquote_398',['MOTOR_QUOTE',['../out__motor_8h.html#a1ae2d51e9799d2a525499bd722676e3c',1,'out_motor.h']]], + ['mqtt_5fsubject_5flength_399',['MQTT_SUBJECT_LENGTH',['../options_8h.html#a86d2121e2224195f5d97811335df6cae',1,'options.h']]], + ['mqtt_5ftopic_5flength_400',['MQTT_TOPIC_LENGTH',['../options_8h.html#a237252f3f1f9d37812d9ec005e3a3d6a',1,'options.h']]], + ['mqttarr_401',['mqttArr',['../main_8cpp.html#a5a49c3c9f18e1b12e3706522c19c62c3',1,'main.cpp']]], + ['mqttcallback_402',['mqttCallback',['../main_8cpp.html#a6f06b273defaebb581fdf1adc8969f40',1,'mqttCallback(char *topic, byte *payload, unsigned int length): main.cpp'],['../main_8h.html#a6f06b273defaebb581fdf1adc8969f40',1,'mqttCallback(char *topic, byte *payload, unsigned int length): main.cpp']]], + ['mqttclient_403',['mqttClient',['../abstractch_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): abstractch.cpp'],['../abstractin_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): abstractin.cpp'],['../inputs_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): inputs.cpp'],['../item_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): item.cpp'],['../utils_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): utils.cpp'],['../main_8cpp.html#a18e15522dd78764c518fd5526cc2d446',1,'mqttClient(ethClient): main.cpp']]], + ['mqttconfigrequest_404',['mqttConfigRequest',['../main_8cpp.html#aec955c97b23e5875d0fdb3c00e789903',1,'mqttConfigRequest(int arg_cnt, char **args): main.cpp'],['../main_8h.html#aec955c97b23e5875d0fdb3c00e789903',1,'mqttConfigRequest(int arg_cnt, char **args): main.cpp']]], + ['mqttconfigresp_405',['mqttConfigResp',['../main_8cpp.html#ad60a48a0c509facdc6dc61df64d49fae',1,'mqttConfigResp(char *as): main.cpp'],['../main_8h.html#ad60a48a0c509facdc6dc61df64d49fae',1,'mqttConfigResp(char *as): main.cpp']]], + ['mqtterrorrate_406',['mqttErrorRate',['../main_8cpp.html#ac2567a764f7c3bef5306a430ba615de9',1,'main.cpp']]] +]; diff --git a/docs/html/search/all_c.html b/docs/html/search/all_c.html new file mode 100644 index 0000000..ec92b71 --- /dev/null +++ b/docs/html/search/all_c.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js new file mode 100644 index 0000000..d9c8112 --- /dev/null +++ b/docs/html/search/all_c.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['nextinputcheck_407',['nextInputCheck',['../main_8cpp.html#ab97b60e63c8bfbdd8baaf7d1ad94501f',1,'main.cpp']]], + ['nextlanchecktime_408',['nextLanCheckTime',['../main_8cpp.html#a718a0d8e0b8df891d3f1e4ac55c786ca',1,'main.cpp']]], + ['nextpollingcheck_409',['nextPollingCheck',['../main_8cpp.html#a44ea85dd3be07c7cf3ad07d3565c8663',1,'main.cpp']]], + ['nextpolltime_410',['nextPollTime',['../class_input.html#ad7e0d37e4f0cca8117a1fad077e4d4a7',1,'Input']]], + ['nextsensorcheck_411',['nextSensorCheck',['../main_8cpp.html#a1faa7904cff01b8c7c39eeedcc205325',1,'main.cpp']]], + ['nextthermostatcheck_412',['nextThermostatCheck',['../main_8cpp.html#a8389528c25c33724774418d61bb3ac35',1,'main.cpp']]], + ['node_413',['node',['../item_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp'],['../main_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp'],['../out__modbus_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp']]], + ['num_5fleds_414',['NUM_LEDS',['../out__spiled_8cpp.html#a4c4ae9a4146ce8d6a5debc90300d9abd',1,'out_spiled.cpp']]], + ['numargs_415',['numArgs',['../classcolor_channel.html#ace14fae07b9d51500db5d0191f5a7081',1,'colorChannel']]], + ['numchannels_416',['numChannels',['../classout__pwm.html#a1d705ffb413e0e5b9c3ad007fdafcbbd',1,'out_pwm']]], + ['numleds_417',['numLeds',['../classout___s_p_i_led.html#a4d13edbe6d02a9519c73283d65d38086',1,'out_SPILed']]] +]; diff --git a/docs/html/search/all_d.html b/docs/html/search/all_d.html new file mode 100644 index 0000000..606caba --- /dev/null +++ b/docs/html/search/all_d.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js new file mode 100644 index 0000000..1c5bb26 --- /dev/null +++ b/docs/html/search/all_d.js @@ -0,0 +1,63 @@ +var searchData= +[ + ['off_418',['Off',['../class_item.html#a7cc492ae708197b9426c45b15eda714d',1,'Item::Off()'],['../out__ac_8cpp.html#a92ecc0652f4769feb490ae0cf20093b5',1,'off(): out_ac.cpp']]], + ['offset_5fconfigserver_419',['OFFSET_CONFIGSERVER',['../options_8h.html#ab3dc28242a8c02f3f2e94730b5ecbfc0',1,'options.h']]], + ['offset_5fdns_420',['OFFSET_DNS',['../options_8h.html#adbd439473b680ddc08bba5e1d980ed0f',1,'options.h']]], + ['offset_5fgw_421',['OFFSET_GW',['../options_8h.html#ac025812b72523a2fb2cdaabaa8f589f3',1,'options.h']]], + ['offset_5fip_422',['OFFSET_IP',['../options_8h.html#a9bbde19ac58d0524f2ade893b617c004',1,'options.h']]], + ['offset_5fmac_423',['OFFSET_MAC',['../options_8h.html#aaae016d9ffd26640306394acbf5ca7c9',1,'options.h']]], + ['offset_5fmask_424',['OFFSET_MASK',['../options_8h.html#a9d6fc23740ab9f37272a3299949d3c11',1,'options.h']]], + ['offset_5fmqtt_5fpwd_425',['OFFSET_MQTT_PWD',['../options_8h.html#abd247d3da250a7b87a77f24d0f6ca472',1,'options.h']]], + ['offset_5fsignature_426',['OFFSET_SIGNATURE',['../options_8h.html#a0d2901cf398ca7e59223684da79da151',1,'options.h']]], + ['on_427',['On',['../class_item.html#ac6a08d4c2352fa1284c4039441e380c5',1,'Item::On()'],['../out__ac_8cpp.html#a1fa5a75e467ea8c74cca76051f03a1d4',1,'on(): out_ac.cpp']]], + ['onanalogchanged_428',['onAnalogChanged',['../class_input.html#a121247eaf2f413135f0340df17015492',1,'Input']]], + ['oncontactchanged_429',['onContactChanged',['../class_input.html#a2e0c2008fce8f2730ef3126ff1d8893e',1,'Input']]], + ['oncounterchanged_430',['onCounterChanged',['../class_input.html#a2b60992464aa56f75c9d02b8b2084f8e',1,'Input']]], + ['oncounterchanged0_431',['onCounterChanged0',['../class_input.html#a85c108932af16f55722b8ccec2b72fb5',1,'Input']]], + ['oncounterchanged1_432',['onCounterChanged1',['../class_input.html#a36b4ed46c94a5194e74c2106bb29deaa',1,'Input']]], + ['oncounterchanged2_433',['onCounterChanged2',['../class_input.html#a8def9079b3f0774a05860a17a4b51b29',1,'Input']]], + ['oncounterchanged3_434',['onCounterChanged3',['../class_input.html#adc8477b21452dd8b1f4bf1f3de35ecc4',1,'Input']]], + ['oncounterchanged4_435',['onCounterChanged4',['../class_input.html#a6fcea89328a3bcf97dad383b7b615a5a',1,'Input']]], + ['oncounterchanged5_436',['onCounterChanged5',['../class_input.html#a5611409d1de5bff2e6e59b9395809ecd',1,'Input']]], + ['ondmxframe_437',['onDmxFrame',['../dmx_8cpp.html#a285d3a152ce7d118b6273c094110f742',1,'dmx.cpp']]], + ['onewire_438',['oneWire',['../ow_term_8cpp.html#a385b7fa9c4553fcb57ee60a03932b60c',1,'oneWire(): owTerm.cpp'],['../ow_term_8h.html#a385b7fa9c4553fcb57ee60a03932b60c',1,'oneWire(): owTerm.cpp']]], + ['oninitialstateinitlan_439',['onInitialStateInitLAN',['../main_8cpp.html#ae886a24c554e48191a1ea668c43d2287',1,'onInitialStateInitLAN(): main.cpp'],['../main_8h.html#ae886a24c554e48191a1ea668c43d2287',1,'onInitialStateInitLAN(): main.cpp']]], + ['onmqttconnect_440',['onMQTTConnect',['../main_8cpp.html#af1a9158faed86994ef3c4f248bdd86c8',1,'main.cpp']]], + ['operation_441',['OPERATION',['../main_8h.html#a98b39d850b041da059cf5de62463a473ae6c7d41b255eff353251fbec6fe839e4',1,'main.h']]], + ['operator_20bool_442',['operator bool',['../class_streamlog.html#adcd1dcab71fd1e1c9da5bc9c18ac3d1d',1,'Streamlog']]], + ['options_2eh_443',['options.h',['../options_8h.html',1,'']]], + ['order_444',['ORDER',['../options_8h.html#a826715579f0649bd271fb6702a175dbc',1,'options.h']]], + ['out_5fac_445',['out_AC',['../classout___a_c.html',1,'out_AC'],['../classout___a_c.html#a68dc76d1632c64bcd4e9c19bea1a7443',1,'out_AC::out_AC()']]], + ['out_5fac_2ecpp_446',['out_ac.cpp',['../out__ac_8cpp.html',1,'']]], + ['out_5fac_2eh_447',['out_ac.h',['../out__ac_8h.html',1,'']]], + ['out_5fdmx_448',['out_dmx',['../classout__dmx.html',1,'out_dmx'],['../classout__dmx.html#a6fc6530587d5b7edfb31540ea2d0faba',1,'out_dmx::out_dmx()']]], + ['out_5fdmx_2ecpp_449',['out_dmx.cpp',['../out__dmx_8cpp.html',1,'']]], + ['out_5fdmx_2eh_450',['out_dmx.h',['../out__dmx_8h.html',1,'']]], + ['out_5fmodbus_451',['out_Modbus',['../classout___modbus.html',1,'out_Modbus'],['../classout___modbus.html#ad5aff68ec31c500be860a4f56b095373',1,'out_Modbus::out_Modbus()']]], + ['out_5fmodbus_2ecpp_452',['out_modbus.cpp',['../out__modbus_8cpp.html',1,'']]], + ['out_5fmodbus_2eh_453',['out_modbus.h',['../out__modbus_8h.html',1,'']]], + ['out_5fmotor_454',['out_Motor',['../classout___motor.html',1,'out_Motor'],['../classout___motor.html#a7698763731e54149861a9bdcc18e6344',1,'out_Motor::out_Motor()']]], + ['out_5fmotor_2ecpp_455',['out_motor.cpp',['../out__motor_8cpp.html',1,'']]], + ['out_5fmotor_2eh_456',['out_motor.h',['../out__motor_8h.html',1,'']]], + ['out_5fpwm_457',['out_pwm',['../classout__pwm.html',1,'out_pwm'],['../classout__pwm.html#acd3804fb3d24afe569042202bdba2179',1,'out_pwm::out_pwm()']]], + ['out_5fpwm_2ecpp_458',['out_pwm.cpp',['../out__pwm_8cpp.html',1,'']]], + ['out_5fpwm_2eh_459',['out_pwm.h',['../out__pwm_8h.html',1,'']]], + ['out_5fspiled_460',['out_SPILed',['../classout___s_p_i_led.html',1,'out_SPILed'],['../classout___s_p_i_led.html#ae865d0b2e9d098e3e370488a2eaa1b40',1,'out_SPILed::out_SPILed()']]], + ['out_5fspiled_2ecpp_461',['out_spiled.cpp',['../out__spiled_8cpp.html',1,'']]], + ['out_5fspiled_2eh_462',['out_spiled.h',['../out__spiled_8h.html',1,'']]], + ['outtopic_463',['OUTTOPIC',['../options_8h.html#ad41dc04ab9a3863ee0d70153e844c92a',1,'options.h']]], + ['ow_5fupdate_5finterval_464',['OW_UPDATE_INTERVAL',['../options_8h.html#a2993ae74a7ab13c7de09ffcc8b35e4fc',1,'options.h']]], + ['owadd_465',['owAdd',['../ow_term_8cpp.html#ac9fd793efbaca8922408effe06e71650',1,'owAdd(DeviceAddress addr): owTerm.cpp'],['../ow_term_8h.html#ac9fd793efbaca8922408effe06e71650',1,'owAdd(DeviceAddress addr): owTerm.cpp']]], + ['owarr_466',['owArr',['../main_8cpp.html#a564a174b067eee3b33b1162935884d55',1,'owArr(): main.cpp'],['../ow_term_8h.html#a564a174b067eee3b33b1162935884d55',1,'owArr(): main.cpp']]], + ['owchanged_467',['owChanged',['../ow_term_8cpp.html#ac7999c9efd1309081d54939dc27687ba',1,'owChanged(): owTerm.cpp'],['../ow_term_8h.html#ac7999c9efd1309081d54939dc27687ba',1,'owChanged(): owTerm.cpp']]], + ['owchangedtype_468',['owChangedType',['../ow_term_8h.html#a9312b7daea28d63649c1548f056f75e6',1,'owTerm.h']]], + ['owfind_469',['owFind',['../ow_term_8cpp.html#a38798dcd7c98c38975db6e3f19de63a3',1,'owFind(DeviceAddress addr): owTerm.cpp'],['../ow_term_8h.html#a38798dcd7c98c38975db6e3f19de63a3',1,'owFind(DeviceAddress addr): owTerm.cpp']]], + ['owidle_470',['owIdle',['../main_8cpp.html#a58e08cc15112818913fe96d75642265e',1,'owIdle(void): main.cpp'],['../main_8h.html#a58e08cc15112818913fe96d75642265e',1,'owIdle(void): main.cpp']]], + ['owloop_471',['owLoop',['../ow_term_8cpp.html#a3d8b76952ce1af677267e10c981e6dd5',1,'owLoop(): owTerm.cpp'],['../ow_term_8h.html#a3d8b76952ce1af677267e10c981e6dd5',1,'owLoop(): owTerm.cpp']]], + ['owready_472',['owReady',['../main_8cpp.html#a9638cf28423f00ad98377d1d89cba57e',1,'main.cpp']]], + ['owsetup_473',['owSetup',['../ow_term_8cpp.html#ac78e14aeb04a12acf45919b64fe0d280',1,'owSetup(owChangedType owCh): owTerm.cpp'],['../ow_term_8h.html#ac78e14aeb04a12acf45919b64fe0d280',1,'owSetup(owChangedType owCh): owTerm.cpp']]], + ['owterm_2ecpp_474',['owTerm.cpp',['../ow_term_8cpp.html',1,'']]], + ['owterm_2eh_475',['owTerm.h',['../ow_term_8h.html',1,'']]], + ['owtimer_476',['owTimer',['../ow_term_8cpp.html#a72d7dd39e835325dedcc977f3b23adb8',1,'owTerm.cpp']]], + ['owupdate_477',['owUpdate',['../ow_term_8cpp.html#aff3811570b1dd6182d7f45bd573afcfd',1,'owUpdate(): owTerm.cpp'],['../ow_term_8h.html#aff3811570b1dd6182d7f45bd573afcfd',1,'owUpdate(): owTerm.cpp']]] +]; diff --git a/docs/html/search/all_e.html b/docs/html/search/all_e.html new file mode 100644 index 0000000..310da24 --- /dev/null +++ b/docs/html/search/all_e.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js new file mode 100644 index 0000000..e1d86c2 --- /dev/null +++ b/docs/html/search/all_e.js @@ -0,0 +1,56 @@ +var searchData= +[ + ['par_5fi16_478',['PAR_I16',['../out__modbus_8cpp.html#a25bf73813d09c58baa5af48637e16bc7',1,'out_modbus.cpp']]], + ['par_5fi32_479',['PAR_I32',['../out__modbus_8cpp.html#acd59b982a0f2dcf18dd2356d6e98eefb',1,'out_modbus.cpp']]], + ['par_5fi8h_480',['PAR_I8H',['../out__modbus_8cpp.html#af19859d150babbb4691f7d1859f89813',1,'out_modbus.cpp']]], + ['par_5fi8l_481',['PAR_I8L',['../out__modbus_8cpp.html#ab0bcf5a51d08a4543375cefe31c00cc5',1,'out_modbus.cpp']]], + ['par_5fu16_482',['PAR_U16',['../out__modbus_8cpp.html#ad2b89b560cb53fc21c8ee35087910b2e',1,'out_modbus.cpp']]], + ['par_5fu32_483',['PAR_U32',['../out__modbus_8cpp.html#a005c325557d6699e0510c86fb64ed697',1,'out_modbus.cpp']]], + ['par_5fu8h_484',['PAR_U8H',['../out__modbus_8cpp.html#abd90249102cbda3365d3e86df523fc2d',1,'out_modbus.cpp']]], + ['par_5fu8l_485',['PAR_U8L',['../out__modbus_8cpp.html#a7c348cd2c30505b0afb1f00d47a3a804',1,'out_modbus.cpp']]], + ['param_486',['param',['../classitem_cmd.html#ac8c117086fcec929c6cb214815705be3',1,'itemCmd']]], + ['parameters_487',['parameters',['../classmb_persistent.html#a498e43d5538b11348f2165e99e09413f',1,'mbPersistent']]], + ['parse_488',['Parse',['../class_input.html#aad974cff366f73924458d105b88130d4',1,'Input::Parse()'],['../class_item.html#abbcfb98227918e624be294409d21be3d',1,'Item::Parse()']]], + ['parsebytes_489',['parseBytes',['../utils_8cpp.html#a1938abf1ef99f35bd2578e3db1bcf7b8',1,'parseBytes(const char *str, char separator, byte *bytes, int maxBytes, int base): utils.cpp'],['../utils_8h.html#a1938abf1ef99f35bd2578e3db1bcf7b8',1,'parseBytes(const char *str, char separator, byte *bytes, int maxBytes, int base): utils.cpp']]], + ['peek_490',['peek',['../class_streamlog.html#a246066803cd501ca4f1f5c94823db0e0',1,'Streamlog']]], + ['percents_491',['Percents',['../classitem_cmd.html#a76db1daeacf143c857f06049949e8aa9',1,'itemCmd']]], + ['percents255_492',['Percents255',['../classitem_cmd.html#aa1e4243bd415e9b639deb9bc195775d4',1,'itemCmd']]], + ['pin_493',['pin',['../class_input.html#a910d1942c02b2d155dbaa3c8a41876f5',1,'Input::pin()'],['../classout___s_p_i_led.html#a1ef26d145d52578110f56087df1aa228',1,'out_SPILed::pin()']]], + ['pinblue_494',['pinBLUE',['../statusled_8h.html#a2ad8c4dedfb08572b319c83ba9f42e90',1,'statusled.h']]], + ['pindown_495',['pinDown',['../classout___motor.html#af21db4b38c3676a038c93d403b227152',1,'out_Motor']]], + ['pinfeedback_496',['pinFeedback',['../classout___motor.html#ae4052839e88ca4a59e83c35400d239cf',1,'out_Motor']]], + ['pingreen_497',['pinGREEN',['../statusled_8h.html#a813708e0211b3df165cce073367b4935',1,'statusled.h']]], + ['pinred_498',['pinRED',['../statusled_8h.html#afd1828ca857e3e7e8216fb55eb761ca0',1,'statusled.h']]], + ['pinup_499',['pinUp',['../classout___motor.html#aaa2493a4399f63fd8d17e37f0c731791',1,'out_Motor']]], + ['pixelctrl_500',['PixelCtrl',['../classcolor_channel.html#a6c835d00ee8af04679f03465617c2873',1,'colorChannel::PixelCtrl()'],['../classout__dmx.html#ad33a8e316c5c8d409cddf4dcd8b15fcc',1,'out_dmx::PixelCtrl()'],['../classout__pwm.html#adcb4bb3d03aa8c4b7e12796136b5cd1e',1,'out_pwm::PixelCtrl()'],['../classout___s_p_i_led.html#a75d1e9b7333a0bb9777df807634607b3',1,'out_SPILed::PixelCtrl()']]], + ['poll_501',['Poll',['../classabstract_ch.html#a044156a4dc4ca38d3e731b7df23d058a',1,'abstractCh::Poll()'],['../class_input.html#a34b0da23df4e0c2be07e5358a974f6b3',1,'Input::Poll()'],['../class_item.html#aaa6500d9cdb58f9b20f6c2592da40739',1,'Item::Poll()'],['../classin__ccs811.html#a8b57db4521730e66f090a3d6752fd112',1,'in_ccs811::Poll()'],['../classin__hdc1080.html#a94cf44b2a347e2ee295fad5798f7ef54',1,'in_hdc1080::Poll()'],['../classout___a_c.html#a40fd702a4d9d621c19bfa140c905e64b',1,'out_AC::Poll()'],['../classout__dmx.html#a0b1d943e9772bf10487010040b948e8a',1,'out_dmx::Poll()'],['../classout___modbus.html#aec6803a6033403f8ac4038236cac5cd9',1,'out_Modbus::Poll()'],['../classout___motor.html#a7a98c58b6c32cc20b7b05ad07a07c231',1,'out_Motor::Poll()'],['../classout__pwm.html#a88c460e7ba29e5b068a2defa395cae2c',1,'out_pwm::Poll()'],['../classout___s_p_i_led.html#a8566a7b80d1a132c00dbaf989880649c',1,'out_SPILed::Poll()'],['../classstatus_l_e_d.html#a9692bced087cfc8a27f5a19601ebfc6e',1,'statusLED::poll()']]], + ['polling_5ffast_502',['POLLING_FAST',['../item_8h.html#a54a9699996650faf9d4d6c02b3f963fc',1,'item.h']]], + ['polling_5fint_503',['POLLING_INT',['../item_8h.html#ac6867c708730303da2f01e340eee37d9',1,'item.h']]], + ['polling_5fslow_504',['POLLING_SLOW',['../item_8h.html#a262c6c5a68af279047e881fa9b3cef5c',1,'item.h']]], + ['pollinginterval_505',['pollingInterval',['../classmb_persistent.html#aa958ac1f496b701507478b9384e7728e',1,'mbPersistent']]], + ['pollingitem_506',['pollingItem',['../item_8cpp.html#aa8f2c895949680c2aadc4843bb350347',1,'pollingItem(): main.cpp'],['../main_8cpp.html#aa8f2c895949680c2aadc4843bb350347',1,'pollingItem(): main.cpp']]], + ['pollingloop_507',['pollingLoop',['../main_8cpp.html#aec2ff7b5df24b3ae0cfe8d556088fd7c',1,'pollingLoop(void): main.cpp'],['../main_8h.html#aec2ff7b5df24b3ae0cfe8d556088fd7c',1,'pollingLoop(void): main.cpp']]], + ['pollingregisters_508',['pollingRegisters',['../classmb_persistent.html#a801983b127a63a82ea3c1c32989ceae8',1,'mbPersistent']]], + ['pos_5ferr_509',['POS_ERR',['../out__motor_8h.html#abf9aa60d6eb4e068e3f5907f04371dc2',1,'out_motor.h']]], + ['posttransmission_510',['postTransmission',['../main_8cpp.html#a33b535e84f654e423bb627b25b7b3759',1,'postTransmission(): main.cpp'],['../main_8h.html#a33b535e84f654e423bb627b25b7b3759',1,'postTransmission(): main.cpp']]], + ['pretransmission_511',['preTransmission',['../main_8cpp.html#a1c43d8a4afead0d0df29635242290377',1,'preTransmission(): main.cpp'],['../main_8h.html#a1c43d8a4afead0d0df29635242290377',1,'preTransmission(): main.cpp']]], + ['prevpolling_512',['prevPolling',['../out__ac_8cpp.html#a4155acb94ab76d403c080731ac75dda9',1,'out_ac.cpp']]], + ['printbool_513',['printBool',['../main_8cpp.html#a2d4b5aa8fbc197c31397235607aeba13',1,'printBool(bool arg): main.cpp'],['../main_8h.html#a2d4b5aa8fbc197c31397235607aeba13',1,'printBool(bool arg): main.cpp']]], + ['printbytes_514',['PrintBytes',['../utils_8cpp.html#ab5fb614b925280fc7c8d0e5314dd3b7a',1,'PrintBytes(uint8_t *addr, uint8_t count, bool newline): utils.cpp'],['../utils_8h.html#ab5fb614b925280fc7c8d0e5314dd3b7a',1,'PrintBytes(uint8_t *addr, uint8_t count, bool newline): utils.cpp']]], + ['printconfigsummary_515',['printConfigSummary',['../main_8cpp.html#ae22f686238cf5f09109b12f4b628ccea',1,'printConfigSummary(): main.cpp'],['../main_8h.html#ae22f686238cf5f09109b12f4b628ccea',1,'printConfigSummary(): main.cpp']]], + ['printcurentlanconfig_516',['printCurentLanConfig',['../main_8cpp.html#ab6cb5750ee8902ca29b51dd013bb74b9',1,'printCurentLanConfig(): main.cpp'],['../main_8h.html#ab6cb5750ee8902ca29b51dd013bb74b9',1,'printCurentLanConfig(): main.cpp']]], + ['printdrivererror_517',['printDriverError',['../classin__ccs811.html#a2fe4385cca41473cefc8906920c60a22',1,'in_ccs811']]], + ['printfirmwareversionandbuildoptions_518',['printFirmwareVersionAndBuildOptions',['../main_8cpp.html#a1cff64c0263246441c972f03e6893714',1,'printFirmwareVersionAndBuildOptions(): main.cpp'],['../main_8h.html#a1cff64c0263246441c972f03e6893714',1,'printFirmwareVersionAndBuildOptions(): main.cpp']]], + ['printfloatvaluetostr_519',['printFloatValueToStr',['../utils_8cpp.html#a6c16341dd45c4e557f951818d8d09810',1,'printFloatValueToStr(float value, char *valstr): utils.cpp'],['../utils_8h.html#a6c16341dd45c4e557f951818d8d09810',1,'printFloatValueToStr(float value, char *valstr): utils.cpp']]], + ['printipaddress_520',['printIPAddress',['../utils_8cpp.html#af0df006a5ae8d0d730134afdaf1c64dd',1,'printIPAddress(IPAddress ipAddress): utils.cpp'],['../utils_8h.html#af0df006a5ae8d0d730134afdaf1c64dd',1,'printIPAddress(IPAddress ipAddress): utils.cpp']]], + ['printmacaddress_521',['printMACAddress',['../main_8cpp.html#ad04c200b33c848aace1315bdf676201e',1,'printMACAddress(): main.cpp'],['../main_8h.html#ad04c200b33c848aace1315bdf676201e',1,'printMACAddress(): main.cpp']]], + ['printsensorerror_522',['printSensorError',['../classin__ccs811.html#a6c2de6eca576ea6043b6899163a2d2ea',1,'in_ccs811']]], + ['printserialnumber_523',['printSerialNumber',['../classin__hdc1080.html#ac1427b20242a2c829c118e8c4ed1d82a',1,'in_hdc1080']]], + ['printulongvaluetostr_524',['printUlongValueToStr',['../utils_8cpp.html#afb183532261be04b86e9e535010db6a9',1,'printUlongValueToStr(char *valstr, unsigned long value): utils.cpp'],['../utils_8h.html#afb183532261be04b86e9e535010db6a9',1,'printUlongValueToStr(char *valstr, unsigned long value): utils.cpp']]], + ['progmem_525',['PROGMEM',['../item_cmd_8h.html#a948e42c714310535a6faa06c9c652e82',1,'PROGMEM(): itemCmd.h'],['../main_8cpp.html#adf233b4843635c473146d0fd1d2a8b46',1,'PROGMEM(): main.cpp'],['../out__ac_8cpp.html#a98bd41348071f8af054dad33e25cb935',1,'PROGMEM(): out_ac.cpp'],['../out__modbus_8cpp.html#a6c1a731dafc190e4be43884f9b8807ad',1,'PROGMEM(): out_modbus.cpp'],['../textconst_8h.html#a6cfd127aee797ba9080cec031590b508',1,'PROGMEM(): textconst.h'],['../utils_8cpp.html#a3ec4211471d85792b3cb9f0fc8082b4c',1,'PROGMEM(): utils.cpp']]], + ['publish_526',['publish',['../classabstract_in.html#aa7e18605ec4d11d117881ac87b7ca016',1,'abstractIn::publish(long value, const char *subtopic=NULL)'],['../classabstract_in.html#a6a9d6bb966fc80930b31f3487b1a8f82',1,'abstractIn::publish(float value, const char *subtopic=NULL)'],['../classabstract_in.html#a6c7d4376b309c7c14d56568e5262335a',1,'abstractIn::publish(char *value, const char *subtopic=NULL)']]], + ['publishdatatodomoticz_527',['publishDataToDomoticz',['../class_input.html#ab48ae5515b6a332b518a06e5bb10926a',1,'Input']]], + ['publishstat_528',['publishStat',['../main_8cpp.html#a2cf2114e80da1894dc41209a4b66a08f',1,'main.cpp']]], + ['publishtopic_529',['publishTopic',['../classabstract_ch.html#a4f1da04403789b710ca3929c57af9d32',1,'abstractCh::publishTopic(const char *topic, long value, const char *subtopic=NULL)'],['../classabstract_ch.html#ac24cfc96e7efabae120799b7a23680c6',1,'abstractCh::publishTopic(const char *topic, float value, const char *subtopic=NULL)'],['../classabstract_ch.html#a9404148b9515bd6c1e167a235d844cb8',1,'abstractCh::publishTopic(const char *topic, const char *value, const char *subtopic=NULL)']]], + ['pwdflashstr_530',['PWDFLASHSTR',['../options_8h.html#a83c7af577ab2df562e66ffcdc81fc1c0',1,'options.h']]] +]; diff --git a/docs/html/search/all_f.html b/docs/html/search/all_f.html new file mode 100644 index 0000000..de78f81 --- /dev/null +++ b/docs/html/search/all_f.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/all_f.js b/docs/html/search/all_f.js new file mode 100644 index 0000000..95de203 --- /dev/null +++ b/docs/html/search/all_f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['q_531',['Q',['../utils_8h.html#a2a280bfe12bc6e732a7c4d3d62443a14',1,'utils.h']]], + ['qstn_532',['qstn',['../out__ac_8cpp.html#ab239dd88a94012660135822f7c629acd',1,'out_ac.cpp']]], + ['quote_533',['QUOTE',['../utils_8h.html#a2117b58e19182dff91ad3558e650541d',1,'utils.h']]] +]; diff --git a/docs/html/search/classes_0.html b/docs/html/search/classes_0.html new file mode 100644 index 0000000..7e0afc8 --- /dev/null +++ b/docs/html/search/classes_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_0.js b/docs/html/search/classes_0.js new file mode 100644 index 0000000..8fb0896 --- /dev/null +++ b/docs/html/search/classes_0.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['abstractch_721',['abstractCh',['../classabstract_ch.html',1,'']]], + ['abstractin_722',['abstractIn',['../classabstract_in.html',1,'']]], + ['abstractout_723',['abstractOut',['../classabstract_out.html',1,'']]] +]; diff --git a/docs/html/search/classes_1.html b/docs/html/search/classes_1.html new file mode 100644 index 0000000..b27354f --- /dev/null +++ b/docs/html/search/classes_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_1.js b/docs/html/search/classes_1.js new file mode 100644 index 0000000..008d58d --- /dev/null +++ b/docs/html/search/classes_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['chpersistent_724',['chPersistent',['../classch_persistent.html',1,'']]], + ['colorchannel_725',['colorChannel',['../classcolor_channel.html',1,'']]] +]; diff --git a/docs/html/search/classes_2.html b/docs/html/search/classes_2.html new file mode 100644 index 0000000..5d00598 --- /dev/null +++ b/docs/html/search/classes_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_2.js b/docs/html/search/classes_2.js new file mode 100644 index 0000000..431eb90 --- /dev/null +++ b/docs/html/search/classes_2.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['in_5fccs811_726',['in_ccs811',['../classin__ccs811.html',1,'']]], + ['in_5fhdc1080_727',['in_hdc1080',['../classin__hdc1080.html',1,'']]], + ['input_728',['Input',['../class_input.html',1,'']]], + ['instore_729',['inStore',['../unionin_store.html',1,'']]], + ['item_730',['Item',['../class_item.html',1,'']]], + ['itemargstore_731',['itemArgStore',['../unionitem_arg_store.html',1,'']]], + ['itemcmd_732',['itemCmd',['../classitem_cmd.html',1,'']]], + ['itemcmdstore_733',['itemCmdStore',['../unionitem_cmd_store.html',1,'']]] +]; diff --git a/docs/html/search/classes_3.html b/docs/html/search/classes_3.html new file mode 100644 index 0000000..fd173ae --- /dev/null +++ b/docs/html/search/classes_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_3.js b/docs/html/search/classes_3.js new file mode 100644 index 0000000..8643e9f --- /dev/null +++ b/docs/html/search/classes_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mbpersistent_734',['mbPersistent',['../classmb_persistent.html',1,'']]] +]; diff --git a/docs/html/search/classes_4.html b/docs/html/search/classes_4.html new file mode 100644 index 0000000..5414d88 --- /dev/null +++ b/docs/html/search/classes_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_4.js b/docs/html/search/classes_4.js new file mode 100644 index 0000000..0483157 --- /dev/null +++ b/docs/html/search/classes_4.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['out_5fac_735',['out_AC',['../classout___a_c.html',1,'']]], + ['out_5fdmx_736',['out_dmx',['../classout__dmx.html',1,'']]], + ['out_5fmodbus_737',['out_Modbus',['../classout___modbus.html',1,'']]], + ['out_5fmotor_738',['out_Motor',['../classout___motor.html',1,'']]], + ['out_5fpwm_739',['out_pwm',['../classout__pwm.html',1,'']]], + ['out_5fspiled_740',['out_SPILed',['../classout___s_p_i_led.html',1,'']]] +]; diff --git a/docs/html/search/classes_5.html b/docs/html/search/classes_5.html new file mode 100644 index 0000000..31c340e --- /dev/null +++ b/docs/html/search/classes_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_5.js b/docs/html/search/classes_5.js new file mode 100644 index 0000000..7ce0610 --- /dev/null +++ b/docs/html/search/classes_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['readcache_741',['readCache',['../classread_cache.html',1,'']]], + ['reg_5ft_742',['reg_t',['../structreg__t.html',1,'']]] +]; diff --git a/docs/html/search/classes_6.html b/docs/html/search/classes_6.html new file mode 100644 index 0000000..df33297 --- /dev/null +++ b/docs/html/search/classes_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_6.js b/docs/html/search/classes_6.js new file mode 100644 index 0000000..a40fddc --- /dev/null +++ b/docs/html/search/classes_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['serial_5ft_743',['serial_t',['../structserial__t.html',1,'']]], + ['statusled_744',['statusLED',['../classstatus_l_e_d.html',1,'']]], + ['streamlog_745',['Streamlog',['../class_streamlog.html',1,'']]] +]; diff --git a/docs/html/search/classes_7.html b/docs/html/search/classes_7.html new file mode 100644 index 0000000..0162837 --- /dev/null +++ b/docs/html/search/classes_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/classes_7.js b/docs/html/search/classes_7.js new file mode 100644 index 0000000..5a74804 --- /dev/null +++ b/docs/html/search/classes_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['uid_746',['UID',['../union_u_i_d.html',1,'']]] +]; diff --git a/docs/html/search/close.svg b/docs/html/search/close.svg new file mode 100644 index 0000000..a933eea --- /dev/null +++ b/docs/html/search/close.svg @@ -0,0 +1,31 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/docs/html/search/defines_0.html b/docs/html/search/defines_0.html new file mode 100644 index 0000000..0ede6c4 --- /dev/null +++ b/docs/html/search/defines_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_0.js b/docs/html/search/defines_0.js new file mode 100644 index 0000000..5d179a5 --- /dev/null +++ b/docs/html/search/defines_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['_5fdmxin_1193',['_dmxin',['../options_8h.html#ad54ae9a16c5077af731dfeed78b700c8',1,'options.h']]], + ['_5fdmxout_1194',['_dmxout',['../options_8h.html#a894c0d8dfff112dcfe75b67a128c5562',1,'options.h']]], + ['_5fmodbus_1195',['_modbus',['../options_8h.html#a3c1dfe0b98e8a89fc314fd5880f67652',1,'options.h']]], + ['_5fowire_1196',['_owire',['../options_8h.html#ad5287891697598444dfa4597895b4ac6',1,'options.h']]] +]; diff --git a/docs/html/search/defines_1.html b/docs/html/search/defines_1.html new file mode 100644 index 0000000..259a51a --- /dev/null +++ b/docs/html/search/defines_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_1.js b/docs/html/search/defines_1.js new file mode 100644 index 0000000..5050778 --- /dev/null +++ b/docs/html/search/defines_1.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['a_1197',['a',['../item_8cpp.html#a8d3c3518d793541417a4845125da1ae1',1,'item.cpp']]], + ['ac_5fserial_1198',['AC_Serial',['../out__ac_8cpp.html#a4c67a3c95b053662ba0e195ff4611ca2',1,'out_ac.cpp']]], + ['action_5fin_5fprocess_1199',['ACTION_IN_PROCESS',['../item_cmd_8h.html#a7c17785e1674783a1b4ba4274ae3fb44',1,'itemCmd.h']]], + ['action_5fneeded_1200',['ACTION_NEEDED',['../item_cmd_8h.html#a2bfeb847a3993b4da4f0a5811af7b995',1,'itemCmd.h']]], + ['adafruit_5fled_1201',['ADAFRUIT_LED',['../options_8h.html#a26b65d67289c43289cc3758c517c55ba',1,'options.h']]], + ['analog_5fnoize_1202',['ANALOG_NOIZE',['../inputs_8h.html#a0e590b44f2e40d50c90c35a3deac7251',1,'inputs.h']]], + ['analog_5fstate_5fattempts_1203',['ANALOG_STATE_ATTEMPTS',['../inputs_8h.html#a7c48e9a4c306cc8cfea4e4162d0249e8',1,'inputs.h']]], + ['ardbuffer_1204',['ARDBUFFER',['../utils_8cpp.html#ab124609cb16e44db8bf5c1ac5932044f',1,'utils.cpp']]], + ['avr_5fdmxout_5fpin_1205',['AVR_DMXOUT_PIN',['../options_8h.html#abb18d4c1c4db26508cb496f6467feb54',1,'options.h']]] +]; diff --git a/docs/html/search/defines_10.html b/docs/html/search/defines_10.html new file mode 100644 index 0000000..5a4a8f9 --- /dev/null +++ b/docs/html/search/defines_10.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_10.js b/docs/html/search/defines_10.js new file mode 100644 index 0000000..e4b9c83 --- /dev/null +++ b/docs/html/search/defines_10.js @@ -0,0 +1,59 @@ +var searchData= +[ + ['s_5fadditional_1401',['S_ADDITIONAL',['../item_8h.html#a52a219c38e8fb816c139cbd252e3c3d5',1,'item.h']]], + ['s_5fcmd_1402',['S_CMD',['../item_8h.html#a7fc4fdff41f72de35ff7f31a88d2ef17',1,'item.h']]], + ['s_5ffan_1403',['S_FAN',['../item_8h.html#ad3cdbaefd6a2dfcd2a87bdc60f6874d4',1,'item.h']]], + ['s_5fhsv_1404',['S_HSV',['../item_8h.html#a8c9b4a8b457fa12f533dbdf16850a2f1',1,'item.h']]], + ['s_5fhue_1405',['S_HUE',['../item_8h.html#a87a96d42c1cafebc18c7e558c015137b',1,'item.h']]], + ['s_5flock_1406',['S_LOCK',['../out__ac_8h.html#af48855306ef6f18c2de9e01f107e1cad',1,'out_ac.h']]], + ['s_5fmode_1407',['S_MODE',['../item_8h.html#af90af1bc68960811e82d0ca3782b8c46',1,'item.h']]], + ['s_5fnotfound_1408',['S_NOTFOUND',['../item_8h.html#a131cfabb558ab1b7ad493e75d5e060c9',1,'item.h']]], + ['s_5fquiet_1409',['S_QUIET',['../out__ac_8h.html#ac0d28426799e4da770644952ec858461',1,'out_ac.h']]], + ['s_5fraw_1410',['S_RAW',['../out__ac_8h.html#ab7b18454392c93599b25faad65d6a370',1,'out_ac.h']]], + ['s_5frgb_1411',['S_RGB',['../item_8h.html#a110d6e77da40715a6d53921bab49b3f3',1,'item.h']]], + ['s_5fsat_1412',['S_SAT',['../item_8h.html#aca68093e2923b0b080643fc4bba25e75',1,'item.h']]], + ['s_5fset_1413',['S_SET',['../item_8h.html#a9937ac1220b7ab4dbc8d79911e81a709',1,'item.h']]], + ['s_5fswing_1414',['S_SWING',['../out__ac_8h.html#ad4502e82e76e09f450e19153afa0234b',1,'out_ac.h']]], + ['s_5ftemp_1415',['S_TEMP',['../item_8h.html#a9073478a392efbb9bf25be0f83f8654e',1,'item.h']]], + ['same_5fstate_5fattempts_1416',['SAME_STATE_ATTEMPTS',['../inputs_8h.html#ac274440d36c9abe1f71f18596c4dfea4',1,'inputs.h']]], + ['send_5fcommand_1417',['SEND_COMMAND',['../item_cmd_8h.html#aebe7823b286110926c2da2893b56a7da',1,'itemCmd.h']]], + ['send_5fdeffered_1418',['SEND_DEFFERED',['../item_cmd_8h.html#a33ea54bfccbf6af4fc41fdd08b6d0e57',1,'itemCmd.h']]], + ['send_5fparameters_1419',['SEND_PARAMETERS',['../item_cmd_8h.html#adba0eeb6b1a5678cea10f4a823829b24',1,'itemCmd.h']]], + ['send_5fretry_1420',['SEND_RETRY',['../item_cmd_8h.html#a73ec395d869a354733c01a5331c942f1',1,'itemCmd.h']]], + ['serial_5fbaud_1421',['SERIAL_BAUD',['../options_8h.html#a94df10e7efe7613d074c105099c7fd0e',1,'options.h']]], + ['serialmodesnum_1422',['serialModesNum',['../out__modbus_8cpp.html#a4d3d61e309ead27e6e008e455d75ceb5',1,'out_modbus.cpp']]], + ['st_5ffloat_1423',['ST_FLOAT',['../item_cmd_8h.html#ad8579fb5b68f5adc9862a20aeb3d9913',1,'itemCmd.h']]], + ['st_5ffloat_5fcelsius_1424',['ST_FLOAT_CELSIUS',['../item_cmd_8h.html#a644980a3323313ed2e620aebdd993537',1,'itemCmd.h']]], + ['st_5ffloat_5ffarenheit_1425',['ST_FLOAT_FARENHEIT',['../item_cmd_8h.html#a38685184c002f8c14fab409847cdd9a5',1,'itemCmd.h']]], + ['st_5fhs_1426',['ST_HS',['../item_cmd_8h.html#abac7e90eb597c98d2f5870c6528c09da',1,'itemCmd.h']]], + ['st_5fhsv_1427',['ST_HSV',['../item_cmd_8h.html#a67ad81da37213da74d71033ecd62a00c',1,'itemCmd.h']]], + ['st_5fhsv255_1428',['ST_HSV255',['../item_cmd_8h.html#af1ffdc01c9fc9cc648518fef4fde8a52',1,'itemCmd.h']]], + ['st_5fint32_1429',['ST_INT32',['../item_cmd_8h.html#a9bbd91c0ea3ac6af8f0deadcddce706c',1,'itemCmd.h']]], + ['st_5fpercents_1430',['ST_PERCENTS',['../item_cmd_8h.html#a0612f5b4f1bcd3a696c6a17b7e3e059e',1,'itemCmd.h']]], + ['st_5fpercents255_1431',['ST_PERCENTS255',['../item_cmd_8h.html#ad5b8ab06d61866259ae7bc34655701a8',1,'itemCmd.h']]], + ['st_5frgb_1432',['ST_RGB',['../item_cmd_8h.html#a0cc85c763ceffc24cddfe74853f1d2ee',1,'itemCmd.h']]], + ['st_5frgbw_1433',['ST_RGBW',['../item_cmd_8h.html#a5f433ae9408b87addac620079cb92f1a',1,'itemCmd.h']]], + ['st_5fstring_1434',['ST_STRING',['../item_cmd_8h.html#a9eb365863cb3267d934a4f517c3d4aad',1,'itemCmd.h']]], + ['st_5ftens_1435',['ST_TENS',['../item_cmd_8h.html#a6291bb44d8bcbb4f371c010314f059cb',1,'itemCmd.h']]], + ['st_5fuint32_1436',['ST_UINT32',['../item_cmd_8h.html#a6af0c39035eaf94f9c436ab0260c1d94',1,'itemCmd.h']]], + ['st_5fvoid_1437',['ST_VOID',['../item_cmd_8h.html#a89b3fb099d3038f85ed3b573ba64d031',1,'itemCmd.h']]], + ['sw_5faux0_1438',['SW_AUX0',['../ow_term_8h.html#a9842f177c8e00b6c38daf3aca290e300',1,'owTerm.h']]], + ['sw_5faux1_1439',['SW_AUX1',['../ow_term_8h.html#ac0309c49990b7232afdf7d27f30f42b4',1,'owTerm.h']]], + ['sw_5fchanged_5fp0_1440',['SW_CHANGED_P0',['../ow_term_8h.html#a89104025a8859791e89115fef5bc1d74',1,'owTerm.h']]], + ['sw_5fchanged_5fp1_1441',['SW_CHANGED_P1',['../ow_term_8h.html#a78449cd6b324f70f052efa1c7684f939',1,'owTerm.h']]], + ['sw_5fdoublecheck_1442',['SW_DOUBLECHECK',['../ow_term_8h.html#a04b690d8ae7ea22fc1cd850cb28d1a89',1,'owTerm.h']]], + ['sw_5ffind_1443',['SW_FIND',['../ow_term_8h.html#a2e409a3583ffd8bf522847aa2babcc65',1,'owTerm.h']]], + ['sw_5finmask_1444',['SW_INMASK',['../ow_term_8h.html#a2566855e014080775e472bf2b959b510',1,'owTerm.h']]], + ['sw_5fmask_1445',['SW_MASK',['../ow_term_8h.html#a240dee0900895c9dc452fc3e94319116',1,'owTerm.h']]], + ['sw_5fout0_1446',['SW_OUT0',['../ow_term_8h.html#a1db8ee4f7494dbd6852b582086bf8618',1,'owTerm.h']]], + ['sw_5fout1_1447',['SW_OUT1',['../ow_term_8h.html#a2b4445eee4ea221bc240c0db281e14d8',1,'owTerm.h']]], + ['sw_5fpulse0_1448',['SW_PULSE0',['../ow_term_8h.html#a3312fd9b274e02275c7e6e14812d8b77',1,'owTerm.h']]], + ['sw_5fpulse0_5fr_1449',['SW_PULSE0_R',['../ow_term_8h.html#a394220e3a4d07cd1c110c655332bbed1',1,'owTerm.h']]], + ['sw_5fpulse1_1450',['SW_PULSE1',['../ow_term_8h.html#ac48f14c4bbb976160877b913707b0555',1,'owTerm.h']]], + ['sw_5fpulse1_5fr_1451',['SW_PULSE1_R',['../ow_term_8h.html#aa5279ea909ec370f1ca60c619cea7b2f',1,'owTerm.h']]], + ['sw_5fpulse_5fp0_1452',['SW_PULSE_P0',['../ow_term_8h.html#a0ae32f8bd855e4f0d54f2efa7f749432',1,'owTerm.h']]], + ['sw_5fpulse_5fp1_1453',['SW_PULSE_P1',['../ow_term_8h.html#aea6e1f060eb378a3f5ac7b0fb75e3321',1,'owTerm.h']]], + ['sw_5fstat0_1454',['SW_STAT0',['../ow_term_8h.html#a2a8205edd6a8a56bd3dcc301b5e89522',1,'owTerm.h']]], + ['sw_5fstat1_1455',['SW_STAT1',['../ow_term_8h.html#a00243602c461da89cd31481290e64459',1,'owTerm.h']]], + ['syslog_5flocal_5fsocket_1456',['SYSLOG_LOCAL_SOCKET',['../options_8h.html#a2ea96e90902d4db4f9db6d5f5e3298dd',1,'options.h']]] +]; diff --git a/docs/html/search/defines_11.html b/docs/html/search/defines_11.html new file mode 100644 index 0000000..d67dc66 --- /dev/null +++ b/docs/html/search/defines_11.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_11.js b/docs/html/search/defines_11.js new file mode 100644 index 0000000..b46d22d --- /dev/null +++ b/docs/html/search/defines_11.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['t_5fattempts_1457',['T_ATTEMPTS',['../options_8h.html#a6a65f02746daae5d420afda0cada7b78',1,'options.h']]], + ['t_5fidle_1458',['T_IDLE',['../inputs_8h.html#a8a75f24034739896ac50bba24d242d32',1,'inputs.h']]], + ['t_5flong_1459',['T_LONG',['../inputs_8h.html#a2d9ac9f51c75bdb21cf9dfd1412fa194',1,'inputs.h']]], + ['t_5fmax_1460',['t_max',['../ow_term_8h.html#a9382f08ab82ba07c710f5b2e9e6ec0f3',1,'owTerm.h']]], + ['t_5frpt_1461',['T_RPT',['../inputs_8h.html#a7182ef2ce51e276fb3b26cd8565eb954',1,'inputs.h']]], + ['t_5frpt_5fpulse_1462',['T_RPT_PULSE',['../inputs_8h.html#a9fe7bdf99e30a49fd5aff60200a90172',1,'inputs.h']]], + ['temperature_5fprecision_1463',['TEMPERATURE_PRECISION',['../ow_term_8h.html#a41a331314b46059bd942e76ffc60cf4a',1,'owTerm.h']]], + ['thermo_5fgist_5fcelsius_1464',['THERMO_GIST_CELSIUS',['../options_8h.html#af589ab4b091beec656a4529510d63937',1,'options.h']]], + ['thermo_5foverheat_5fcelsius_1465',['THERMO_OVERHEAT_CELSIUS',['../options_8h.html#af512e1ccc2f2a4fd372d0816603e961c',1,'options.h']]], + ['thermostat_5fcheck_5fperiod_1466',['THERMOSTAT_CHECK_PERIOD',['../options_8h.html#a265b8a391d46da3dd31693f510d02ad6',1,'options.h']]], + ['txenablepin_1467',['TXEnablePin',['../options_8h.html#ab992e9e25bfa08a3572b6a2c4826a0dc',1,'options.h']]] +]; diff --git a/docs/html/search/defines_12.html b/docs/html/search/defines_12.html new file mode 100644 index 0000000..5505005 --- /dev/null +++ b/docs/html/search/defines_12.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_12.js b/docs/html/search/defines_12.js new file mode 100644 index 0000000..ee8f77d --- /dev/null +++ b/docs/html/search/defines_12.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['uptime_5fpoll_5fdelay_5fdefault_1468',['UPTIME_POLL_DELAY_DEFAULT',['../options_8h.html#a9377a9603fb9295926b3292cd0506209',1,'options.h']]] +]; diff --git a/docs/html/search/defines_13.html b/docs/html/search/defines_13.html new file mode 100644 index 0000000..47d9632 --- /dev/null +++ b/docs/html/search/defines_13.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_13.js b/docs/html/search/defines_13.js new file mode 100644 index 0000000..dd76508 --- /dev/null +++ b/docs/html/search/defines_13.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['value_1469',['VALUE',['../utils_8h.html#ad705dc78222473228fa826e42eca95f1',1,'utils.h']]], + ['value_5fto_5fstring_1470',['VALUE_TO_STRING',['../utils_8h.html#ad15c9a08925b1c0365fb1bd9ac826670',1,'utils.h']]], + ['var_5fname_5fvalue_1471',['VAR_NAME_VALUE',['../utils_8h.html#a9a89328d94ddd2cdd4b39db22da01f79',1,'utils.h']]] +]; diff --git a/docs/html/search/defines_14.html b/docs/html/search/defines_14.html new file mode 100644 index 0000000..5a08692 --- /dev/null +++ b/docs/html/search/defines_14.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_14.js b/docs/html/search/defines_14.js new file mode 100644 index 0000000..02ad5bd --- /dev/null +++ b/docs/html/search/defines_14.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['w5100_5fethernet_5fshield_1472',['W5100_ETHERNET_SHIELD',['../options_8h.html#a7658e9cd3f6887dd4e5cf06b3d865b52',1,'options.h']]] +]; diff --git a/docs/html/search/defines_2.html b/docs/html/search/defines_2.html new file mode 100644 index 0000000..731dc4c --- /dev/null +++ b/docs/html/search/defines_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_2.js b/docs/html/search/defines_2.js new file mode 100644 index 0000000..e970399 --- /dev/null +++ b/docs/html/search/defines_2.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['b_1206',['b',['../item_8cpp.html#ab2d05693952610f937e5acb3c4a8fa1b',1,'item.cpp']]], + ['b_5fcmd_1207',['B_CMD',['../out__ac_8h.html#a54c3b17281609e2073adc5d9c3577d9e',1,'out_ac.h']]], + ['b_5fcur_5ftmp_1208',['B_CUR_TMP',['../out__ac_8h.html#aea839ca3c1b73e5d265a574085f7b353',1,'out_ac.h']]], + ['b_5ffan_5fspd_1209',['B_FAN_SPD',['../out__ac_8h.html#a16e64054ce7537a58828f7ff0fdd5dd6',1,'out_ac.h']]], + ['b_5ffresh_1210',['B_FRESH',['../out__ac_8h.html#a5170cf3a84e8662e32341dc99bd379ea',1,'out_ac.h']]], + ['b_5flock_5frem_1211',['B_LOCK_REM',['../out__ac_8h.html#ae059f75818a612a4c40cfb9a9cfed1cd',1,'out_ac.h']]], + ['b_5fmode_1212',['B_MODE',['../out__ac_8h.html#a64129c01f67098002dfc15bcf2e81345',1,'out_ac.h']]], + ['b_5fpower_1213',['B_POWER',['../out__ac_8h.html#a810646cae39c2f8b13cd389aa91388cb',1,'out_ac.h']]], + ['b_5fset_5ftmp_1214',['B_SET_TMP',['../out__ac_8h.html#a99d1516f267d0714663ac3ba3497e03f',1,'out_ac.h']]], + ['b_5fswing_1215',['B_SWING',['../out__ac_8h.html#a8291ee313ea42010c029dcdecd9b922a',1,'out_ac.h']]], + ['bright_5flinear_1216',['BRIGHT_LINEAR',['../bright_8h.html#a745288b6f8ea74e7efe2e7044f7d94d8',1,'bright.h']]] +]; diff --git a/docs/html/search/defines_3.html b/docs/html/search/defines_3.html new file mode 100644 index 0000000..1d84c78 --- /dev/null +++ b/docs/html/search/defines_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_3.js b/docs/html/search/defines_3.js new file mode 100644 index 0000000..db3e7a0 --- /dev/null +++ b/docs/html/search/defines_3.js @@ -0,0 +1,58 @@ +var searchData= +[ + ['ccs811_5faddr_1217',['CCS811_ADDR',['../in__ccs811__hdc1080_8h.html#a4c3a63d41818b1c52526d478881f1403',1,'in_ccs811_hdc1080.h']]], + ['ch_5fac_1218',['CH_AC',['../item_8h.html#ae5faa28ae90e3c8658289b9c513d0f1f',1,'item.h']]], + ['ch_5fdimmer_1219',['CH_DIMMER',['../item_8h.html#ae8deebae2223cc41b707c0ccc12110f7',1,'item.h']]], + ['ch_5fgroup_1220',['CH_GROUP',['../item_8h.html#a8013a9895a9e2fa6afc8b411f2ee4d77',1,'item.h']]], + ['ch_5fmbus_1221',['CH_MBUS',['../item_8h.html#a446f242b566032430f42ce9be6b366aa',1,'item.h']]], + ['ch_5fmodbus_1222',['CH_MODBUS',['../item_8h.html#abdb1c8601e3997eeabfbe85b77ae9a9e',1,'item.h']]], + ['ch_5fmotor_1223',['CH_MOTOR',['../item_8h.html#a7fc4d0ba1b07d30d6276ebda33dd6987',1,'item.h']]], + ['ch_5fpwm_1224',['CH_PWM',['../item_8h.html#a2daad851379261136f0c22f056663fc2',1,'item.h']]], + ['ch_5frelay_1225',['CH_RELAY',['../item_8h.html#ac9f09e5e652cb6797b7a05e93133d20f',1,'item.h']]], + ['ch_5frgb_1226',['CH_RGB',['../item_8h.html#abbb5a64a224fe607fbf2fc5ac29e31cb',1,'item.h']]], + ['ch_5frgbw_1227',['CH_RGBW',['../item_8h.html#abdcc93b4a9164bb10e473766c4083d8b',1,'item.h']]], + ['ch_5fspiled_1228',['CH_SPILED',['../item_8h.html#ab43c8cc9fb5c1667a5956e48017826ff',1,'item.h']]], + ['ch_5fthermo_1229',['CH_THERMO',['../item_8h.html#a3f68dec7d0ed1ba592fa281ee427a72a',1,'item.h']]], + ['ch_5fvc_1230',['CH_VC',['../item_8h.html#a762566fb96b5a377eada6a32639c4e37',1,'item.h']]], + ['ch_5fvctemp_1231',['CH_VCTEMP',['../item_8h.html#a0b5411d14d7fed59c97adaf6523323b7',1,'item.h']]], + ['ch_5fwhite_1232',['CH_WHITE',['../item_8h.html#a63c6b75de3cb38d4287f404544617d49',1,'item.h']]], + ['check_5fcircle_1233',['check_circle',['../ow_term_8h.html#a9db1df6249649d3fca671805ace0ed82',1,'check_circle(): owTerm.h'],['../ow_term_8h.html#a9db1df6249649d3fca671805ace0ed82',1,'check_circle(): owTerm.h']]], + ['check_5finput_1234',['CHECK_INPUT',['../inputs_8h.html#a1a4fde3dbdd8e8f920a325f551fcfd94',1,'inputs.h']]], + ['check_5finterrupt_1235',['CHECK_INTERRUPT',['../inputs_8h.html#a98a52bad4b628c2b09416a9819010e81',1,'inputs.h']]], + ['check_5fsensor_1236',['CHECK_SENSOR',['../inputs_8h.html#a3e39b572f12612cbe5e7259fa57441e4',1,'inputs.h']]], + ['cmd_5fauto_1237',['CMD_AUTO',['../item_cmd_8h.html#ac6314f47e3a245eec13c6b5b0fa1c7db',1,'itemCmd.h']]], + ['cmd_5fcool_1238',['CMD_COOL',['../item_cmd_8h.html#a4714e5ac85eca811a7d871e0cef7e720',1,'itemCmd.h']]], + ['cmd_5fdisabled_1239',['CMD_DISABLED',['../item_cmd_8h.html#a9921eb85f3037b82c45510c726a444ee',1,'itemCmd.h']]], + ['cmd_5fdn_1240',['CMD_DN',['../item_cmd_8h.html#a28e8a03e7dd6bd46383c79a8f329bda2',1,'itemCmd.h']]], + ['cmd_5fdry_1241',['CMD_DRY',['../item_cmd_8h.html#a2f5d120eea10ae12a0da9cfecc64d75b',1,'itemCmd.h']]], + ['cmd_5fenabled_1242',['CMD_ENABLED',['../item_cmd_8h.html#a6b3022e09de5e4e8677a44c47c14fd7f',1,'itemCmd.h']]], + ['cmd_5ffalse_1243',['CMD_FALSE',['../item_cmd_8h.html#ace5569e1c56237a640e7321e71ce91ad',1,'itemCmd.h']]], + ['cmd_5ffan_1244',['CMD_FAN',['../item_cmd_8h.html#ab321d93c256f9d29b4029a69711c6a12',1,'itemCmd.h']]], + ['cmd_5fhalt_1245',['CMD_HALT',['../item_cmd_8h.html#a565ec1390b7b34a6ac42039ecb299455',1,'itemCmd.h']]], + ['cmd_5fheat_1246',['CMD_HEAT',['../item_cmd_8h.html#a897c95ff7be54fc9316186b97412c9cf',1,'itemCmd.h']]], + ['cmd_5fhigh_1247',['CMD_HIGH',['../item_cmd_8h.html#ae1666304f65177e83cebf6ae965d28d2',1,'itemCmd.h']]], + ['cmd_5fhsv_1248',['CMD_HSV',['../item_cmd_8h.html#a6df5caa95ccde9d14fc620a8a7154aef',1,'itemCmd.h']]], + ['cmd_5fjson_1249',['CMD_JSON',['../item_cmd_8h.html#a8ebc7dfd9ad3fa1a7ea3f5c1c4df02ab',1,'itemCmd.h']]], + ['cmd_5flow_1250',['CMD_LOW',['../item_cmd_8h.html#a1d207679bdb2eb0b008bdb13fddd0f5c',1,'itemCmd.h']]], + ['cmd_5fmask_1251',['CMD_MASK',['../item_cmd_8h.html#aede8404e1d3398c2c235eaa17ea2cd5d',1,'itemCmd.h']]], + ['cmd_5fmed_1252',['CMD_MED',['../item_cmd_8h.html#aa903c4f6ec21104fa3f2960e2acdd2f6',1,'itemCmd.h']]], + ['cmd_5foff_1253',['CMD_OFF',['../item_cmd_8h.html#a48422ade9d3e69812b682755ed27b51d',1,'itemCmd.h']]], + ['cmd_5fon_1254',['CMD_ON',['../item_cmd_8h.html#ad22b3834e4e8a59a072b1b630b2a0cb7',1,'itemCmd.h']]], + ['cmd_5frestore_1255',['CMD_RESTORE',['../item_cmd_8h.html#a55530b510f79a5db17ecf0a9db2ecaf7',1,'itemCmd.h']]], + ['cmd_5frgb_1256',['CMD_RGB',['../item_cmd_8h.html#aed0d15abd0c058f50b31c3d77da9190b',1,'itemCmd.h']]], + ['cmd_5fstop_1257',['CMD_STOP',['../item_cmd_8h.html#a46dc7ae84992bfe62cc00731959a67f4',1,'itemCmd.h']]], + ['cmd_5ftoggle_1258',['CMD_TOGGLE',['../item_cmd_8h.html#a343682f7c52665540fd653195f727ef2',1,'itemCmd.h']]], + ['cmd_5ftrue_1259',['CMD_TRUE',['../item_cmd_8h.html#a04b54affc87ca5d5434e05fb2ba287c1',1,'itemCmd.h']]], + ['cmd_5funknown_1260',['CMD_UNKNOWN',['../item_cmd_8h.html#ae629f52b1af9bf75713ef35ea00b6ffa',1,'itemCmd.h']]], + ['cmd_5fup_1261',['CMD_UP',['../item_cmd_8h.html#ad5c2fd894f208b25f6f8ed2b43660e7c',1,'itemCmd.h']]], + ['cmd_5fvoid_1262',['CMD_VOID',['../item_cmd_8h.html#a9bbd3f606a1c37e525a172fa9b6b345d',1,'itemCmd.h']]], + ['cmd_5fxoff_1263',['CMD_XOFF',['../item_cmd_8h.html#a5a0861b5be0a4e513580704940c32c38',1,'itemCmd.h']]], + ['cmd_5fxon_1264',['CMD_XON',['../item_cmd_8h.html#a3871f1b01413297e1c23e1e484016a21',1,'itemCmd.h']]], + ['cmdtopic_1265',['CMDTOPIC',['../options_8h.html#a351952e3a94b04d5f782d2cb69ea4209',1,'options.h']]], + ['commandsnum_1266',['commandsNum',['../item_cmd_8h.html#a4abe93c906bb31bebd4afd78fadec6f4',1,'itemCmd.h']]], + ['config_5fserver_1267',['CONFIG_SERVER',['../options_8h.html#a979988f1e12c581103bd7dcd41be2a4a',1,'options.h']]], + ['controller_1268',['CONTROLLER',['../options_8h.html#a6fa0e88c2f73f4e656831351dfdbf6e5',1,'options.h']]], + ['cst_5ffailed_1269',['CST_FAILED',['../abstractch_8h.html#adcf23ecf1f6e4dbc5a6780645425399e',1,'abstractch.h']]], + ['cst_5finitialized_1270',['CST_INITIALIZED',['../abstractch_8h.html#ab7dea1d4d49f436619dd52ce3da0d6c3',1,'abstractch.h']]], + ['cst_5funknown_1271',['CST_UNKNOWN',['../abstractch_8h.html#ad5c9fbfc15fa16113c539de3867f54fc',1,'abstractch.h']]] +]; diff --git a/docs/html/search/defines_4.html b/docs/html/search/defines_4.html new file mode 100644 index 0000000..7927169 --- /dev/null +++ b/docs/html/search/defines_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_4.js b/docs/html/search/defines_4.js new file mode 100644 index 0000000..1418c6c --- /dev/null +++ b/docs/html/search/defines_4.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['d_5fcheckt_1272',['D_CHECKT',['../dmx_8h.html#a14052474033fc0b01cc36a5f52cfb575',1,'dmx.h']]], + ['d_5fupdated1_1273',['D_UPDATED1',['../dmx_8h.html#aa2d5ab73cfb3c82efe053ca1c3ba2b9a',1,'dmx.h']]], + ['d_5fupdated2_1274',['D_UPDATED2',['../dmx_8h.html#aaf60f29640da1e595ec01b5827cddc48',1,'dmx.h']]], + ['d_5fupdated3_1275',['D_UPDATED3',['../dmx_8h.html#a7dfd71e0bf48e87b1310b8bf75297aed',1,'dmx.h']]], + ['d_5fupdated4_1276',['D_UPDATED4',['../dmx_8h.html#a449cd019aa3e4cd80cb821450bd4f4bb',1,'dmx.h']]], + ['data_5fpin_1277',['DATA_PIN',['../options_8h.html#adad67fe595ea440c8f8247ec2cddf070',1,'options.h']]], + ['debugserialport_1278',['debugSerialPort',['../options_8h.html#ac24cce505133ea92266546bf33a6d713',1,'options.h']]], + ['default_5ffirmware_5fmac_1279',['DEFAULT_FIRMWARE_MAC',['../options_8h.html#abe0b358ba1d45a2a0aff0771182d4cb9',1,'options.h']]], + ['default_5finc_5fstep_1280',['DEFAULT_INC_STEP',['../options_8h.html#ad04a0305cd8c165e0c8ae2aba5cf9f22',1,'options.h']]], + ['dhcp_5fretry_5finterval_1281',['DHCP_RETRY_INTERVAL',['../main_8h.html#a71a294b57014bc72835215290f1735fe',1,'main.h']]], + ['dht_5fpoll_5fdelay_5fdefault_1282',['DHT_POLL_DELAY_DEFAULT',['../options_8h.html#a1c0469867d0a25f440986acb7861fc7a',1,'options.h']]], + ['dimpar_1283',['dimPar',['../options_8h.html#a704a7ddbb1bdbf424a389aaa9210c931',1,'options.h']]], + ['dmx_5fsmooth_5fdelay_1284',['DMX_SMOOTH_DELAY',['../options_8h.html#ac9eefc1c2dc6cc5bf105a5acd40787ad',1,'options.h']]], + ['ds2482_5f100_5fi2c_5fto_5f1w_5fbridge_1285',['DS2482_100_I2C_TO_1W_BRIDGE',['../ow_term_8h.html#a92c17810a48118ba0c75809050dd6bbe',1,'owTerm.h']]] +]; diff --git a/docs/html/search/defines_5.html b/docs/html/search/defines_5.html new file mode 100644 index 0000000..03bea0f --- /dev/null +++ b/docs/html/search/defines_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_5.js b/docs/html/search/defines_5.js new file mode 100644 index 0000000..bf45df1 --- /dev/null +++ b/docs/html/search/defines_5.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['eeprom_5ffix_5fpart_5flen_1286',['EEPROM_FIX_PART_LEN',['../options_8h.html#aff59a0ac9e9d04f17868c674c13fbfdf',1,'options.h']]], + ['eeprom_5foffset_5fnotalligned_1287',['EEPROM_offset_NotAlligned',['../options_8h.html#a003b1faba137828f090984d6ebc4817e',1,'options.h']]], + ['eeprom_5foffsetjson_1288',['EEPROM_offsetJSON',['../options_8h.html#a5d3ef55d19773db32ebd9956edcc8b8d',1,'options.h']]], + ['eeprom_5fsignature_1289',['EEPROM_SIGNATURE',['../options_8h.html#a084dba44a01332b67ab1ba8a599cde26',1,'options.h']]], + ['eeprom_5fsignature_5flength_1290',['EEPROM_SIGNATURE_LENGTH',['../options_8h.html#a9fe94e22a13344d105a17cf07a5842cd',1,'options.h']]], + ['esp_5feeprom_5fsize_1291',['ESP_EEPROM_SIZE',['../options_8h.html#a5b3cf2242175107b05c2f2b43c55a44c',1,'options.h']]] +]; diff --git a/docs/html/search/defines_6.html b/docs/html/search/defines_6.html new file mode 100644 index 0000000..6448e15 --- /dev/null +++ b/docs/html/search/defines_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_6.js b/docs/html/search/defines_6.js new file mode 100644 index 0000000..5497468 --- /dev/null +++ b/docs/html/search/defines_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['flag_5fmask_1292',['FLAG_MASK',['../item_cmd_8h.html#a890221cb651a3f30f6d1bca0d9b0e13d',1,'itemCmd.h']]], + ['fm_5foverheat_5fcelsius_1293',['FM_OVERHEAT_CELSIUS',['../options_8h.html#a9532a64e88b10a5317afd57397f99d3c',1,'options.h']]], + ['fmpar_1294',['fmPar',['../options_8h.html#ab3adab6384decdb29117063df1a48ca7',1,'options.h']]] +]; diff --git a/docs/html/search/defines_7.html b/docs/html/search/defines_7.html new file mode 100644 index 0000000..405c4c6 --- /dev/null +++ b/docs/html/search/defines_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_7.js b/docs/html/search/defines_7.js new file mode 100644 index 0000000..21d71c7 --- /dev/null +++ b/docs/html/search/defines_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hometopic_1295',['HOMETOPIC',['../options_8h.html#adc36ff54aa68faae86f3aacd10a05f30',1,'options.h']]] +]; diff --git a/docs/html/search/defines_8.html b/docs/html/search/defines_8.html new file mode 100644 index 0000000..d99a223 --- /dev/null +++ b/docs/html/search/defines_8.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_8.js b/docs/html/search/defines_8.js new file mode 100644 index 0000000..1652e9e --- /dev/null +++ b/docs/html/search/defines_8.js @@ -0,0 +1,43 @@ +var searchData= +[ + ['i_5farg_1296',['I_ARG',['../item_8h.html#af8d092a321ecfbeda6cdd7c4b66489d1',1,'item.h']]], + ['i_5fcmd_1297',['I_CMD',['../item_8h.html#a238f99ac45b5fc2219c6832dde0c0c9c',1,'item.h']]], + ['i_5fext_1298',['I_EXT',['../item_8h.html#acb5cc75c544a0305caec81705c5342d5',1,'item.h']]], + ['i_5ftype_1299',['I_TYPE',['../item_8h.html#a685813f758ad8fb6fad67c0084c5ca09',1,'item.h']]], + ['i_5fval_1300',['I_VAL',['../item_8h.html#a0b4d13f8b65a71a667a459ebad8e589b',1,'item.h']]], + ['iet_5fattempts_1301',['IET_ATTEMPTS',['../options_8h.html#a826349834da27a108e00c318c756710d',1,'options.h']]], + ['iet_5ftemp_1302',['IET_TEMP',['../options_8h.html#afae9befc056895af99a4ee18cd5abc8c',1,'options.h']]], + ['in_5factive_5fhigh_1303',['IN_ACTIVE_HIGH',['../inputs_8h.html#aba343c99487259d92ad5bd6fbd3e01a0',1,'inputs.h']]], + ['in_5fanalog_1304',['IN_ANALOG',['../inputs_8h.html#ae5e104b6991479f7964dcc6ed21bd974',1,'inputs.h']]], + ['in_5fccs811_1305',['IN_CCS811',['../inputs_8h.html#a59e48c8bcc2a86b2173aeb7667134c2c',1,'inputs.h']]], + ['in_5fcounter_1306',['IN_COUNTER',['../inputs_8h.html#a7da1147e75fa22d9662c9294344168ba',1,'inputs.h']]], + ['in_5fdht22_1307',['IN_DHT22',['../inputs_8h.html#a099689609ba9908f787941e40c15b434',1,'inputs.h']]], + ['in_5fhdc1080_1308',['IN_HDC1080',['../inputs_8h.html#a1e44d68ca398ab8d851125089790f0f1',1,'inputs.h']]], + ['in_5fi2c_1309',['IN_I2C',['../inputs_8h.html#ac34df8e2157eb91e5674ec0c445bbc8a',1,'inputs.h']]], + ['in_5fpush_5fon_1310',['IN_PUSH_ON',['../inputs_8h.html#a2ce550d73403239bdf30482a6882d2dd',1,'inputs.h']]], + ['in_5fpush_5ftoggle_1311',['IN_PUSH_TOGGLE',['../inputs_8h.html#acc7e62f775448aa89e2b13df0019c993',1,'inputs.h']]], + ['in_5fre_1312',['IN_RE',['../inputs_8h.html#ad4e2a819b46d5e31f5f1cacd885a7679',1,'inputs.h']]], + ['in_5fuptime_1313',['IN_UPTIME',['../inputs_8h.html#a1b200efddb3fee0da5f4c0d38769b7ff',1,'inputs.h']]], + ['init_5fvolume_1314',['INIT_VOLUME',['../options_8h.html#a10a53e1555887eda29a06279883b5407',1,'options.h']]], + ['interval_5fac_5fpolling_1315',['INTERVAL_AC_POLLING',['../out__ac_8cpp.html#a4862ba1039c5c7ce3b51609c733cc091',1,'out_ac.cpp']]], + ['interval_5fcheck_5finput_1316',['INTERVAL_CHECK_INPUT',['../options_8h.html#a67828bcb6f0269a0e14ccb7b3dd8bc36',1,'options.h']]], + ['interval_5fcheck_5fmodbus_1317',['INTERVAL_CHECK_MODBUS',['../options_8h.html#ad122bb80520d348463d54eebac2ba4a5',1,'options.h']]], + ['interval_5fcheck_5fsensor_1318',['INTERVAL_CHECK_SENSOR',['../options_8h.html#acfa30965b93565c71cdeb70b86d08560',1,'options.h']]], + ['interval_5fpolling_1319',['INTERVAL_POLLING',['../options_8h.html#ad644e892aeb35da4ec2d602aa2fffb59',1,'options.h']]], + ['intopic_1320',['INTOPIC',['../options_8h.html#a05897083928b56e953ae17a19bf42ecc',1,'options.h']]], + ['is_5fidle_1321',['IS_IDLE',['../inputs_8h.html#a507029f213f840df9f2fe96dcc7073b6',1,'inputs.h']]], + ['is_5flong_1322',['IS_LONG',['../inputs_8h.html#a85528d0ffe9c9bda0ee24df255b3b4e8',1,'inputs.h']]], + ['is_5flong2_1323',['IS_LONG2',['../inputs_8h.html#a70196afd205ccebf16e0d21e28085463',1,'inputs.h']]], + ['is_5flong3_1324',['IS_LONG3',['../inputs_8h.html#a7f49a84bcfd2ed0db0ef8286b2938ed3',1,'inputs.h']]], + ['is_5fpressed_1325',['IS_PRESSED',['../inputs_8h.html#a60858d59aa9fd54683018c3023970db5',1,'inputs.h']]], + ['is_5fpressed2_1326',['IS_PRESSED2',['../inputs_8h.html#a8ff81a2547cf3c73928f178421c138cd',1,'inputs.h']]], + ['is_5fpressed3_1327',['IS_PRESSED3',['../inputs_8h.html#aa39f578ac73d4da04627db6fd5113560',1,'inputs.h']]], + ['is_5freleased_1328',['IS_RELEASED',['../inputs_8h.html#a48d052eb1ddf55fa433b502a04c9f039',1,'inputs.h']]], + ['is_5freleased2_1329',['IS_RELEASED2',['../inputs_8h.html#acc1208e582a1855b46186e8cbb2382cd',1,'inputs.h']]], + ['is_5frepeat_1330',['IS_REPEAT',['../inputs_8h.html#ab3d60474188c792fa7bd73c7784cf20c',1,'inputs.h']]], + ['is_5frepeat2_1331',['IS_REPEAT2',['../inputs_8h.html#affb5fbff8a836cebd5a45aee2887421e',1,'inputs.h']]], + ['is_5frepeat3_1332',['IS_REPEAT3',['../inputs_8h.html#ab28e4094346017851f2af764b25caeea',1,'inputs.h']]], + ['is_5freqstate_1333',['IS_REQSTATE',['../inputs_8h.html#aa55e3a1001f7520b5623aaf68fa400ef',1,'inputs.h']]], + ['is_5fwaitpress_1334',['IS_WAITPRESS',['../inputs_8h.html#acf0965f44337b7a1204e76f274397aa9',1,'inputs.h']]], + ['is_5fwaitrelease_1335',['IS_WAITRELEASE',['../inputs_8h.html#aa4d3605f66fe7dd02a6dcd8da2e61fce',1,'inputs.h']]] +]; diff --git a/docs/html/search/defines_9.html b/docs/html/search/defines_9.html new file mode 100644 index 0000000..c32858f --- /dev/null +++ b/docs/html/search/defines_9.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_9.js b/docs/html/search/defines_9.js new file mode 100644 index 0000000..7d46a0c --- /dev/null +++ b/docs/html/search/defines_9.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['lan_5finit_5fdelay_1336',['LAN_INIT_DELAY',['../options_8h.html#ab6d9c8b27dcdac1da3fb43eed5dd893c',1,'options.h']]], + ['ledblink_1337',['ledBLINK',['../statusled_8h.html#afde6ff647a44b9f2bbcc0804b3c9d950',1,'statusled.h']]], + ['ledblue_1338',['ledBLUE',['../statusled_8h.html#a54932b3e1a9e2111b9d6f1942c9502e2',1,'statusled.h']]], + ['leddelayms_1339',['ledDelayms',['../statusled_8h.html#aaf229718aeb968c22e9aa6f593817c99',1,'statusled.h']]], + ['ledfastblink_1340',['ledFASTBLINK',['../statusled_8h.html#ab9aeb6ac9ca5ac56497211a67cca7f8e',1,'statusled.h']]], + ['ledfastdelayms_1341',['ledFastDelayms',['../statusled_8h.html#aff5146ea744dbe707098bdb5cdca32a6',1,'statusled.h']]], + ['ledflash_1342',['ledFlash',['../statusled_8h.html#aa68d61961165bd42444cba4dcefb4726',1,'statusled.h']]], + ['ledgreen_1343',['ledGREEN',['../statusled_8h.html#a3ee296c79e4936c800e6730f733737c5',1,'statusled.h']]], + ['ledhidden_1344',['ledHidden',['../statusled_8h.html#a3e8259c89abd4a7013c4bc87274e09c7',1,'statusled.h']]], + ['ledparams_1345',['ledParams',['../statusled_8h.html#ade6c6ff9e05c884cf0eae053230d3bf2',1,'statusled.h']]], + ['ledred_1346',['ledRED',['../statusled_8h.html#abfe826857256aa93aa762e7d98390743',1,'statusled.h']]], + ['len_5fb_1347',['LEN_B',['../out__ac_8h.html#ad19ce971fd0a801e62b47ccc237e7adc',1,'out_ac.h']]], + ['log_5fdebug_1348',['LOG_DEBUG',['../streamlog_8h.html#a6ff63e8955665c4a58b1598f2b07c51a',1,'streamlog.h']]], + ['log_5ferror_1349',['LOG_ERROR',['../streamlog_8h.html#aced66975c154ea0e2a8ec3bc818b4e08',1,'streamlog.h']]], + ['log_5finfo_1350',['LOG_INFO',['../streamlog_8h.html#aeb4f36db01bd128c7afeac5889dac311',1,'streamlog.h']]], + ['logbuffer_5fsize_1351',['LOGBUFFER_SIZE',['../streamlog_8h.html#a2e75de3d470df65326791691c3039c70',1,'streamlog.h']]] +]; diff --git a/docs/html/search/defines_a.html b/docs/html/search/defines_a.html new file mode 100644 index 0000000..5614802 --- /dev/null +++ b/docs/html/search/defines_a.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_a.js b/docs/html/search/defines_a.js new file mode 100644 index 0000000..1351e0d --- /dev/null +++ b/docs/html/search/defines_a.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['max_5fchannels_1352',['MAX_CHANNELS',['../dmx_8h.html#ac69ee46f4a51ed14f0d68628c2dec71d',1,'dmx.h']]], + ['maxflashstr_1353',['MAXFLASHSTR',['../options_8h.html#a62d02da8c36fd3ab5519e373620382d1',1,'options.h']]], + ['min_5fvolume_1354',['MIN_VOLUME',['../options_8h.html#aaec32701bf16879bd71fdddc223959c6',1,'options.h']]], + ['modbus_5fcmd_5farg_5faddr_1355',['MODBUS_CMD_ARG_ADDR',['../item_8h.html#a33e16fb9464b81250690be772e5453b2',1,'item.h']]], + ['modbus_5fcmd_5farg_5fmask_1356',['MODBUS_CMD_ARG_MASK',['../item_8h.html#a780e889b24bc8eef15a2a5ad322be003',1,'item.h']]], + ['modbus_5fcmd_5farg_5fmax_5fscale_1357',['MODBUS_CMD_ARG_MAX_SCALE',['../item_8h.html#a03528b38365390c9e8059b0df0609c18',1,'item.h']]], + ['modbus_5fcmd_5farg_5freg_1358',['MODBUS_CMD_ARG_REG',['../item_8h.html#a11473a232ebb7404cac737c76e923168',1,'item.h']]], + ['modbus_5fcmd_5farg_5freg_5ftype_1359',['MODBUS_CMD_ARG_REG_TYPE',['../item_8h.html#ad4b2787dc56378c18bf75d617d14d6a3',1,'item.h']]], + ['modbus_5fcoil_5freg_5ftype_1360',['MODBUS_COIL_REG_TYPE',['../item_8h.html#a787c9259a8994221c35a2b3002c4380e',1,'item.h']]], + ['modbus_5fdimmer_5fparam_1361',['MODBUS_DIMMER_PARAM',['../options_8h.html#a3e6232d55dfd349c20e087bd7769c5ee',1,'options.h']]], + ['modbus_5fdiscrete_5freg_5ftype_1362',['MODBUS_DISCRETE_REG_TYPE',['../item_8h.html#a7b8cf3bbb886d61a0142da2771f84ca0',1,'item.h']]], + ['modbus_5fholding_5freg_5ftype_1363',['MODBUS_HOLDING_REG_TYPE',['../item_8h.html#abbf10f9ea9343e50ce072778b23b80f3',1,'item.h']]], + ['modbus_5finput_5freg_5ftype_1364',['MODBUS_INPUT_REG_TYPE',['../item_8h.html#a3b7f235ae917b235caa3eef85e16b856',1,'item.h']]], + ['modbus_5fserial_5fbaud_1365',['MODBUS_SERIAL_BAUD',['../options_8h.html#a0c85c2202ae5366e8a3b07c2cd90998d',1,'options.h']]], + ['motor_5fquote_1366',['MOTOR_QUOTE',['../out__motor_8h.html#a1ae2d51e9799d2a525499bd722676e3c',1,'out_motor.h']]], + ['mqtt_5fsubject_5flength_1367',['MQTT_SUBJECT_LENGTH',['../options_8h.html#a86d2121e2224195f5d97811335df6cae',1,'options.h']]], + ['mqtt_5ftopic_5flength_1368',['MQTT_TOPIC_LENGTH',['../options_8h.html#a237252f3f1f9d37812d9ec005e3a3d6a',1,'options.h']]] +]; diff --git a/docs/html/search/defines_b.html b/docs/html/search/defines_b.html new file mode 100644 index 0000000..a99b16f --- /dev/null +++ b/docs/html/search/defines_b.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_b.js b/docs/html/search/defines_b.js new file mode 100644 index 0000000..aad5f08 --- /dev/null +++ b/docs/html/search/defines_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['num_5fleds_1369',['NUM_LEDS',['../out__spiled_8cpp.html#a4c4ae9a4146ce8d6a5debc90300d9abd',1,'out_spiled.cpp']]] +]; diff --git a/docs/html/search/defines_c.html b/docs/html/search/defines_c.html new file mode 100644 index 0000000..68b5ee1 --- /dev/null +++ b/docs/html/search/defines_c.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_c.js b/docs/html/search/defines_c.js new file mode 100644 index 0000000..6428505 --- /dev/null +++ b/docs/html/search/defines_c.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['offset_5fconfigserver_1370',['OFFSET_CONFIGSERVER',['../options_8h.html#ab3dc28242a8c02f3f2e94730b5ecbfc0',1,'options.h']]], + ['offset_5fdns_1371',['OFFSET_DNS',['../options_8h.html#adbd439473b680ddc08bba5e1d980ed0f',1,'options.h']]], + ['offset_5fgw_1372',['OFFSET_GW',['../options_8h.html#ac025812b72523a2fb2cdaabaa8f589f3',1,'options.h']]], + ['offset_5fip_1373',['OFFSET_IP',['../options_8h.html#a9bbde19ac58d0524f2ade893b617c004',1,'options.h']]], + ['offset_5fmac_1374',['OFFSET_MAC',['../options_8h.html#aaae016d9ffd26640306394acbf5ca7c9',1,'options.h']]], + ['offset_5fmask_1375',['OFFSET_MASK',['../options_8h.html#a9d6fc23740ab9f37272a3299949d3c11',1,'options.h']]], + ['offset_5fmqtt_5fpwd_1376',['OFFSET_MQTT_PWD',['../options_8h.html#abd247d3da250a7b87a77f24d0f6ca472',1,'options.h']]], + ['offset_5fsignature_1377',['OFFSET_SIGNATURE',['../options_8h.html#a0d2901cf398ca7e59223684da79da151',1,'options.h']]], + ['order_1378',['ORDER',['../options_8h.html#a826715579f0649bd271fb6702a175dbc',1,'options.h']]], + ['outtopic_1379',['OUTTOPIC',['../options_8h.html#ad41dc04ab9a3863ee0d70153e844c92a',1,'options.h']]], + ['ow_5fupdate_5finterval_1380',['OW_UPDATE_INTERVAL',['../options_8h.html#a2993ae74a7ab13c7de09ffcc8b35e4fc',1,'options.h']]] +]; diff --git a/docs/html/search/defines_d.html b/docs/html/search/defines_d.html new file mode 100644 index 0000000..21321d3 --- /dev/null +++ b/docs/html/search/defines_d.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_d.js b/docs/html/search/defines_d.js new file mode 100644 index 0000000..c7cffe9 --- /dev/null +++ b/docs/html/search/defines_d.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['par_5fi16_1381',['PAR_I16',['../out__modbus_8cpp.html#a25bf73813d09c58baa5af48637e16bc7',1,'out_modbus.cpp']]], + ['par_5fi32_1382',['PAR_I32',['../out__modbus_8cpp.html#acd59b982a0f2dcf18dd2356d6e98eefb',1,'out_modbus.cpp']]], + ['par_5fi8h_1383',['PAR_I8H',['../out__modbus_8cpp.html#af19859d150babbb4691f7d1859f89813',1,'out_modbus.cpp']]], + ['par_5fi8l_1384',['PAR_I8L',['../out__modbus_8cpp.html#ab0bcf5a51d08a4543375cefe31c00cc5',1,'out_modbus.cpp']]], + ['par_5fu16_1385',['PAR_U16',['../out__modbus_8cpp.html#ad2b89b560cb53fc21c8ee35087910b2e',1,'out_modbus.cpp']]], + ['par_5fu32_1386',['PAR_U32',['../out__modbus_8cpp.html#a005c325557d6699e0510c86fb64ed697',1,'out_modbus.cpp']]], + ['par_5fu8h_1387',['PAR_U8H',['../out__modbus_8cpp.html#abd90249102cbda3365d3e86df523fc2d',1,'out_modbus.cpp']]], + ['par_5fu8l_1388',['PAR_U8L',['../out__modbus_8cpp.html#a7c348cd2c30505b0afb1f00d47a3a804',1,'out_modbus.cpp']]], + ['pinblue_1389',['pinBLUE',['../statusled_8h.html#a2ad8c4dedfb08572b319c83ba9f42e90',1,'statusled.h']]], + ['pingreen_1390',['pinGREEN',['../statusled_8h.html#a813708e0211b3df165cce073367b4935',1,'statusled.h']]], + ['pinred_1391',['pinRED',['../statusled_8h.html#afd1828ca857e3e7e8216fb55eb761ca0',1,'statusled.h']]], + ['polling_5ffast_1392',['POLLING_FAST',['../item_8h.html#a54a9699996650faf9d4d6c02b3f963fc',1,'item.h']]], + ['polling_5fint_1393',['POLLING_INT',['../item_8h.html#ac6867c708730303da2f01e340eee37d9',1,'item.h']]], + ['polling_5fslow_1394',['POLLING_SLOW',['../item_8h.html#a262c6c5a68af279047e881fa9b3cef5c',1,'item.h']]], + ['pos_5ferr_1395',['POS_ERR',['../out__motor_8h.html#abf9aa60d6eb4e068e3f5907f04371dc2',1,'out_motor.h']]], + ['pwdflashstr_1396',['PWDFLASHSTR',['../options_8h.html#a83c7af577ab2df562e66ffcdc81fc1c0',1,'options.h']]] +]; diff --git a/docs/html/search/defines_e.html b/docs/html/search/defines_e.html new file mode 100644 index 0000000..c65a7f4 --- /dev/null +++ b/docs/html/search/defines_e.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_e.js b/docs/html/search/defines_e.js new file mode 100644 index 0000000..de4dd5b --- /dev/null +++ b/docs/html/search/defines_e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['q_1397',['Q',['../utils_8h.html#a2a280bfe12bc6e732a7c4d3d62443a14',1,'utils.h']]], + ['quote_1398',['QUOTE',['../utils_8h.html#a2117b58e19182dff91ad3558e650541d',1,'utils.h']]] +]; diff --git a/docs/html/search/defines_f.html b/docs/html/search/defines_f.html new file mode 100644 index 0000000..68f49b1 --- /dev/null +++ b/docs/html/search/defines_f.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/defines_f.js b/docs/html/search/defines_f.js new file mode 100644 index 0000000..103f222 --- /dev/null +++ b/docs/html/search/defines_f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['recheck_5finterval_1399',['recheck_interval',['../ow_term_8h.html#ab8f08116296551612d3ccdad9e14e23a',1,'recheck_interval(): owTerm.h'],['../ow_term_8h.html#ab8f08116296551612d3ccdad9e14e23a',1,'recheck_interval(): owTerm.h']]], + ['regsizenum_1400',['regSizeNum',['../out__modbus_8cpp.html#a49c9c8a2424dd60fa4fefb6ee0188db6',1,'out_modbus.cpp']]] +]; diff --git a/docs/html/search/enums_0.html b/docs/html/search/enums_0.html new file mode 100644 index 0000000..9035e6a --- /dev/null +++ b/docs/html/search/enums_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enums_0.js b/docs/html/search/enums_0.js new file mode 100644 index 0000000..0c6af92 --- /dev/null +++ b/docs/html/search/enums_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['lan_5fstatus_1175',['lan_status',['../main_8h.html#a98b39d850b041da059cf5de62463a473',1,'main.h']]] +]; diff --git a/docs/html/search/enums_1.html b/docs/html/search/enums_1.html new file mode 100644 index 0000000..ae1c6f7 --- /dev/null +++ b/docs/html/search/enums_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enums_1.js b/docs/html/search/enums_1.js new file mode 100644 index 0000000..61e7d1f --- /dev/null +++ b/docs/html/search/enums_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['topictype_1176',['topicType',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fc',1,'utils.h']]] +]; diff --git a/docs/html/search/enumvalues_0.html b/docs/html/search/enumvalues_0.html new file mode 100644 index 0000000..c2cd472 --- /dev/null +++ b/docs/html/search/enumvalues_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_0.js b/docs/html/search/enumvalues_0.js new file mode 100644 index 0000000..e0c74b7 --- /dev/null +++ b/docs/html/search/enumvalues_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['awaiting_5faddress_1177',['AWAITING_ADDRESS',['../main_8h.html#a98b39d850b041da059cf5de62463a473aff1c53b962fb36482e2ef34640bd6eb9',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_1.html b/docs/html/search/enumvalues_1.html new file mode 100644 index 0000000..fb0ff68 --- /dev/null +++ b/docs/html/search/enumvalues_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_1.js b/docs/html/search/enumvalues_1.js new file mode 100644 index 0000000..5e1b782 --- /dev/null +++ b/docs/html/search/enumvalues_1.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['do_5fnothing_1178',['DO_NOTHING',['../main_8h.html#a98b39d850b041da059cf5de62463a473aa3c06bc7e4d652a970cab72026c6fed1',1,'main.h']]], + ['do_5freconnect_1179',['DO_RECONNECT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a9ea9900a7508394e36b0a3024397c285',1,'main.h']]], + ['do_5freinit_1180',['DO_REINIT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a7b6874c83593674f516620bb883fff8b',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_2.html b/docs/html/search/enumvalues_2.html new file mode 100644 index 0000000..17b8260 --- /dev/null +++ b/docs/html/search/enumvalues_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_2.js b/docs/html/search/enumvalues_2.js new file mode 100644 index 0000000..0316903 --- /dev/null +++ b/docs/html/search/enumvalues_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['have_5fip_5faddress_1181',['HAVE_IP_ADDRESS',['../main_8h.html#a98b39d850b041da059cf5de62463a473ad5eee46b7b3980a2e3434ec7f605fa4a',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_3.html b/docs/html/search/enumvalues_3.html new file mode 100644 index 0000000..8720760 --- /dev/null +++ b/docs/html/search/enumvalues_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_3.js b/docs/html/search/enumvalues_3.js new file mode 100644 index 0000000..e8a82de --- /dev/null +++ b/docs/html/search/enumvalues_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['initial_5fstate_1182',['INITIAL_STATE',['../main_8h.html#a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f',1,'main.h']]], + ['ip_5fready_5fconfig_5floaded_5fconnecting_5fto_5fbroker_1183',['IP_READY_CONFIG_LOADED_CONNECTING_TO_BROKER',['../main_8h.html#a98b39d850b041da059cf5de62463a473a3313433a81a25d16c72bb69503429b2d',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_4.html b/docs/html/search/enumvalues_4.html new file mode 100644 index 0000000..f1a8897 --- /dev/null +++ b/docs/html/search/enumvalues_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_4.js b/docs/html/search/enumvalues_4.js new file mode 100644 index 0000000..160dd22 --- /dev/null +++ b/docs/html/search/enumvalues_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['libs_5finitialized_1184',['LIBS_INITIALIZED',['../main_8h.html#a98b39d850b041da059cf5de62463a473a3e7fa6277fa286ce64cfab4f9e6d77c2',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_5.html b/docs/html/search/enumvalues_5.html new file mode 100644 index 0000000..396f936 --- /dev/null +++ b/docs/html/search/enumvalues_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_5.js b/docs/html/search/enumvalues_5.js new file mode 100644 index 0000000..230e8b5 --- /dev/null +++ b/docs/html/search/enumvalues_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['operation_1185',['OPERATION',['../main_8h.html#a98b39d850b041da059cf5de62463a473ae6c7d41b255eff353251fbec6fe839e4',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_6.html b/docs/html/search/enumvalues_6.html new file mode 100644 index 0000000..a1f8029 --- /dev/null +++ b/docs/html/search/enumvalues_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_6.js b/docs/html/search/enumvalues_6.js new file mode 100644 index 0000000..ee19882 --- /dev/null +++ b/docs/html/search/enumvalues_6.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['read_5fre_5fconfig_1186',['READ_RE_CONFIG',['../main_8h.html#a98b39d850b041da059cf5de62463a473af3d074e791c337efc66c7e5bd378e946',1,'main.h']]], + ['reconnect_1187',['RECONNECT',['../main_8h.html#a98b39d850b041da059cf5de62463a473af0a5833d071a9c74f91cd1ef5063d2dc',1,'main.h']]], + ['reinit_1188',['REINIT',['../main_8h.html#a98b39d850b041da059cf5de62463a473a8d100cff0932a4777f300647958ca8ba',1,'main.h']]], + ['retaining_5fcollecting_1189',['RETAINING_COLLECTING',['../main_8h.html#a98b39d850b041da059cf5de62463a473ade482451d4b1a70137e1590d5d9e0fe8',1,'main.h']]] +]; diff --git a/docs/html/search/enumvalues_7.html b/docs/html/search/enumvalues_7.html new file mode 100644 index 0000000..88b5176 --- /dev/null +++ b/docs/html/search/enumvalues_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/enumvalues_7.js b/docs/html/search/enumvalues_7.js new file mode 100644 index 0000000..8ae60e0 --- /dev/null +++ b/docs/html/search/enumvalues_7.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['t_5fbcst_1190',['T_BCST',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca26fa2da957fe6c55420ed0e1a7dd7a15',1,'utils.h']]], + ['t_5fdev_1191',['T_DEV',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca3fa22e2ae357981afc104dc67d764c85',1,'utils.h']]], + ['t_5fout_1192',['T_OUT',['../utils_8h.html#a2598bacb04e8f77e8b41cee61ef359fca27b2310c69298d62ed18dd416476a44d',1,'utils.h']]] +]; diff --git a/docs/html/search/files_0.html b/docs/html/search/files_0.html new file mode 100644 index 0000000..76b64f5 --- /dev/null +++ b/docs/html/search/files_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_0.js b/docs/html/search/files_0.js new file mode 100644 index 0000000..6e9419a --- /dev/null +++ b/docs/html/search/files_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['abstractch_2ecpp_747',['abstractch.cpp',['../abstractch_8cpp.html',1,'']]], + ['abstractch_2eh_748',['abstractch.h',['../abstractch_8h.html',1,'']]], + ['abstractin_2ecpp_749',['abstractin.cpp',['../abstractin_8cpp.html',1,'']]], + ['abstractin_2eh_750',['abstractin.h',['../abstractin_8h.html',1,'']]], + ['abstractout_2eh_751',['abstractout.h',['../abstractout_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_1.html b/docs/html/search/files_1.html new file mode 100644 index 0000000..c8edef8 --- /dev/null +++ b/docs/html/search/files_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_1.js b/docs/html/search/files_1.js new file mode 100644 index 0000000..959b77e --- /dev/null +++ b/docs/html/search/files_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['bright_2ecpp_752',['bright.cpp',['../bright_8cpp.html',1,'']]], + ['bright_2eh_753',['bright.h',['../bright_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_2.html b/docs/html/search/files_2.html new file mode 100644 index 0000000..75b0173 --- /dev/null +++ b/docs/html/search/files_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_2.js b/docs/html/search/files_2.js new file mode 100644 index 0000000..1bf6c10 --- /dev/null +++ b/docs/html/search/files_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['colorchannel_2ecpp_754',['colorchannel.cpp',['../colorchannel_8cpp.html',1,'']]], + ['colorchannel_2eh_755',['colorchannel.h',['../colorchannel_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_3.html b/docs/html/search/files_3.html new file mode 100644 index 0000000..27b6243 --- /dev/null +++ b/docs/html/search/files_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_3.js b/docs/html/search/files_3.js new file mode 100644 index 0000000..1312b65 --- /dev/null +++ b/docs/html/search/files_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['dmx_2ecpp_756',['dmx.cpp',['../dmx_8cpp.html',1,'']]], + ['dmx_2eh_757',['dmx.h',['../dmx_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_4.html b/docs/html/search/files_4.html new file mode 100644 index 0000000..5f8b966 --- /dev/null +++ b/docs/html/search/files_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_4.js b/docs/html/search/files_4.js new file mode 100644 index 0000000..2525ba0 --- /dev/null +++ b/docs/html/search/files_4.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['in_5fccs811_5fhdc1080_2ecpp_758',['in_ccs811_hdc1080.cpp',['../in__ccs811__hdc1080_8cpp.html',1,'']]], + ['in_5fccs811_5fhdc1080_2eh_759',['in_ccs811_hdc1080.h',['../in__ccs811__hdc1080_8h.html',1,'']]], + ['inputs_2ecpp_760',['inputs.cpp',['../inputs_8cpp.html',1,'']]], + ['inputs_2eh_761',['inputs.h',['../inputs_8h.html',1,'']]], + ['item_2ecpp_762',['item.cpp',['../item_8cpp.html',1,'']]], + ['item_2eh_763',['item.h',['../item_8h.html',1,'']]], + ['itemcmd_2ecpp_764',['itemCmd.cpp',['../item_cmd_8cpp.html',1,'']]], + ['itemcmd_2eh_765',['itemCmd.h',['../item_cmd_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_5.html b/docs/html/search/files_5.html new file mode 100644 index 0000000..f3f578b --- /dev/null +++ b/docs/html/search/files_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_5.js b/docs/html/search/files_5.js new file mode 100644 index 0000000..122b029 --- /dev/null +++ b/docs/html/search/files_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['main_2ecpp_766',['main.cpp',['../main_8cpp.html',1,'']]], + ['main_2eh_767',['main.h',['../main_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6.html b/docs/html/search/files_6.html new file mode 100644 index 0000000..6d02253 --- /dev/null +++ b/docs/html/search/files_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_6.js b/docs/html/search/files_6.js new file mode 100644 index 0000000..67749cc --- /dev/null +++ b/docs/html/search/files_6.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['options_2eh_768',['options.h',['../options_8h.html',1,'']]], + ['out_5fac_2ecpp_769',['out_ac.cpp',['../out__ac_8cpp.html',1,'']]], + ['out_5fac_2eh_770',['out_ac.h',['../out__ac_8h.html',1,'']]], + ['out_5fdmx_2ecpp_771',['out_dmx.cpp',['../out__dmx_8cpp.html',1,'']]], + ['out_5fdmx_2eh_772',['out_dmx.h',['../out__dmx_8h.html',1,'']]], + ['out_5fmodbus_2ecpp_773',['out_modbus.cpp',['../out__modbus_8cpp.html',1,'']]], + ['out_5fmodbus_2eh_774',['out_modbus.h',['../out__modbus_8h.html',1,'']]], + ['out_5fmotor_2ecpp_775',['out_motor.cpp',['../out__motor_8cpp.html',1,'']]], + ['out_5fmotor_2eh_776',['out_motor.h',['../out__motor_8h.html',1,'']]], + ['out_5fpwm_2ecpp_777',['out_pwm.cpp',['../out__pwm_8cpp.html',1,'']]], + ['out_5fpwm_2eh_778',['out_pwm.h',['../out__pwm_8h.html',1,'']]], + ['out_5fspiled_2ecpp_779',['out_spiled.cpp',['../out__spiled_8cpp.html',1,'']]], + ['out_5fspiled_2eh_780',['out_spiled.h',['../out__spiled_8h.html',1,'']]], + ['owterm_2ecpp_781',['owTerm.cpp',['../ow_term_8cpp.html',1,'']]], + ['owterm_2eh_782',['owTerm.h',['../ow_term_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_7.html b/docs/html/search/files_7.html new file mode 100644 index 0000000..788a1ee --- /dev/null +++ b/docs/html/search/files_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_7.js b/docs/html/search/files_7.js new file mode 100644 index 0000000..c9665a6 --- /dev/null +++ b/docs/html/search/files_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['statusled_2ecpp_783',['statusled.cpp',['../statusled_8cpp.html',1,'']]], + ['statusled_2eh_784',['statusled.h',['../statusled_8h.html',1,'']]], + ['streamlog_2ecpp_785',['streamlog.cpp',['../streamlog_8cpp.html',1,'']]], + ['streamlog_2eh_786',['streamlog.h',['../streamlog_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_8.html b/docs/html/search/files_8.html new file mode 100644 index 0000000..7e72895 --- /dev/null +++ b/docs/html/search/files_8.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_8.js b/docs/html/search/files_8.js new file mode 100644 index 0000000..349491b --- /dev/null +++ b/docs/html/search/files_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['textconst_2eh_787',['textconst.h',['../textconst_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_9.html b/docs/html/search/files_9.html new file mode 100644 index 0000000..e5352db --- /dev/null +++ b/docs/html/search/files_9.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/files_9.js b/docs/html/search/files_9.js new file mode 100644 index 0000000..e38cb32 --- /dev/null +++ b/docs/html/search/files_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['utils_2ecpp_788',['utils.cpp',['../utils_8cpp.html',1,'']]], + ['utils_2eh_789',['utils.h',['../utils_8h.html',1,'']]] +]; diff --git a/docs/html/search/functions_0.html b/docs/html/search/functions_0.html new file mode 100644 index 0000000..f04535a --- /dev/null +++ b/docs/html/search/functions_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_0.js b/docs/html/search/functions_0.js new file mode 100644 index 0000000..5bb77ee --- /dev/null +++ b/docs/html/search/functions_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5f_5fattribute_5f_5f_790',['__attribute__',['../utils_8cpp.html#abf2ee9f926c45315d1a91ae9d4bdba26',1,'utils.cpp']]] +]; diff --git a/docs/html/search/functions_1.html b/docs/html/search/functions_1.html new file mode 100644 index 0000000..6e827eb --- /dev/null +++ b/docs/html/search/functions_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_1.js b/docs/html/search/functions_1.js new file mode 100644 index 0000000..a9054cc --- /dev/null +++ b/docs/html/search/functions_1.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['abstractch_791',['abstractCh',['../classabstract_ch.html#a8f13aa9c0f6749f7f064d1930667aaed',1,'abstractCh']]], + ['abstractin_792',['abstractIn',['../classabstract_in.html#ab6b1dfafab3f52fe383d7e4014150ffb',1,'abstractIn']]], + ['abstractout_793',['abstractOut',['../classabstract_out.html#adec371468752bd5027c282cf933ba035',1,'abstractOut']]], + ['analogpoll_794',['analogPoll',['../class_input.html#acb26235ba50553fa073a95096ebbbc69',1,'Input']]], + ['analogreadcached_795',['analogReadCached',['../classread_cache.html#aa6e9ec22513d70ee0d77b6ab7304d140',1,'readCache']]], + ['anounce_796',['Anounce',['../classabstract_ch.html#a2e75f5b76a25accdb1de0c936951a93f',1,'abstractCh']]], + ['applyconfig_797',['applyConfig',['../main_8cpp.html#a82529a2f0678bfb6b0808935865ba42d',1,'applyConfig(): main.cpp'],['../main_8h.html#a82529a2f0678bfb6b0808935865ba42d',1,'applyConfig(): main.cpp']]], + ['artnetsetup_798',['ArtnetSetup',['../dmx_8cpp.html#af7ba5611c2c7485938cbf745ed65741f',1,'ArtnetSetup(): dmx.cpp'],['../dmx_8h.html#af7ba5611c2c7485938cbf745ed65741f',1,'ArtnetSetup(): dmx.cpp']]], + ['assignfrom_799',['assignFrom',['../classitem_cmd.html#ae41a813edbb1cdbc09792cae5dd2f434',1,'itemCmd']]], + ['attachinterruptpinirq_800',['attachInterruptPinIrq',['../class_input.html#ab272ddf677bc7ebaa20c0a8677b49b80',1,'Input']]], + ['available_801',['available',['../class_streamlog.html#ae7a165675188ecb1bf305b025efbf47b',1,'Streamlog']]] +]; diff --git a/docs/html/search/functions_10.html b/docs/html/search/functions_10.html new file mode 100644 index 0000000..09511ec --- /dev/null +++ b/docs/html/search/functions_10.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_10.js b/docs/html/search/functions_10.js new file mode 100644 index 0000000..8671580 --- /dev/null +++ b/docs/html/search/functions_10.js @@ -0,0 +1,43 @@ +var searchData= +[ + ['saveflash_982',['saveFlash',['../main_8cpp.html#a3d9b2a443a58bf0d3e28c174d2c43b8f',1,'saveFlash(short n, char *str): main.cpp'],['../main_8cpp.html#a881f36fdc5bf71038ea93823437e7751',1,'saveFlash(short n, IPAddress &ip): main.cpp'],['../main_8h.html#a3d9b2a443a58bf0d3e28c174d2c43b8f',1,'saveFlash(short n, char *str): main.cpp'],['../main_8h.html#a881f36fdc5bf71038ea93823437e7751',1,'saveFlash(short n, IPAddress &ip): main.cpp']]], + ['saveitem_983',['saveItem',['../classitem_cmd.html#ab1b5e501888d0944b6c1215d58b524cf',1,'itemCmd']]], + ['scan_5fi2c_5fbus_984',['scan_i2c_bus',['../utils_8cpp.html#af585ed9b15b9980b72fbec6d9c9dba67',1,'scan_i2c_bus(): utils.cpp'],['../utils_8h.html#af585ed9b15b9980b72fbec6d9c9dba67',1,'scan_i2c_bus(): utils.cpp']]], + ['senddata_985',['SendData',['../out__ac_8cpp.html#a59d76c8166fd1a36485f4bdf3323e272',1,'out_ac.cpp']]], + ['senddelayedstatus_986',['sendDelayedStatus',['../class_item.html#af767f604dcaed8a497438255c28129fd',1,'Item']]], + ['sendstatus_987',['SendStatus',['../class_item.html#a525c4e3f723a85af5e818c1b5834e277',1,'Item']]], + ['sensors_5floop_988',['sensors_loop',['../ow_term_8cpp.html#a3c7848115ede4d67192d7964e5157591',1,'owTerm.cpp']]], + ['set_989',['set',['../classstatus_l_e_d.html#a3e1eff776b7ffdac123d76b7419c89e6',1,'statusLED']]], + ['setaddr_990',['SetAddr',['../utils_8cpp.html#a4dd6705cb24a3eab32d9abc8393844b3',1,'SetAddr(char *out, uint8_t *addr): utils.cpp'],['../utils_8h.html#a4dd6705cb24a3eab32d9abc8393844b3',1,'SetAddr(char *out, uint8_t *addr): utils.cpp']]], + ['setargtype_991',['setArgType',['../classitem_cmd.html#a599d3dda4601b317d4bc8c5d28309553',1,'itemCmd']]], + ['setbytes_992',['SetBytes',['../utils_8cpp.html#a85a33f14fc0eefef02be4c6bacf5c8f0',1,'SetBytes(uint8_t *addr, uint8_t count, char *out): utils.cpp'],['../utils_8h.html#a85a33f14fc0eefef02be4c6bacf5c8f0',1,'SetBytes(uint8_t *addr, uint8_t count, char *out): utils.cpp']]], + ['setchantype_993',['setChanType',['../classitem_cmd.html#af635936afc4c65095b1828bd32d5e9ca',1,'itemCmd']]], + ['setcmd_994',['setCmd',['../class_item.html#a188910459fc0ded60ca268664bf9b212',1,'Item']]], + ['setdefault_995',['setDefault',['../classitem_cmd.html#acd8e47506003ffd28db64d6a6c443300',1,'itemCmd']]], + ['setext_996',['setExt',['../class_item.html#ad4e62aba1f62917a8df4c47c2894a3ad',1,'Item']]], + ['setflag_997',['setFlag',['../class_item.html#abd22bfa75e71849cc0fadcee9eef330d',1,'Item']]], + ['seth_998',['setH',['../classitem_cmd.html#a80e4577e896d7d015402709153cc66cd',1,'itemCmd']]], + ['setnextpolltime_999',['setNextPollTime',['../class_input.html#a8efca39cb91c24dc80a62d660fd9ea2a',1,'Input']]], + ['setpersistent_1000',['setPersistent',['../class_item.html#af023950bb9b9760b98c5de7287bc467d',1,'Item']]], + ['sets_1001',['setS',['../classitem_cmd.html#aed6c891043edd0083ea036494956da93',1,'itemCmd']]], + ['setsubtype_1002',['setSubtype',['../class_item.html#a47b261677ded48fb1c51088b9d956dcc',1,'Item']]], + ['setsuffix_1003',['setSuffix',['../classitem_cmd.html#ab0c9dd09c598686d46dec923550d2e47',1,'itemCmd']]], + ['settopic_1004',['setTopic',['../utils_8cpp.html#ab33cdb70ba57128d05b7efe3317b5a82',1,'setTopic(char *buf, int8_t buflen, topicType tt, const char *suffix): utils.cpp'],['../utils_8h.html#aa0045f41bb76629662ed1ee7952f856e',1,'setTopic(char *buf, int8_t buflen, topicType tt, const char *suffix=NULL): utils.cpp']]], + ['setup_1005',['Setup',['../classabstract_ch.html#aeaf6346625245be1774a6d27d9cece4e',1,'abstractCh::Setup()'],['../class_item.html#ae84f04e796546f4c34db79a060b0d443',1,'Item::Setup()'],['../classin__ccs811.html#adc24e341d0df945dc9db85051fe03e48',1,'in_ccs811::Setup()'],['../classin__hdc1080.html#ae8e077105f9b80dcf682cdc2bd4a95e3',1,'in_hdc1080::Setup()'],['../classout___a_c.html#a3a7b5b20a7d66870551f3dd485e66de2',1,'out_AC::Setup()'],['../classout__dmx.html#a7bf52f6c7ce630f879de60596b82dd87',1,'out_dmx::Setup()'],['../classout___modbus.html#acf5452aac576901614eca795ab4ca440',1,'out_Modbus::Setup()'],['../classout___motor.html#ab9f2b433a4fedd6fec5b9cb504b934f4',1,'out_Motor::Setup()'],['../classout__pwm.html#a0ba3173e9df1cb61b74a705c270ef7b6',1,'out_pwm::Setup()'],['../classout___s_p_i_led.html#adbe9d6b9a2a5e515e9a372a4c4675b15',1,'out_SPILed::Setup()'],['../class_input.html#af875dd162373e90e21f8213f928f8032',1,'Input::setup()']]], + ['setup_5fmain_1006',['setup_main',['../main_8cpp.html#aa34675c2dc6eb3d0744844d8e67e3af8',1,'setup_main(): main.cpp'],['../main_8h.html#aa34675c2dc6eb3d0744844d8e67e3af8',1,'setup_main(): main.cpp']]], + ['setupcmdarduino_1007',['setupCmdArduino',['../main_8cpp.html#abec54b31996557c73a31054ce068c8fa',1,'setupCmdArduino(): main.cpp'],['../main_8h.html#abec54b31996557c73a31054ce068c8fa',1,'setupCmdArduino(): main.cpp']]], + ['setupmacaddress_1008',['setupMacAddress',['../main_8cpp.html#a2186513a50a77b9bd9bb453d4584c5f8',1,'setupMacAddress(): main.cpp'],['../main_8h.html#a2186513a50a77b9bd9bb453d4584c5f8',1,'setupMacAddress(): main.cpp']]], + ['setupota_1009',['setupOTA',['../main_8cpp.html#acfca2f2b3c22e56799e7fd1f66952729',1,'main.cpp']]], + ['setupowidle_1010',['setupOwIdle',['../ow_term_8cpp.html#aaa733da2383859748e802f38409546da',1,'setupOwIdle(void(*ptr)()): owTerm.cpp'],['../ow_term_8h.html#acbf132b42d0828077bbd21e2b205c5fc',1,'setupOwIdle(void(*)()): owTerm.cpp']]], + ['setupsyslog_1011',['setupSyslog',['../main_8cpp.html#afa048a9d2e392a67cb5af8ab00b3ec0f',1,'main.cpp']]], + ['setval_1012',['setVal',['../class_item.html#ad2a38c039f8b3cee14cb97c9526d9260',1,'Item']]], + ['show_1013',['show',['../classstatus_l_e_d.html#a611fa4b90edb00fa5b42923ea091cd9c',1,'statusLED']]], + ['softrebootfunc_1014',['softRebootFunc',['../utils_8h.html#a7facb8f2c84692ab65024785eb64b541',1,'utils.h']]], + ['status_1015',['Status',['../classabstract_ch.html#aefb8821172a2e66f49ea0da9b7c205a5',1,'abstractCh::Status()'],['../classout___a_c.html#aba0d1953f95f7d04a24582c40cd26196',1,'out_AC::Status()'],['../classout__dmx.html#aa5f2590101b1951f4cf5eb57449d8365',1,'out_dmx::Status()'],['../classout___modbus.html#acc0fc0ecdb6928cfc7906986b8139780',1,'out_Modbus::Status()'],['../classout___motor.html#a47de22f0ce071787ac14a19897337cea',1,'out_Motor::Status()'],['../classout__pwm.html#a01edf9d010b717601898bf3fddecbc3f',1,'out_pwm::Status()'],['../classout___s_p_i_led.html#a9486de18e156758a12fa257f68314e20',1,'out_SPILed::Status()']]], + ['statusled_1016',['statusLED',['../classstatus_l_e_d.html#ae9a8652af566b29edf336fff51e239e1',1,'statusLED']]], + ['stop_1017',['Stop',['../classabstract_ch.html#afb7b6f4586412a13f8f6ac08061e5ae0',1,'abstractCh::Stop()'],['../class_item.html#ac382f69ca11e6eebfec1f40133fddd42',1,'Item::Stop()'],['../classout___a_c.html#a763ace53db4e64692d061db48f396aba',1,'out_AC::Stop()'],['../classout__dmx.html#a0b9383e7fe30707142915cbc3d0ec772',1,'out_dmx::Stop()'],['../classout___modbus.html#a9cb4b395f5f8a6d15dcc429664a4174b',1,'out_Modbus::Stop()'],['../classout___motor.html#aafdbaaaf47776dd8c0c5d6bfa32bb3c2',1,'out_Motor::Stop()'],['../classout__pwm.html#a9f3fc73a1fff6ecf991d42564a7b8273',1,'out_pwm::Stop()'],['../classout___s_p_i_led.html#a4e24b8a490f8353452b8594dffff8396',1,'out_SPILed::Stop()']]], + ['str2regsize_1018',['str2regSize',['../out__modbus_8cpp.html#a6b595bdd94e3d76226b079ba5d7d7239',1,'out_modbus.cpp']]], + ['str2serialparam_1019',['str2SerialParam',['../out__modbus_8cpp.html#ae62352d2766976d85ca20006e681f254',1,'out_modbus.cpp']]], + ['streamlog_1020',['Streamlog',['../class_streamlog.html#a51cd1bbe03b32ad2d4235b4ef7945d37',1,'Streamlog']]], + ['subitem2cmd_1021',['subitem2cmd',['../item_8cpp.html#a44da304670c8b0446f674b318ebc9294',1,'item.cpp']]] +]; diff --git a/docs/html/search/functions_11.html b/docs/html/search/functions_11.html new file mode 100644 index 0000000..066bc66 --- /dev/null +++ b/docs/html/search/functions_11.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_11.js b/docs/html/search/functions_11.js new file mode 100644 index 0000000..6821003 --- /dev/null +++ b/docs/html/search/functions_11.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['thermodisabledordisconnected_1022',['thermoDisabledOrDisconnected',['../main_8cpp.html#a35f5a9d31c8cb726a3c7e77e7ad9c4b2',1,'main.cpp']]], + ['thermoloop_1023',['thermoLoop',['../main_8cpp.html#a2d1cd6009a6e25d3605fee3e54065577',1,'thermoLoop(void): main.cpp'],['../main_8h.html#a2d1cd6009a6e25d3605fee3e54065577',1,'thermoLoop(void): main.cpp']]], + ['thermosetcurtemp_1024',['thermoSetCurTemp',['../item_8h.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp'],['../main_8cpp.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp'],['../main_8h.html#a73643474e211698e96d2a6ac69264b46',1,'thermoSetCurTemp(char *name, float t): main.cpp']]], + ['toggle_1025',['Toggle',['../class_item.html#a5ddbe231ea061c1001436dd5d57cc97b',1,'Item']]], + ['tohex_1026',['toHex',['../out__ac_8cpp.html#a609d8aade61dfe61ef1100ddca6c3799',1,'out_ac.cpp']]], + ['tostring_1027',['toString',['../classitem_cmd.html#a4400a0876f9f852f654bc7c5530ef00f',1,'itemCmd']]], + ['txt2cmd_1028',['txt2cmd',['../item_8h.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp'],['../item_cmd_8cpp.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp'],['../item_cmd_8h.html#a354a79f09dd98fcf6c171dd5c8de21b6',1,'txt2cmd(char *payload): itemCmd.cpp']]], + ['txt2subitem_1029',['txt2subItem',['../item_8cpp.html#ac002f1e83a05b79e27bda8f93184bcee',1,'item.cpp']]] +]; diff --git a/docs/html/search/functions_12.html b/docs/html/search/functions_12.html new file mode 100644 index 0000000..7f384f4 --- /dev/null +++ b/docs/html/search/functions_12.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_12.js b/docs/html/search/functions_12.js new file mode 100644 index 0000000..5b84845 --- /dev/null +++ b/docs/html/search/functions_12.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['uptimepoll_1030',['uptimePoll',['../class_input.html#a3d224f0fd4da038390abaa8f84478d5c',1,'Input']]] +]; diff --git a/docs/html/search/functions_13.html b/docs/html/search/functions_13.html new file mode 100644 index 0000000..9a4107f --- /dev/null +++ b/docs/html/search/functions_13.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_13.js b/docs/html/search/functions_13.js new file mode 100644 index 0000000..c1fe1f2 --- /dev/null +++ b/docs/html/search/functions_13.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['vacomsetfan_1031',['VacomSetFan',['../class_item.html#a127a28254a55fbd7fcbcd37816afe163',1,'Item']]], + ['vacomsetheat_1032',['VacomSetHeat',['../class_item.html#aa0f1f997dd794068562d43eb4a3911a6',1,'Item']]] +]; diff --git a/docs/html/search/functions_14.html b/docs/html/search/functions_14.html new file mode 100644 index 0000000..2412ba0 --- /dev/null +++ b/docs/html/search/functions_14.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_14.js b/docs/html/search/functions_14.js new file mode 100644 index 0000000..801741b --- /dev/null +++ b/docs/html/search/functions_14.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['write_1033',['write',['../class_streamlog.html#a944486d544c3677410e1505b9cd6858b',1,'Streamlog']]] +]; diff --git a/docs/html/search/functions_15.html b/docs/html/search/functions_15.html new file mode 100644 index 0000000..8a393ca --- /dev/null +++ b/docs/html/search/functions_15.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_15.js b/docs/html/search/functions_15.js new file mode 100644 index 0000000..16050fa --- /dev/null +++ b/docs/html/search/functions_15.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['_7eabstractch_1034',['~abstractCh',['../classabstract_ch.html#a58f34f5341674622c30f5c005ceadead',1,'abstractCh']]], + ['_7eitem_1035',['~Item',['../class_item.html#a11663c84075b78c3ae5e30fdfcd7c458',1,'Item']]] +]; diff --git a/docs/html/search/functions_2.html b/docs/html/search/functions_2.html new file mode 100644 index 0000000..184e9da --- /dev/null +++ b/docs/html/search/functions_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_2.js b/docs/html/search/functions_2.js new file mode 100644 index 0000000..22a827c --- /dev/null +++ b/docs/html/search/functions_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['begin_802',['begin',['../class_streamlog.html#ab9c1022fccf6b585b738f30f8577d613',1,'Streamlog']]] +]; diff --git a/docs/html/search/functions_3.html b/docs/html/search/functions_3.html new file mode 100644 index 0000000..31ac9f8 --- /dev/null +++ b/docs/html/search/functions_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_3.js b/docs/html/search/functions_3.js new file mode 100644 index 0000000..6c268a8 --- /dev/null +++ b/docs/html/search/functions_3.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['changed_803',['Changed',['../main_8cpp.html#abbcbfa3bc0f5d93f1f1d84c3fdc23608',1,'Changed(int i, DeviceAddress addr, float currentTemp): main.cpp'],['../main_8h.html#abbcbfa3bc0f5d93f1f1d84c3fdc23608',1,'Changed(int i, DeviceAddress addr, float currentTemp): main.cpp']]], + ['changestate_804',['changeState',['../class_input.html#a08323a44c2d4ca714e4e6a14ae73fc4f',1,'Input']]], + ['checkfm_805',['checkFM',['../class_item.html#aac323dbba691d2a1ffd0b760fdc2198d',1,'Item']]], + ['checkheatretry_806',['checkHeatRetry',['../class_item.html#a9fa6f17268398679295a57f7506089b8',1,'Item']]], + ['checkmodbusdimmer_807',['checkModbusDimmer',['../class_item.html#a899707e630b75eeb422fbc7ca3d829ce',1,'Item::checkModbusDimmer()'],['../class_item.html#a2d807aa2a634312bde779e174e28c4ce',1,'Item::checkModbusDimmer(int data)']]], + ['checkmodbusretry_808',['checkModbusRetry',['../class_item.html#a4454719134cb94ff27943cc35207fd74',1,'Item']]], + ['checkvcretry_809',['checkVCRetry',['../class_item.html#a353e817a01d39e0341fdc12b00351169',1,'Item']]], + ['cleanconf_810',['cleanConf',['../main_8cpp.html#a19861585da4d4540b8f7c2601895607d',1,'main.cpp']]], + ['cleanstore_811',['cleanStore',['../inputs_8cpp.html#a4d0d8ca9d09c3caf99fbaec688ebef2a',1,'inputs.cpp']]], + ['clearflag_812',['clearFlag',['../class_item.html#a60c43acb3bd16c858ca4c1fa6b12145b',1,'Item']]], + ['cmd_813',['Cmd',['../classitem_cmd.html#a8b1cc0b2b9e5f30f4cf9bb4db21988ac',1,'itemCmd']]], + ['cmdfunctioncleareeprom_814',['cmdFunctionClearEEPROM',['../main_8cpp.html#ab2e128aecd2d6a7c32257adb25b6bc0d',1,'main.cpp']]], + ['cmdfunctionget_815',['cmdFunctionGet',['../main_8cpp.html#a84a345181b5379a4dc0eec58f348deb7',1,'cmdFunctionGet(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a84a345181b5379a4dc0eec58f348deb7',1,'cmdFunctionGet(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionhelp_816',['cmdFunctionHelp',['../main_8cpp.html#a21fea6de1fe7b59684f3d18e3f4764d7',1,'cmdFunctionHelp(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a21fea6de1fe7b59684f3d18e3f4764d7',1,'cmdFunctionHelp(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionip_817',['cmdFunctionIp',['../main_8cpp.html#a5c6faf75e381fd57cf83b6efb002ceb4',1,'main.cpp']]], + ['cmdfunctionkill_818',['cmdFunctionKill',['../main_8cpp.html#ab854d947e87c345f801a07f196e50a67',1,'cmdFunctionKill(int arg_cnt, char **args): main.cpp'],['../main_8h.html#ab854d947e87c345f801a07f196e50a67',1,'cmdFunctionKill(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionload_819',['cmdFunctionLoad',['../main_8cpp.html#a3e35733dfdfb0fc4a3c55ab4bfc34fc1',1,'cmdFunctionLoad(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a3e35733dfdfb0fc4a3c55ab4bfc34fc1',1,'cmdFunctionLoad(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionpwd_820',['cmdFunctionPwd',['../main_8cpp.html#a46b3fce70062889d311e18a31d1dac28',1,'main.cpp']]], + ['cmdfunctionreboot_821',['cmdFunctionReboot',['../main_8cpp.html#a1f823c0616ac50cfe9d6d262c313b416',1,'main.cpp']]], + ['cmdfunctionreq_822',['cmdFunctionReq',['../main_8cpp.html#a1ebb3f04dc34df941a4bf974f7ad9443',1,'cmdFunctionReq(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a1ebb3f04dc34df941a4bf974f7ad9443',1,'cmdFunctionReq(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionsave_823',['cmdFunctionSave',['../main_8cpp.html#a66af021e24df0f8f82d9550cdb6bf865',1,'cmdFunctionSave(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a66af021e24df0f8f82d9550cdb6bf865',1,'cmdFunctionSave(int arg_cnt, char **args): main.cpp']]], + ['cmdfunctionsetmac_824',['cmdFunctionSetMac',['../main_8cpp.html#aea9177f835f6f4ad83d8f71dc0a4db77',1,'cmdFunctionSetMac(int arg_cnt, char **args): main.cpp'],['../main_8h.html#aea9177f835f6f4ad83d8f71dc0a4db77',1,'cmdFunctionSetMac(int arg_cnt, char **args): main.cpp']]], + ['colorchannel_825',['colorChannel',['../classcolor_channel.html#af5d8c0be99104c65484560a5a1c2cfd2',1,'colorChannel']]], + ['contactpoll_826',['contactPoll',['../class_input.html#a48dfeb886a0927b60d3200bbdea5765a',1,'Input']]], + ['counterpoll_827',['counterPoll',['../class_input.html#a347f052d5de6b996d7e6cf4ac83485d9',1,'Input']]], + ['ctrl_828',['Ctrl',['../classabstract_out.html#aacaa5ef80fdc683ef96a4dc80d24692a',1,'abstractOut::Ctrl()'],['../classcolor_channel.html#a9d7354cc266c98067b7b43cbf8707feb',1,'colorChannel::Ctrl()'],['../class_item.html#a821048224e300ab4bb9eb047bf859b2c',1,'Item::Ctrl(itemCmd cmd, char *subItem=NULL)'],['../class_item.html#a51166376e10786d0daf684ea85988b75',1,'Item::Ctrl(char *payload, char *subItem=NULL)'],['../classout___a_c.html#aeaf2ac4088b2b4b2fd4e1b83755c9964',1,'out_AC::Ctrl()'],['../classout___modbus.html#a784be57c40d67b41488b9585fe792019',1,'out_Modbus::Ctrl()'],['../classout___motor.html#aa731e4d1848e07ac7dc4a99a0ddad942',1,'out_Motor::Ctrl()']]] +]; diff --git a/docs/html/search/functions_4.html b/docs/html/search/functions_4.html new file mode 100644 index 0000000..306d41f --- /dev/null +++ b/docs/html/search/functions_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_4.js b/docs/html/search/functions_4.js new file mode 100644 index 0000000..335c08a --- /dev/null +++ b/docs/html/search/functions_4.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['debugout_829',['debugOut',['../classitem_cmd.html#a313a3ec3e6507dc0b7bc6238a81ce53a',1,'itemCmd']]], + ['dht22poll_830',['dht22Poll',['../class_input.html#a70568f40b1008c2f5fdf378ada26a5c4',1,'Input']]], + ['digitalreadcached_831',['digitalReadCached',['../classread_cache.html#a6fd0d58f3d2a4a027a80a2455999d9ae',1,'readCache']]], + ['disableddisconnected_832',['disabledDisconnected',['../main_8h.html#a4d31c49c58edcc310db78d660c434995',1,'main.h']]], + ['dmxcheck_833',['DMXCheck',['../dmx_8cpp.html#a0d740c517b312806bd34e2ac3155c3a5',1,'DMXCheck(void): dmx.cpp'],['../dmx_8h.html#a0d740c517b312806bd34e2ac3155c3a5',1,'DMXCheck(void): dmx.cpp']]], + ['dmximmediateupdate_834',['DMXImmediateUpdate',['../dmx_8cpp.html#a5e41f4011e2b2e2d400e4ac43a6541b1',1,'dmx.cpp']]], + ['dmxinsetup_835',['DMXinSetup',['../dmx_8cpp.html#a45b57fab4ca3a3f7d3491506945c6326',1,'DMXinSetup(int channels): dmx.cpp'],['../dmx_8h.html#a45b57fab4ca3a3f7d3491506945c6326',1,'DMXinSetup(int channels): dmx.cpp']]], + ['dmxout_5fpropagate_836',['DMXOUT_propagate',['../dmx_8cpp.html#a7c166d810404d3d15f663706271de37f',1,'DMXOUT_propagate(): dmx.cpp'],['../dmx_8h.html#a7c166d810404d3d15f663706271de37f',1,'DMXOUT_propagate(): dmx.cpp']]], + ['dmxoutsetup_837',['DMXoutSetup',['../dmx_8cpp.html#af5aeb81882ff7b4fe7cccb66a12539df',1,'DMXoutSetup(int channels): dmx.cpp'],['../dmx_8h.html#af5aeb81882ff7b4fe7cccb66a12539df',1,'DMXoutSetup(int channels): dmx.cpp']]], + ['dmxput_838',['DMXput',['../dmx_8cpp.html#a9f36c84bdc0b4926f7d7b28bbe47cdc0',1,'DMXput(void): dmx.cpp'],['../dmx_8h.html#a9f36c84bdc0b4926f7d7b28bbe47cdc0',1,'DMXput(void): dmx.cpp']]], + ['dmxsemiimmediateupdate_839',['DMXSemiImmediateUpdate',['../dmx_8cpp.html#ac68a7598c52a61fd8e6300149f466b97',1,'dmx.cpp']]], + ['dmxupdate_840',['DMXUpdate',['../dmx_8cpp.html#a60c7644cd41f9525ada7b3799d015591',1,'dmx.cpp']]], + ['dmxwritebuf_841',['DmxWriteBuf',['../dmx_8cpp.html#a3faac041a7441faf18a1ad72021be077',1,'DmxWriteBuf(uint16_t chan, uint8_t val): dmx.cpp'],['../dmx_8h.html#a3faac041a7441faf18a1ad72021be077',1,'DmxWriteBuf(uint16_t chan, uint8_t val): dmx.cpp']]] +]; diff --git a/docs/html/search/functions_5.html b/docs/html/search/functions_5.html new file mode 100644 index 0000000..27bbb70 --- /dev/null +++ b/docs/html/search/functions_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_5.js b/docs/html/search/functions_5.js new file mode 100644 index 0000000..9695177 --- /dev/null +++ b/docs/html/search/functions_5.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['end_842',['end',['../class_streamlog.html#ace6e3e265ae590b7f3b14b926bc3e60b',1,'Streamlog']]], + ['ethernetidle_843',['ethernetIdle',['../main_8cpp.html#ae161ded98969a4b68b902b79633edc3b',1,'main.cpp']]], + ['executecommand_844',['executeCommand',['../utils_8cpp.html#a132faa838403a6db82d1e7e65d4c4ff2',1,'executeCommand(aJsonObject *cmd, int8_t toggle): utils.cpp'],['../utils_8cpp.html#a2cd15a22b2799d0378a27850c96c6300',1,'executeCommand(aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd): utils.cpp'],['../utils_8h.html#a9843f57c765644bc93e675922da82beb',1,'executeCommand(aJsonObject *cmd, int8_t toggle=-1): utils.cpp'],['../utils_8h.html#a2cd15a22b2799d0378a27850c96c6300',1,'executeCommand(aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd): utils.cpp']]] +]; diff --git a/docs/html/search/functions_6.html b/docs/html/search/functions_6.html new file mode 100644 index 0000000..84606c0 --- /dev/null +++ b/docs/html/search/functions_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_6.js b/docs/html/search/functions_6.js new file mode 100644 index 0000000..6e85e13 --- /dev/null +++ b/docs/html/search/functions_6.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['findregister_845',['findRegister',['../classout___modbus.html#a026f3ad193b151565f70a72d1c8ca48b',1,'out_Modbus']]], + ['flash_846',['flash',['../classstatus_l_e_d.html#a84044dc9116245b50a8c45792772dd7f',1,'statusLED']]], + ['flush_847',['flush',['../class_streamlog.html#aec3522140e0c8f95039e62747f841987',1,'Streamlog']]], + ['freeram_848',['freeRam',['../utils_8h.html#a3c97971726a07a7d14fb701f4a4638f0',1,'utils.h']]] +]; diff --git a/docs/html/search/functions_7.html b/docs/html/search/functions_7.html new file mode 100644 index 0000000..cdfdabe --- /dev/null +++ b/docs/html/search/functions_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_7.js b/docs/html/search/functions_7.js new file mode 100644 index 0000000..7e56fdc --- /dev/null +++ b/docs/html/search/functions_7.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['getarg_849',['getArg',['../class_item.html#a04c95e83741aa896498ddbc869061886',1,'Item']]], + ['getargcount_850',['getArgCount',['../class_item.html#a9469cc0bb8560eb5f669d54903186433',1,'Item']]], + ['getargtype_851',['getArgType',['../classitem_cmd.html#afbb1ad437067315b7317b0846d71c7c7',1,'itemCmd']]], + ['getbright_852',['getBright',['../bright_8cpp.html#a773d31bb10e0abdf91e078da4326b7b0',1,'getBright(uint8_t percent): bright.cpp'],['../bright_8h.html#a773d31bb10e0abdf91e078da4326b7b0',1,'getBright(uint8_t percent): bright.cpp']]], + ['getbright255_853',['getBright255',['../bright_8cpp.html#a1707bc1c6aa92f67ef5a4456cbbec0c3',1,'getBright255(uint8_t percent): bright.cpp'],['../bright_8h.html#a1707bc1c6aa92f67ef5a4456cbbec0c3',1,'getBright255(uint8_t percent): bright.cpp']]], + ['getchanneladdr_854',['getChannelAddr',['../classcolor_channel.html#a09276ae99835316b9a222df20fb45097',1,'colorChannel']]], + ['getchantype_855',['getChanType',['../classabstract_out.html#a3f7033b9cda791ad810c4837ed5909f2',1,'abstractOut::getChanType()'],['../class_item.html#af1a89a9947e7759ce74f17d614346f46',1,'Item::getChanType()'],['../classout__dmx.html#a575351786cdc191555757cd39b4382f5',1,'out_dmx::getChanType()'],['../classout___modbus.html#a2752cf2376840f3763572963be8785db',1,'out_Modbus::getChanType()'],['../classout___motor.html#afd67d9b6e08f14074a236d5222809226',1,'out_Motor::getChanType()'],['../classout__pwm.html#a54bea9682560aa628f85a532a363d57a',1,'out_pwm::getChanType()'],['../classout___s_p_i_led.html#aac304bcdc354a3667ec99d4c06513b72',1,'out_SPILed::getChanType()']]], + ['getcmd_856',['getCmd',['../class_item.html#a25cddf040ae48d36375e54eb7fb31cf1',1,'Item::getCmd()'],['../classitem_cmd.html#a3ebb3c736df555ec4761713244195efb',1,'itemCmd::getCmd()']]], + ['getcmdparam_857',['getCmdParam',['../classitem_cmd.html#a96d4c944d09209825c3a5f770ff9b662',1,'itemCmd']]], + ['getconfig_858',['getConfig',['../classout___modbus.html#aea16d64ad349120558951f92205d5249',1,'out_Modbus::getConfig()'],['../classout___motor.html#a7ba2681d317e29a412e44741ae1ff5e4',1,'out_Motor::getConfig()'],['../classout___s_p_i_led.html#a6bcd6f13a335b380dfa655d5de4cbe75',1,'out_SPILed::getConfig()']]], + ['getcrc_859',['getCRC',['../out__ac_8cpp.html#afe1602b340d5fab3a7047498810fed25',1,'out_ac.cpp']]], + ['getdefaultonval_860',['getDefaultOnVal',['../classabstract_out.html#aedf98f968abc36332dcddb7eab00fe13',1,'abstractOut']]], + ['getext_861',['getExt',['../class_item.html#ab27cd47af857151cb695f7a4b4000424',1,'Item']]], + ['getflag_862',['getFlag',['../class_item.html#a15e9623fffd070c01c3dd87b1cc09ab3',1,'Item']]], + ['geth_863',['getH',['../classitem_cmd.html#ad694475a5854b6fc65de797814bf6c34',1,'itemCmd']]], + ['getidxfield_864',['getIdxField',['../class_input.html#a0697613f4b723bdb63e8c5510f85b9c6',1,'Input']]], + ['getint_865',['getInt',['../classitem_cmd.html#accd4361f950ca4929aaa9fd09aa82dd7',1,'itemCmd::getInt()'],['../utils_8cpp.html#a6037cfc7913c0856e93dbf8fc2133aac',1,'getInt(char **chan): utils.cpp'],['../utils_8h.html#a6037cfc7913c0856e93dbf8fc2133aac',1,'getInt(char **chan): utils.cpp']]], + ['getpercents_866',['getPercents',['../classitem_cmd.html#a7e931f05bd5160906078edc9b69f2a81',1,'itemCmd']]], + ['getpercents255_867',['getPercents255',['../classitem_cmd.html#a35a4a9458cc6550ed6a4891599e6bf9e',1,'itemCmd']]], + ['getpersistent_868',['getPersistent',['../class_item.html#ad1c452e68967188402a96a687aba6af0',1,'Item']]], + ['gets_869',['getS',['../classitem_cmd.html#ae583a6f85cc8e8f8c9fbca9e74874629',1,'itemCmd']]], + ['getstringfromconfig_870',['getStringFromConfig',['../main_8cpp.html#a900f9d7a9963ef64b642248a76175af7',1,'getStringFromConfig(aJsonObject *a, int i): main.cpp'],['../main_8cpp.html#a7d5e0e0612ab235c45bea4406faa5f76',1,'getStringFromConfig(aJsonObject *a, char *name): main.cpp']]], + ['getsubtype_871',['getSubtype',['../class_item.html#ad00923c702189ad97c6af2c3c20150fa',1,'Item']]], + ['getsuffix_872',['getSuffix',['../classitem_cmd.html#ac79ae89527f223885ef02db1c46ef20c',1,'itemCmd']]], + ['getval_873',['getVal',['../class_item.html#aba81303d678129315e393e11319b5ec5',1,'Item']]] +]; diff --git a/docs/html/search/functions_8.html b/docs/html/search/functions_8.html new file mode 100644 index 0000000..4f9f4e1 --- /dev/null +++ b/docs/html/search/functions_8.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_8.js b/docs/html/search/functions_8.js new file mode 100644 index 0000000..50b0f06 --- /dev/null +++ b/docs/html/search/functions_8.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['hex2dec_874',['HEX2DEC',['../utils_8cpp.html#a4cafbb82e446669dd50a2a386c1531fd',1,'HEX2DEC(char i): utils.cpp'],['../utils_8h.html#a215fd13be95cb1c21fe50b3693b85557',1,'HEX2DEC(char i): utils.cpp']]], + ['hs_875',['HS',['../classitem_cmd.html#adf272eeb6a9d65581ea3b773e94a9f3f',1,'itemCmd']]], + ['hsv_876',['HSV',['../classitem_cmd.html#a7fcb37674371093f11886bc7d1d39825',1,'itemCmd']]] +]; diff --git a/docs/html/search/functions_9.html b/docs/html/search/functions_9.html new file mode 100644 index 0000000..5463d03 --- /dev/null +++ b/docs/html/search/functions_9.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_9.js b/docs/html/search/functions_9.js new file mode 100644 index 0000000..6b9b84f --- /dev/null +++ b/docs/html/search/functions_9.js @@ -0,0 +1,31 @@ +var searchData= +[ + ['i2creset_877',['i2cReset',['../in__ccs811__hdc1080_8cpp.html#afb6d390da3bb3ce4bb8208512a7b6cdb',1,'in_ccs811_hdc1080.cpp']]], + ['in_5fccs811_878',['in_ccs811',['../classin__ccs811.html#a7e09edfd07c7c4f2e429e64f008f31c3',1,'in_ccs811']]], + ['in_5fhdc1080_879',['in_hdc1080',['../classin__hdc1080.html#a1045683d0e3ef4ddddc5a12753df323e',1,'in_hdc1080']]], + ['incrementh_880',['incrementH',['../classitem_cmd.html#ae0224e0c9b5d1aff2bb75f48c79f9711',1,'itemCmd']]], + ['incrementpercents_881',['incrementPercents',['../classitem_cmd.html#a2557d6a4edf34be8d98d5629327041b6',1,'itemCmd']]], + ['increments_882',['incrementS',['../classitem_cmd.html#ad4f3518f0b46b17152cdf18229e77f97',1,'itemCmd']]], + ['inet_5faton_883',['inet_aton',['../utils_8cpp.html#a2abeec32a0c7fe0b4aa02a8807ed9cee',1,'inet_aton(const char *aIPAddrString, IPAddress &aResult): utils.cpp'],['../utils_8h.html#a2abeec32a0c7fe0b4aa02a8807ed9cee',1,'inet_aton(const char *aIPAddrString, IPAddress &aResult): utils.cpp']]], + ['inet_5fntoa_5fr_884',['inet_ntoa_r',['../utils_8cpp.html#a5f3cdb518da692b8859ae48ed58196fc',1,'inet_ntoa_r(IPAddress addr, char *buf, int buflen): utils.cpp'],['../utils_8h.html#a5f3cdb518da692b8859ae48ed58196fc',1,'inet_ntoa_r(IPAddress addr, char *buf, int buflen): utils.cpp']]], + ['input_885',['Input',['../class_input.html#a52d1d1d4eb7890e186fa0faa11636b82',1,'Input::Input(aJsonObject *obj, aJsonObject *configObj=NULL)'],['../class_input.html#adae232acc9d1e127947a8b09f1665fb2',1,'Input::Input(char *name)']]], + ['inputloop_886',['inputLoop',['../main_8cpp.html#ad146ac5b8d70c1a9a590ba4029c3548e',1,'inputLoop(void): main.cpp'],['../main_8h.html#ad146ac5b8d70c1a9a590ba4029c3548e',1,'inputLoop(void): main.cpp']]], + ['inputsetup_887',['inputSetup',['../main_8cpp.html#a312b53e977f386af72ed576bca617fef',1,'inputSetup(void): main.cpp'],['../main_8h.html#a312b53e977f386af72ed576bca617fef',1,'inputSetup(void): main.cpp']]], + ['insertdata_888',['InsertData',['../classout___a_c.html#ae1fe864367b2837872ad28f8f94f6cf0',1,'out_AC']]], + ['int_889',['Int',['../classitem_cmd.html#aa6d1298546ecd8bfdbeae946e8d8fb93',1,'itemCmd::Int(int32_t i)'],['../classitem_cmd.html#a00d824ac0ccb48770e01c69c83f6f265',1,'itemCmd::Int(uint32_t i)']]], + ['invalidateinputcache_890',['invalidateInputCache',['../classread_cache.html#a7ecad823239b195a10fddb527b122dc7',1,'readCache']]], + ['ip_5fready_5fconfig_5floaded_5fconnecting_5fto_5fbroker_891',['ip_ready_config_loaded_connecting_to_broker',['../main_8cpp.html#aed1aedfd8ec1c64e58ca24e5de9470b2',1,'ip_ready_config_loaded_connecting_to_broker(): main.cpp'],['../main_8h.html#aed1aedfd8ec1c64e58ca24e5de9470b2',1,'ip_ready_config_loaded_connecting_to_broker(): main.cpp']]], + ['iploadfromflash_892',['ipLoadFromFlash',['../main_8cpp.html#a4ae13d2288d58c3ea8b731270fa798d3',1,'ipLoadFromFlash(short n, IPAddress &ip): main.cpp'],['../main_8h.html#a4ae13d2288d58c3ea8b731270fa798d3',1,'ipLoadFromFlash(short n, IPAddress &ip): main.cpp']]], + ['isactive_893',['isActive',['../classabstract_out.html#aec9af01cfc42f385cdf36ce51c8f3387',1,'abstractOut::isActive()'],['../class_item.html#a4db79caf8ace960c0bf74181c0bf5faa',1,'Item::isActive()'],['../classout___a_c.html#ab2d5debf137c9cc91ce0b58a72da0766',1,'out_AC::isActive()'],['../classout__dmx.html#a691d16146df96df12df763a90cdc6d92',1,'out_dmx::isActive()'],['../classout___modbus.html#a6b94efbbbbea5a4ad3b489dba8f9b268',1,'out_Modbus::isActive()'],['../classout___motor.html#ac2a224d74421c1a28d34a83779a45bdc',1,'out_Motor::isActive()'],['../classout__pwm.html#a18f9c90ab80a5bf00049e25c2c4657a5',1,'out_pwm::isActive()'],['../classout___s_p_i_led.html#ae87041b49ca8c6484a72c3c29955fbfb',1,'out_SPILed::isActive()']]], + ['iscolor_894',['isColor',['../classitem_cmd.html#aac6f0edbc2226dab5086a50537e31eb8',1,'itemCmd']]], + ['iscommand_895',['isCommand',['../classitem_cmd.html#aedd2c4f5da90fbe521be950f8f0d5f67',1,'itemCmd']]], + ['isnotretainingstatus_896',['isNotRetainingStatus',['../main_8cpp.html#a9b73380a4525361ce5634b890e83c8d2',1,'isNotRetainingStatus(): main.cpp'],['../main_8h.html#a9b73380a4525361ce5634b890e83c8d2',1,'isNotRetainingStatus(): main.cpp']]], + ['isthermostat_897',['IsThermostat',['../main_8h.html#a31ee3eed42c2bdf317dca09913f89b27',1,'main.h']]], + ['isthermostatwithminarraysize_898',['isThermostatWithMinArraySize',['../main_8cpp.html#a5976046ebb500523e75d64f9c858d73d',1,'main.cpp']]], + ['istimeover_899',['isTimeOver',['../utils_8cpp.html#a1c013af2ccb8a6dd130f0ab706b1abc4',1,'isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo): utils.cpp'],['../utils_8h.html#acd6072104e482c3f61e5bfad35a58ac0',1,'isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo=0xFFFFFFFF): utils.cpp']]], + ['isvalid_900',['isValid',['../class_input.html#a2e60007024a65b9529d8db1873bf8696',1,'Input::isValid()'],['../class_item.html#a3bbd12527ff3638189cae5291e578a96',1,'Item::isValid()']]], + ['isvalue_901',['isValue',['../classitem_cmd.html#a1c268b594eb9f4ea77ae8683f777e7ef',1,'itemCmd']]], + ['item_902',['Item',['../class_item.html#ac6f9ffe686b184cd30fb9ff023af9d35',1,'Item::Item(char *name)'],['../class_item.html#a8df555ab7f99a4bc363204c10d946934',1,'Item::Item(aJsonObject *obj)']]], + ['itemcmd_903',['itemCmd',['../classitem_cmd.html#a0bb584552fc43e5f081ab839a56e6f47',1,'itemCmd::itemCmd(uint8_t _type=ST_VOID, uint8_t _code=CMD_VOID)'],['../classitem_cmd.html#a1d55aaa33dbc0e9cd5c24682434eceb5',1,'itemCmd::itemCmd(float val)']]], + ['itemctrl2_904',['itemCtrl2',['../dmx_8cpp.html#abbcd6bfbf8b1c05b00ba38459d41ff4d',1,'itemCtrl2(char *name, int r, int g, int b, int w): dmx.cpp'],['../dmx_8h.html#abbcd6bfbf8b1c05b00ba38459d41ff4d',1,'itemCtrl2(char *name, int r, int g, int b, int w): dmx.cpp']]] +]; diff --git a/docs/html/search/functions_a.html b/docs/html/search/functions_a.html new file mode 100644 index 0000000..800adeb --- /dev/null +++ b/docs/html/search/functions_a.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_a.js b/docs/html/search/functions_a.js new file mode 100644 index 0000000..39285f7 --- /dev/null +++ b/docs/html/search/functions_a.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['lanloop_905',['lanLoop',['../main_8cpp.html#ac90757e5d1212e1b230bb4db8924d310',1,'lanLoop(): main.cpp'],['../main_8h.html#ac90757e5d1212e1b230bb4db8924d310',1,'lanLoop(): main.cpp']]], + ['loadconfigfromeeprom_906',['loadConfigFromEEPROM',['../main_8cpp.html#a92e24c034fb886c8155d50831bae5823',1,'loadConfigFromEEPROM(): main.cpp'],['../main_8h.html#a92e24c034fb886c8155d50831bae5823',1,'loadConfigFromEEPROM(): main.cpp']]], + ['loadconfigfromhttp_907',['loadConfigFromHttp',['../main_8cpp.html#aa6db506a9d019ba9decab546c15eb819',1,'loadConfigFromHttp(int arg_cnt, char **args): main.cpp'],['../main_8h.html#a1369dd2c9e03f46af35b247a5e8548df',1,'loadConfigFromHttp(int arg_cnt=0, char **args=NULL): main.cpp']]], + ['loadflash_908',['loadFlash',['../main_8cpp.html#aff5e7d5d674ed8a8fedcde644c725f68',1,'loadFlash(short n, char *str, short l): main.cpp'],['../main_8h.html#a7f53de7620c6cfb1462d7c94b5f9814c',1,'loadFlash(short n, char *str, short l=MAXFLASHSTR): main.cpp']]], + ['loaditem_909',['loadItem',['../classitem_cmd.html#aea24f60f90bfe69d65669c06007421fc',1,'itemCmd']]], + ['log_910',['log',['../utils_8cpp.html#aadf1050416e46077ad59157173438dad',1,'log(const char *str,...): utils.cpp'],['../utils_8h.html#aadf1050416e46077ad59157173438dad',1,'log(const char *str,...): utils.cpp']]], + ['loop_5fmain_911',['loop_main',['../main_8cpp.html#a840f282fdf876a88d5ff634fd74f10be',1,'loop_main(): main.cpp'],['../main_8h.html#a840f282fdf876a88d5ff634fd74f10be',1,'loop_main(): main.cpp']]] +]; diff --git a/docs/html/search/functions_b.html b/docs/html/search/functions_b.html new file mode 100644 index 0000000..69397a0 --- /dev/null +++ b/docs/html/search/functions_b.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_b.js b/docs/html/search/functions_b.js new file mode 100644 index 0000000..f7e4b51 --- /dev/null +++ b/docs/html/search/functions_b.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['mapint_912',['mapInt',['../utils_8cpp.html#ace8fa23ff29c3feb89c5d500ef87b914',1,'mapInt(int32_t arg, aJsonObject *map): utils.cpp'],['../utils_8h.html#ace8fa23ff29c3feb89c5d500ef87b914',1,'mapInt(int32_t arg, aJsonObject *map): utils.cpp']]], + ['mb_5ffail_913',['mb_fail',['../class_item.html#a389156098d07ebdc5649668f61d87343',1,'Item']]], + ['modbusdimmerset_914',['modbusDimmerSet',['../class_item.html#a6a8cdb4d647ba278a55560cd91bfc031',1,'Item::modbusDimmerSet(itemCmd st)'],['../class_item.html#a77913c1f28d823b1a096369e69cc5072',1,'Item::modbusDimmerSet(int addr, uint16_t _reg, int _regType, int _mask, uint16_t value)']]], + ['modbusidle_915',['modbusIdle',['../main_8cpp.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../main_8h.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../out__ac_8h.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp'],['../out__modbus_8cpp.html#aa557ba1fef085fb9865ffd399c738dbf',1,'modbusIdle(void): main.cpp']]], + ['mqttcallback_916',['mqttCallback',['../main_8cpp.html#a6f06b273defaebb581fdf1adc8969f40',1,'mqttCallback(char *topic, byte *payload, unsigned int length): main.cpp'],['../main_8h.html#a6f06b273defaebb581fdf1adc8969f40',1,'mqttCallback(char *topic, byte *payload, unsigned int length): main.cpp']]], + ['mqttclient_917',['mqttClient',['../main_8cpp.html#a18e15522dd78764c518fd5526cc2d446',1,'main.cpp']]], + ['mqttconfigrequest_918',['mqttConfigRequest',['../main_8cpp.html#aec955c97b23e5875d0fdb3c00e789903',1,'mqttConfigRequest(int arg_cnt, char **args): main.cpp'],['../main_8h.html#aec955c97b23e5875d0fdb3c00e789903',1,'mqttConfigRequest(int arg_cnt, char **args): main.cpp']]], + ['mqttconfigresp_919',['mqttConfigResp',['../main_8cpp.html#ad60a48a0c509facdc6dc61df64d49fae',1,'mqttConfigResp(char *as): main.cpp'],['../main_8h.html#ad60a48a0c509facdc6dc61df64d49fae',1,'mqttConfigResp(char *as): main.cpp']]] +]; diff --git a/docs/html/search/functions_c.html b/docs/html/search/functions_c.html new file mode 100644 index 0000000..a5c4fee --- /dev/null +++ b/docs/html/search/functions_c.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_c.js b/docs/html/search/functions_c.js new file mode 100644 index 0000000..726f8e8 --- /dev/null +++ b/docs/html/search/functions_c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['nextpolltime_920',['nextPollTime',['../class_input.html#ad7e0d37e4f0cca8117a1fad077e4d4a7',1,'Input']]] +]; diff --git a/docs/html/search/functions_d.html b/docs/html/search/functions_d.html new file mode 100644 index 0000000..2bfe245 --- /dev/null +++ b/docs/html/search/functions_d.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_d.js b/docs/html/search/functions_d.js new file mode 100644 index 0000000..9b5f8a6 --- /dev/null +++ b/docs/html/search/functions_d.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['off_921',['Off',['../class_item.html#a7cc492ae708197b9426c45b15eda714d',1,'Item']]], + ['on_922',['On',['../class_item.html#ac6a08d4c2352fa1284c4039441e380c5',1,'Item']]], + ['onanalogchanged_923',['onAnalogChanged',['../class_input.html#a121247eaf2f413135f0340df17015492',1,'Input']]], + ['oncontactchanged_924',['onContactChanged',['../class_input.html#a2e0c2008fce8f2730ef3126ff1d8893e',1,'Input']]], + ['oncounterchanged_925',['onCounterChanged',['../class_input.html#a2b60992464aa56f75c9d02b8b2084f8e',1,'Input']]], + ['oncounterchanged0_926',['onCounterChanged0',['../class_input.html#a85c108932af16f55722b8ccec2b72fb5',1,'Input']]], + ['oncounterchanged1_927',['onCounterChanged1',['../class_input.html#a36b4ed46c94a5194e74c2106bb29deaa',1,'Input']]], + ['oncounterchanged2_928',['onCounterChanged2',['../class_input.html#a8def9079b3f0774a05860a17a4b51b29',1,'Input']]], + ['oncounterchanged3_929',['onCounterChanged3',['../class_input.html#adc8477b21452dd8b1f4bf1f3de35ecc4',1,'Input']]], + ['oncounterchanged4_930',['onCounterChanged4',['../class_input.html#a6fcea89328a3bcf97dad383b7b615a5a',1,'Input']]], + ['oncounterchanged5_931',['onCounterChanged5',['../class_input.html#a5611409d1de5bff2e6e59b9395809ecd',1,'Input']]], + ['ondmxframe_932',['onDmxFrame',['../dmx_8cpp.html#a285d3a152ce7d118b6273c094110f742',1,'dmx.cpp']]], + ['oninitialstateinitlan_933',['onInitialStateInitLAN',['../main_8cpp.html#ae886a24c554e48191a1ea668c43d2287',1,'onInitialStateInitLAN(): main.cpp'],['../main_8h.html#ae886a24c554e48191a1ea668c43d2287',1,'onInitialStateInitLAN(): main.cpp']]], + ['onmqttconnect_934',['onMQTTConnect',['../main_8cpp.html#af1a9158faed86994ef3c4f248bdd86c8',1,'main.cpp']]], + ['operator_20bool_935',['operator bool',['../class_streamlog.html#adcd1dcab71fd1e1c9da5bc9c18ac3d1d',1,'Streamlog']]], + ['out_5fac_936',['out_AC',['../classout___a_c.html#a68dc76d1632c64bcd4e9c19bea1a7443',1,'out_AC']]], + ['out_5fdmx_937',['out_dmx',['../classout__dmx.html#a6fc6530587d5b7edfb31540ea2d0faba',1,'out_dmx']]], + ['out_5fmodbus_938',['out_Modbus',['../classout___modbus.html#ad5aff68ec31c500be860a4f56b095373',1,'out_Modbus']]], + ['out_5fmotor_939',['out_Motor',['../classout___motor.html#a7698763731e54149861a9bdcc18e6344',1,'out_Motor']]], + ['out_5fpwm_940',['out_pwm',['../classout__pwm.html#acd3804fb3d24afe569042202bdba2179',1,'out_pwm']]], + ['out_5fspiled_941',['out_SPILed',['../classout___s_p_i_led.html#ae865d0b2e9d098e3e370488a2eaa1b40',1,'out_SPILed']]], + ['owadd_942',['owAdd',['../ow_term_8cpp.html#ac9fd793efbaca8922408effe06e71650',1,'owAdd(DeviceAddress addr): owTerm.cpp'],['../ow_term_8h.html#ac9fd793efbaca8922408effe06e71650',1,'owAdd(DeviceAddress addr): owTerm.cpp']]], + ['owfind_943',['owFind',['../ow_term_8cpp.html#a38798dcd7c98c38975db6e3f19de63a3',1,'owFind(DeviceAddress addr): owTerm.cpp'],['../ow_term_8h.html#a38798dcd7c98c38975db6e3f19de63a3',1,'owFind(DeviceAddress addr): owTerm.cpp']]], + ['owidle_944',['owIdle',['../main_8cpp.html#a58e08cc15112818913fe96d75642265e',1,'owIdle(void): main.cpp'],['../main_8h.html#a58e08cc15112818913fe96d75642265e',1,'owIdle(void): main.cpp']]], + ['owloop_945',['owLoop',['../ow_term_8cpp.html#a3d8b76952ce1af677267e10c981e6dd5',1,'owLoop(): owTerm.cpp'],['../ow_term_8h.html#a3d8b76952ce1af677267e10c981e6dd5',1,'owLoop(): owTerm.cpp']]], + ['owsetup_946',['owSetup',['../ow_term_8cpp.html#ac78e14aeb04a12acf45919b64fe0d280',1,'owSetup(owChangedType owCh): owTerm.cpp'],['../ow_term_8h.html#ac78e14aeb04a12acf45919b64fe0d280',1,'owSetup(owChangedType owCh): owTerm.cpp']]], + ['owupdate_947',['owUpdate',['../ow_term_8cpp.html#aff3811570b1dd6182d7f45bd573afcfd',1,'owUpdate(): owTerm.cpp'],['../ow_term_8h.html#aff3811570b1dd6182d7f45bd573afcfd',1,'owUpdate(): owTerm.cpp']]] +]; diff --git a/docs/html/search/functions_e.html b/docs/html/search/functions_e.html new file mode 100644 index 0000000..0a6b52e --- /dev/null +++ b/docs/html/search/functions_e.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_e.js b/docs/html/search/functions_e.js new file mode 100644 index 0000000..37ca517 --- /dev/null +++ b/docs/html/search/functions_e.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['parse_948',['Parse',['../class_input.html#aad974cff366f73924458d105b88130d4',1,'Input::Parse()'],['../class_item.html#abbcfb98227918e624be294409d21be3d',1,'Item::Parse()']]], + ['parsebytes_949',['parseBytes',['../utils_8cpp.html#a1938abf1ef99f35bd2578e3db1bcf7b8',1,'parseBytes(const char *str, char separator, byte *bytes, int maxBytes, int base): utils.cpp'],['../utils_8h.html#a1938abf1ef99f35bd2578e3db1bcf7b8',1,'parseBytes(const char *str, char separator, byte *bytes, int maxBytes, int base): utils.cpp']]], + ['peek_950',['peek',['../class_streamlog.html#a246066803cd501ca4f1f5c94823db0e0',1,'Streamlog']]], + ['percents_951',['Percents',['../classitem_cmd.html#a76db1daeacf143c857f06049949e8aa9',1,'itemCmd']]], + ['percents255_952',['Percents255',['../classitem_cmd.html#aa1e4243bd415e9b639deb9bc195775d4',1,'itemCmd']]], + ['pixelctrl_953',['PixelCtrl',['../classcolor_channel.html#a6c835d00ee8af04679f03465617c2873',1,'colorChannel::PixelCtrl()'],['../classout__dmx.html#ad33a8e316c5c8d409cddf4dcd8b15fcc',1,'out_dmx::PixelCtrl()'],['../classout__pwm.html#adcb4bb3d03aa8c4b7e12796136b5cd1e',1,'out_pwm::PixelCtrl()'],['../classout___s_p_i_led.html#a75d1e9b7333a0bb9777df807634607b3',1,'out_SPILed::PixelCtrl()']]], + ['poll_954',['Poll',['../classabstract_ch.html#a044156a4dc4ca38d3e731b7df23d058a',1,'abstractCh::Poll()'],['../class_input.html#a34b0da23df4e0c2be07e5358a974f6b3',1,'Input::Poll()'],['../class_item.html#aaa6500d9cdb58f9b20f6c2592da40739',1,'Item::Poll()'],['../classin__ccs811.html#a8b57db4521730e66f090a3d6752fd112',1,'in_ccs811::Poll()'],['../classin__hdc1080.html#a94cf44b2a347e2ee295fad5798f7ef54',1,'in_hdc1080::Poll()'],['../classout___a_c.html#a40fd702a4d9d621c19bfa140c905e64b',1,'out_AC::Poll()'],['../classout__dmx.html#a0b1d943e9772bf10487010040b948e8a',1,'out_dmx::Poll()'],['../classout___modbus.html#aec6803a6033403f8ac4038236cac5cd9',1,'out_Modbus::Poll()'],['../classout___motor.html#a7a98c58b6c32cc20b7b05ad07a07c231',1,'out_Motor::Poll()'],['../classout__pwm.html#a88c460e7ba29e5b068a2defa395cae2c',1,'out_pwm::Poll()'],['../classout___s_p_i_led.html#a8566a7b80d1a132c00dbaf989880649c',1,'out_SPILed::Poll()'],['../classstatus_l_e_d.html#a9692bced087cfc8a27f5a19601ebfc6e',1,'statusLED::poll()']]], + ['pollingloop_955',['pollingLoop',['../main_8cpp.html#aec2ff7b5df24b3ae0cfe8d556088fd7c',1,'pollingLoop(void): main.cpp'],['../main_8h.html#aec2ff7b5df24b3ae0cfe8d556088fd7c',1,'pollingLoop(void): main.cpp']]], + ['posttransmission_956',['postTransmission',['../main_8cpp.html#a33b535e84f654e423bb627b25b7b3759',1,'postTransmission(): main.cpp'],['../main_8h.html#a33b535e84f654e423bb627b25b7b3759',1,'postTransmission(): main.cpp']]], + ['pretransmission_957',['preTransmission',['../main_8cpp.html#a1c43d8a4afead0d0df29635242290377',1,'preTransmission(): main.cpp'],['../main_8h.html#a1c43d8a4afead0d0df29635242290377',1,'preTransmission(): main.cpp']]], + ['printbool_958',['printBool',['../main_8cpp.html#a2d4b5aa8fbc197c31397235607aeba13',1,'printBool(bool arg): main.cpp'],['../main_8h.html#a2d4b5aa8fbc197c31397235607aeba13',1,'printBool(bool arg): main.cpp']]], + ['printbytes_959',['PrintBytes',['../utils_8cpp.html#ab5fb614b925280fc7c8d0e5314dd3b7a',1,'PrintBytes(uint8_t *addr, uint8_t count, bool newline): utils.cpp'],['../utils_8h.html#ab5fb614b925280fc7c8d0e5314dd3b7a',1,'PrintBytes(uint8_t *addr, uint8_t count, bool newline): utils.cpp']]], + ['printconfigsummary_960',['printConfigSummary',['../main_8cpp.html#ae22f686238cf5f09109b12f4b628ccea',1,'printConfigSummary(): main.cpp'],['../main_8h.html#ae22f686238cf5f09109b12f4b628ccea',1,'printConfigSummary(): main.cpp']]], + ['printcurentlanconfig_961',['printCurentLanConfig',['../main_8cpp.html#ab6cb5750ee8902ca29b51dd013bb74b9',1,'printCurentLanConfig(): main.cpp'],['../main_8h.html#ab6cb5750ee8902ca29b51dd013bb74b9',1,'printCurentLanConfig(): main.cpp']]], + ['printdrivererror_962',['printDriverError',['../classin__ccs811.html#a2fe4385cca41473cefc8906920c60a22',1,'in_ccs811']]], + ['printfirmwareversionandbuildoptions_963',['printFirmwareVersionAndBuildOptions',['../main_8cpp.html#a1cff64c0263246441c972f03e6893714',1,'printFirmwareVersionAndBuildOptions(): main.cpp'],['../main_8h.html#a1cff64c0263246441c972f03e6893714',1,'printFirmwareVersionAndBuildOptions(): main.cpp']]], + ['printfloatvaluetostr_964',['printFloatValueToStr',['../utils_8cpp.html#a6c16341dd45c4e557f951818d8d09810',1,'printFloatValueToStr(float value, char *valstr): utils.cpp'],['../utils_8h.html#a6c16341dd45c4e557f951818d8d09810',1,'printFloatValueToStr(float value, char *valstr): utils.cpp']]], + ['printipaddress_965',['printIPAddress',['../utils_8cpp.html#af0df006a5ae8d0d730134afdaf1c64dd',1,'printIPAddress(IPAddress ipAddress): utils.cpp'],['../utils_8h.html#af0df006a5ae8d0d730134afdaf1c64dd',1,'printIPAddress(IPAddress ipAddress): utils.cpp']]], + ['printmacaddress_966',['printMACAddress',['../main_8cpp.html#ad04c200b33c848aace1315bdf676201e',1,'printMACAddress(): main.cpp'],['../main_8h.html#ad04c200b33c848aace1315bdf676201e',1,'printMACAddress(): main.cpp']]], + ['printsensorerror_967',['printSensorError',['../classin__ccs811.html#a6c2de6eca576ea6043b6899163a2d2ea',1,'in_ccs811']]], + ['printserialnumber_968',['printSerialNumber',['../classin__hdc1080.html#ac1427b20242a2c829c118e8c4ed1d82a',1,'in_hdc1080']]], + ['printulongvaluetostr_969',['printUlongValueToStr',['../utils_8cpp.html#afb183532261be04b86e9e535010db6a9',1,'printUlongValueToStr(char *valstr, unsigned long value): utils.cpp'],['../utils_8h.html#afb183532261be04b86e9e535010db6a9',1,'printUlongValueToStr(char *valstr, unsigned long value): utils.cpp']]], + ['publish_970',['publish',['../classabstract_in.html#aa7e18605ec4d11d117881ac87b7ca016',1,'abstractIn::publish(long value, const char *subtopic=NULL)'],['../classabstract_in.html#a6a9d6bb966fc80930b31f3487b1a8f82',1,'abstractIn::publish(float value, const char *subtopic=NULL)'],['../classabstract_in.html#a6c7d4376b309c7c14d56568e5262335a',1,'abstractIn::publish(char *value, const char *subtopic=NULL)']]], + ['publishdatatodomoticz_971',['publishDataToDomoticz',['../class_input.html#ab48ae5515b6a332b518a06e5bb10926a',1,'Input']]], + ['publishstat_972',['publishStat',['../main_8cpp.html#a2cf2114e80da1894dc41209a4b66a08f',1,'main.cpp']]], + ['publishtopic_973',['publishTopic',['../classabstract_ch.html#a4f1da04403789b710ca3929c57af9d32',1,'abstractCh::publishTopic(const char *topic, long value, const char *subtopic=NULL)'],['../classabstract_ch.html#ac24cfc96e7efabae120799b7a23680c6',1,'abstractCh::publishTopic(const char *topic, float value, const char *subtopic=NULL)'],['../classabstract_ch.html#a9404148b9515bd6c1e167a235d844cb8',1,'abstractCh::publishTopic(const char *topic, const char *value, const char *subtopic=NULL)']]] +]; diff --git a/docs/html/search/functions_f.html b/docs/html/search/functions_f.html new file mode 100644 index 0000000..f4027d6 --- /dev/null +++ b/docs/html/search/functions_f.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/functions_f.js b/docs/html/search/functions_f.js new file mode 100644 index 0000000..35326c3 --- /dev/null +++ b/docs/html/search/functions_f.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['read_974',['read',['../class_streamlog.html#acbea1e8e890180c66757bd7647703d54',1,'Streamlog']]], + ['readcache_975',['readCache',['../classread_cache.html#ab40001f6ce6d9c8e183751c4a0cd57c9',1,'readCache']]], + ['readmodbus_976',['readModbus',['../out__modbus_8cpp.html#ada41a67a60f6db43d5af00c5de696db0',1,'out_modbus.cpp']]], + ['readuniqueid_977',['ReadUniqueID',['../utils_8h.html#a1380fbc9c2170180770dd1bdcc5ac647',1,'utils.h']]], + ['resethard_978',['resetHard',['../main_8cpp.html#a8a8de594b1a60fc6867b639d1c50a34b',1,'resetHard(): main.cpp'],['../main_8h.html#a8a8de594b1a60fc6867b639d1c50a34b',1,'resetHard(): main.cpp']]], + ['retrievecode_979',['retrieveCode',['../item_8cpp.html#a4aef78280fd80bcca6d297030691f57b',1,'item.cpp']]], + ['rgb_980',['RGB',['../classitem_cmd.html#aa820840f665aa22da6a25361ac5a3e37',1,'itemCmd']]], + ['rgbw_981',['RGBW',['../classitem_cmd.html#a07a886dbecc927d8d016436197a2f554',1,'itemCmd']]] +]; diff --git a/docs/html/search/mag_sel.svg b/docs/html/search/mag_sel.svg new file mode 100644 index 0000000..03626f6 --- /dev/null +++ b/docs/html/search/mag_sel.svg @@ -0,0 +1,74 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/docs/html/search/nomatches.html b/docs/html/search/nomatches.html new file mode 100644 index 0000000..4377320 --- /dev/null +++ b/docs/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/docs/html/search/search.css b/docs/html/search/search.css new file mode 100644 index 0000000..933cf08 --- /dev/null +++ b/docs/html/search/search.css @@ -0,0 +1,255 @@ +/*---------------- Search Box */ + +#MSearchBox { + white-space : nowrap; + background: white; + border-radius: 0.65em; + box-shadow: inset 0.5px 0.5px 3px 0px #555; + z-index: 102; +} + +#MSearchBox .left { + display: inline-block; + vertical-align: middle; + height: 1.4em; +} + +#MSearchSelect { + display: inline-block; + vertical-align: middle; + height: 1.4em; + padding: 0 0 0 0.3em; + margin: 0; +} + +#MSearchField { + display: inline-block; + vertical-align: middle; + width: 7.5em; + height: 1.1em; + margin: 0 0.15em; + padding: 0; + line-height: 1em; + border:none; + color: #909090; + outline: none; + font-family: Arial, Verdana, sans-serif; + -webkit-border-radius: 0px; + border-radius: 0px; + background: none; +} + + +#MSearchBox .right { + display: inline-block; + vertical-align: middle; + width: 1.4em; + height: 1.4em; +} + +#MSearchClose { + display: none; + font-size: inherit; + background : none; + border: none; + margin: 0; + padding: 0; + outline: none; + +} + +#MSearchCloseImg { + height: 1.4em; + padding: 0.3em; + margin: 0; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +#main-menu > li:last-child { + /* This
  • object is the parent of the search bar */ + display: flex; + justify-content: center; + align-items: center; + height: 36px; + margin-right: 1em; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 10001; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; + z-index:10000; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/docs/html/search/search.js b/docs/html/search/search.js new file mode 100644 index 0000000..92b6094 --- /dev/null +++ b/docs/html/search/search.js @@ -0,0 +1,814 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline-block'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e(R!W8j_r#qQ#gnr4kAxdU#F0+OBry$Z+ z_0PMi;P|#{d%mw(dnw=jM%@$onTJa%@6Nm3`;2S#nwtVFJI#`U@2Q@@JCCctagvF- z8H=anvo~dTmJ2YA%wA6IHRv%{vxvUm|R)kgZeo zmX%Zb;mpflGZdXCTAgit`||AFzkI#z&(3d4(htA?U2FOL4WF6wY&TB#n3n*I4+hl| z*NBpo#FA92vEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/docs/html/search/search_r.png b/docs/html/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..1af5d21ee13e070d7600f1c4657fde843b953a69 GIT binary patch literal 553 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!2%@BXHTsJQY`6?zK#qG8~eHcB(ehe3dtTp zz6=bxGZ+|(`xqD=STHa&U1eaXVrO7DwS|Gf*oA>XrmV$GYcEhOQT(QLuS{~ooZ2P@v=Xc@RKW@Irliv8_;wroU0*)0O?temdsA~70jrdux+`@W7 z-N(<(C)L?hOO?KV{>8(jC{hpKsws)#Fh zvsO>IB+gb@b+rGWaO&!a9Z{!U+fV*s7TS>fdt&j$L%^U@Epd$~Nl7e8wMs5Z1yT$~ z28I^8hDN#u<{^fLRz?<9hUVG^237_Jy7tbuQ8eV{r(~v8;?@w8^gA7>fx*+&&t;uc GLK6VEQpiUD literal 0 HcmV?d00001 diff --git a/docs/html/search/searchdata.js b/docs/html/search/searchdata.js new file mode 100644 index 0000000..17f9684 --- /dev/null +++ b/docs/html/search/searchdata.js @@ -0,0 +1,39 @@ +var indexSectionsWithContent = +{ + 0: "_abcdefghilmnopqrstuvw~", + 1: "acimorsu", + 2: "abcdimostu", + 3: "_abcdefghilmnoprstuvw~", + 4: "abcdefghilmnopqrstuvw", + 5: "co", + 6: "lt", + 7: "adhilort", + 8: "_abcdefhilmnopqrstuvw" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "typedefs", + 6: "enums", + 7: "enumvalues", + 8: "defines" +}; + +var indexSectionLabels = +{ + 0: "All", + 1: "Classes", + 2: "Files", + 3: "Functions", + 4: "Variables", + 5: "Typedefs", + 6: "Enumerations", + 7: "Enumerator", + 8: "Macros" +}; + diff --git a/docs/html/search/typedefs_0.html b/docs/html/search/typedefs_0.html new file mode 100644 index 0000000..b66f0a7 --- /dev/null +++ b/docs/html/search/typedefs_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/typedefs_0.js b/docs/html/search/typedefs_0.js new file mode 100644 index 0000000..874d7e1 --- /dev/null +++ b/docs/html/search/typedefs_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['cmdstr_1173',['cmdstr',['../item_cmd_8h.html#ac49c4ac803caeb10fcfb19ecd93f0cea',1,'itemCmd.h']]] +]; diff --git a/docs/html/search/typedefs_1.html b/docs/html/search/typedefs_1.html new file mode 100644 index 0000000..bca8d76 --- /dev/null +++ b/docs/html/search/typedefs_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/typedefs_1.js b/docs/html/search/typedefs_1.js new file mode 100644 index 0000000..ff34481 --- /dev/null +++ b/docs/html/search/typedefs_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['owchangedtype_1174',['owChangedType',['../ow_term_8h.html#a9312b7daea28d63649c1548f056f75e6',1,'owTerm.h']]] +]; diff --git a/docs/html/search/variables_0.html b/docs/html/search/variables_0.html new file mode 100644 index 0000000..2edd111 --- /dev/null +++ b/docs/html/search/variables_0.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js new file mode 100644 index 0000000..f99075b --- /dev/null +++ b/docs/html/search/variables_0.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['addr_1036',['addr',['../classread_cache.html#acc32e1362354c4374519167c5dc5ea21',1,'readCache']]], + ['asfloat_1037',['asfloat',['../unionitem_arg_store.html#afc507c941b3df2187f0ce0f055ad53c1',1,'itemArgStore']]], + ['asint32_1038',['asInt32',['../unionitem_cmd_store.html#a7e558d8a27f1df27f283c96e35798281',1,'itemCmdStore::asInt32()'],['../unionitem_arg_store.html#ab92c8e89f341000942b58664ffb1f81f',1,'itemArgStore::asInt32()']]], + ['aslong_1039',['aslong',['../unionin_store.html#a16a83a9f8fd433154711d7dbd5cdc98a',1,'inStore::aslong()'],['../unionitem_cmd_store.html#a6d539a0bb202bf370351886a6e91f3df',1,'itemCmdStore::aslong()'],['../unionitem_arg_store.html#a5b049f7f12afd54b21e544e3d837a660',1,'itemArgStore::aslong()']]], + ['asstring_1040',['asString',['../unionitem_arg_store.html#a74b64f04a772272879ec6269d87091f1',1,'itemArgStore']]], + ['asuint32_1041',['asUint32',['../unionitem_cmd_store.html#a1b35e73d4496147f882278f73cfe10fe',1,'itemCmdStore::asUint32()'],['../unionitem_arg_store.html#ab0057169d79517093337e298197429f5',1,'itemArgStore::asUint32()']]] +]; diff --git a/docs/html/search/variables_1.html b/docs/html/search/variables_1.html new file mode 100644 index 0000000..98b95a9 --- /dev/null +++ b/docs/html/search/variables_1.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js new file mode 100644 index 0000000..42745b0 --- /dev/null +++ b/docs/html/search/variables_1.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['b_1042',['b',['../unionitem_arg_store.html#ab6e0d043707be121256740a7acb1f170',1,'itemArgStore']]], + ['baud_1043',['baud',['../classmb_persistent.html#ad204e2cc5ee3a22f9ed332c3c5cab598',1,'mbPersistent']]], + ['bounce_1044',['bounce',['../unionin_store.html#a0458b3c28da62ec08dfbe9c28546c939',1,'inStore']]] +]; diff --git a/docs/html/search/variables_10.html b/docs/html/search/variables_10.html new file mode 100644 index 0000000..61d3e5c --- /dev/null +++ b/docs/html/search/variables_10.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_10.js b/docs/html/search/variables_10.js new file mode 100644 index 0000000..e78739f --- /dev/null +++ b/docs/html/search/variables_10.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['s_1145',['s',['../unionitem_arg_store.html#ad2a54b2adf7e42caf0a022839b06d949',1,'itemArgStore']]], + ['sensors_1146',['sensors',['../ow_term_8cpp.html#ab5e031d55a57a0dd79468e5a7cbb5e64',1,'sensors(): owTerm.cpp'],['../ow_term_8h.html#ab5e031d55a57a0dd79468e5a7cbb5e64',1,'sensors(): owTerm.cpp']]], + ['serialparam_1147',['serialParam',['../classmb_persistent.html#a3c94371c87997c1b90d04fce1e076f24',1,'mbPersistent']]], + ['si_1148',['si',['../ow_term_8cpp.html#ac37ce0c409c53b6a18aefbfc3ad46b4a',1,'si(): owTerm.cpp'],['../ow_term_8h.html#ac37ce0c409c53b6a18aefbfc3ad46b4a',1,'si(): owTerm.cpp']]], + ['signed_5fcolortemp_1149',['signed_colorTemp',['../unionitem_arg_store.html#a5b454ee59d0a9b5d4b2c52b3fa40d846',1,'itemArgStore']]], + ['signed_5fh_1150',['signed_h',['../unionitem_arg_store.html#a137005bda50cdb8e76f6b6cb93958c9f',1,'itemArgStore']]], + ['signed_5fs_1151',['signed_s',['../unionitem_arg_store.html#a20fde40d8b89eea89ffe4d8379c74fdc',1,'itemArgStore']]], + ['signed_5fv_1152',['signed_v',['../unionitem_arg_store.html#a3d1cdc762efb0d385441d14e92d95829',1,'itemArgStore']]], + ['state_1153',['state',['../unionin_store.html#a5db18504795773dee8dd1cca020994f7',1,'inStore']]], + ['store_1154',['store',['../class_input.html#a2c8307bf192b3e07bbc7cd605efeeb81',1,'Input::store()'],['../classout___modbus.html#a78e591ac7d7de9e7a3ab0a6d96263c2b',1,'out_Modbus::store()']]], + ['suffixcode_1155',['suffixCode',['../unionitem_cmd_store.html#a60ffaa3ef4ac448d5b31a519dd2d8ba9',1,'itemCmdStore']]] +]; diff --git a/docs/html/search/variables_11.html b/docs/html/search/variables_11.html new file mode 100644 index 0000000..459b71d --- /dev/null +++ b/docs/html/search/variables_11.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_11.js b/docs/html/search/variables_11.js new file mode 100644 index 0000000..e764a35 --- /dev/null +++ b/docs/html/search/variables_11.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['t_5fcount_1156',['t_count',['../ow_term_8cpp.html#a4e9707ca4dbcd2ddd6d14657f2e12700',1,'t_count(): owTerm.cpp'],['../ow_term_8h.html#a4e9707ca4dbcd2ddd6d14657f2e12700',1,'t_count(): owTerm.cpp']]], + ['term_1157',['term',['../ow_term_8cpp.html#ac8f950395764bcd345b63d2887dae1a0',1,'term(): owTerm.cpp'],['../ow_term_8h.html#ac8f950395764bcd345b63d2887dae1a0',1,'term(): owTerm.cpp']]], + ['timestamp_1158',['timestamp',['../unionin_store.html#a4bddf64e5bea1ba4101346caf0df2852',1,'inStore::timestamp()'],['../classmb_persistent.html#a74503e0f253cf91c1e83a1e35693d6fc',1,'mbPersistent::timestamp()']]], + ['timestamp16_1159',['timestamp16',['../unionin_store.html#a53f6cadfd77d4bd024d6e6c395ae5364',1,'inStore']]], + ['toggle1_1160',['toggle1',['../unionin_store.html#a5e5cdaeda80c6eed6a55554a0780a128',1,'inStore']]], + ['toggle2_1161',['toggle2',['../unionin_store.html#a8f5f08b35e330945b3b0df11eacdae72',1,'inStore']]], + ['toggle3_1162',['toggle3',['../unionin_store.html#a4e4a1f17bcdd01c934df232175195a46',1,'inStore']]], + ['topics_1163',['topics',['../main_8cpp.html#addabf1c5a7be47e4e89beb38a435cb51',1,'topics(): main.cpp'],['../utils_8cpp.html#addabf1c5a7be47e4e89beb38a435cb51',1,'topics(): main.cpp']]], + ['type_1164',['type',['../classread_cache.html#a76353391e6c92fdb6381e0d6b120fde5',1,'readCache']]] +]; diff --git a/docs/html/search/variables_12.html b/docs/html/search/variables_12.html new file mode 100644 index 0000000..18778ec --- /dev/null +++ b/docs/html/search/variables_12.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_12.js b/docs/html/search/variables_12.js new file mode 100644 index 0000000..0f2e4e4 --- /dev/null +++ b/docs/html/search/variables_12.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['uid_5fbyte_1165',['UID_Byte',['../union_u_i_d.html#a2a1db307f2be0b2bc8951105a99c83aa',1,'UID']]], + ['uid_5flong_1166',['UID_Long',['../union_u_i_d.html#a478d21c78d3100c5e236adca2c571e1e',1,'UID']]] +]; diff --git a/docs/html/search/variables_13.html b/docs/html/search/variables_13.html new file mode 100644 index 0000000..9591b85 --- /dev/null +++ b/docs/html/search/variables_13.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_13.js b/docs/html/search/variables_13.js new file mode 100644 index 0000000..0e2f695 --- /dev/null +++ b/docs/html/search/variables_13.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['v_1167',['v',['../unionitem_arg_store.html#a8f1d8c23cb2bc96349dba77ebdc4409d',1,'itemArgStore']]], + ['verb_1168',['verb',['../structreg__t.html#a19c41c63cb0e2ae177246afda5b37711',1,'reg_t::verb()'],['../structserial__t.html#a8e4f99f18fbb7bf2282dc6f6d1d3eb51',1,'serial_t::verb()']]] +]; diff --git a/docs/html/search/variables_14.html b/docs/html/search/variables_14.html new file mode 100644 index 0000000..2a4fe11 --- /dev/null +++ b/docs/html/search/variables_14.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_14.js b/docs/html/search/variables_14.js new file mode 100644 index 0000000..8a2de61 --- /dev/null +++ b/docs/html/search/variables_14.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['w_1169',['w',['../unionitem_arg_store.html#a8c6e262cae01ac0bb6d0070916989473',1,'itemArgStore']]], + ['wifiawaitingtime_1170',['WiFiAwaitingTime',['../main_8cpp.html#ae4b71bfb7d27827d7d6c40fc3b745510',1,'main.cpp']]], + ['wifiinitialized_1171',['wifiInitialized',['../main_8cpp.html#a6a547b8f65552a00acceaae5fb86fb0d',1,'main.cpp']]], + ['wstat_1172',['wstat',['../ow_term_8cpp.html#a31e8c0d5ba0869a2bfbf32fd8caaac57',1,'wstat(): owTerm.cpp'],['../ow_term_8h.html#a31e8c0d5ba0869a2bfbf32fd8caaac57',1,'wstat(): owTerm.cpp']]] +]; diff --git a/docs/html/search/variables_2.html b/docs/html/search/variables_2.html new file mode 100644 index 0000000..3e0c591 --- /dev/null +++ b/docs/html/search/variables_2.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_2.js b/docs/html/search/variables_2.js new file mode 100644 index 0000000..7f6c1cf --- /dev/null +++ b/docs/html/search/variables_2.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['cached_5fdata_1045',['cached_data',['../classread_cache.html#a0040f14299d3ddf8373b9251f0a69831',1,'readCache']]], + ['ccs811baseline_1046',['ccs811Baseline',['../in__ccs811__hdc1080_8cpp.html#ac3bfd4c05f0b14fb919750932ee575ae',1,'in_ccs811_hdc1080.cpp']]], + ['cmd_1047',['cmd',['../classitem_cmd.html#a4c421cb3f527b95459233ea210f6dfce',1,'itemCmd']]], + ['cmdcode_1048',['cmdCode',['../unionitem_cmd_store.html#a84ce7db09b0fbd48c7266caf48636a61',1,'itemCmdStore']]], + ['cmdflag_1049',['cmdFlag',['../unionitem_cmd_store.html#adc701d54e85ec503281a9ffcde0eabe2',1,'itemCmdStore']]], + ['cmdparam_1050',['cmdParam',['../unionitem_cmd_store.html#a9177b4303781a900b2f6dace2e06980b',1,'itemCmdStore']]], + ['colortemp_1051',['colorTemp',['../unionitem_arg_store.html#a7fd4db655b58b154ac7852e1cba5aa18',1,'itemArgStore']]], + ['configloaded_1052',['configLoaded',['../main_8cpp.html#a235b23edd19d4c133a8d49bc1b09cedb',1,'main.cpp']]], + ['configlocked_1053',['configLocked',['../inputs_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../item_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../main_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp'],['../utils_8cpp.html#a58655351bd1d5333e5eb92d4c29f4263',1,'configLocked(): main.cpp']]], + ['configok_1054',['configOk',['../main_8cpp.html#a459dec3d2fac52eba9bf53c19d14bcc7',1,'main.cpp']]], + ['currentvalue_1055',['currentValue',['../unionin_store.html#ab588498a30cd9248c4b98b939d6a3bd1',1,'inStore']]] +]; diff --git a/docs/html/search/variables_3.html b/docs/html/search/variables_3.html new file mode 100644 index 0000000..7867da3 --- /dev/null +++ b/docs/html/search/variables_3.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_3.js b/docs/html/search/variables_3.js new file mode 100644 index 0000000..dd2bb2b --- /dev/null +++ b/docs/html/search/variables_3.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['d_5fcheckt_1056',['D_checkT',['../dmx_8cpp.html#a2bdd5f5b1312117028586d6a9a11a02c',1,'dmx.cpp']]], + ['d_5fstate_1057',['D_State',['../dmx_8cpp.html#aa205b5f0812aa803bb5ebe6067ca7bc7',1,'dmx.cpp']]], + ['data_1058',['data',['../out__ac_8cpp.html#a336725b3b566264f2223495f6294c3c7',1,'out_ac.cpp']]], + ['debugserial_1059',['debugSerial',['../main_8h.html#a9f5fbaf4b0a3b028eb31e734a5899428',1,'main.h']]], + ['debugserialport_1060',['debugSerialPort',['../main_8cpp.html#a525e5725911fc3939bb449849aa1b5ab',1,'main.cpp']]], + ['defaultsubitem_1061',['defaultSubItem',['../class_item.html#a21371d449e5e6669b3f0eb0e080a7132',1,'Item']]], + ['defaultsuffixcode_1062',['defaultSuffixCode',['../class_item.html#a4ff75a860339d86b006960b750a593e6',1,'Item']]], + ['defval_1063',['defval',['../item_8cpp.html#abcb640867546187e7cbe6229cc3ec872',1,'item.cpp']]], + ['delayedstate_1064',['delayedState',['../unionin_store.html#a719ff985b81bbfbd4905735ea5cee1a9',1,'inStore']]], + ['devicename_1065',['deviceName',['../main_8cpp.html#a5da66826e811349c98b2daf2bafb78c2',1,'deviceName(): main.cpp'],['../utils_8cpp.html#a5da66826e811349c98b2daf2bafb78c2',1,'deviceName(): main.cpp']]], + ['dmxarr_1066',['dmxArr',['../dmx_8cpp.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp'],['../dmx_8h.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp'],['../main_8cpp.html#a077dba54087a1a3694f810ba9fd06933',1,'dmxArr(): main.cpp']]], + ['dmxin_1067',['DMXin',['../dmx_8cpp.html#adf18ba2ebc00417130f18dc9e34411c6',1,'dmx.cpp']]], + ['driver_1068',['driver',['../class_item.html#a93f339d62018da733bd6147797388eb2',1,'Item']]], + ['driverstatus_1069',['driverStatus',['../classmb_persistent.html#aa394aed65c6af742dbae150639c7cfc3',1,'mbPersistent']]] +]; diff --git a/docs/html/search/variables_4.html b/docs/html/search/variables_4.html new file mode 100644 index 0000000..732dee2 --- /dev/null +++ b/docs/html/search/variables_4.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_4.js b/docs/html/search/variables_4.js new file mode 100644 index 0000000..9ea9814 --- /dev/null +++ b/docs/html/search/variables_4.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['eeprom_5fsignature_1070',['EEPROM_signature',['../textconst_8h.html#a2412d8e03a08775ec69a8d80fbcc2f53',1,'textconst.h']]], + ['errorserial_1071',['errorSerial',['../main_8h.html#a49f4668352e76de3b6187103927915f5',1,'main.h']]], + ['ethclient_1072',['ethClient',['../main_8cpp.html#a2a65545cb474469b22d80319e302a2f8',1,'main.cpp']]], + ['ethernetidlecount_1073',['ethernetIdleCount',['../abstractch_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../inputs_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../item_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../main_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp'],['../utils_8cpp.html#a525d99b2753ef2f4055ea4475dbc10d7',1,'ethernetIdleCount(): main.cpp']]] +]; diff --git a/docs/html/search/variables_5.html b/docs/html/search/variables_5.html new file mode 100644 index 0000000..ad9b545 --- /dev/null +++ b/docs/html/search/variables_5.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_5.js b/docs/html/search/variables_5.js new file mode 100644 index 0000000..a5a1a9b --- /dev/null +++ b/docs/html/search/variables_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['feedbackclosed_1074',['feedbackClosed',['../classout___motor.html#ad8179a6054b692c3f00c5fa350f59e3f',1,'out_Motor']]], + ['feedbackopen_1075',['feedbackOpen',['../classout___motor.html#aa002cd716f47ee74a72dcd4e335b80ae',1,'out_Motor']]] +]; diff --git a/docs/html/search/variables_6.html b/docs/html/search/variables_6.html new file mode 100644 index 0000000..1cf2da1 --- /dev/null +++ b/docs/html/search/variables_6.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_6.js b/docs/html/search/variables_6.js new file mode 100644 index 0000000..f11e255 --- /dev/null +++ b/docs/html/search/variables_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['g_1076',['g',['../unionitem_arg_store.html#a37e8d18c09633f02fe99f16d9b995822',1,'itemArgStore']]] +]; diff --git a/docs/html/search/variables_7.html b/docs/html/search/variables_7.html new file mode 100644 index 0000000..ab2db0b --- /dev/null +++ b/docs/html/search/variables_7.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_7.js b/docs/html/search/variables_7.js new file mode 100644 index 0000000..789757c --- /dev/null +++ b/docs/html/search/variables_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['h_1077',['h',['../unionitem_arg_store.html#ab17b3df738c8f12a45efb2c96fa99f4d',1,'itemArgStore']]], + ['hexstr_1078',['HEXSTR',['../utils_8cpp.html#a0317be66119cccdb71b5276f914cef50',1,'utils.cpp']]] +]; diff --git a/docs/html/search/variables_8.html b/docs/html/search/variables_8.html new file mode 100644 index 0000000..baec040 --- /dev/null +++ b/docs/html/search/variables_8.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_8.js b/docs/html/search/variables_8.js new file mode 100644 index 0000000..734459d --- /dev/null +++ b/docs/html/search/variables_8.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['iaddr_1079',['iaddr',['../classcolor_channel.html#a4dd2fa654273b3bf9a3413ee2966fdce',1,'colorChannel']]], + ['id_1080',['id',['../structreg__t.html#aa6f178d356ff8de15842a2070c46ff64',1,'reg_t']]], + ['in_1081',['in',['../classabstract_in.html#a626e3421b4830ca81ca8b48fa802c1ca',1,'abstractIn']]], + ['incache_1082',['inCache',['../inputs_8cpp.html#a550fbf41418f36b963b995f7de144eea',1,'inCache(): inputs.cpp'],['../inputs_8h.html#a550fbf41418f36b963b995f7de144eea',1,'inCache(): inputs.cpp']]], + ['incheck_1083',['inCheck',['../out__ac_8cpp.html#a82e58a1f3257f9121902c3edfc841445',1,'out_ac.cpp']]], + ['infoserial_1084',['infoSerial',['../main_8h.html#a962d0234b6d650699159b02bbb1ba659',1,'main.h']]], + ['initializedlisteners_1085',['initializedListeners',['../main_8cpp.html#ad40189c6dffdd91758f3686c80484ac7',1,'main.cpp']]], + ['input_1086',['Input',['../classabstract_in.html#a24f5c11f0de37b93cc9da4f5023040f7',1,'abstractIn']]], + ['inputobj_1087',['inputObj',['../class_input.html#a4dbfdd3e7da95a3d4873286da07733f2',1,'Input']]], + ['inputs_1088',['inputs',['../inputs_8h.html#a9e63aa63a6b8b667a41f94bec231d7aa',1,'inputs(): main.cpp'],['../main_8cpp.html#a9e63aa63a6b8b667a41f94bec231d7aa',1,'inputs(): main.cpp']]], + ['intype_1089',['inType',['../class_input.html#a0354094b474b7b9fa305bfc3500d3cee',1,'Input']]], + ['item_1090',['item',['../classabstract_out.html#af93f193ac2f0621d0ba08f1f1d11e8b7',1,'abstractOut']]], + ['itemarg_1091',['itemArg',['../class_item.html#ab831f5a6f56b59761a8ee5dbf38c0999',1,'Item']]], + ['itemargtype_1092',['itemArgType',['../unionitem_cmd_store.html#ad0bc30321304871f89b2ed223d739421',1,'itemCmdStore']]], + ['itemarr_1093',['itemArr',['../class_item.html#a4332fe989485f159b4fefa871cc213b9',1,'Item']]], + ['itemext_1094',['itemExt',['../class_item.html#a39291138106342bc0d49ccfb125f7a95',1,'Item']]], + ['items_1095',['items',['../dmx_8cpp.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp'],['../item_8h.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp'],['../main_8cpp.html#a012787f09a43864616e2b44349b29352',1,'items(): main.cpp']]], + ['itemtype_1096',['itemType',['../class_item.html#ae0bac41fded34ffbd1e3634e15772039',1,'Item']]], + ['itemval_1097',['itemVal',['../class_item.html#aabf1180ef4ab072817a28020814bce48',1,'Item']]] +]; diff --git a/docs/html/search/variables_9.html b/docs/html/search/variables_9.html new file mode 100644 index 0000000..df2fea0 --- /dev/null +++ b/docs/html/search/variables_9.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_9.js b/docs/html/search/variables_9.js new file mode 100644 index 0000000..6e9efb5 --- /dev/null +++ b/docs/html/search/variables_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['lanstatus_1098',['lanStatus',['../abstractch_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../abstractin_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../item_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp'],['../main_8cpp.html#a7bbda7cf303a1bc3222e7a270f9040bd',1,'lanStatus(): main.cpp']]], + ['lastvalue_1099',['lastValue',['../unionin_store.html#accec7f5bdcfc35e9cc86a66c301348e2',1,'inStore']]], + ['led_1100',['LED',['../main_8cpp.html#a1c77e6f587043bdec86e0cabd956e2e2',1,'main.cpp']]], + ['ledstype_1101',['ledsType',['../classout___s_p_i_led.html#a974b04b25156932c97dac2ba794c729f',1,'out_SPILed']]], + ['lock_1102',['lock',['../out__ac_8cpp.html#a8348487a31a8c5d8e2f94ea77c5e70a7',1,'out_ac.cpp']]], + ['logicstate_1103',['logicState',['../unionin_store.html#a44af41c00bfa555c4a9f7c7d5e2cfbc7',1,'inStore']]] +]; diff --git a/docs/html/search/variables_a.html b/docs/html/search/variables_a.html new file mode 100644 index 0000000..c7491ab --- /dev/null +++ b/docs/html/search/variables_a.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_a.js b/docs/html/search/variables_a.js new file mode 100644 index 0000000..acd6559 --- /dev/null +++ b/docs/html/search/variables_a.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['mac_1104',['mac',['../main_8cpp.html#a775118f5b90a904c7e65066faabab1a2',1,'main.cpp']]], + ['maxontime_1105',['maxOnTime',['../classout___motor.html#a58e72bff70d2915b7b508d0605a082e8',1,'out_Motor']]], + ['modbusbusy_1106',['modbusBusy',['../item_8cpp.html#a02d3e5fb154e56cf7fc169649e232078',1,'modbusBusy(): item.cpp'],['../out__modbus_8cpp.html#a02d3e5fb154e56cf7fc169649e232078',1,'modbusBusy(): item.cpp']]], + ['modbusobj_1107',['modbusObj',['../main_8cpp.html#aabc7159a42d55e7c474862449404d65c',1,'modbusObj(): main.cpp'],['../out__modbus_8cpp.html#aabc7159a42d55e7c474862449404d65c',1,'modbusObj(): main.cpp']]], + ['mode_1108',['mode',['../structserial__t.html#a71ff16c34a2531c91586d864c415f1e7',1,'serial_t']]], + ['mqttarr_1109',['mqttArr',['../main_8cpp.html#a5a49c3c9f18e1b12e3706522c19c62c3',1,'main.cpp']]], + ['mqttclient_1110',['mqttClient',['../abstractch_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): abstractch.cpp'],['../abstractin_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): abstractin.cpp'],['../inputs_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): inputs.cpp'],['../item_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): item.cpp'],['../utils_8cpp.html#a86d63f481644da70f063c2593fcafe19',1,'mqttClient(): utils.cpp']]], + ['mqtterrorrate_1111',['mqttErrorRate',['../main_8cpp.html#ac2567a764f7c3bef5306a430ba615de9',1,'main.cpp']]] +]; diff --git a/docs/html/search/variables_b.html b/docs/html/search/variables_b.html new file mode 100644 index 0000000..371f07a --- /dev/null +++ b/docs/html/search/variables_b.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_b.js b/docs/html/search/variables_b.js new file mode 100644 index 0000000..144c605 --- /dev/null +++ b/docs/html/search/variables_b.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['nextinputcheck_1112',['nextInputCheck',['../main_8cpp.html#ab97b60e63c8bfbdd8baaf7d1ad94501f',1,'main.cpp']]], + ['nextlanchecktime_1113',['nextLanCheckTime',['../main_8cpp.html#a718a0d8e0b8df891d3f1e4ac55c786ca',1,'main.cpp']]], + ['nextpollingcheck_1114',['nextPollingCheck',['../main_8cpp.html#a44ea85dd3be07c7cf3ad07d3565c8663',1,'main.cpp']]], + ['nextsensorcheck_1115',['nextSensorCheck',['../main_8cpp.html#a1faa7904cff01b8c7c39eeedcc205325',1,'main.cpp']]], + ['nextthermostatcheck_1116',['nextThermostatCheck',['../main_8cpp.html#a8389528c25c33724774418d61bb3ac35',1,'main.cpp']]], + ['node_1117',['node',['../item_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp'],['../main_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp'],['../out__modbus_8cpp.html#aed3ca48125de3e138d26fa4884c35c93',1,'node(): main.cpp']]], + ['numargs_1118',['numArgs',['../classcolor_channel.html#ace14fae07b9d51500db5d0191f5a7081',1,'colorChannel']]], + ['numchannels_1119',['numChannels',['../classout__pwm.html#a1d705ffb413e0e5b9c3ad007fdafcbbd',1,'out_pwm']]], + ['numleds_1120',['numLeds',['../classout___s_p_i_led.html#a4d13edbe6d02a9519c73283d65d38086',1,'out_SPILed']]] +]; diff --git a/docs/html/search/variables_c.html b/docs/html/search/variables_c.html new file mode 100644 index 0000000..c89b8de --- /dev/null +++ b/docs/html/search/variables_c.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_c.js b/docs/html/search/variables_c.js new file mode 100644 index 0000000..c48788a --- /dev/null +++ b/docs/html/search/variables_c.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['off_1121',['off',['../out__ac_8cpp.html#a92ecc0652f4769feb490ae0cf20093b5',1,'out_ac.cpp']]], + ['on_1122',['on',['../out__ac_8cpp.html#a1fa5a75e467ea8c74cca76051f03a1d4',1,'out_ac.cpp']]], + ['onewire_1123',['oneWire',['../ow_term_8cpp.html#a385b7fa9c4553fcb57ee60a03932b60c',1,'oneWire(): owTerm.cpp'],['../ow_term_8h.html#a385b7fa9c4553fcb57ee60a03932b60c',1,'oneWire(): owTerm.cpp']]], + ['owarr_1124',['owArr',['../main_8cpp.html#a564a174b067eee3b33b1162935884d55',1,'owArr(): main.cpp'],['../ow_term_8h.html#a564a174b067eee3b33b1162935884d55',1,'owArr(): main.cpp']]], + ['owchanged_1125',['owChanged',['../ow_term_8cpp.html#ac7999c9efd1309081d54939dc27687ba',1,'owChanged(): owTerm.cpp'],['../ow_term_8h.html#ac7999c9efd1309081d54939dc27687ba',1,'owChanged(): owTerm.cpp']]], + ['owready_1126',['owReady',['../main_8cpp.html#a9638cf28423f00ad98377d1d89cba57e',1,'main.cpp']]], + ['owtimer_1127',['owTimer',['../ow_term_8cpp.html#a72d7dd39e835325dedcc977f3b23adb8',1,'owTerm.cpp']]] +]; diff --git a/docs/html/search/variables_d.html b/docs/html/search/variables_d.html new file mode 100644 index 0000000..a73000d --- /dev/null +++ b/docs/html/search/variables_d.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_d.js b/docs/html/search/variables_d.js new file mode 100644 index 0000000..cf19cd0 --- /dev/null +++ b/docs/html/search/variables_d.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['param_1128',['param',['../classitem_cmd.html#ac8c117086fcec929c6cb214815705be3',1,'itemCmd']]], + ['parameters_1129',['parameters',['../classmb_persistent.html#a498e43d5538b11348f2165e99e09413f',1,'mbPersistent']]], + ['pin_1130',['pin',['../class_input.html#a910d1942c02b2d155dbaa3c8a41876f5',1,'Input::pin()'],['../classout___s_p_i_led.html#a1ef26d145d52578110f56087df1aa228',1,'out_SPILed::pin()']]], + ['pindown_1131',['pinDown',['../classout___motor.html#af21db4b38c3676a038c93d403b227152',1,'out_Motor']]], + ['pinfeedback_1132',['pinFeedback',['../classout___motor.html#ae4052839e88ca4a59e83c35400d239cf',1,'out_Motor']]], + ['pinup_1133',['pinUp',['../classout___motor.html#aaa2493a4399f63fd8d17e37f0c731791',1,'out_Motor']]], + ['pollinginterval_1134',['pollingInterval',['../classmb_persistent.html#aa958ac1f496b701507478b9384e7728e',1,'mbPersistent']]], + ['pollingitem_1135',['pollingItem',['../item_8cpp.html#aa8f2c895949680c2aadc4843bb350347',1,'pollingItem(): main.cpp'],['../main_8cpp.html#aa8f2c895949680c2aadc4843bb350347',1,'pollingItem(): main.cpp']]], + ['pollingregisters_1136',['pollingRegisters',['../classmb_persistent.html#a801983b127a63a82ea3c1c32989ceae8',1,'mbPersistent']]], + ['prevpolling_1137',['prevPolling',['../out__ac_8cpp.html#a4155acb94ab76d403c080731ac75dda9',1,'out_ac.cpp']]], + ['progmem_1138',['PROGMEM',['../item_cmd_8h.html#a948e42c714310535a6faa06c9c652e82',1,'PROGMEM(): itemCmd.h'],['../main_8cpp.html#adf233b4843635c473146d0fd1d2a8b46',1,'PROGMEM(): main.cpp'],['../out__ac_8cpp.html#a98bd41348071f8af054dad33e25cb935',1,'PROGMEM(): out_ac.cpp'],['../out__modbus_8cpp.html#a6c1a731dafc190e4be43884f9b8807ad',1,'PROGMEM(): out_modbus.cpp'],['../textconst_8h.html#a6cfd127aee797ba9080cec031590b508',1,'PROGMEM(): textconst.h'],['../utils_8cpp.html#a3ec4211471d85792b3cb9f0fc8082b4c',1,'PROGMEM(): utils.cpp']]] +]; diff --git a/docs/html/search/variables_e.html b/docs/html/search/variables_e.html new file mode 100644 index 0000000..50f6bea --- /dev/null +++ b/docs/html/search/variables_e.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_e.js b/docs/html/search/variables_e.js new file mode 100644 index 0000000..dac6ffd --- /dev/null +++ b/docs/html/search/variables_e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['qstn_1139',['qstn',['../out__ac_8cpp.html#ab239dd88a94012660135822f7c629acd',1,'out_ac.cpp']]] +]; diff --git a/docs/html/search/variables_f.html b/docs/html/search/variables_f.html new file mode 100644 index 0000000..cabd42a --- /dev/null +++ b/docs/html/search/variables_f.html @@ -0,0 +1,36 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/docs/html/search/variables_f.js b/docs/html/search/variables_f.js new file mode 100644 index 0000000..bd6d02e --- /dev/null +++ b/docs/html/search/variables_f.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['r_1140',['r',['../unionitem_arg_store.html#a06c84d5f22df304ea2e4a530ed8f23f6',1,'itemArgStore']]], + ['regs_1141',['regs',['../ow_term_8h.html#a51d8312908b2e5f09ac8e40879c2f1a9',1,'owTerm.h']]], + ['reqstate_1142',['reqState',['../unionin_store.html#a1c67a8ed876e1320206c1b1b9651fd10',1,'inStore']]], + ['reserved_1143',['reserved',['../unionin_store.html#a80c2c10e46083179d86fa7c4511d671d',1,'inStore']]], + ['root_1144',['root',['../inputs_8cpp.html#a2e223992d94c34788bec64fb05f780ba',1,'root(): main.cpp'],['../main_8cpp.html#a2e223992d94c34788bec64fb05f780ba',1,'root(): main.cpp']]] +]; diff --git a/docs/html/splitbar.png b/docs/html/splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/docs/html/statusled_8cpp.html b/docs/html/statusled_8cpp.html new file mode 100644 index 0000000..ba4d0e5 --- /dev/null +++ b/docs/html/statusled_8cpp.html @@ -0,0 +1,80 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    statusled.cpp File Reference
    +
    +
    +
    #include "statusled.h"
    +
    + + + + diff --git a/docs/html/statusled_8h.html b/docs/html/statusled_8h.html new file mode 100644 index 0000000..2e622f4 --- /dev/null +++ b/docs/html/statusled_8h.html @@ -0,0 +1,303 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    statusled.h File Reference
    +
    +
    +
    #include <Arduino.h>
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  statusLED
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ledRED   1
     
    #define ledGREEN   2
     
    #define ledBLUE   4
     
    #define ledBLINK   8
     
    #define ledFASTBLINK   16
     
    #define ledParams   (ledRED | ledGREEN | ledBLUE | ledBLINK | ledFASTBLINK)
     
    #define ledFlash   32
     
    #define ledHidden   64
     
    #define pinRED   50
     
    #define pinGREEN   51
     
    #define pinBLUE   52
     
    #define ledDelayms   1000UL
     
    #define ledFastDelayms   300UL
     
    +

    Macro Definition Documentation

    + +

    ◆ ledBLINK

    + +
    +
    + + + + +
    #define ledBLINK   8
    +
    + +
    +
    + +

    ◆ ledBLUE

    + +
    +
    + + + + +
    #define ledBLUE   4
    +
    + +
    +
    + +

    ◆ ledDelayms

    + +
    +
    + + + + +
    #define ledDelayms   1000UL
    +
    + +
    +
    + +

    ◆ ledFASTBLINK

    + +
    +
    + + + + +
    #define ledFASTBLINK   16
    +
    + +
    +
    + +

    ◆ ledFastDelayms

    + +
    +
    + + + + +
    #define ledFastDelayms   300UL
    +
    + +
    +
    + +

    ◆ ledFlash

    + +
    +
    + + + + +
    #define ledFlash   32
    +
    + +
    +
    + +

    ◆ ledGREEN

    + +
    +
    + + + + +
    #define ledGREEN   2
    +
    + +
    +
    + +

    ◆ ledHidden

    + +
    +
    + + + + +
    #define ledHidden   64
    +
    + +
    +
    + +

    ◆ ledParams

    + +
    +
    + + + + +
    #define ledParams   (ledRED | ledGREEN | ledBLUE | ledBLINK | ledFASTBLINK)
    +
    + +
    +
    + +

    ◆ ledRED

    + +
    +
    + + + + +
    #define ledRED   1
    +
    + +
    +
    + +

    ◆ pinBLUE

    + +
    +
    + + + + +
    #define pinBLUE   52
    +
    + +
    +
    + +

    ◆ pinGREEN

    + +
    +
    + + + + +
    #define pinGREEN   51
    +
    + +
    +
    + +

    ◆ pinRED

    + +
    +
    + + + + +
    #define pinRED   50
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/statusled_8h_source.html b/docs/html/statusled_8h_source.html new file mode 100644 index 0000000..2ee1226 --- /dev/null +++ b/docs/html/statusled_8h_source.html @@ -0,0 +1,135 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    statusled.h
    +
    +
    +Go to the documentation of this file.
    1 /* Copyright © 2017-2018 Andrey Klimov. All rights reserved.
    +
    2 
    +
    3 Licensed under the Apache License, Version 2.0 (the "License");
    +
    4 you may not use this file except in compliance with the License.
    +
    5 You may obtain a copy of the License at
    +
    6 
    +
    7  http://www.apache.org/licenses/LICENSE-2.0
    +
    8 
    +
    9 Unless required by applicable law or agreed to in writing, software
    +
    10 distributed under the License is distributed on an "AS IS" BASIS,
    +
    11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +
    12 See the License for the specific language governing permissions and
    +
    13 limitations under the License.
    +
    14 
    +
    15 Homepage: http://lazyhome.ru
    +
    16 GIT: https://github.com/anklimov/lighthub
    +
    17 e-mail anklimov@gmail.com
    +
    18 
    +
    19 */
    +
    20 #pragma once
    +
    21 #include <Arduino.h>
    +
    22 
    +
    23 #define ledRED 1
    +
    24 #define ledGREEN 2
    +
    25 #define ledBLUE 4
    +
    26 #define ledBLINK 8
    +
    27 #define ledFASTBLINK 16
    +
    28 #define ledParams (ledRED | ledGREEN | ledBLUE | ledBLINK | ledFASTBLINK)
    +
    29 
    +
    30 #define ledFlash 32
    +
    31 #define ledHidden 64
    +
    32 
    +
    33 #define pinRED 50
    +
    34 #define pinGREEN 51
    +
    35 #define pinBLUE 52
    +
    36 
    +
    37 #define ledDelayms 1000UL
    +
    38 #define ledFastDelayms 300UL
    +
    39 
    +
    40 class statusLED {
    +
    41 public:
    +
    42  statusLED(uint8_t pattern = 0);
    +
    43  void set (uint8_t pattern);
    +
    44  void show (uint8_t pattern);
    +
    45  void poll();
    +
    46  void flash(uint8_t pattern);
    +
    47 private:
    +
    48  uint8_t curStat;
    +
    49  uint32_t timestamp;
    +
    50 };
    +
    +
    void poll()
    Definition: statusled.cpp:66
    +
    statusLED(uint8_t pattern=0)
    Definition: statusled.cpp:24
    +
    void flash(uint8_t pattern)
    Definition: statusled.cpp:58
    +
    void set(uint8_t pattern)
    Definition: statusled.cpp:44
    +
    Definition: statusled.h:40
    +
    void show(uint8_t pattern)
    Definition: statusled.cpp:35
    + + + + diff --git a/docs/html/streamlog_8cpp.html b/docs/html/streamlog_8cpp.html new file mode 100644 index 0000000..3437286 --- /dev/null +++ b/docs/html/streamlog_8cpp.html @@ -0,0 +1,82 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    streamlog.cpp File Reference
    +
    +
    +
    #include "streamlog.h"
    +#include <Arduino.h>
    +#include "statusled.h"
    +
    + + + + diff --git a/docs/html/streamlog_8h.html b/docs/html/streamlog_8h.html new file mode 100644 index 0000000..336e7cb --- /dev/null +++ b/docs/html/streamlog_8h.html @@ -0,0 +1,161 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    streamlog.h File Reference
    +
    +
    +
    #include <Print.h>
    +#include <HardwareSerial.h>
    +#include <inttypes.h>
    +
    +

    Go to the source code of this file.

    + + + + +

    +Classes

    class  Streamlog
     
    + + + + + + + + + +

    +Macros

    #define LOGBUFFER_SIZE   80
     
    #define LOG_DEBUG   7
     
    #define LOG_INFO   6
     
    #define LOG_ERROR   3
     
    +

    Macro Definition Documentation

    + +

    ◆ LOG_DEBUG

    + +
    +
    + + + + +
    #define LOG_DEBUG   7
    +
    + +
    +
    + +

    ◆ LOG_ERROR

    + +
    +
    + + + + +
    #define LOG_ERROR   3
    +
    + +
    +
    + +

    ◆ LOG_INFO

    + +
    +
    + + + + +
    #define LOG_INFO   6
    +
    + +
    +
    + +

    ◆ LOGBUFFER_SIZE

    + +
    +
    + + + + +
    #define LOGBUFFER_SIZE   80
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/streamlog_8h_source.html b/docs/html/streamlog_8h_source.html new file mode 100644 index 0000000..7bce773 --- /dev/null +++ b/docs/html/streamlog_8h_source.html @@ -0,0 +1,138 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    streamlog.h
    +
    +
    +Go to the documentation of this file.
    1 #include <Print.h>
    +
    2 #include <HardwareSerial.h>
    +
    3 #include <inttypes.h>
    +
    4 
    +
    5 #ifndef LOGBUFFER_SIZE
    +
    6 #define LOGBUFFER_SIZE 80
    +
    7 #endif
    +
    8 
    +
    9 #ifdef SYSLOG_ENABLE
    +
    10 #include <Syslog.h>
    +
    11 static char logBuffer[LOGBUFFER_SIZE];
    +
    12 static int logBufferPos=0;
    +
    13 #endif
    +
    14 
    +
    15 #define LOG_DEBUG 7
    +
    16 #define LOG_INFO 6
    +
    17 #define LOG_ERROR 3
    +
    18 
    +
    19 static uint8_t serialDebugLevel = 7;
    +
    20 static uint8_t udpDebugLevel =7;
    +
    21 
    +
    22 class Streamlog : public Print
    +
    23 {
    +
    24  public:
    +
    25  #ifdef SYSLOG_ENABLE
    +
    26  Streamlog (HardwareSerial * _serialPort, int _severity = LOG_DEBUG, Syslog * _syslog = NULL, uint8_t _ledPattern = 0);
    +
    27  #else
    +
    28  Streamlog (HardwareSerial * _serialPort, int _severity = LOG_DEBUG, uint8_t _ledPattern = 0);
    +
    29  #endif
    +
    30  // {serialPort=_serialPort;severity=_severity; syslog=_syslog; }
    +
    31  void begin(unsigned long speed);
    +
    32  void end() ;
    +
    33 
    +
    34  int available(void);
    +
    35  int peek(void);
    +
    36  int read(void);
    +
    37  void flush(void);
    +
    38  size_t write(uint8_t ch);
    +
    39  using Print::write; // pull in write(str) and write(buf, size) from Print
    +
    40  operator bool() {return true;};
    +
    41  private:
    +
    42  uint16_t severity;
    +
    43  HardwareSerial *serialPort;
    +
    44  #ifdef SYSLOG_ENABLE
    +
    45  Syslog * syslog;
    +
    46  uint8_t ledPattern;
    +
    47  #endif
    +
    48 };
    +
    +
    void end()
    Definition: streamlog.cpp:31
    +
    int available(void)
    Definition: streamlog.cpp:36
    +
    #define LOGBUFFER_SIZE
    Definition: streamlog.h:6
    +
    size_t write(uint8_t ch)
    Definition: streamlog.cpp:61
    +
    void flush(void)
    Definition: streamlog.cpp:55
    +
    int peek(void)
    Definition: streamlog.cpp:42
    +
    void begin(unsigned long speed)
    Definition: streamlog.cpp:26
    +
    Definition: streamlog.h:23
    +
    int read(void)
    Definition: streamlog.cpp:48
    +
    Streamlog(HardwareSerial *_serialPort, int _severity=LOG_DEBUG, uint8_t _ledPattern=0)
    Definition: streamlog.cpp:19
    +
    #define LOG_DEBUG
    Definition: streamlog.h:15
    + + + + diff --git a/docs/html/structreg__t-members.html b/docs/html/structreg__t-members.html new file mode 100644 index 0000000..8d16896 --- /dev/null +++ b/docs/html/structreg__t-members.html @@ -0,0 +1,80 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    reg_t Member List
    +
    +
    + +

    This is the complete list of members for reg_t, including all inherited members.

    + + + +
    idreg_t
    verbreg_t
    + + + + diff --git a/docs/html/structreg__t.html b/docs/html/structreg__t.html new file mode 100644 index 0000000..3a439e5 --- /dev/null +++ b/docs/html/structreg__t.html @@ -0,0 +1,118 @@ + + + + + + + +LightHub: reg_t Struct Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    reg_t Struct Reference
    +
    +
    + + + + + + +

    +Public Attributes

    const char verb [4]
     
    const uint8_t id
     
    +

    Member Data Documentation

    + +

    ◆ id

    + +
    +
    + + + + +
    const uint8_t reg_t::id
    +
    + +
    +
    + +

    ◆ verb

    + +
    +
    + + + + +
    const char reg_t::verb[4]
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.cpp
    • +
    +
    + + + + diff --git a/docs/html/structserial__t-members.html b/docs/html/structserial__t-members.html new file mode 100644 index 0000000..5c69cfc --- /dev/null +++ b/docs/html/structserial__t-members.html @@ -0,0 +1,80 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    serial_t Member List
    +
    +
    + +

    This is the complete list of members for serial_t, including all inherited members.

    + + + +
    modeserial_t
    verbserial_t
    + + + + diff --git a/docs/html/structserial__t.html b/docs/html/structserial__t.html new file mode 100644 index 0000000..67fe36d --- /dev/null +++ b/docs/html/structserial__t.html @@ -0,0 +1,118 @@ + + + + + + + +LightHub: serial_t Struct Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    serial_t Struct Reference
    +
    +
    + + + + + + +

    +Public Attributes

    const char verb [4]
     
    const uint16_t mode
     
    +

    Member Data Documentation

    + +

    ◆ mode

    + +
    +
    + + + + +
    const uint16_t serial_t::mode
    +
    + +
    +
    + +

    ◆ verb

    + +
    +
    + + + + +
    const char serial_t::verb[4]
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out_modbus.cpp
    • +
    +
    + + + + diff --git a/docs/html/sync_off.png b/docs/html/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/docs/html/sync_on.png b/docs/html/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/docs/html/tab_a.png b/docs/html/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/docs/html/tab_b.png b/docs/html/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/docs/html/tabs.css b/docs/html/tabs.css new file mode 100644 index 0000000..85a0cd5 --- /dev/null +++ b/docs/html/tabs.css @@ -0,0 +1 @@ +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace!important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0!important;-webkit-border-radius:0;border-radius:0!important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px!important;-webkit-border-radius:5px;border-radius:5px!important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0!important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px!important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} \ No newline at end of file diff --git a/docs/html/textconst_8h.html b/docs/html/textconst_8h.html new file mode 100644 index 0000000..7aa5fbd --- /dev/null +++ b/docs/html/textconst_8h.html @@ -0,0 +1,120 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/textconst.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    textconst.h File Reference
    +
    +
    + +

    Go to the source code of this file.

    + + + + + + +

    +Variables

    const char state_P[] PROGMEM = "$state"
     
    const char EEPROM_signature [] = EEPROM_SIGNATURE
     
    +

    Variable Documentation

    + +

    ◆ EEPROM_signature

    + +
    +
    + + + + +
    const char EEPROM_signature[] = EEPROM_SIGNATURE
    +
    + +
    +
    + +

    ◆ PROGMEM

    + +
    +
    + + + + +
    const char RGB_P [] PROGMEM = "$state"
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/textconst_8h_source.html b/docs/html/textconst_8h_source.html new file mode 100644 index 0000000..da37ff2 --- /dev/null +++ b/docs/html/textconst_8h_source.html @@ -0,0 +1,203 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/textconst.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    textconst.h
    +
    +
    +Go to the documentation of this file.
    1 #pragma once
    +
    2 
    +
    3 const char state_P[] PROGMEM = "$state";
    +
    4 const char disconnected_P[] PROGMEM = "disconnected";
    +
    5 const char ready_P[] PROGMEM = "ready";
    +
    6 
    +
    7 const char homie_P[] PROGMEM = "$homie";
    +
    8 const char homiever_P[] PROGMEM = "3.0.1";
    +
    9 
    +
    10 const char name_P[] PROGMEM = "$name";
    +
    11 const char nameval_P[] PROGMEM = "LightHub ";
    +
    12 
    +
    13 const char nodes_P[] PROGMEM = "$nodes";
    +
    14 const char properties_P[] PROGMEM = "$properties";
    +
    15 const char propertiesVal_P[] PROGMEM = "set,cmd";
    +
    16 const char settable_P[] PROGMEM = "settable";
    +
    17 const char localip_P[] PROGMEM = "$localip";
    +
    18 const char mac_P[] PROGMEM = "$mac";
    +
    19 const char fwname_P[] PROGMEM = "$fw/name";
    +
    20 const char fwversion_P[] PROGMEM = "$fw/version";
    +
    21 const char implementation_P[] PROGMEM = "$implementation";
    +
    22 const char interval_P[] PROGMEM = "$stats/interval";
    +
    23 const char color_P[] PROGMEM = "color";
    +
    24 
    +
    25 const char datatype_P[] PROGMEM = "$datatype";
    +
    26 
    +
    27 const char float_P[] PROGMEM = "float";
    +
    28 const char hsv_P[] PROGMEM = "hsv";
    +
    29 const char int_P[] PROGMEM = "integer";
    +
    30 const char enum_P[] PROGMEM = "enum";
    +
    31 const char format_P[] PROGMEM = "$format";
    +
    32 const char true_P[] PROGMEM = "true";
    +
    33 const char false_P[] PROGMEM = "false";
    +
    34 
    +
    35 const char enumformat_P[] PROGMEM = "ON,OFF,HALT,REST,XON,XOFF,TOGGLE";
    +
    36 const char intformat_P[] PROGMEM = "0-100";
    +
    37 
    +
    38 const char stats_P[] PROGMEM = "$stats";
    +
    39 const char statsval_P[] PROGMEM = "uptime,freeheap";
    +
    40 const char uptime_P[] PROGMEM = "uptime";
    +
    41 const char freeheap_P[] PROGMEM = "freeheap";
    +
    42 
    +
    43 /*
    +
    44 
    +
    45 {"name": "Спальня LED",
    +
    46 "command_topic": "myhome/in/bedr/cmd",
    +
    47 "state_topic": "myhome/s_out/bedr/cmd",
    +
    48 "hs_command_topic": "myhome/in/bedr/set",
    +
    49 "hs_state_topic": "myhome/s_out/bedr/set",
    +
    50 "hs_value_template": "{%set a=value.split(',')%} {% if a[1] -%} {{a[0]+','+a[1]}} {%- endif %}",
    +
    51 "brightness_scale": 100,
    +
    52 "brightness_command_topic": "myhome/in/bedr/set",
    +
    53 "brightness_state_topic": "myhome/s_out/bedr/set",
    +
    54 "brightness_value_template": "{{ value.split(',')[2] }}"
    +
    55 }
    +
    56 
    +
    57 {
    +
    58 "~":"myhome"
    +
    59 "name": "Спальня LED",
    +
    60 "cmd_t": "~/in/bedr/cmd",
    +
    61 "tat_t": "~/s_out/bedr/cmd",
    +
    62 "hs_cmd_t": "~/in/bedr/set",
    +
    63 "hs_stat_t": "~/s_out/bedr/set",
    +
    64 "hs_val_tpl": "{%set a=value.split(',')%}{% if a[1] -%}{{a[0]+','+a[1]}}{%- endif %}",
    +
    65 "bri_scl": 100,
    +
    66 "bri_cmd_t": "~/in/bedr/set",
    +
    67 "bri_stat_t": "~/s_out/bedr/set",
    +
    68 "bri_val_tpl": "{{ value.split(',')[2] }}"
    +
    69 }
    +
    70 
    +
    71 */
    +
    72 
    +
    73 
    +
    74 
    +
    75 //Commands
    +
    76 
    +
    77 const char ON_P[] PROGMEM = "ON";
    +
    78 const char OFF_P[] PROGMEM = "OFF";
    +
    79 const char REST_P[] PROGMEM = "REST";
    +
    80 const char TOGGLE_P[] PROGMEM = "TOGGLE";
    +
    81 const char HALT_P[] PROGMEM = "HALT";
    +
    82 const char XON_P[] PROGMEM = "XON";
    +
    83 const char XOFF_P[] PROGMEM = "XOFF";
    +
    84 /*
    +
    85 const char INCREASE_P[] PROGMEM = "INCREASE";
    +
    86 const char DECREASE_P[] PROGMEM = "DECREASE";
    +
    87 const char TRUE_P[] PROGMEM = "TRUE";
    +
    88 const char FALSE_P[] PROGMEM = "FALSE";
    +
    89 
    +
    90 const char ENABLED_P[] PROGMEM = "ENABLED";
    +
    91 const char DISABLED_P[] PROGMEM = "DISABLED";
    +
    92 */
    +
    93 const char HEAT_P[] PROGMEM = "HEAT";
    +
    94 const char COOL_P[] PROGMEM = "COOL";
    +
    95 const static char AUTO_P[] PROGMEM = "AUTO";
    +
    96 
    +
    97 
    +
    98 const char FAN_ONLY_P[] PROGMEM = "FAN_ONLY";
    +
    99 const char DRY_P[] PROGMEM = "DRY";
    +
    100 const char HIGH_P[] PROGMEM = "HIGH";
    +
    101 const char MED_P[] PROGMEM = "MEDIUM";
    +
    102 const char LOW_P[] PROGMEM = "LOW";
    +
    103 const char ERROR_P[] PROGMEM = "ERR";
    +
    104 
    +
    105 
    +
    106 // SubTopics
    +
    107 const char SET_P[] PROGMEM = "set";
    +
    108 const char CMD_P[] PROGMEM = "cmd";
    +
    109 const char MODE_P[] PROGMEM = "mode";
    +
    110 const char FAN_P[] PROGMEM = "fan";
    +
    111 const char HUE_P[] PROGMEM = "hue";
    +
    112 const char SAT_P[] PROGMEM = "sat";
    +
    113 const char TEMP_P[] PROGMEM = "temp";
    +
    114 const char HSV_P[] PROGMEM = "HSV";
    +
    115 const char RGB_P[] PROGMEM = "RGB";
    +
    116 
    +
    117 /*
    +
    118 const char RPM_P[] PROGMEM = "rpm";
    +
    119 const char STATE_P[] PROGMEM = "state";
    +
    120 */
    + +
    +
    const char state_P[] PROGMEM
    Definition: textconst.h:3
    +
    #define EEPROM_SIGNATURE
    Definition: options.h:48
    +
    const char EEPROM_signature[]
    Definition: textconst.h:121
    + + + + diff --git a/docs/html/union_u_i_d-members.html b/docs/html/union_u_i_d-members.html new file mode 100644 index 0000000..66a4895 --- /dev/null +++ b/docs/html/union_u_i_d-members.html @@ -0,0 +1,80 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    UID Member List
    +
    +
    + +

    This is the complete list of members for UID, including all inherited members.

    + + + +
    UID_ByteUID
    UID_LongUID
    + + + + diff --git a/docs/html/union_u_i_d.html b/docs/html/union_u_i_d.html new file mode 100644 index 0000000..1f01e01 --- /dev/null +++ b/docs/html/union_u_i_d.html @@ -0,0 +1,120 @@ + + + + + + + +LightHub: UID Union Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    UID Union Reference
    +
    +
    + +

    #include <main.h>

    + + + + + + +

    +Public Attributes

    uint32_t UID_Long [5]
     
    uint8_t UID_Byte [20]
     
    +

    Member Data Documentation

    + +

    ◆ UID_Byte

    + +
    +
    + + + + +
    uint8_t UID::UID_Byte[20]
    +
    + +
    +
    + +

    ◆ UID_Long

    + +
    +
    + + + + +
    uint32_t UID::UID_Long[5]
    +
    + +
    +
    +
    The documentation for this union was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/main.h
    • +
    +
    + + + + diff --git a/docs/html/unionin_store-members.html b/docs/html/unionin_store-members.html new file mode 100644 index 0000000..11f87f7 --- /dev/null +++ b/docs/html/unionin_store-members.html @@ -0,0 +1,92 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    inStore Member List
    +
    + + + + + diff --git a/docs/html/unionin_store.html b/docs/html/unionin_store.html new file mode 100644 index 0000000..753b2b8 --- /dev/null +++ b/docs/html/unionin_store.html @@ -0,0 +1,346 @@ + + + + + + + +LightHub: inStore Union Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    inStore Union Reference
    +
    +
    + +

    #include <inputs.h>

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Attributes

    long int aslong
     
    uint32_t timestamp
     
    struct {
       uint8_t   reserved
     
       uint8_t   logicState
     
       int16_t   currentValue
     
    }; 
     
    struct {
       uint8_t   toggle1:1
     
       uint8_t   toggle2:1
     
       uint8_t   toggle3:1
     
       uint8_t   lastValue:1
     
       uint8_t   delayedState:1
     
       uint8_t   bounce:3
     
       uint8_t   state:4
     
       uint8_t   reqState:4
     
       uint16_t   timestamp16
     
    }; 
     
    +

    Member Data Documentation

    + +

    ◆ @1

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ @3

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ aslong

    + +
    +
    + + + + +
    long int inStore::aslong
    +
    + +
    +
    + +

    ◆ bounce

    + +
    +
    + + + + +
    uint8_t inStore::bounce
    +
    + +
    +
    + +

    ◆ currentValue

    + +
    +
    + + + + +
    int16_t inStore::currentValue
    +
    + +
    +
    + +

    ◆ delayedState

    + +
    +
    + + + + +
    uint8_t inStore::delayedState
    +
    + +
    +
    + +

    ◆ lastValue

    + +
    +
    + + + + +
    uint8_t inStore::lastValue
    +
    + +
    +
    + +

    ◆ logicState

    + +
    +
    + + + + +
    uint8_t inStore::logicState
    +
    + +
    +
    + +

    ◆ reqState

    + +
    +
    + + + + +
    uint8_t inStore::reqState
    +
    + +
    +
    + +

    ◆ reserved

    + +
    +
    + + + + +
    uint8_t inStore::reserved
    +
    + +
    +
    + +

    ◆ state

    + +
    +
    + + + + +
    uint8_t inStore::state
    +
    + +
    +
    + +

    ◆ timestamp

    + +
    +
    + + + + +
    uint32_t inStore::timestamp
    +
    + +
    +
    + +

    ◆ timestamp16

    + +
    +
    + + + + +
    uint16_t inStore::timestamp16
    +
    + +
    +
    + +

    ◆ toggle1

    + +
    +
    + + + + +
    uint8_t inStore::toggle1
    +
    + +
    +
    + +

    ◆ toggle2

    + +
    +
    + + + + +
    uint8_t inStore::toggle2
    +
    + +
    +
    + +

    ◆ toggle3

    + +
    +
    + + + + +
    uint8_t inStore::toggle3
    +
    + +
    +
    +
    The documentation for this union was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h
    • +
    +
    + + + + diff --git a/docs/html/unionitem_arg_store-members.html b/docs/html/unionitem_arg_store-members.html new file mode 100644 index 0000000..0b8edad --- /dev/null +++ b/docs/html/unionitem_arg_store-members.html @@ -0,0 +1,95 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    itemArgStore Member List
    +
    + + + + + diff --git a/docs/html/unionitem_arg_store.html b/docs/html/unionitem_arg_store.html new file mode 100644 index 0000000..1346c34 --- /dev/null +++ b/docs/html/unionitem_arg_store.html @@ -0,0 +1,411 @@ + + + + + + + +LightHub: itemArgStore Union Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    itemArgStore Union Reference
    +
    +
    + +

    #include <itemCmd.h>

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Attributes

    long int aslong
     
    int32_t asInt32
     
    uint32_t asUint32
     
    char * asString
     
    float asfloat
     
    struct {
       uint8_t   v
     
       uint8_t   s
     
       uint16_t   h:9
     
       uint16_t   colorTemp:7
     
    }; 
     
    struct {
       int8_t   signed_v
     
       int8_t   signed_s
     
       int16_t   signed_h:9
     
       int16_t   signed_colorTemp:7
     
    }; 
     
    struct {
       uint8_t   r
     
       uint8_t   g
     
       uint8_t   b
     
       uint8_t   w
     
    }; 
     
    +

    Member Data Documentation

    + +

    ◆ @11

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ @7

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ @9

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ asfloat

    + +
    +
    + + + + +
    float itemArgStore::asfloat
    +
    + +
    +
    + +

    ◆ asInt32

    + +
    +
    + + + + +
    int32_t itemArgStore::asInt32
    +
    + +
    +
    + +

    ◆ aslong

    + +
    +
    + + + + +
    long int itemArgStore::aslong
    +
    + +
    +
    + +

    ◆ asString

    + +
    +
    + + + + +
    char* itemArgStore::asString
    +
    + +
    +
    + +

    ◆ asUint32

    + +
    +
    + + + + +
    uint32_t itemArgStore::asUint32
    +
    + +
    +
    + +

    ◆ b

    + +
    +
    + + + + +
    uint8_t itemArgStore::b
    +
    + +
    +
    + +

    ◆ colorTemp

    + +
    +
    + + + + +
    uint16_t itemArgStore::colorTemp
    +
    + +
    +
    + +

    ◆ g

    + +
    +
    + + + + +
    uint8_t itemArgStore::g
    +
    + +
    +
    + +

    ◆ h

    + +
    +
    + + + + +
    uint16_t itemArgStore::h
    +
    + +
    +
    + +

    ◆ r

    + +
    +
    + + + + +
    uint8_t itemArgStore::r
    +
    + +
    +
    + +

    ◆ s

    + +
    +
    + + + + +
    uint8_t itemArgStore::s
    +
    + +
    +
    + +

    ◆ signed_colorTemp

    + +
    +
    + + + + +
    int16_t itemArgStore::signed_colorTemp
    +
    + +
    +
    + +

    ◆ signed_h

    + +
    +
    + + + + +
    int16_t itemArgStore::signed_h
    +
    + +
    +
    + +

    ◆ signed_s

    + +
    +
    + + + + +
    int8_t itemArgStore::signed_s
    +
    + +
    +
    + +

    ◆ signed_v

    + +
    +
    + + + + +
    int8_t itemArgStore::signed_v
    +
    + +
    +
    + +

    ◆ v

    + +
    +
    + + + + +
    uint8_t itemArgStore::v
    +
    + +
    +
    + +

    ◆ w

    + +
    +
    + + + + +
    uint8_t itemArgStore::w
    +
    + +
    +
    +
    The documentation for this union was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h
    • +
    +
    + + + + diff --git a/docs/html/unionitem_cmd_store-members.html b/docs/html/unionitem_cmd_store-members.html new file mode 100644 index 0000000..3e5e3b9 --- /dev/null +++ b/docs/html/unionitem_cmd_store-members.html @@ -0,0 +1,86 @@ + + + + + + + +LightHub: Member List + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    itemCmdStore Member List
    +
    + + + + + diff --git a/docs/html/unionitem_cmd_store.html b/docs/html/unionitem_cmd_store.html new file mode 100644 index 0000000..b9172c2 --- /dev/null +++ b/docs/html/unionitem_cmd_store.html @@ -0,0 +1,239 @@ + + + + + + + +LightHub: itemCmdStore Union Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    itemCmdStore Union Reference
    +
    +
    + +

    #include <itemCmd.h>

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Attributes

    long int aslong
     
    int32_t asInt32
     
    uint32_t asUint32
     
    struct {
       uint8_t   cmdCode
     
       union {
          uint8_t   cmdFlag
     
       } 
     
       struct {
          uint8_t   suffixCode:4
     
          uint8_t   itemArgType:4
     
       } 
     
       uint8_t   cmdParam
     
    }; 
     
    +

    Member Data Documentation

    + +

    ◆ @1

    + +
    +
    + + + + +
    struct { ... }
    +
    + +
    +
    + +

    ◆ asInt32

    + +
    +
    + + + + +
    int32_t itemCmdStore::asInt32
    +
    + +
    +
    + +

    ◆ aslong

    + +
    +
    + + + + +
    long int itemCmdStore::aslong
    +
    + +
    +
    + +

    ◆ asUint32

    + +
    +
    + + + + +
    uint32_t itemCmdStore::asUint32
    +
    + +
    +
    + +

    ◆ cmdCode

    + +
    +
    + + + + +
    uint8_t itemCmdStore::cmdCode
    +
    + +
    +
    + +

    ◆ cmdFlag

    + +
    +
    + + + + +
    uint8_t itemCmdStore::cmdFlag
    +
    + +
    +
    + +

    ◆ cmdParam

    + +
    +
    + + + + +
    uint8_t itemCmdStore::cmdParam
    +
    + +
    +
    + +

    ◆ itemArgType

    + +
    +
    + + + + +
    uint8_t itemCmdStore::itemArgType
    +
    + +
    +
    + +

    ◆ suffixCode

    + +
    +
    + + + + +
    uint8_t itemCmdStore::suffixCode
    +
    + +
    +
    +
    The documentation for this union was generated from the following file:
      +
    • /Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h
    • +
    +
    + + + + diff --git a/docs/html/utils_8cpp.html b/docs/html/utils_8cpp.html new file mode 100644 index 0000000..fe7926a --- /dev/null +++ b/docs/html/utils_8cpp.html @@ -0,0 +1,866 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/utils.cpp File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    utils.cpp File Reference
    +
    +
    +
    #include "utils.h"
    +#include "options.h"
    +#include "stdarg.h"
    +#include <Wire.h>
    +#include "main.h"
    +#include "item.h"
    +#include <PubSubClient.h>
    +
    + + + +

    +Macros

    #define ARDBUFFER   16
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void PrintBytes (uint8_t *addr, uint8_t count, bool newline)
     
    void SetBytes (uint8_t *addr, uint8_t count, char *out)
     
    byte HEX2DEC (char i)
     
    void SetAddr (char *out, uint8_t *addr)
     
    int getInt (char **chan)
     
    void parseBytes (const char *str, char separator, byte *bytes, int maxBytes, int base)
     
    void printFloatValueToStr (float value, char *valstr)
     
    int log (const char *str,...)
     
     __attribute__ ((section(".ramfunc"))) void ReadUniqueID(uint32_t *pdwUniqueID)
     
    int inet_aton (const char *aIPAddrString, IPAddress &aResult)
     
    char * inet_ntoa_r (IPAddress addr, char *buf, int buflen)
     
    void printIPAddress (IPAddress ipAddress)
     
    char * setTopic (char *buf, int8_t buflen, topicType tt, const char *suffix)
     
    void printUlongValueToStr (char *valstr, unsigned long value)
     
    void scan_i2c_bus ()
     
    bool isTimeOver (uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo)
     
    bool executeCommand (aJsonObject *cmd, int8_t toggle)
     
    bool executeCommand (aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd)
     
    itemCmd mapInt (int32_t arg, aJsonObject *map)
     
    + + + + + + + + + + + + + + + +

    +Variables

    int8_t configLocked
     
    int8_t ethernetIdleCount
     
    PubSubClient mqttClient
     
    const char outTopic[] PROGMEM = OUTTOPIC
     
    char * deviceName
     
    aJsonObject * topics
     
    const char HEXSTR [] = "0123456789ABCDEF"
     
    +

    Macro Definition Documentation

    + +

    ◆ ARDBUFFER

    + +
    +
    + + + + +
    #define ARDBUFFER   16
    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ __attribute__()

    + +
    +
    + + + + + + + + +
    __attribute__ ((section(".ramfunc")) )
    +
    + +
    +
    + +

    ◆ executeCommand() [1/2]

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    bool executeCommand (aJsonObject * cmd,
    int8_t toggle 
    )
    +
    + +
    +
    + +

    ◆ executeCommand() [2/2]

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    bool executeCommand (aJsonObject * cmd,
    int8_t toggle,
    itemCmd _itemCmd 
    )
    +
    + +
    +
    + +

    ◆ getInt()

    + +
    +
    + + + + + + + + +
    int getInt (char ** chan)
    +
    + +
    +
    + +

    ◆ HEX2DEC()

    + +
    +
    + + + + + + + + +
    byte HEX2DEC (char i)
    +
    + +
    +
    + +

    ◆ inet_aton()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int inet_aton (const char * aIPAddrString,
    IPAddress & aResult 
    )
    +
    + +
    +
    + +

    ◆ inet_ntoa_r()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    char* inet_ntoa_r (IPAddress addr,
    char * buf,
    int buflen 
    )
    +
    +

    Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.

    +
    Parameters
    + + + + +
    addrip address in network order to convert
    buftarget buffer where the string is stored
    buflenlength of buf
    +
    +
    +
    Returns
    either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small
    + +
    +
    + +

    ◆ isTimeOver()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    bool isTimeOver (uint32_t timestamp,
    uint32_t currTime,
    uint32_t time,
    uint32_t modulo 
    )
    +
    + +
    +
    + +

    ◆ log()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int log (const char * str,
     ... 
    )
    +
    + +
    +
    + +

    ◆ mapInt()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    itemCmd mapInt (int32_t arg,
    aJsonObject * map 
    )
    +
    + +
    +
    + +

    ◆ parseBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void parseBytes (const char * str,
    char separator,
    byte * bytes,
    int maxBytes,
    int base 
    )
    +
    + +
    +
    + +

    ◆ PrintBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void PrintBytes (uint8_t * addr,
    uint8_t count,
    bool newline 
    )
    +
    + +
    +
    + +

    ◆ printFloatValueToStr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void printFloatValueToStr (float value,
    char * valstr 
    )
    +
    + +
    +
    + +

    ◆ printIPAddress()

    + +
    +
    + + + + + + + + +
    void printIPAddress (IPAddress ipAddress)
    +
    + +
    +
    + +

    ◆ printUlongValueToStr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void printUlongValueToStr (char * valstr,
    unsigned long value 
    )
    +
    + +
    +
    + +

    ◆ scan_i2c_bus()

    + +
    +
    + + + + + + + +
    void scan_i2c_bus ()
    +
    + +
    +
    + +

    ◆ SetAddr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void SetAddr (char * out,
    uint8_t * addr 
    )
    +
    + +
    +
    + +

    ◆ SetBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void SetBytes (uint8_t * addr,
    uint8_t count,
    char * out 
    )
    +
    + +
    +
    + +

    ◆ setTopic()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    char* setTopic (char * buf,
    int8_t buflen,
    topicType tt,
    const char * suffix 
    )
    +
    + +
    +
    +

    Variable Documentation

    + +

    ◆ configLocked

    + +
    +
    + + + + + +
    + + + + +
    int8_t configLocked
    +
    +extern
    +
    + +
    +
    + +

    ◆ deviceName

    + +
    +
    + + + + + +
    + + + + +
    char* deviceName
    +
    +extern
    +
    + +
    +
    + +

    ◆ ethernetIdleCount

    + +
    +
    + + + + + +
    + + + + +
    int8_t ethernetIdleCount
    +
    +extern
    +
    + +
    +
    + +

    ◆ HEXSTR

    + +
    +
    + + + + +
    const char HEXSTR[] = "0123456789ABCDEF"
    +
    + +
    +
    + +

    ◆ mqttClient

    + +
    +
    + + + + + +
    + + + + +
    PubSubClient mqttClient
    +
    +extern
    +
    + +
    +
    + +

    ◆ PROGMEM

    + +
    +
    + + + + +
    const char homeTopic [] PROGMEM = OUTTOPIC
    +
    + +
    +
    + +

    ◆ topics

    + +
    +
    + + + + + +
    + + + + +
    aJsonObject* topics
    +
    +extern
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/utils_8h.html b/docs/html/utils_8h.html new file mode 100644 index 0000000..5ecd7eb --- /dev/null +++ b/docs/html/utils_8h.html @@ -0,0 +1,861 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/utils.h File Reference + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    utils.h File Reference
    +
    +
    +
    #include <Arduino.h>
    +#include <IPAddress.h>
    +#include "aJSON.h"
    +#include "options.h"
    +#include "item.h"
    +#include "Streaming.h"
    +
    +

    Go to the source code of this file.

    + + + + + + + + + + + + +

    +Macros

    #define Q(x)   #x
     
    #define QUOTE(x)   Q(x)
     
    #define VALUE_TO_STRING(x)   #x
     
    #define VALUE(x)   VALUE_TO_STRING(x)
     
    #define VAR_NAME_VALUE(var)   #var "=" VALUE(var)
     
    + + + +

    +Enumerations

    enum  topicType { T_DEV = 1, +T_BCST = 2, +T_OUT = 3 + }
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void PrintBytes (uint8_t *addr, uint8_t count, bool newline)
     
    void SetBytes (uint8_t *addr, uint8_t count, char *out)
     
    void SetAddr (char *out, uint8_t *addr)
     
    uint8_t HEX2DEC (char i)
     
    int getInt (char **chan)
     
    unsigned long freeRam ()
     
    void parseBytes (const char *str, char separator, byte *bytes, int maxBytes, int base)
     
    int log (const char *str,...)
     
    void printFloatValueToStr (float value, char *valstr)
     
    void ReadUniqueID (uint32_t *pdwUniqueID)
     
    int inet_aton (const char *aIPAddrString, IPAddress &aResult)
     
    char * inet_ntoa_r (IPAddress addr, char *buf, int buflen)
     
    void printIPAddress (IPAddress ipAddress)
     
    char * setTopic (char *buf, int8_t buflen, topicType tt, const char *suffix=NULL)
     
    void printUlongValueToStr (char *valstr, unsigned long value)
     
    void scan_i2c_bus ()
     
    void softRebootFunc ()
     
    bool isTimeOver (uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo=0xFFFFFFFF)
     
    bool executeCommand (aJsonObject *cmd, int8_t toggle=-1)
     
    bool executeCommand (aJsonObject *cmd, int8_t toggle, itemCmd _itemCmd)
     
    itemCmd mapInt (int32_t arg, aJsonObject *map)
     
    +

    Macro Definition Documentation

    + +

    ◆ Q

    + +
    +
    + + + + + + + + +
    #define Q( x)   #x
    +
    + +
    +
    + +

    ◆ QUOTE

    + +
    +
    + + + + + + + + +
    #define QUOTE( x)   Q(x)
    +
    + +
    +
    + +

    ◆ VALUE

    + +
    +
    + + + + + + + + +
    #define VALUE( x)   VALUE_TO_STRING(x)
    +
    + +
    +
    + +

    ◆ VALUE_TO_STRING

    + +
    +
    + + + + + + + + +
    #define VALUE_TO_STRING( x)   #x
    +
    + +
    +
    + +

    ◆ VAR_NAME_VALUE

    + +
    +
    + + + + + + + + +
    #define VAR_NAME_VALUE( var)   #var "=" VALUE(var)
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +

    ◆ topicType

    + +
    +
    + + + + +
    enum topicType
    +
    + + + + +
    Enumerator
    T_DEV 
    T_BCST 
    T_OUT 
    + +
    +
    +

    Function Documentation

    + +

    ◆ executeCommand() [1/2]

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    bool executeCommand (aJsonObject * cmd,
    int8_t toggle,
    itemCmd _itemCmd 
    )
    +
    + +
    +
    + +

    ◆ executeCommand() [2/2]

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    bool executeCommand (aJsonObject * cmd,
    int8_t toggle = -1 
    )
    +
    + +
    +
    + +

    ◆ freeRam()

    + +
    +
    + + + + + + + +
    unsigned long freeRam ()
    +
    + +
    +
    + +

    ◆ getInt()

    + +
    +
    + + + + + + + + +
    int getInt (char ** chan)
    +
    + +
    +
    + +

    ◆ HEX2DEC()

    + +
    +
    + + + + + + + + +
    uint8_t HEX2DEC (char i)
    +
    + +
    +
    + +

    ◆ inet_aton()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int inet_aton (const char * aIPAddrString,
    IPAddress & aResult 
    )
    +
    + +
    +
    + +

    ◆ inet_ntoa_r()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    char* inet_ntoa_r (IPAddress addr,
    char * buf,
    int buflen 
    )
    +
    +

    Same as ipaddr_ntoa, but reentrant since a user-supplied buffer is used.

    +
    Parameters
    + + + + +
    addrip address in network order to convert
    buftarget buffer where the string is stored
    buflenlength of buf
    +
    +
    +
    Returns
    either pointer to buf which now holds the ASCII representation of addr or NULL if buf was too small
    + +
    +
    + +

    ◆ isTimeOver()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    bool isTimeOver (uint32_t timestamp,
    uint32_t currTime,
    uint32_t time,
    uint32_t modulo = 0xFFFFFFFF 
    )
    +
    + +
    +
    + +

    ◆ log()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int log (const char * str,
     ... 
    )
    +
    + +
    +
    + +

    ◆ mapInt()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    itemCmd mapInt (int32_t arg,
    aJsonObject * map 
    )
    +
    + +
    +
    + +

    ◆ parseBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void parseBytes (const char * str,
    char separator,
    byte * bytes,
    int maxBytes,
    int base 
    )
    +
    + +
    +
    + +

    ◆ PrintBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void PrintBytes (uint8_t * addr,
    uint8_t count,
    bool newline 
    )
    +
    + +
    +
    + +

    ◆ printFloatValueToStr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void printFloatValueToStr (float value,
    char * valstr 
    )
    +
    + +
    +
    + +

    ◆ printIPAddress()

    + +
    +
    + + + + + + + + +
    void printIPAddress (IPAddress ipAddress)
    +
    + +
    +
    + +

    ◆ printUlongValueToStr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void printUlongValueToStr (char * valstr,
    unsigned long value 
    )
    +
    + +
    +
    + +

    ◆ ReadUniqueID()

    + +
    +
    + + + + + + + + +
    void ReadUniqueID (uint32_t * pdwUniqueID)
    +
    + +
    +
    + +

    ◆ scan_i2c_bus()

    + +
    +
    + + + + + + + +
    void scan_i2c_bus ()
    +
    + +
    +
    + +

    ◆ SetAddr()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void SetAddr (char * out,
    uint8_t * addr 
    )
    +
    + +
    +
    + +

    ◆ SetBytes()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void SetBytes (uint8_t * addr,
    uint8_t count,
    char * out 
    )
    +
    + +
    +
    + +

    ◆ setTopic()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    char* setTopic (char * buf,
    int8_t buflen,
    topicType tt,
    const char * suffix = NULL 
    )
    +
    + +
    +
    + +

    ◆ softRebootFunc()

    + +
    +
    + + + + + + + +
    void softRebootFunc ()
    +
    + +
    +
    +
    + + + + diff --git a/docs/html/utils_8h_source.html b/docs/html/utils_8h_source.html new file mode 100644 index 0000000..d41b245 --- /dev/null +++ b/docs/html/utils_8h_source.html @@ -0,0 +1,173 @@ + + + + + + + +LightHub: /Users/andrey/Documents/Arduino/lighthub/lighthub/utils.h Source File + + + + + + + + + +
    +
    + + + + + + + +
    +
    LightHub +
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    utils.h
    +
    +
    +Go to the documentation of this file.
    1 /* Copyright © 2017-2018 Andrey Klimov. All rights reserved.
    +
    2 
    +
    3 Licensed under the Apache License, Version 2.0 (the "License");
    +
    4 you may not use this file except in compliance with the License.
    +
    5 You may obtain a copy of the License at
    +
    6 
    +
    7  http://www.apache.org/licenses/LICENSE-2.0
    +
    8 
    +
    9 Unless required by applicable law or agreed to in writing, software
    +
    10 distributed under the License is distributed on an "AS IS" BASIS,
    +
    11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    +
    12 See the License for the specific language governing permissions and
    +
    13 limitations under the License.
    +
    14 
    +
    15 Homepage: http://lazyhome.ru
    +
    16 GIT: https://github.com/anklimov/lighthub
    +
    17 e-mail anklimov@gmail.com
    +
    18 
    +
    19 */
    +
    20 #pragma once
    +
    21 
    +
    22 #define Q(x) #x
    +
    23 #define QUOTE(x) Q(x)
    +
    24 #define VALUE_TO_STRING(x) #x
    +
    25 #define VALUE(x) VALUE_TO_STRING(x)
    +
    26 #define VAR_NAME_VALUE(var) #var "=" VALUE(var)
    +
    27 
    +
    28 #include <Arduino.h>
    +
    29 #include <IPAddress.h>
    +
    30 #include "aJSON.h"
    +
    31 #include "options.h"
    +
    32 #include "item.h"
    +
    33 #ifdef WITH_PRINTEX_LIB
    +
    34 #include "PrintEx.h"
    +
    35 using namespace ios;
    +
    36 #else
    +
    37 #include "Streaming.h"
    +
    38 #endif
    +
    39 
    +
    40 enum topicType {
    +
    41  T_DEV = 1,
    +
    42  T_BCST= 2,
    +
    43  T_OUT = 3
    +
    44  };
    +
    45 
    +
    46 void PrintBytes(uint8_t* addr, uint8_t count, bool newline);
    +
    47 void SetBytes(uint8_t* addr, uint8_t count, char * out);
    +
    48 void SetAddr(char * out, uint8_t* addr);
    +
    49 uint8_t HEX2DEC(char i);
    +
    50 int getInt(char ** chan);
    +
    51 unsigned long freeRam ();
    +
    52 void parseBytes(const char* str, char separator, byte* bytes, int maxBytes, int base);
    +
    53 int log(const char *str, ...);
    +
    54 void printFloatValueToStr(float value, char *valstr);
    +
    55 void ReadUniqueID( uint32_t * pdwUniqueID );
    +
    56 int inet_aton(const char* aIPAddrString, IPAddress& aResult);
    +
    57 char *inet_ntoa_r(IPAddress addr, char *buf, int buflen);
    +
    58 void printIPAddress(IPAddress ipAddress);
    +
    59 char* setTopic(char* buf, int8_t buflen, topicType tt, const char* suffix = NULL);
    +
    60 void printUlongValueToStr(char *valstr, unsigned long value);
    +
    61 void scan_i2c_bus();
    + +
    63 bool isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo = 0xFFFFFFFF);
    +
    64 //bool executeCommand(aJsonObject* cmd, int8_t toggle = -1, char* defCmd = NULL);
    +
    65 bool executeCommand(aJsonObject* cmd, int8_t toggle = -1);
    +
    66 bool executeCommand(aJsonObject* cmd, int8_t toggle, itemCmd _itemCmd);
    +
    67 itemCmd mapInt(int32_t arg, aJsonObject* map);
    +
    +
    void ReadUniqueID(uint32_t *pdwUniqueID)
    +
    bool executeCommand(aJsonObject *cmd, int8_t toggle=-1)
    Definition: utils.cpp:526
    +
    Definition: itemCmd.h:174
    +
    unsigned long freeRam()
    +
    bool isTimeOver(uint32_t timestamp, uint32_t currTime, uint32_t time, uint32_t modulo=0xFFFFFFFF)
    Definition: utils.cpp:516
    +
    uint8_t HEX2DEC(char i)
    Definition: utils.cpp:74
    +
    void scan_i2c_bus()
    Definition: utils.cpp:450
    +
    @ T_BCST
    Definition: utils.h:42
    +
    void SetAddr(char *out, uint8_t *addr)
    Definition: utils.cpp:82
    + +
    @ T_OUT
    Definition: utils.h:43
    +
    void SetBytes(uint8_t *addr, uint8_t count, char *out)
    Definition: utils.cpp:63
    +
    @ T_DEV
    Definition: utils.h:41
    +
    itemCmd mapInt(int32_t arg, aJsonObject *map)
    Definition: utils.cpp:626
    +
    topicType
    Definition: utils.h:40
    +
    void parseBytes(const char *str, char separator, byte *bytes, int maxBytes, int base)
    Definition: utils.cpp:170
    +
    int getInt(char **chan)
    Definition: utils.cpp:92
    +
    int log(const char *str,...)
    Definition: utils.cpp:201
    +
    char * inet_ntoa_r(IPAddress addr, char *buf, int buflen)
    Definition: utils.cpp:362
    +
    int inet_aton(const char *aIPAddrString, IPAddress &aResult)
    Definition: utils.cpp:292
    +
    void printFloatValueToStr(float value, char *valstr)
    Definition: utils.cpp:182
    +
    void printUlongValueToStr(char *valstr, unsigned long value)
    Definition: utils.cpp:434
    +
    void printIPAddress(IPAddress ipAddress)
    Definition: utils.cpp:379
    +
    void softRebootFunc()
    +
    void PrintBytes(uint8_t *addr, uint8_t count, bool newline)
    Definition: utils.cpp:52
    + +
    char * setTopic(char *buf, int8_t buflen, topicType tt, const char *suffix=NULL)
    Definition: utils.cpp:389
    + + + + diff --git a/docs/latex/Makefile b/docs/latex/Makefile new file mode 100644 index 0000000..877c9cc --- /dev/null +++ b/docs/latex/Makefile @@ -0,0 +1,23 @@ +LATEX_CMD=pdflatex + +all: refman.pdf + +pdf: refman.pdf + +refman.pdf: clean refman.tex + $(LATEX_CMD) refman + makeindex refman.idx + $(LATEX_CMD) refman + latex_count=8 ; \ + while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\ + do \ + echo "Rerunning latex...." ;\ + $(LATEX_CMD) refman ;\ + latex_count=`expr $$latex_count - 1` ;\ + done + makeindex refman.idx + $(LATEX_CMD) refman + + +clean: + rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf diff --git a/docs/latex/abstractch_8cpp.tex b/docs/latex/abstractch_8cpp.tex new file mode 100644 index 0000000..61002ca --- /dev/null +++ b/docs/latex/abstractch_8cpp.tex @@ -0,0 +1,37 @@ +\hypertarget{abstractch_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/abstractch.cpp File Reference} +\label{abstractch_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.cpp}} +{\ttfamily \#include \char`\"{}abstractch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$a\+J\+S\+O\+N.\+h$>$}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{abstractch_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}{lan\+Status}} +\item +Pub\+Sub\+Client \mbox{\hyperlink{abstractch_8cpp_a86d63f481644da70f063c2593fcafe19}{mqtt\+Client}} +\item +int8\+\_\+t \mbox{\hyperlink{abstractch_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}{ethernet\+Idle\+Count}} +\end{DoxyCompactItemize} + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{abstractch_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}\label{abstractch_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}} +\index{abstractch.cpp@{abstractch.cpp}!ethernetIdleCount@{ethernetIdleCount}} +\index{ethernetIdleCount@{ethernetIdleCount}!abstractch.cpp@{abstractch.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdleCount}{ethernetIdleCount}} +{\footnotesize\ttfamily int8\+\_\+t ethernet\+Idle\+Count\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{abstractch_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}\label{abstractch_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}} +\index{abstractch.cpp@{abstractch.cpp}!lanStatus@{lanStatus}} +\index{lanStatus@{lanStatus}!abstractch.cpp@{abstractch.cpp}} +\doxysubsubsection{\texorpdfstring{lanStatus}{lanStatus}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Status\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{abstractch_8cpp_a86d63f481644da70f063c2593fcafe19}\label{abstractch_8cpp_a86d63f481644da70f063c2593fcafe19}} +\index{abstractch.cpp@{abstractch.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!abstractch.cpp@{abstractch.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient}{mqttClient}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/abstractch_8h.tex b/docs/latex/abstractch_8h.tex new file mode 100644 index 0000000..504891b --- /dev/null +++ b/docs/latex/abstractch_8h.tex @@ -0,0 +1,38 @@ +\hypertarget{abstractch_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/abstractch.h File Reference} +\label{abstractch_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractch.h}} +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classabstract_ch}{abstract\+Ch}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{abstractch_8h_ad5c9fbfc15fa16113c539de3867f54fc}{C\+S\+T\+\_\+\+U\+N\+K\+N\+O\+WN}}~0 +\item +\#define \mbox{\hyperlink{abstractch_8h_ab7dea1d4d49f436619dd52ce3da0d6c3}{C\+S\+T\+\_\+\+I\+N\+I\+T\+I\+A\+L\+I\+Z\+ED}}~1 +\item +\#define \mbox{\hyperlink{abstractch_8h_adcf23ecf1f6e4dbc5a6780645425399e}{C\+S\+T\+\_\+\+F\+A\+I\+L\+ED}}~2 +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{abstractch_8h_adcf23ecf1f6e4dbc5a6780645425399e}\label{abstractch_8h_adcf23ecf1f6e4dbc5a6780645425399e}} +\index{abstractch.h@{abstractch.h}!CST\_FAILED@{CST\_FAILED}} +\index{CST\_FAILED@{CST\_FAILED}!abstractch.h@{abstractch.h}} +\doxysubsubsection{\texorpdfstring{CST\_FAILED}{CST\_FAILED}} +{\footnotesize\ttfamily \#define C\+S\+T\+\_\+\+F\+A\+I\+L\+ED~2} + +\mbox{\Hypertarget{abstractch_8h_ab7dea1d4d49f436619dd52ce3da0d6c3}\label{abstractch_8h_ab7dea1d4d49f436619dd52ce3da0d6c3}} +\index{abstractch.h@{abstractch.h}!CST\_INITIALIZED@{CST\_INITIALIZED}} +\index{CST\_INITIALIZED@{CST\_INITIALIZED}!abstractch.h@{abstractch.h}} +\doxysubsubsection{\texorpdfstring{CST\_INITIALIZED}{CST\_INITIALIZED}} +{\footnotesize\ttfamily \#define C\+S\+T\+\_\+\+I\+N\+I\+T\+I\+A\+L\+I\+Z\+ED~1} + +\mbox{\Hypertarget{abstractch_8h_ad5c9fbfc15fa16113c539de3867f54fc}\label{abstractch_8h_ad5c9fbfc15fa16113c539de3867f54fc}} +\index{abstractch.h@{abstractch.h}!CST\_UNKNOWN@{CST\_UNKNOWN}} +\index{CST\_UNKNOWN@{CST\_UNKNOWN}!abstractch.h@{abstractch.h}} +\doxysubsubsection{\texorpdfstring{CST\_UNKNOWN}{CST\_UNKNOWN}} +{\footnotesize\ttfamily \#define C\+S\+T\+\_\+\+U\+N\+K\+N\+O\+WN~0} + diff --git a/docs/latex/abstractin_8cpp.tex b/docs/latex/abstractin_8cpp.tex new file mode 100644 index 0000000..358c00c --- /dev/null +++ b/docs/latex/abstractin_8cpp.tex @@ -0,0 +1,31 @@ +\hypertarget{abstractin_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/abstractin.cpp File Reference} +\label{abstractin_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.cpp}} +{\ttfamily \#include \char`\"{}abstractin.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}abstractch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$a\+J\+S\+O\+N.\+h$>$}\newline +{\ttfamily \#include \char`\"{}inputs.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{abstractin_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}{lan\+Status}} +\item +Pub\+Sub\+Client \mbox{\hyperlink{abstractin_8cpp_a86d63f481644da70f063c2593fcafe19}{mqtt\+Client}} +\end{DoxyCompactItemize} + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{abstractin_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}\label{abstractin_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}} +\index{abstractin.cpp@{abstractin.cpp}!lanStatus@{lanStatus}} +\index{lanStatus@{lanStatus}!abstractin.cpp@{abstractin.cpp}} +\doxysubsubsection{\texorpdfstring{lanStatus}{lanStatus}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Status\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{abstractin_8cpp_a86d63f481644da70f063c2593fcafe19}\label{abstractin_8cpp_a86d63f481644da70f063c2593fcafe19}} +\index{abstractin.cpp@{abstractin.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!abstractin.cpp@{abstractin.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient}{mqttClient}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/abstractin_8h.tex b/docs/latex/abstractin_8h.tex new file mode 100644 index 0000000..52dffa7 --- /dev/null +++ b/docs/latex/abstractin_8h.tex @@ -0,0 +1,9 @@ +\hypertarget{abstractin_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/abstractin.h File Reference} +\label{abstractin_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractin.h}} +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}abstractch.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classabstract_in}{abstract\+In}} +\end{DoxyCompactItemize} diff --git a/docs/latex/abstractout_8h.tex b/docs/latex/abstractout_8h.tex new file mode 100644 index 0000000..27da7e9 --- /dev/null +++ b/docs/latex/abstractout_8h.tex @@ -0,0 +1,12 @@ +\hypertarget{abstractout_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/abstractout.h File Reference} +\label{abstractout_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/abstractout.h}} +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}abstractch.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item\+Cmd.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classch_persistent}{ch\+Persistent}} +\item +class \mbox{\hyperlink{classabstract_out}{abstract\+Out}} +\end{DoxyCompactItemize} diff --git a/docs/latex/annotated.tex b/docs/latex/annotated.tex new file mode 100644 index 0000000..e672e30 --- /dev/null +++ b/docs/latex/annotated.tex @@ -0,0 +1,29 @@ +\doxysection{Class List} +Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{\mbox{\hyperlink{classabstract_ch}{abstract\+Ch}} }{\pageref{classabstract_ch}}{} +\item\contentsline{section}{\mbox{\hyperlink{classabstract_in}{abstract\+In}} }{\pageref{classabstract_in}}{} +\item\contentsline{section}{\mbox{\hyperlink{classabstract_out}{abstract\+Out}} }{\pageref{classabstract_out}}{} +\item\contentsline{section}{\mbox{\hyperlink{classch_persistent}{ch\+Persistent}} }{\pageref{classch_persistent}}{} +\item\contentsline{section}{\mbox{\hyperlink{classcolor_channel}{color\+Channel}} }{\pageref{classcolor_channel}}{} +\item\contentsline{section}{\mbox{\hyperlink{classin__ccs811}{in\+\_\+ccs811}} }{\pageref{classin__ccs811}}{} +\item\contentsline{section}{\mbox{\hyperlink{classin__hdc1080}{in\+\_\+hdc1080}} }{\pageref{classin__hdc1080}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_input}{Input}} }{\pageref{class_input}}{} +\item\contentsline{section}{\mbox{\hyperlink{unionin_store}{in\+Store}} }{\pageref{unionin_store}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_item}{Item}} }{\pageref{class_item}}{} +\item\contentsline{section}{\mbox{\hyperlink{unionitem_arg_store}{item\+Arg\+Store}} }{\pageref{unionitem_arg_store}}{} +\item\contentsline{section}{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} }{\pageref{classitem_cmd}}{} +\item\contentsline{section}{\mbox{\hyperlink{unionitem_cmd_store}{item\+Cmd\+Store}} }{\pageref{unionitem_cmd_store}}{} +\item\contentsline{section}{\mbox{\hyperlink{classmb_persistent}{mb\+Persistent}} }{\pageref{classmb_persistent}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout___a_c}{out\+\_\+\+AC}} }{\pageref{classout___a_c}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout__dmx}{out\+\_\+dmx}} }{\pageref{classout__dmx}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout___modbus}{out\+\_\+\+Modbus}} }{\pageref{classout___modbus}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout___motor}{out\+\_\+\+Motor}} }{\pageref{classout___motor}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout__pwm}{out\+\_\+pwm}} }{\pageref{classout__pwm}}{} +\item\contentsline{section}{\mbox{\hyperlink{classout___s_p_i_led}{out\+\_\+\+S\+P\+I\+Led}} }{\pageref{classout___s_p_i_led}}{} +\item\contentsline{section}{\mbox{\hyperlink{classread_cache}{read\+Cache}} }{\pageref{classread_cache}}{} +\item\contentsline{section}{\mbox{\hyperlink{structreg__t}{reg\+\_\+t}} }{\pageref{structreg__t}}{} +\item\contentsline{section}{\mbox{\hyperlink{structserial__t}{serial\+\_\+t}} }{\pageref{structserial__t}}{} +\item\contentsline{section}{\mbox{\hyperlink{classstatus_l_e_d}{status\+L\+ED}} }{\pageref{classstatus_l_e_d}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_streamlog}{Streamlog}} }{\pageref{class_streamlog}}{} +\item\contentsline{section}{\mbox{\hyperlink{union_u_i_d}{U\+ID}} }{\pageref{union_u_i_d}}{} +\end{DoxyCompactList} diff --git a/docs/latex/bright_8cpp.tex b/docs/latex/bright_8cpp.tex new file mode 100644 index 0000000..6b21b8e --- /dev/null +++ b/docs/latex/bright_8cpp.tex @@ -0,0 +1,25 @@ +\hypertarget{bright_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/bright.cpp File Reference} +\label{bright_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/bright.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/bright.cpp}} +{\ttfamily \#include \char`\"{}bright.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +uint8\+\_\+t \mbox{\hyperlink{bright_8cpp_a773d31bb10e0abdf91e078da4326b7b0}{get\+Bright}} (uint8\+\_\+t percent) +\item +uint8\+\_\+t \mbox{\hyperlink{bright_8cpp_a1707bc1c6aa92f67ef5a4456cbbec0c3}{get\+Bright255}} (uint8\+\_\+t percent) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{bright_8cpp_a773d31bb10e0abdf91e078da4326b7b0}\label{bright_8cpp_a773d31bb10e0abdf91e078da4326b7b0}} +\index{bright.cpp@{bright.cpp}!getBright@{getBright}} +\index{getBright@{getBright}!bright.cpp@{bright.cpp}} +\doxysubsubsection{\texorpdfstring{getBright()}{getBright()}} +{\footnotesize\ttfamily uint8\+\_\+t get\+Bright (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{percent }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{bright_8cpp_a1707bc1c6aa92f67ef5a4456cbbec0c3}\label{bright_8cpp_a1707bc1c6aa92f67ef5a4456cbbec0c3}} +\index{bright.cpp@{bright.cpp}!getBright255@{getBright255}} +\index{getBright255@{getBright255}!bright.cpp@{bright.cpp}} +\doxysubsubsection{\texorpdfstring{getBright255()}{getBright255()}} +{\footnotesize\ttfamily uint8\+\_\+t get\+Bright255 (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{percent }\end{DoxyParamCaption})} + diff --git a/docs/latex/bright_8h.tex b/docs/latex/bright_8h.tex new file mode 100644 index 0000000..5bb8b4e --- /dev/null +++ b/docs/latex/bright_8h.tex @@ -0,0 +1,39 @@ +\hypertarget{bright_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/bright.h File Reference} +\label{bright_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/bright.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/bright.h}} +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{bright_8h_a745288b6f8ea74e7efe2e7044f7d94d8}{B\+R\+I\+G\+H\+T\+\_\+\+L\+I\+N\+E\+AR}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +uint8\+\_\+t \mbox{\hyperlink{bright_8h_a773d31bb10e0abdf91e078da4326b7b0}{get\+Bright}} (uint8\+\_\+t percent) +\item +uint8\+\_\+t \mbox{\hyperlink{bright_8h_a1707bc1c6aa92f67ef5a4456cbbec0c3}{get\+Bright255}} (uint8\+\_\+t percent) +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{bright_8h_a745288b6f8ea74e7efe2e7044f7d94d8}\label{bright_8h_a745288b6f8ea74e7efe2e7044f7d94d8}} +\index{bright.h@{bright.h}!BRIGHT\_LINEAR@{BRIGHT\_LINEAR}} +\index{BRIGHT\_LINEAR@{BRIGHT\_LINEAR}!bright.h@{bright.h}} +\doxysubsubsection{\texorpdfstring{BRIGHT\_LINEAR}{BRIGHT\_LINEAR}} +{\footnotesize\ttfamily \#define B\+R\+I\+G\+H\+T\+\_\+\+L\+I\+N\+E\+AR} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{bright_8h_a773d31bb10e0abdf91e078da4326b7b0}\label{bright_8h_a773d31bb10e0abdf91e078da4326b7b0}} +\index{bright.h@{bright.h}!getBright@{getBright}} +\index{getBright@{getBright}!bright.h@{bright.h}} +\doxysubsubsection{\texorpdfstring{getBright()}{getBright()}} +{\footnotesize\ttfamily uint8\+\_\+t get\+Bright (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{percent }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{bright_8h_a1707bc1c6aa92f67ef5a4456cbbec0c3}\label{bright_8h_a1707bc1c6aa92f67ef5a4456cbbec0c3}} +\index{bright.h@{bright.h}!getBright255@{getBright255}} +\index{getBright255@{getBright255}!bright.h@{bright.h}} +\doxysubsubsection{\texorpdfstring{getBright255()}{getBright255()}} +{\footnotesize\ttfamily uint8\+\_\+t get\+Bright255 (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{percent }\end{DoxyParamCaption})} + diff --git a/docs/latex/class_input.tex b/docs/latex/class_input.tex new file mode 100644 index 0000000..abc7963 --- /dev/null +++ b/docs/latex/class_input.tex @@ -0,0 +1,273 @@ +\hypertarget{class_input}{}\doxysection{Input Class Reference} +\label{class_input}\index{Input@{Input}} + + +{\ttfamily \#include $<$inputs.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_input_a52d1d1d4eb7890e186fa0faa11636b82}{Input}} (a\+Json\+Object $\ast$obj, a\+Json\+Object $\ast$config\+Obj=N\+U\+LL) +\item +\mbox{\hyperlink{class_input_adae232acc9d1e127947a8b09f1665fb2}{Input}} (char $\ast$name) +\item +boolean \mbox{\hyperlink{class_input_a2e60007024a65b9529d8db1873bf8696}{is\+Valid}} () +\item +void \mbox{\hyperlink{class_input_a2e0c2008fce8f2730ef3126ff1d8893e}{on\+Contact\+Changed}} (int new\+Value) +\item +void \mbox{\hyperlink{class_input_a121247eaf2f413135f0340df17015492}{on\+Analog\+Changed}} (float new\+Value) +\item +int \mbox{\hyperlink{class_input_a34b0da23df4e0c2be07e5358a974f6b3}{Poll}} (short cause) +\item +void \mbox{\hyperlink{class_input_af875dd162373e90e21f8213f928f8032}{setup}} () +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Member Functions} +\begin{DoxyCompactItemize} +\item +static void \mbox{\hyperlink{class_input_a2b60992464aa56f75c9d02b8b2084f8e}{on\+Counter\+Changed}} (int i) +\item +static void \mbox{\hyperlink{class_input_a85c108932af16f55722b8ccec2b72fb5}{on\+Counter\+Changed0}} () +\item +static void \mbox{\hyperlink{class_input_a36b4ed46c94a5194e74c2106bb29deaa}{on\+Counter\+Changed1}} () +\item +static void \mbox{\hyperlink{class_input_a8def9079b3f0774a05860a17a4b51b29}{on\+Counter\+Changed2}} () +\item +static void \mbox{\hyperlink{class_input_adc8477b21452dd8b1f4bf1f3de35ecc4}{on\+Counter\+Changed3}} () +\item +static void \mbox{\hyperlink{class_input_a6fcea89328a3bcf97dad383b7b615a5a}{on\+Counter\+Changed4}} () +\item +static void \mbox{\hyperlink{class_input_a5611409d1de5bff2e6e59b9395809ecd}{on\+Counter\+Changed5}} () +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{class_input_a4dbfdd3e7da95a3d4873286da07733f2}{input\+Obj}} +\item +uint8\+\_\+t \mbox{\hyperlink{class_input_a0354094b474b7b9fa305bfc3500d3cee}{in\+Type}} +\item +uint8\+\_\+t \mbox{\hyperlink{class_input_a910d1942c02b2d155dbaa3c8a41876f5}{pin}} +\item +\mbox{\hyperlink{unionin_store}{in\+Store}} $\ast$ \mbox{\hyperlink{class_input_a2c8307bf192b3e07bbc7cd605efeeb81}{store}} +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{class_input_aad974cff366f73924458d105b88130d4}{Parse}} (a\+Json\+Object $\ast$config\+Obj=N\+U\+LL) +\item +void \mbox{\hyperlink{class_input_a48dfeb886a0927b60d3200bbdea5765a}{contact\+Poll}} (short cause) +\item +void \mbox{\hyperlink{class_input_acb26235ba50553fa073a95096ebbbc69}{analog\+Poll}} (short cause) +\item +void \mbox{\hyperlink{class_input_a70568f40b1008c2f5fdf378ada26a5c4}{dht22\+Poll}} () +\item +void \mbox{\hyperlink{class_input_a347f052d5de6b996d7e6cf4ac83485d9}{counter\+Poll}} () +\item +void \mbox{\hyperlink{class_input_ab272ddf677bc7ebaa20c0a8677b49b80}{attach\+Interrupt\+Pin\+Irq}} (int real\+Pin, int irq) +\item +unsigned long \mbox{\hyperlink{class_input_ad7e0d37e4f0cca8117a1fad077e4d4a7}{next\+Poll\+Time}} () const +\item +void \mbox{\hyperlink{class_input_a8efca39cb91c24dc80a62d660fd9ea2a}{set\+Next\+Poll\+Time}} (unsigned long poll\+Time) +\item +void \mbox{\hyperlink{class_input_a3d224f0fd4da038390abaa8f84478d5c}{uptime\+Poll}} () +\item +bool \mbox{\hyperlink{class_input_ab48ae5515b6a332b518a06e5bb10926a}{publish\+Data\+To\+Domoticz}} (int, a\+Json\+Object $\ast$, const char $\ast$format,...) +\item +char $\ast$ \mbox{\hyperlink{class_input_a0697613f4b723bdb63e8c5510f85b9c6}{get\+Idx\+Field}} () +\item +bool \mbox{\hyperlink{class_input_a08323a44c2d4ca714e4e6a14ae73fc4f}{change\+State}} (uint8\+\_\+t new\+State, short cause) +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_input_a52d1d1d4eb7890e186fa0faa11636b82}\label{class_input_a52d1d1d4eb7890e186fa0faa11636b82}} +\index{Input@{Input}!Input@{Input}} +\index{Input@{Input}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{Input()}{Input()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Input\+::\+Input (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{obj, }\item[{a\+Json\+Object $\ast$}]{config\+Obj = {\ttfamily NULL} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_adae232acc9d1e127947a8b09f1665fb2}\label{class_input_adae232acc9d1e127947a8b09f1665fb2}} +\index{Input@{Input}!Input@{Input}} +\index{Input@{Input}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{Input()}{Input()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Input\+::\+Input (\begin{DoxyParamCaption}\item[{char $\ast$}]{name }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_input_acb26235ba50553fa073a95096ebbbc69}\label{class_input_acb26235ba50553fa073a95096ebbbc69}} +\index{Input@{Input}!analogPoll@{analogPoll}} +\index{analogPoll@{analogPoll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{analogPoll()}{analogPoll()}} +{\footnotesize\ttfamily void Input\+::analog\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_ab272ddf677bc7ebaa20c0a8677b49b80}\label{class_input_ab272ddf677bc7ebaa20c0a8677b49b80}} +\index{Input@{Input}!attachInterruptPinIrq@{attachInterruptPinIrq}} +\index{attachInterruptPinIrq@{attachInterruptPinIrq}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{attachInterruptPinIrq()}{attachInterruptPinIrq()}} +{\footnotesize\ttfamily void Input\+::attach\+Interrupt\+Pin\+Irq (\begin{DoxyParamCaption}\item[{int}]{real\+Pin, }\item[{int}]{irq }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a08323a44c2d4ca714e4e6a14ae73fc4f}\label{class_input_a08323a44c2d4ca714e4e6a14ae73fc4f}} +\index{Input@{Input}!changeState@{changeState}} +\index{changeState@{changeState}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{changeState()}{changeState()}} +{\footnotesize\ttfamily bool Input\+::change\+State (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{new\+State, }\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a48dfeb886a0927b60d3200bbdea5765a}\label{class_input_a48dfeb886a0927b60d3200bbdea5765a}} +\index{Input@{Input}!contactPoll@{contactPoll}} +\index{contactPoll@{contactPoll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{contactPoll()}{contactPoll()}} +{\footnotesize\ttfamily void Input\+::contact\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a347f052d5de6b996d7e6cf4ac83485d9}\label{class_input_a347f052d5de6b996d7e6cf4ac83485d9}} +\index{Input@{Input}!counterPoll@{counterPoll}} +\index{counterPoll@{counterPoll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{counterPoll()}{counterPoll()}} +{\footnotesize\ttfamily void Input\+::counter\+Poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a70568f40b1008c2f5fdf378ada26a5c4}\label{class_input_a70568f40b1008c2f5fdf378ada26a5c4}} +\index{Input@{Input}!dht22Poll@{dht22Poll}} +\index{dht22Poll@{dht22Poll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{dht22Poll()}{dht22Poll()}} +{\footnotesize\ttfamily void Input\+::dht22\+Poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a0697613f4b723bdb63e8c5510f85b9c6}\label{class_input_a0697613f4b723bdb63e8c5510f85b9c6}} +\index{Input@{Input}!getIdxField@{getIdxField}} +\index{getIdxField@{getIdxField}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{getIdxField()}{getIdxField()}} +{\footnotesize\ttfamily char $\ast$ Input\+::get\+Idx\+Field (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a2e60007024a65b9529d8db1873bf8696}\label{class_input_a2e60007024a65b9529d8db1873bf8696}} +\index{Input@{Input}!isValid@{isValid}} +\index{isValid@{isValid}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{isValid()}{isValid()}} +{\footnotesize\ttfamily boolean Input\+::is\+Valid (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_ad7e0d37e4f0cca8117a1fad077e4d4a7}\label{class_input_ad7e0d37e4f0cca8117a1fad077e4d4a7}} +\index{Input@{Input}!nextPollTime@{nextPollTime}} +\index{nextPollTime@{nextPollTime}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{nextPollTime()}{nextPollTime()}} +{\footnotesize\ttfamily unsigned long Input\+::next\+Poll\+Time (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a121247eaf2f413135f0340df17015492}\label{class_input_a121247eaf2f413135f0340df17015492}} +\index{Input@{Input}!onAnalogChanged@{onAnalogChanged}} +\index{onAnalogChanged@{onAnalogChanged}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onAnalogChanged()}{onAnalogChanged()}} +{\footnotesize\ttfamily void Input\+::on\+Analog\+Changed (\begin{DoxyParamCaption}\item[{float}]{new\+Value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_a2e0c2008fce8f2730ef3126ff1d8893e}\label{class_input_a2e0c2008fce8f2730ef3126ff1d8893e}} +\index{Input@{Input}!onContactChanged@{onContactChanged}} +\index{onContactChanged@{onContactChanged}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onContactChanged()}{onContactChanged()}} +{\footnotesize\ttfamily void Input\+::on\+Contact\+Changed (\begin{DoxyParamCaption}\item[{int}]{new\+Value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_a2b60992464aa56f75c9d02b8b2084f8e}\label{class_input_a2b60992464aa56f75c9d02b8b2084f8e}} +\index{Input@{Input}!onCounterChanged@{onCounterChanged}} +\index{onCounterChanged@{onCounterChanged}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged()}{onCounterChanged()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed (\begin{DoxyParamCaption}\item[{int}]{i }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_a85c108932af16f55722b8ccec2b72fb5}\label{class_input_a85c108932af16f55722b8ccec2b72fb5}} +\index{Input@{Input}!onCounterChanged0@{onCounterChanged0}} +\index{onCounterChanged0@{onCounterChanged0}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged0()}{onCounterChanged0()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed0 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_a36b4ed46c94a5194e74c2106bb29deaa}\label{class_input_a36b4ed46c94a5194e74c2106bb29deaa}} +\index{Input@{Input}!onCounterChanged1@{onCounterChanged1}} +\index{onCounterChanged1@{onCounterChanged1}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged1()}{onCounterChanged1()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed1 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_a8def9079b3f0774a05860a17a4b51b29}\label{class_input_a8def9079b3f0774a05860a17a4b51b29}} +\index{Input@{Input}!onCounterChanged2@{onCounterChanged2}} +\index{onCounterChanged2@{onCounterChanged2}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged2()}{onCounterChanged2()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed2 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_adc8477b21452dd8b1f4bf1f3de35ecc4}\label{class_input_adc8477b21452dd8b1f4bf1f3de35ecc4}} +\index{Input@{Input}!onCounterChanged3@{onCounterChanged3}} +\index{onCounterChanged3@{onCounterChanged3}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged3()}{onCounterChanged3()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed3 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_a6fcea89328a3bcf97dad383b7b615a5a}\label{class_input_a6fcea89328a3bcf97dad383b7b615a5a}} +\index{Input@{Input}!onCounterChanged4@{onCounterChanged4}} +\index{onCounterChanged4@{onCounterChanged4}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged4()}{onCounterChanged4()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed4 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_a5611409d1de5bff2e6e59b9395809ecd}\label{class_input_a5611409d1de5bff2e6e59b9395809ecd}} +\index{Input@{Input}!onCounterChanged5@{onCounterChanged5}} +\index{onCounterChanged5@{onCounterChanged5}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{onCounterChanged5()}{onCounterChanged5()}} +{\footnotesize\ttfamily void Input\+::on\+Counter\+Changed5 (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_input_aad974cff366f73924458d105b88130d4}\label{class_input_aad974cff366f73924458d105b88130d4}} +\index{Input@{Input}!Parse@{Parse}} +\index{Parse@{Parse}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{Parse()}{Parse()}} +{\footnotesize\ttfamily void Input\+::\+Parse (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{config\+Obj = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a34b0da23df4e0c2be07e5358a974f6b3}\label{class_input_a34b0da23df4e0c2be07e5358a974f6b3}} +\index{Input@{Input}!Poll@{Poll}} +\index{Poll@{Poll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int Input\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_ab48ae5515b6a332b518a06e5bb10926a}\label{class_input_ab48ae5515b6a332b518a06e5bb10926a}} +\index{Input@{Input}!publishDataToDomoticz@{publishDataToDomoticz}} +\index{publishDataToDomoticz@{publishDataToDomoticz}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{publishDataToDomoticz()}{publishDataToDomoticz()}} +{\footnotesize\ttfamily bool Input\+::publish\+Data\+To\+Domoticz (\begin{DoxyParamCaption}\item[{int}]{poll\+Time\+Increment, }\item[{a\+Json\+Object $\ast$}]{emit, }\item[{const char $\ast$}]{format, }\item[{}]{... }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_a8efca39cb91c24dc80a62d660fd9ea2a}\label{class_input_a8efca39cb91c24dc80a62d660fd9ea2a}} +\index{Input@{Input}!setNextPollTime@{setNextPollTime}} +\index{setNextPollTime@{setNextPollTime}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{setNextPollTime()}{setNextPollTime()}} +{\footnotesize\ttfamily void Input\+::set\+Next\+Poll\+Time (\begin{DoxyParamCaption}\item[{unsigned long}]{poll\+Time }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_input_af875dd162373e90e21f8213f928f8032}\label{class_input_af875dd162373e90e21f8213f928f8032}} +\index{Input@{Input}!setup@{setup}} +\index{setup@{setup}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{setup()}{setup()}} +{\footnotesize\ttfamily void Input\+::setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_input_a3d224f0fd4da038390abaa8f84478d5c}\label{class_input_a3d224f0fd4da038390abaa8f84478d5c}} +\index{Input@{Input}!uptimePoll@{uptimePoll}} +\index{uptimePoll@{uptimePoll}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{uptimePoll()}{uptimePoll()}} +{\footnotesize\ttfamily void Input\+::uptime\+Poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_input_a4dbfdd3e7da95a3d4873286da07733f2}\label{class_input_a4dbfdd3e7da95a3d4873286da07733f2}} +\index{Input@{Input}!inputObj@{inputObj}} +\index{inputObj@{inputObj}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{inputObj}{inputObj}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ Input\+::input\+Obj} + +\mbox{\Hypertarget{class_input_a0354094b474b7b9fa305bfc3500d3cee}\label{class_input_a0354094b474b7b9fa305bfc3500d3cee}} +\index{Input@{Input}!inType@{inType}} +\index{inType@{inType}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{inType}{inType}} +{\footnotesize\ttfamily uint8\+\_\+t Input\+::in\+Type} + +\mbox{\Hypertarget{class_input_a910d1942c02b2d155dbaa3c8a41876f5}\label{class_input_a910d1942c02b2d155dbaa3c8a41876f5}} +\index{Input@{Input}!pin@{pin}} +\index{pin@{pin}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{pin}{pin}} +{\footnotesize\ttfamily uint8\+\_\+t Input\+::pin} + +\mbox{\Hypertarget{class_input_a2c8307bf192b3e07bbc7cd605efeeb81}\label{class_input_a2c8307bf192b3e07bbc7cd605efeeb81}} +\index{Input@{Input}!store@{store}} +\index{store@{store}!Input@{Input}} +\doxysubsubsection{\texorpdfstring{store}{store}} +{\footnotesize\ttfamily \mbox{\hyperlink{unionin_store}{in\+Store}}$\ast$ Input\+::store} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8h}{inputs.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8cpp}{inputs.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_item.tex b/docs/latex/class_item.tex new file mode 100644 index 0000000..2c98fc5 --- /dev/null +++ b/docs/latex/class_item.tex @@ -0,0 +1,447 @@ +\hypertarget{class_item}{}\doxysection{Item Class Reference} +\label{class_item}\index{Item@{Item}} + + +{\ttfamily \#include $<$item.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_item_ac6f9ffe686b184cd30fb9ff023af9d35}{Item}} (char $\ast$name) +\item +\mbox{\hyperlink{class_item_a8df555ab7f99a4bc363204c10d946934}{Item}} (a\+Json\+Object $\ast$obj) +\item +\mbox{\hyperlink{class_item_a11663c84075b78c3ae5e30fdfcd7c458}{$\sim$\+Item}} () +\item +boolean \mbox{\hyperlink{class_item_a3bbd12527ff3638189cae5291e578a96}{is\+Valid}} () +\item +boolean \mbox{\hyperlink{class_item_ae84f04e796546f4c34db79a060b0d443}{Setup}} () +\item +void \mbox{\hyperlink{class_item_ac382f69ca11e6eebfec1f40133fddd42}{Stop}} () +\item +int \mbox{\hyperlink{class_item_a821048224e300ab4bb9eb047bf859b2c}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL) +\item +int \mbox{\hyperlink{class_item_a51166376e10786d0daf684ea85988b75}{Ctrl}} (char $\ast$payload, char $\ast$sub\+Item=N\+U\+LL) +\item +int \mbox{\hyperlink{class_item_a04c95e83741aa896498ddbc869061886}{get\+Arg}} (short n=0) +\item +short \mbox{\hyperlink{class_item_a9469cc0bb8560eb5f669d54903186433}{get\+Arg\+Count}} () +\item +long int \mbox{\hyperlink{class_item_aba81303d678129315e393e11319b5ec5}{get\+Val}} () +\item +uint8\+\_\+t \mbox{\hyperlink{class_item_ad00923c702189ad97c6af2c3c20150fa}{get\+Subtype}} () +\item +uint8\+\_\+t \mbox{\hyperlink{class_item_a25cddf040ae48d36375e54eb7fb31cf1}{get\+Cmd}} () +\item +long int \mbox{\hyperlink{class_item_ab27cd47af857151cb695f7a4b4000424}{get\+Ext}} () +\item +void \mbox{\hyperlink{class_item_ad4e62aba1f62917a8df4c47c2894a3ad}{set\+Ext}} (long int par) +\item +\mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$ \mbox{\hyperlink{class_item_ad1c452e68967188402a96a687aba6af0}{get\+Persistent}} () +\item +\mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$ \mbox{\hyperlink{class_item_af023950bb9b9760b98c5de7287bc467d}{set\+Persistent}} (\mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$par) +\item +void \mbox{\hyperlink{class_item_a188910459fc0ded60ca268664bf9b212}{set\+Cmd}} (uint8\+\_\+t cmd\+Value) +\item +short \mbox{\hyperlink{class_item_a15e9623fffd070c01c3dd87b1cc09ab3}{get\+Flag}} (short flag=\mbox{\hyperlink{item_cmd_8h_a890221cb651a3f30f6d1bca0d9b0e13d}{F\+L\+A\+G\+\_\+\+M\+A\+SK}}) +\item +void \mbox{\hyperlink{class_item_abd22bfa75e71849cc0fadcee9eef330d}{set\+Flag}} (short flag) +\item +void \mbox{\hyperlink{class_item_a60c43acb3bd16c858ca4c1fa6b12145b}{clear\+Flag}} (short flag) +\item +void \mbox{\hyperlink{class_item_ad2a38c039f8b3cee14cb97c9526d9260}{set\+Val}} (long int par) +\item +void \mbox{\hyperlink{class_item_a47b261677ded48fb1c51088b9d956dcc}{set\+Subtype}} (uint8\+\_\+t par) +\item +int \mbox{\hyperlink{class_item_aaa6500d9cdb58f9b20f6c2592da40739}{Poll}} (int cause) +\item +int \mbox{\hyperlink{class_item_a525c4e3f723a85af5e818c1b5834e277}{Send\+Status}} (int send\+Flags) +\item +int \mbox{\hyperlink{class_item_a4db79caf8ace960c0bf74181c0bf5faa}{is\+Active}} () +\item +int \mbox{\hyperlink{class_item_af1a89a9947e7759ce74f17d614346f46}{get\+Chan\+Type}} () +\item +int \mbox{\hyperlink{class_item_ac6a08d4c2352fa1284c4039441e380c5}{On}} () +\item +int \mbox{\hyperlink{class_item_a7cc492ae708197b9426c45b15eda714d}{Off}} () +\item +int \mbox{\hyperlink{class_item_a5ddbe231ea061c1001436dd5d57cc97b}{Toggle}} () +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{class_item_a4332fe989485f159b4fefa871cc213b9}{item\+Arr}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{class_item_ab831f5a6f56b59761a8ee5dbf38c0999}{item\+Arg}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{class_item_aabf1180ef4ab072817a28020814bce48}{item\+Val}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{class_item_a39291138106342bc0d49ccfb125f7a95}{item\+Ext}} +\item +uint8\+\_\+t \mbox{\hyperlink{class_item_ae0bac41fded34ffbd1e3634e15772039}{item\+Type}} +\item +\mbox{\hyperlink{classabstract_out}{abstract\+Out}} $\ast$ \mbox{\hyperlink{class_item_a93f339d62018da733bd6147797388eb2}{driver}} +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{class_item_a127a28254a55fbd7fcbcd37816afe163}{Vacom\+Set\+Fan}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} st) +\item +int \mbox{\hyperlink{class_item_aa0f1f997dd794068562d43eb4a3911a6}{Vacom\+Set\+Heat}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} st) +\begin{DoxyCompactList}\small\item\em move to float todo \end{DoxyCompactList}\item +int \mbox{\hyperlink{class_item_a6a8cdb4d647ba278a55560cd91bfc031}{modbus\+Dimmer\+Set}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} st) +\item +int \mbox{\hyperlink{class_item_a77913c1f28d823b1a096369e69cc5072}{modbus\+Dimmer\+Set}} (int addr, uint16\+\_\+t \+\_\+reg, int \+\_\+reg\+Type, int \+\_\+mask, uint16\+\_\+t value) +\item +void \mbox{\hyperlink{class_item_a389156098d07ebdc5649668f61d87343}{mb\+\_\+fail}} () +\item +void \mbox{\hyperlink{class_item_abbcfb98227918e624be294409d21be3d}{Parse}} () +\item +int \mbox{\hyperlink{class_item_a899707e630b75eeb422fbc7ca3d829ce}{check\+Modbus\+Dimmer}} () +\item +int \mbox{\hyperlink{class_item_a2d807aa2a634312bde779e174e28c4ce}{check\+Modbus\+Dimmer}} (int \mbox{\hyperlink{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}{data}}) +\item +boolean \mbox{\hyperlink{class_item_a4454719134cb94ff27943cc35207fd74}{check\+Modbus\+Retry}} () +\item +boolean \mbox{\hyperlink{class_item_a353e817a01d39e0341fdc12b00351169}{check\+V\+C\+Retry}} () +\item +boolean \mbox{\hyperlink{class_item_a9fa6f17268398679295a57f7506089b8}{check\+Heat\+Retry}} () +\item +void \mbox{\hyperlink{class_item_af767f604dcaed8a497438255c28129fd}{send\+Delayed\+Status}} () +\item +int \mbox{\hyperlink{class_item_aac323dbba691d2a1ffd0b760fdc2198d}{check\+FM}} () +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +char \mbox{\hyperlink{class_item_a21371d449e5e6669b3f0eb0e080a7132}{default\+Sub\+Item}} \mbox{[}10\mbox{]} +\item +int \mbox{\hyperlink{class_item_a4ff75a860339d86b006960b750a593e6}{default\+Suffix\+Code}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_item_ac6f9ffe686b184cd30fb9ff023af9d35}\label{class_item_ac6f9ffe686b184cd30fb9ff023af9d35}} +\index{Item@{Item}!Item@{Item}} +\index{Item@{Item}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Item()}{Item()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Item\+::\+Item (\begin{DoxyParamCaption}\item[{char $\ast$}]{name }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a8df555ab7f99a4bc363204c10d946934}\label{class_item_a8df555ab7f99a4bc363204c10d946934}} +\index{Item@{Item}!Item@{Item}} +\index{Item@{Item}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Item()}{Item()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Item\+::\+Item (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{obj }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a11663c84075b78c3ae5e30fdfcd7c458}\label{class_item_a11663c84075b78c3ae5e30fdfcd7c458}} +\index{Item@{Item}!````~Item@{$\sim$Item}} +\index{````~Item@{$\sim$Item}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{$\sim$Item()}{~Item()}} +{\footnotesize\ttfamily Item\+::$\sim$\+Item (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_item_aac323dbba691d2a1ffd0b760fdc2198d}\label{class_item_aac323dbba691d2a1ffd0b760fdc2198d}} +\index{Item@{Item}!checkFM@{checkFM}} +\index{checkFM@{checkFM}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkFM()}{checkFM()}} +{\footnotesize\ttfamily int Item\+::check\+FM (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a9fa6f17268398679295a57f7506089b8}\label{class_item_a9fa6f17268398679295a57f7506089b8}} +\index{Item@{Item}!checkHeatRetry@{checkHeatRetry}} +\index{checkHeatRetry@{checkHeatRetry}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkHeatRetry()}{checkHeatRetry()}} +{\footnotesize\ttfamily boolean Item\+::check\+Heat\+Retry (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a899707e630b75eeb422fbc7ca3d829ce}\label{class_item_a899707e630b75eeb422fbc7ca3d829ce}} +\index{Item@{Item}!checkModbusDimmer@{checkModbusDimmer}} +\index{checkModbusDimmer@{checkModbusDimmer}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkModbusDimmer()}{checkModbusDimmer()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily int Item\+::check\+Modbus\+Dimmer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a2d807aa2a634312bde779e174e28c4ce}\label{class_item_a2d807aa2a634312bde779e174e28c4ce}} +\index{Item@{Item}!checkModbusDimmer@{checkModbusDimmer}} +\index{checkModbusDimmer@{checkModbusDimmer}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkModbusDimmer()}{checkModbusDimmer()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily int Item\+::check\+Modbus\+Dimmer (\begin{DoxyParamCaption}\item[{int}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a4454719134cb94ff27943cc35207fd74}\label{class_item_a4454719134cb94ff27943cc35207fd74}} +\index{Item@{Item}!checkModbusRetry@{checkModbusRetry}} +\index{checkModbusRetry@{checkModbusRetry}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkModbusRetry()}{checkModbusRetry()}} +{\footnotesize\ttfamily boolean Item\+::check\+Modbus\+Retry (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a353e817a01d39e0341fdc12b00351169}\label{class_item_a353e817a01d39e0341fdc12b00351169}} +\index{Item@{Item}!checkVCRetry@{checkVCRetry}} +\index{checkVCRetry@{checkVCRetry}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{checkVCRetry()}{checkVCRetry()}} +{\footnotesize\ttfamily boolean Item\+::check\+V\+C\+Retry (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a60c43acb3bd16c858ca4c1fa6b12145b}\label{class_item_a60c43acb3bd16c858ca4c1fa6b12145b}} +\index{Item@{Item}!clearFlag@{clearFlag}} +\index{clearFlag@{clearFlag}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{clearFlag()}{clearFlag()}} +{\footnotesize\ttfamily void Item\+::clear\+Flag (\begin{DoxyParamCaption}\item[{short}]{flag }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a51166376e10786d0daf684ea85988b75}\label{class_item_a51166376e10786d0daf684ea85988b75}} +\index{Item@{Item}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily int Item\+::\+Ctrl (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL} }\end{DoxyParamCaption})} + +possible problem here with truncated default\mbox{\Hypertarget{class_item_a821048224e300ab4bb9eb047bf859b2c}\label{class_item_a821048224e300ab4bb9eb047bf859b2c}} +\index{Item@{Item}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily int Item\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL} }\end{DoxyParamCaption})} + +possible problem here with truncated default + +thermo\+Set(name,cmd,\+Par1); all activities done -\/ update temp \& cmd\mbox{\Hypertarget{class_item_a04c95e83741aa896498ddbc869061886}\label{class_item_a04c95e83741aa896498ddbc869061886}} +\index{Item@{Item}!getArg@{getArg}} +\index{getArg@{getArg}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getArg()}{getArg()}} +{\footnotesize\ttfamily int Item\+::get\+Arg (\begin{DoxyParamCaption}\item[{short}]{n = {\ttfamily 0} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a9469cc0bb8560eb5f669d54903186433}\label{class_item_a9469cc0bb8560eb5f669d54903186433}} +\index{Item@{Item}!getArgCount@{getArgCount}} +\index{getArgCount@{getArgCount}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getArgCount()}{getArgCount()}} +{\footnotesize\ttfamily short Item\+::get\+Arg\+Count (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_af1a89a9947e7759ce74f17d614346f46}\label{class_item_af1a89a9947e7759ce74f17d614346f46}} +\index{Item@{Item}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int Item\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a25cddf040ae48d36375e54eb7fb31cf1}\label{class_item_a25cddf040ae48d36375e54eb7fb31cf1}} +\index{Item@{Item}!getCmd@{getCmd}} +\index{getCmd@{getCmd}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getCmd()}{getCmd()}} +{\footnotesize\ttfamily uint8\+\_\+t Item\+::get\+Cmd (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ab27cd47af857151cb695f7a4b4000424}\label{class_item_ab27cd47af857151cb695f7a4b4000424}} +\index{Item@{Item}!getExt@{getExt}} +\index{getExt@{getExt}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getExt()}{getExt()}} +{\footnotesize\ttfamily long int Item\+::get\+Ext (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a15e9623fffd070c01c3dd87b1cc09ab3}\label{class_item_a15e9623fffd070c01c3dd87b1cc09ab3}} +\index{Item@{Item}!getFlag@{getFlag}} +\index{getFlag@{getFlag}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getFlag()}{getFlag()}} +{\footnotesize\ttfamily short Item\+::get\+Flag (\begin{DoxyParamCaption}\item[{short}]{flag = {\ttfamily \mbox{\hyperlink{item_cmd_8h_a890221cb651a3f30f6d1bca0d9b0e13d}{F\+L\+A\+G\+\_\+\+M\+A\+SK}}} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ad1c452e68967188402a96a687aba6af0}\label{class_item_ad1c452e68967188402a96a687aba6af0}} +\index{Item@{Item}!getPersistent@{getPersistent}} +\index{getPersistent@{getPersistent}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getPersistent()}{getPersistent()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$ Item\+::get\+Persistent (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ad00923c702189ad97c6af2c3c20150fa}\label{class_item_ad00923c702189ad97c6af2c3c20150fa}} +\index{Item@{Item}!getSubtype@{getSubtype}} +\index{getSubtype@{getSubtype}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getSubtype()}{getSubtype()}} +{\footnotesize\ttfamily uint8\+\_\+t Item\+::get\+Subtype (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_aba81303d678129315e393e11319b5ec5}\label{class_item_aba81303d678129315e393e11319b5ec5}} +\index{Item@{Item}!getVal@{getVal}} +\index{getVal@{getVal}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{getVal()}{getVal()}} +{\footnotesize\ttfamily long int Item\+::get\+Val (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a4db79caf8ace960c0bf74181c0bf5faa}\label{class_item_a4db79caf8ace960c0bf74181c0bf5faa}} +\index{Item@{Item}!isActive@{isActive}} +\index{isActive@{isActive}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int Item\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a3bbd12527ff3638189cae5291e578a96}\label{class_item_a3bbd12527ff3638189cae5291e578a96}} +\index{Item@{Item}!isValid@{isValid}} +\index{isValid@{isValid}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{isValid()}{isValid()}} +{\footnotesize\ttfamily boolean Item\+::is\+Valid (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a389156098d07ebdc5649668f61d87343}\label{class_item_a389156098d07ebdc5649668f61d87343}} +\index{Item@{Item}!mb\_fail@{mb\_fail}} +\index{mb\_fail@{mb\_fail}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{mb\_fail()}{mb\_fail()}} +{\footnotesize\ttfamily void Item\+::mb\+\_\+fail (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a77913c1f28d823b1a096369e69cc5072}\label{class_item_a77913c1f28d823b1a096369e69cc5072}} +\index{Item@{Item}!modbusDimmerSet@{modbusDimmerSet}} +\index{modbusDimmerSet@{modbusDimmerSet}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{modbusDimmerSet()}{modbusDimmerSet()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily int Item\+::modbus\+Dimmer\+Set (\begin{DoxyParamCaption}\item[{int}]{addr, }\item[{uint16\+\_\+t}]{\+\_\+reg, }\item[{int}]{\+\_\+reg\+Type, }\item[{int}]{\+\_\+mask, }\item[{uint16\+\_\+t}]{value }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a6a8cdb4d647ba278a55560cd91bfc031}\label{class_item_a6a8cdb4d647ba278a55560cd91bfc031}} +\index{Item@{Item}!modbusDimmerSet@{modbusDimmerSet}} +\index{modbusDimmerSet@{modbusDimmerSet}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{modbusDimmerSet()}{modbusDimmerSet()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily int Item\+::modbus\+Dimmer\+Set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{st }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a7cc492ae708197b9426c45b15eda714d}\label{class_item_a7cc492ae708197b9426c45b15eda714d}} +\index{Item@{Item}!Off@{Off}} +\index{Off@{Off}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Off()}{Off()}} +{\footnotesize\ttfamily int Item\+::\+Off (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_item_ac6a08d4c2352fa1284c4039441e380c5}\label{class_item_ac6a08d4c2352fa1284c4039441e380c5}} +\index{Item@{Item}!On@{On}} +\index{On@{On}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{On()}{On()}} +{\footnotesize\ttfamily int Item\+::\+On (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_item_abbcfb98227918e624be294409d21be3d}\label{class_item_abbcfb98227918e624be294409d21be3d}} +\index{Item@{Item}!Parse@{Parse}} +\index{Parse@{Parse}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Parse()}{Parse()}} +{\footnotesize\ttfamily void Item\+::\+Parse (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_aaa6500d9cdb58f9b20f6c2592da40739}\label{class_item_aaa6500d9cdb58f9b20f6c2592da40739}} +\index{Item@{Item}!Poll@{Poll}} +\index{Poll@{Poll}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int Item\+::\+Poll (\begin{DoxyParamCaption}\item[{int}]{cause }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_af767f604dcaed8a497438255c28129fd}\label{class_item_af767f604dcaed8a497438255c28129fd}} +\index{Item@{Item}!sendDelayedStatus@{sendDelayedStatus}} +\index{sendDelayedStatus@{sendDelayedStatus}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{sendDelayedStatus()}{sendDelayedStatus()}} +{\footnotesize\ttfamily void Item\+::send\+Delayed\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a525c4e3f723a85af5e818c1b5834e277}\label{class_item_a525c4e3f723a85af5e818c1b5834e277}} +\index{Item@{Item}!SendStatus@{SendStatus}} +\index{SendStatus@{SendStatus}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{SendStatus()}{SendStatus()}} +{\footnotesize\ttfamily int Item\+::\+Send\+Status (\begin{DoxyParamCaption}\item[{int}]{send\+Flags }\end{DoxyParamCaption})} + +case C\+M\+D\+\_\+\+S\+ET\+:\mbox{\Hypertarget{class_item_a188910459fc0ded60ca268664bf9b212}\label{class_item_a188910459fc0ded60ca268664bf9b212}} +\index{Item@{Item}!setCmd@{setCmd}} +\index{setCmd@{setCmd}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setCmd()}{setCmd()}} +{\footnotesize\ttfamily void Item\+::set\+Cmd (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{cmd\+Value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ad4e62aba1f62917a8df4c47c2894a3ad}\label{class_item_ad4e62aba1f62917a8df4c47c2894a3ad}} +\index{Item@{Item}!setExt@{setExt}} +\index{setExt@{setExt}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setExt()}{setExt()}} +{\footnotesize\ttfamily void Item\+::set\+Ext (\begin{DoxyParamCaption}\item[{long int}]{par }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_abd22bfa75e71849cc0fadcee9eef330d}\label{class_item_abd22bfa75e71849cc0fadcee9eef330d}} +\index{Item@{Item}!setFlag@{setFlag}} +\index{setFlag@{setFlag}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setFlag()}{setFlag()}} +{\footnotesize\ttfamily void Item\+::set\+Flag (\begin{DoxyParamCaption}\item[{short}]{flag }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_af023950bb9b9760b98c5de7287bc467d}\label{class_item_af023950bb9b9760b98c5de7287bc467d}} +\index{Item@{Item}!setPersistent@{setPersistent}} +\index{setPersistent@{setPersistent}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setPersistent()}{setPersistent()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$ Item\+::set\+Persistent (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classch_persistent}{ch\+Persistent}} $\ast$}]{par }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a47b261677ded48fb1c51088b9d956dcc}\label{class_item_a47b261677ded48fb1c51088b9d956dcc}} +\index{Item@{Item}!setSubtype@{setSubtype}} +\index{setSubtype@{setSubtype}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setSubtype()}{setSubtype()}} +{\footnotesize\ttfamily void Item\+::set\+Subtype (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{par }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ae84f04e796546f4c34db79a060b0d443}\label{class_item_ae84f04e796546f4c34db79a060b0d443}} +\index{Item@{Item}!Setup@{Setup}} +\index{Setup@{Setup}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily boolean Item\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ad2a38c039f8b3cee14cb97c9526d9260}\label{class_item_ad2a38c039f8b3cee14cb97c9526d9260}} +\index{Item@{Item}!setVal@{setVal}} +\index{setVal@{setVal}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{setVal()}{setVal()}} +{\footnotesize\ttfamily void Item\+::set\+Val (\begin{DoxyParamCaption}\item[{long int}]{par }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_ac382f69ca11e6eebfec1f40133fddd42}\label{class_item_ac382f69ca11e6eebfec1f40133fddd42}} +\index{Item@{Item}!Stop@{Stop}} +\index{Stop@{Stop}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily void Item\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_item_a5ddbe231ea061c1001436dd5d57cc97b}\label{class_item_a5ddbe231ea061c1001436dd5d57cc97b}} +\index{Item@{Item}!Toggle@{Toggle}} +\index{Toggle@{Toggle}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{Toggle()}{Toggle()}} +{\footnotesize\ttfamily int Item\+::\+Toggle (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_item_a127a28254a55fbd7fcbcd37816afe163}\label{class_item_a127a28254a55fbd7fcbcd37816afe163}} +\index{Item@{Item}!VacomSetFan@{VacomSetFan}} +\index{VacomSetFan@{VacomSetFan}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{VacomSetFan()}{VacomSetFan()}} +{\footnotesize\ttfamily int Item\+::\+Vacom\+Set\+Fan (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{st }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_aa0f1f997dd794068562d43eb4a3911a6}\label{class_item_aa0f1f997dd794068562d43eb4a3911a6}} +\index{Item@{Item}!VacomSetHeat@{VacomSetHeat}} +\index{VacomSetHeat@{VacomSetHeat}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{VacomSetHeat()}{VacomSetHeat()}} +{\footnotesize\ttfamily int Item\+::\+Vacom\+Set\+Heat (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{st }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + + + +move to float todo + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_item_a21371d449e5e6669b3f0eb0e080a7132}\label{class_item_a21371d449e5e6669b3f0eb0e080a7132}} +\index{Item@{Item}!defaultSubItem@{defaultSubItem}} +\index{defaultSubItem@{defaultSubItem}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{defaultSubItem}{defaultSubItem}} +{\footnotesize\ttfamily char Item\+::default\+Sub\+Item\mbox{[}10\mbox{]}\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a4ff75a860339d86b006960b750a593e6}\label{class_item_a4ff75a860339d86b006960b750a593e6}} +\index{Item@{Item}!defaultSuffixCode@{defaultSuffixCode}} +\index{defaultSuffixCode@{defaultSuffixCode}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{defaultSuffixCode}{defaultSuffixCode}} +{\footnotesize\ttfamily int Item\+::default\+Suffix\+Code\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_item_a93f339d62018da733bd6147797388eb2}\label{class_item_a93f339d62018da733bd6147797388eb2}} +\index{Item@{Item}!driver@{driver}} +\index{driver@{driver}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{driver}{driver}} +{\footnotesize\ttfamily \mbox{\hyperlink{classabstract_out}{abstract\+Out}}$\ast$ Item\+::driver} + +\mbox{\Hypertarget{class_item_ab831f5a6f56b59761a8ee5dbf38c0999}\label{class_item_ab831f5a6f56b59761a8ee5dbf38c0999}} +\index{Item@{Item}!itemArg@{itemArg}} +\index{itemArg@{itemArg}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{itemArg}{itemArg}} +{\footnotesize\ttfamily a\+Json\+Object $\ast$ Item\+::item\+Arg} + +\mbox{\Hypertarget{class_item_a4332fe989485f159b4fefa871cc213b9}\label{class_item_a4332fe989485f159b4fefa871cc213b9}} +\index{Item@{Item}!itemArr@{itemArr}} +\index{itemArr@{itemArr}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{itemArr}{itemArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ Item\+::item\+Arr} + +\mbox{\Hypertarget{class_item_a39291138106342bc0d49ccfb125f7a95}\label{class_item_a39291138106342bc0d49ccfb125f7a95}} +\index{Item@{Item}!itemExt@{itemExt}} +\index{itemExt@{itemExt}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{itemExt}{itemExt}} +{\footnotesize\ttfamily a\+Json\+Object $\ast$ Item\+::item\+Ext} + +\mbox{\Hypertarget{class_item_ae0bac41fded34ffbd1e3634e15772039}\label{class_item_ae0bac41fded34ffbd1e3634e15772039}} +\index{Item@{Item}!itemType@{itemType}} +\index{itemType@{itemType}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{itemType}{itemType}} +{\footnotesize\ttfamily uint8\+\_\+t Item\+::item\+Type} + +\mbox{\Hypertarget{class_item_aabf1180ef4ab072817a28020814bce48}\label{class_item_aabf1180ef4ab072817a28020814bce48}} +\index{Item@{Item}!itemVal@{itemVal}} +\index{itemVal@{itemVal}!Item@{Item}} +\doxysubsubsection{\texorpdfstring{itemVal}{itemVal}} +{\footnotesize\ttfamily a\+Json\+Object $\ast$ Item\+::item\+Val} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_8h}{item.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_8cpp}{item.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_streamlog.eps b/docs/latex/class_streamlog.eps new file mode 100644 index 0000000..f8e53cf --- /dev/null +++ b/docs/latex/class_streamlog.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 526.315796 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.950000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Streamlog) cw +(Print) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Streamlog) 0.000000 0.000000 box + (Print) 0.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in diff --git a/docs/latex/class_streamlog.tex b/docs/latex/class_streamlog.tex new file mode 100644 index 0000000..a504db2 --- /dev/null +++ b/docs/latex/class_streamlog.tex @@ -0,0 +1,99 @@ +\hypertarget{class_streamlog}{}\doxysection{Streamlog Class Reference} +\label{class_streamlog}\index{Streamlog@{Streamlog}} + + +{\ttfamily \#include $<$streamlog.\+h$>$} + +Inheritance diagram for Streamlog\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{class_streamlog} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_streamlog_a51cd1bbe03b32ad2d4235b4ef7945d37}{Streamlog}} (Hardware\+Serial $\ast$\+\_\+serial\+Port, int \+\_\+severity=\mbox{\hyperlink{streamlog_8h_a6ff63e8955665c4a58b1598f2b07c51a}{L\+O\+G\+\_\+\+D\+E\+B\+UG}}, uint8\+\_\+t \+\_\+led\+Pattern=0) +\item +void \mbox{\hyperlink{class_streamlog_ab9c1022fccf6b585b738f30f8577d613}{begin}} (unsigned long speed) +\item +void \mbox{\hyperlink{class_streamlog_ace6e3e265ae590b7f3b14b926bc3e60b}{end}} () +\item +int \mbox{\hyperlink{class_streamlog_ae7a165675188ecb1bf305b025efbf47b}{available}} (void) +\item +int \mbox{\hyperlink{class_streamlog_a246066803cd501ca4f1f5c94823db0e0}{peek}} (void) +\item +int \mbox{\hyperlink{class_streamlog_acbea1e8e890180c66757bd7647703d54}{read}} (void) +\item +void \mbox{\hyperlink{class_streamlog_aec3522140e0c8f95039e62747f841987}{flush}} (void) +\item +size\+\_\+t \mbox{\hyperlink{class_streamlog_a944486d544c3677410e1505b9cd6858b}{write}} (uint8\+\_\+t ch) +\item +\mbox{\hyperlink{class_streamlog_adcd1dcab71fd1e1c9da5bc9c18ac3d1d}{operator bool}} () +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_streamlog_a51cd1bbe03b32ad2d4235b4ef7945d37}\label{class_streamlog_a51cd1bbe03b32ad2d4235b4ef7945d37}} +\index{Streamlog@{Streamlog}!Streamlog@{Streamlog}} +\index{Streamlog@{Streamlog}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{Streamlog()}{Streamlog()}} +{\footnotesize\ttfamily Streamlog\+::\+Streamlog (\begin{DoxyParamCaption}\item[{Hardware\+Serial $\ast$}]{\+\_\+serial\+Port, }\item[{int}]{\+\_\+severity = {\ttfamily \mbox{\hyperlink{streamlog_8h_a6ff63e8955665c4a58b1598f2b07c51a}{L\+O\+G\+\_\+\+D\+E\+B\+UG}}}, }\item[{uint8\+\_\+t}]{\+\_\+led\+Pattern = {\ttfamily 0} }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_streamlog_ae7a165675188ecb1bf305b025efbf47b}\label{class_streamlog_ae7a165675188ecb1bf305b025efbf47b}} +\index{Streamlog@{Streamlog}!available@{available}} +\index{available@{available}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{available()}{available()}} +{\footnotesize\ttfamily int Streamlog\+::available (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_ab9c1022fccf6b585b738f30f8577d613}\label{class_streamlog_ab9c1022fccf6b585b738f30f8577d613}} +\index{Streamlog@{Streamlog}!begin@{begin}} +\index{begin@{begin}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{begin()}{begin()}} +{\footnotesize\ttfamily void Streamlog\+::begin (\begin{DoxyParamCaption}\item[{unsigned long}]{speed }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_ace6e3e265ae590b7f3b14b926bc3e60b}\label{class_streamlog_ace6e3e265ae590b7f3b14b926bc3e60b}} +\index{Streamlog@{Streamlog}!end@{end}} +\index{end@{end}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{end()}{end()}} +{\footnotesize\ttfamily void Streamlog\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_aec3522140e0c8f95039e62747f841987}\label{class_streamlog_aec3522140e0c8f95039e62747f841987}} +\index{Streamlog@{Streamlog}!flush@{flush}} +\index{flush@{flush}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{flush()}{flush()}} +{\footnotesize\ttfamily void Streamlog\+::flush (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_adcd1dcab71fd1e1c9da5bc9c18ac3d1d}\label{class_streamlog_adcd1dcab71fd1e1c9da5bc9c18ac3d1d}} +\index{Streamlog@{Streamlog}!operator bool@{operator bool}} +\index{operator bool@{operator bool}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{operator bool()}{operator bool()}} +{\footnotesize\ttfamily Streamlog\+::operator bool (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_streamlog_a246066803cd501ca4f1f5c94823db0e0}\label{class_streamlog_a246066803cd501ca4f1f5c94823db0e0}} +\index{Streamlog@{Streamlog}!peek@{peek}} +\index{peek@{peek}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{peek()}{peek()}} +{\footnotesize\ttfamily int Streamlog\+::peek (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_acbea1e8e890180c66757bd7647703d54}\label{class_streamlog_acbea1e8e890180c66757bd7647703d54}} +\index{Streamlog@{Streamlog}!read@{read}} +\index{read@{read}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{read()}{read()}} +{\footnotesize\ttfamily int Streamlog\+::read (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_streamlog_a944486d544c3677410e1505b9cd6858b}\label{class_streamlog_a944486d544c3677410e1505b9cd6858b}} +\index{Streamlog@{Streamlog}!write@{write}} +\index{write@{write}!Streamlog@{Streamlog}} +\doxysubsubsection{\texorpdfstring{write()}{write()}} +{\footnotesize\ttfamily size\+\_\+t Streamlog\+::write (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{ch }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{streamlog_8h}{streamlog.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{streamlog_8cpp}{streamlog.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classabstract_ch.eps b/docs/latex/classabstract_ch.eps new file mode 100644 index 0000000..a752730 --- /dev/null +++ b/docs/latex/classabstract_ch.eps @@ -0,0 +1,251 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 138.888885 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 3.600000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 6 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(abstractCh) cw +(abstractIn) cw +(abstractOut) cw +(in_ccs811) cw +(in_hdc1080) cw +(colorChannel) cw +(out_AC) cw +(out_Modbus) cw +(out_Motor) cw +(out_dmx) cw +(out_pwm) cw +(out_SPILed) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (abstractCh) 2.000000 3.000000 box + (abstractIn) 0.500000 2.000000 box + (abstractOut) 3.500000 2.000000 box + (in_ccs811) 0.000000 1.000000 box + (in_hdc1080) 1.000000 1.000000 box + (colorChannel) 2.000000 1.000000 box + (out_AC) 3.000000 1.000000 box + (out_Modbus) 4.000000 1.000000 box + (out_Motor) 5.000000 1.000000 box + (out_dmx) 1.000000 0.000000 box + (out_pwm) 2.000000 0.000000 box + (out_SPILed) 3.000000 0.000000 box + +% ----- relations ----- + +solid +1 2.000000 2.250000 out +solid +0.500000 3.500000 3.000000 conn +solid +0 0.500000 2.750000 in +solid +1 0.500000 1.250000 out +solid +0.000000 1.000000 2.000000 conn +solid +0 3.500000 2.750000 in +solid +1 3.500000 1.250000 out +solid +2.000000 5.000000 2.000000 conn +solid +0 0.000000 1.750000 in +solid +0 1.000000 1.750000 in +solid +0 2.000000 1.750000 in +solid +1 2.000000 0.250000 out +solid +1.000000 3.000000 1.000000 conn +solid +0 3.000000 1.750000 in +solid +0 4.000000 1.750000 in +solid +0 5.000000 1.750000 in +solid +0 1.000000 0.750000 in +solid +0 2.000000 0.750000 in +solid +0 3.000000 0.750000 in diff --git a/docs/latex/classabstract_ch.tex b/docs/latex/classabstract_ch.tex new file mode 100644 index 0000000..9be133d --- /dev/null +++ b/docs/latex/classabstract_ch.tex @@ -0,0 +1,126 @@ +\hypertarget{classabstract_ch}{}\doxysection{abstract\+Ch Class Reference} +\label{classabstract_ch}\index{abstractCh@{abstractCh}} + + +{\ttfamily \#include $<$abstractch.\+h$>$} + +Inheritance diagram for abstract\+Ch\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.888889cm]{classabstract_ch} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classabstract_ch_a8f13aa9c0f6749f7f064d1930667aaed}{abstract\+Ch}} () +\item +virtual \mbox{\hyperlink{classabstract_ch_a58f34f5341674622c30f5c005ceadead}{$\sim$abstract\+Ch}} () +\item +virtual int \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{Poll}} (short cause)=0 +\item +virtual int \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{Setup}} ()=0 +\item +virtual int \mbox{\hyperlink{classabstract_ch_a2e75f5b76a25accdb1de0c936951a93f}{Anounce}} () +\item +virtual int \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{Stop}} () +\item +virtual int \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{Status}} () +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +virtual int \mbox{\hyperlink{classabstract_ch_a4f1da04403789b710ca3929c57af9d32}{publish\+Topic}} (const char $\ast$topic, long value, const char $\ast$subtopic=N\+U\+LL) +\item +virtual int \mbox{\hyperlink{classabstract_ch_ac24cfc96e7efabae120799b7a23680c6}{publish\+Topic}} (const char $\ast$topic, float value, const char $\ast$subtopic=N\+U\+LL) +\item +virtual int \mbox{\hyperlink{classabstract_ch_a9404148b9515bd6c1e167a235d844cb8}{publish\+Topic}} (const char $\ast$topic, const char $\ast$value, const char $\ast$subtopic=N\+U\+LL) +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classabstract_ch_a8f13aa9c0f6749f7f064d1930667aaed}\label{classabstract_ch_a8f13aa9c0f6749f7f064d1930667aaed}} +\index{abstractCh@{abstractCh}!abstractCh@{abstractCh}} +\index{abstractCh@{abstractCh}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{abstractCh()}{abstractCh()}} +{\footnotesize\ttfamily abstract\+Ch\+::abstract\+Ch (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{classabstract_ch_a58f34f5341674622c30f5c005ceadead}\label{classabstract_ch_a58f34f5341674622c30f5c005ceadead}} +\index{abstractCh@{abstractCh}!````~abstractCh@{$\sim$abstractCh}} +\index{````~abstractCh@{$\sim$abstractCh}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{$\sim$abstractCh()}{~abstractCh()}} +{\footnotesize\ttfamily virtual abstract\+Ch\+::$\sim$abstract\+Ch (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classabstract_ch_a2e75f5b76a25accdb1de0c936951a93f}\label{classabstract_ch_a2e75f5b76a25accdb1de0c936951a93f}} +\index{abstractCh@{abstractCh}!Anounce@{Anounce}} +\index{Anounce@{Anounce}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{Anounce()}{Anounce()}} +{\footnotesize\ttfamily virtual int abstract\+Ch\+::\+Anounce (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + +\mbox{\Hypertarget{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}\label{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}} +\index{abstractCh@{abstractCh}!Poll@{Poll}} +\index{Poll@{Poll}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily virtual int abstract\+Ch\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}} + + + +Implemented in \mbox{\hyperlink{classout___s_p_i_led_a8566a7b80d1a132c00dbaf989880649c}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a88c460e7ba29e5b068a2defa395cae2c}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_a7a98c58b6c32cc20b7b05ad07a07c231}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_aec6803a6033403f8ac4038236cac5cd9}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout__dmx_a0b1d943e9772bf10487010040b948e8a}{out\+\_\+dmx}}, \mbox{\hyperlink{classout___a_c_a40fd702a4d9d621c19bfa140c905e64b}{out\+\_\+\+AC}}, \mbox{\hyperlink{classin__hdc1080_a94cf44b2a347e2ee295fad5798f7ef54}{in\+\_\+hdc1080}}, and \mbox{\hyperlink{classin__ccs811_a8b57db4521730e66f090a3d6752fd112}{in\+\_\+ccs811}}. + +\mbox{\Hypertarget{classabstract_ch_a9404148b9515bd6c1e167a235d844cb8}\label{classabstract_ch_a9404148b9515bd6c1e167a235d844cb8}} +\index{abstractCh@{abstractCh}!publishTopic@{publishTopic}} +\index{publishTopic@{publishTopic}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{publishTopic()}{publishTopic()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} +{\footnotesize\ttfamily int abstract\+Ch\+::publish\+Topic (\begin{DoxyParamCaption}\item[{const char $\ast$}]{topic, }\item[{const char $\ast$}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}} + +\mbox{\Hypertarget{classabstract_ch_ac24cfc96e7efabae120799b7a23680c6}\label{classabstract_ch_ac24cfc96e7efabae120799b7a23680c6}} +\index{abstractCh@{abstractCh}!publishTopic@{publishTopic}} +\index{publishTopic@{publishTopic}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{publishTopic()}{publishTopic()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} +{\footnotesize\ttfamily int abstract\+Ch\+::publish\+Topic (\begin{DoxyParamCaption}\item[{const char $\ast$}]{topic, }\item[{float}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}} + +\mbox{\Hypertarget{classabstract_ch_a4f1da04403789b710ca3929c57af9d32}\label{classabstract_ch_a4f1da04403789b710ca3929c57af9d32}} +\index{abstractCh@{abstractCh}!publishTopic@{publishTopic}} +\index{publishTopic@{publishTopic}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{publishTopic()}{publishTopic()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} +{\footnotesize\ttfamily int abstract\+Ch\+::publish\+Topic (\begin{DoxyParamCaption}\item[{const char $\ast$}]{topic, }\item[{long}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}} + +\mbox{\Hypertarget{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}\label{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}} +\index{abstractCh@{abstractCh}!Setup@{Setup}} +\index{Setup@{Setup}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily virtual int abstract\+Ch\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}} + + + +Implemented in \mbox{\hyperlink{classout___s_p_i_led_adbe9d6b9a2a5e515e9a372a4c4675b15}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a0ba3173e9df1cb61b74a705c270ef7b6}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_ab9f2b433a4fedd6fec5b9cb504b934f4}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_acf5452aac576901614eca795ab4ca440}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout__dmx_a7bf52f6c7ce630f879de60596b82dd87}{out\+\_\+dmx}}, \mbox{\hyperlink{classout___a_c_a3a7b5b20a7d66870551f3dd485e66de2}{out\+\_\+\+AC}}, \mbox{\hyperlink{classin__hdc1080_ae8e077105f9b80dcf682cdc2bd4a95e3}{in\+\_\+hdc1080}}, and \mbox{\hyperlink{classin__ccs811_adc24e341d0df945dc9db85051fe03e48}{in\+\_\+ccs811}}. + +\mbox{\Hypertarget{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}\label{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}} +\index{abstractCh@{abstractCh}!Status@{Status}} +\index{Status@{Status}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily virtual int abstract\+Ch\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + + + +Reimplemented in \mbox{\hyperlink{classout___s_p_i_led_a9486de18e156758a12fa257f68314e20}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a01edf9d010b717601898bf3fddecbc3f}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_a47de22f0ce071787ac14a19897337cea}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_acc0fc0ecdb6928cfc7906986b8139780}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout__dmx_aa5f2590101b1951f4cf5eb57449d8365}{out\+\_\+dmx}}, and \mbox{\hyperlink{classout___a_c_aba0d1953f95f7d04a24582c40cd26196}{out\+\_\+\+AC}}. + +\mbox{\Hypertarget{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}\label{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}} +\index{abstractCh@{abstractCh}!Stop@{Stop}} +\index{Stop@{Stop}!abstractCh@{abstractCh}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily virtual int abstract\+Ch\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + + + +Reimplemented in \mbox{\hyperlink{classout___s_p_i_led_a4e24b8a490f8353452b8594dffff8396}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a9f3fc73a1fff6ecf991d42564a7b8273}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_aafdbaaaf47776dd8c0c5d6bfa32bb3c2}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_a9cb4b395f5f8a6d15dcc429664a4174b}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout__dmx_a0b9383e7fe30707142915cbc3d0ec772}{out\+\_\+dmx}}, and \mbox{\hyperlink{classout___a_c_a763ace53db4e64692d061db48f396aba}{out\+\_\+\+AC}}. + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractch_8h}{abstractch.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractch_8cpp}{abstractch.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classabstract_in.eps b/docs/latex/classabstract_in.eps new file mode 100644 index 0000000..cf8e596 --- /dev/null +++ b/docs/latex/classabstract_in.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 348.837219 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.433333 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(abstractIn) cw +(abstractCh) cw +(in_ccs811) cw +(in_hdc1080) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (abstractIn) 0.500000 1.000000 box + (abstractCh) 0.500000 2.000000 box + (in_ccs811) 0.000000 0.000000 box + (in_hdc1080) 1.000000 0.000000 box + +% ----- relations ----- + +solid +0 0.500000 1.000000 out +solid +1 0.500000 2.000000 in +solid +1 0.500000 0.250000 out +solid +0.000000 1.000000 1.000000 conn +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in diff --git a/docs/latex/classabstract_in.tex b/docs/latex/classabstract_in.tex new file mode 100644 index 0000000..9d791f3 --- /dev/null +++ b/docs/latex/classabstract_in.tex @@ -0,0 +1,84 @@ +\hypertarget{classabstract_in}{}\doxysection{abstract\+In Class Reference} +\label{classabstract_in}\index{abstractIn@{abstractIn}} + + +{\ttfamily \#include $<$abstractin.\+h$>$} + +Inheritance diagram for abstract\+In\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classabstract_in} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classabstract_in_ab6b1dfafab3f52fe383d7e4014150ffb}{abstract\+In}} (\mbox{\hyperlink{class_input}{Input}} $\ast$\+\_\+in) +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{classabstract_in_aa7e18605ec4d11d117881ac87b7ca016}{publish}} (long value, const char $\ast$subtopic=N\+U\+LL) +\item +int \mbox{\hyperlink{classabstract_in_a6a9d6bb966fc80930b31f3487b1a8f82}{publish}} (float value, const char $\ast$subtopic=N\+U\+LL) +\item +int \mbox{\hyperlink{classabstract_in_a6c7d4376b309c7c14d56568e5262335a}{publish}} (char $\ast$value, const char $\ast$subtopic=N\+U\+LL) +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_input}{Input}} $\ast$ \mbox{\hyperlink{classabstract_in_a626e3421b4830ca81ca8b48fa802c1ca}{in}} +\item +friend \mbox{\hyperlink{classabstract_in_a24f5c11f0de37b93cc9da4f5023040f7}{Input}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classabstract_in_ab6b1dfafab3f52fe383d7e4014150ffb}\label{classabstract_in_ab6b1dfafab3f52fe383d7e4014150ffb}} +\index{abstractIn@{abstractIn}!abstractIn@{abstractIn}} +\index{abstractIn@{abstractIn}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{abstractIn()}{abstractIn()}} +{\footnotesize\ttfamily abstract\+In\+::abstract\+In (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_input}{Input}} $\ast$}]{\+\_\+in }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classabstract_in_a6c7d4376b309c7c14d56568e5262335a}\label{classabstract_in_a6c7d4376b309c7c14d56568e5262335a}} +\index{abstractIn@{abstractIn}!publish@{publish}} +\index{publish@{publish}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{publish()}{publish()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} +{\footnotesize\ttfamily int abstract\+In\+::publish (\begin{DoxyParamCaption}\item[{char $\ast$}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classabstract_in_a6a9d6bb966fc80930b31f3487b1a8f82}\label{classabstract_in_a6a9d6bb966fc80930b31f3487b1a8f82}} +\index{abstractIn@{abstractIn}!publish@{publish}} +\index{publish@{publish}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{publish()}{publish()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} +{\footnotesize\ttfamily int abstract\+In\+::publish (\begin{DoxyParamCaption}\item[{float}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classabstract_in_aa7e18605ec4d11d117881ac87b7ca016}\label{classabstract_in_aa7e18605ec4d11d117881ac87b7ca016}} +\index{abstractIn@{abstractIn}!publish@{publish}} +\index{publish@{publish}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{publish()}{publish()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} +{\footnotesize\ttfamily int abstract\+In\+::publish (\begin{DoxyParamCaption}\item[{long}]{value, }\item[{const char $\ast$}]{subtopic = {\ttfamily NULL} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classabstract_in_a626e3421b4830ca81ca8b48fa802c1ca}\label{classabstract_in_a626e3421b4830ca81ca8b48fa802c1ca}} +\index{abstractIn@{abstractIn}!in@{in}} +\index{in@{in}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{in}{in}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_input}{Input}}$\ast$ abstract\+In\+::in\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classabstract_in_a24f5c11f0de37b93cc9da4f5023040f7}\label{classabstract_in_a24f5c11f0de37b93cc9da4f5023040f7}} +\index{abstractIn@{abstractIn}!Input@{Input}} +\index{Input@{Input}!abstractIn@{abstractIn}} +\doxysubsubsection{\texorpdfstring{Input}{Input}} +{\footnotesize\ttfamily friend abstract\+In\+::\+Input\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractin_8h}{abstractin.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractin_8cpp}{abstractin.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classabstract_out.eps b/docs/latex/classabstract_out.eps new file mode 100644 index 0000000..d8b6c10 --- /dev/null +++ b/docs/latex/classabstract_out.eps @@ -0,0 +1,233 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 166.666672 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 3.000000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 5 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(abstractOut) cw +(abstractCh) cw +(colorChannel) cw +(out_AC) cw +(out_Modbus) cw +(out_Motor) cw +(out_dmx) cw +(out_pwm) cw +(out_SPILed) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (abstractOut) 2.500000 2.000000 box + (abstractCh) 2.500000 3.000000 box + (colorChannel) 1.000000 1.000000 box + (out_AC) 2.000000 1.000000 box + (out_Modbus) 3.000000 1.000000 box + (out_Motor) 4.000000 1.000000 box + (out_dmx) 0.000000 0.000000 box + (out_pwm) 1.000000 0.000000 box + (out_SPILed) 2.000000 0.000000 box + +% ----- relations ----- + +solid +0 2.500000 2.000000 out +solid +1 2.500000 3.000000 in +solid +1 2.500000 1.250000 out +solid +1.000000 4.000000 2.000000 conn +solid +0 1.000000 1.750000 in +solid +1 1.000000 0.250000 out +solid +0.000000 2.000000 1.000000 conn +solid +0 2.000000 1.750000 in +solid +0 3.000000 1.750000 in +solid +0 4.000000 1.750000 in +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in +solid +0 2.000000 0.750000 in diff --git a/docs/latex/classabstract_out.tex b/docs/latex/classabstract_out.tex new file mode 100644 index 0000000..fc6d375 --- /dev/null +++ b/docs/latex/classabstract_out.tex @@ -0,0 +1,93 @@ +\hypertarget{classabstract_out}{}\doxysection{abstract\+Out Class Reference} +\label{classabstract_out}\index{abstractOut@{abstractOut}} + + +{\ttfamily \#include $<$abstractout.\+h$>$} + +Inheritance diagram for abstract\+Out\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{classabstract_out} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classabstract_out_adec371468752bd5027c282cf933ba035}{abstract\+Out}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +virtual int \mbox{\hyperlink{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool to\+Execute=true)=0 +\item +virtual int \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{is\+Active}} () +\item +virtual int \mbox{\hyperlink{classabstract_out_aedf98f968abc36332dcddb7eab00fe13}{get\+Default\+On\+Val}} () +\item +virtual int \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{get\+Chan\+Type}} () +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_item}{Item}} $\ast$ \mbox{\hyperlink{classabstract_out_af93f193ac2f0621d0ba08f1f1d11e8b7}{item}} +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classabstract_out_adec371468752bd5027c282cf933ba035}\label{classabstract_out_adec371468752bd5027c282cf933ba035}} +\index{abstractOut@{abstractOut}!abstractOut@{abstractOut}} +\index{abstractOut@{abstractOut}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{abstractOut()}{abstractOut()}} +{\footnotesize\ttfamily abstract\+Out\+::abstract\+Out (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}\label{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}} +\index{abstractOut@{abstractOut}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}} +{\footnotesize\ttfamily virtual int abstract\+Out\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{to\+Execute = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}} + + + +Implemented in \mbox{\hyperlink{classout___motor_aa731e4d1848e07ac7dc4a99a0ddad942}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_a784be57c40d67b41488b9585fe792019}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout___a_c_aeaf2ac4088b2b4b2fd4e1b83755c9964}{out\+\_\+\+AC}}, and \mbox{\hyperlink{classcolor_channel_a9d7354cc266c98067b7b43cbf8707feb}{color\+Channel}}. + +\mbox{\Hypertarget{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}\label{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}} +\index{abstractOut@{abstractOut}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily virtual int abstract\+Out\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + + + +Reimplemented in \mbox{\hyperlink{classout___s_p_i_led_aac304bcdc354a3667ec99d4c06513b72}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a54bea9682560aa628f85a532a363d57a}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_afd67d9b6e08f14074a236d5222809226}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_a2752cf2376840f3763572963be8785db}{out\+\_\+\+Modbus}}, and \mbox{\hyperlink{classout__dmx_a575351786cdc191555757cd39b4382f5}{out\+\_\+dmx}}. + +\mbox{\Hypertarget{classabstract_out_aedf98f968abc36332dcddb7eab00fe13}\label{classabstract_out_aedf98f968abc36332dcddb7eab00fe13}} +\index{abstractOut@{abstractOut}!getDefaultOnVal@{getDefaultOnVal}} +\index{getDefaultOnVal@{getDefaultOnVal}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{getDefaultOnVal()}{getDefaultOnVal()}} +{\footnotesize\ttfamily virtual int abstract\+Out\+::get\+Default\+On\+Val (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + +\mbox{\Hypertarget{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}\label{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}} +\index{abstractOut@{abstractOut}!isActive@{isActive}} +\index{isActive@{isActive}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily virtual int abstract\+Out\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} + + + +Reimplemented in \mbox{\hyperlink{classout___s_p_i_led_ae87041b49ca8c6484a72c3c29955fbfb}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_a18f9c90ab80a5bf00049e25c2c4657a5}{out\+\_\+pwm}}, \mbox{\hyperlink{classout___motor_ac2a224d74421c1a28d34a83779a45bdc}{out\+\_\+\+Motor}}, \mbox{\hyperlink{classout___modbus_a6b94efbbbbea5a4ad3b489dba8f9b268}{out\+\_\+\+Modbus}}, \mbox{\hyperlink{classout__dmx_a691d16146df96df12df763a90cdc6d92}{out\+\_\+dmx}}, and \mbox{\hyperlink{classout___a_c_ab2d5debf137c9cc91ce0b58a72da0766}{out\+\_\+\+AC}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classabstract_out_af93f193ac2f0621d0ba08f1f1d11e8b7}\label{classabstract_out_af93f193ac2f0621d0ba08f1f1d11e8b7}} +\index{abstractOut@{abstractOut}!item@{item}} +\index{item@{item}!abstractOut@{abstractOut}} +\doxysubsubsection{\texorpdfstring{item}{item}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_item}{Item}}$\ast$ abstract\+Out\+::item\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractout_8h}{abstractout.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/classch_persistent.eps b/docs/latex/classch_persistent.eps new file mode 100644 index 0000000..3c46290 --- /dev/null +++ b/docs/latex/classch_persistent.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 439.560425 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.137500 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(chPersistent) cw +(mbPersistent) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (chPersistent) 0.000000 1.000000 box + (mbPersistent) 0.000000 0.000000 box + +% ----- relations ----- + +solid +1 0.000000 0.250000 out +solid +0 0.000000 0.750000 in diff --git a/docs/latex/classch_persistent.tex b/docs/latex/classch_persistent.tex new file mode 100644 index 0000000..9d623b2 --- /dev/null +++ b/docs/latex/classch_persistent.tex @@ -0,0 +1,17 @@ +\hypertarget{classch_persistent}{}\doxysection{ch\+Persistent Class Reference} +\label{classch_persistent}\index{chPersistent@{chPersistent}} + + +{\ttfamily \#include $<$abstractout.\+h$>$} + +Inheritance diagram for ch\+Persistent\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{classch_persistent} +\end{center} +\end{figure} + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractout_8h}{abstractout.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/classcolor_channel.eps b/docs/latex/classcolor_channel.eps new file mode 100644 index 0000000..281c29c --- /dev/null +++ b/docs/latex/classcolor_channel.eps @@ -0,0 +1,219 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 277.777771 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.800000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 3 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(colorChannel) cw +(abstractOut) cw +(abstractCh) cw +(out_dmx) cw +(out_pwm) cw +(out_SPILed) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (colorChannel) 1.000000 1.000000 box + (abstractOut) 1.000000 2.000000 box + (abstractCh) 1.000000 3.000000 box + (out_dmx) 0.000000 0.000000 box + (out_pwm) 1.000000 0.000000 box + (out_SPILed) 2.000000 0.000000 box + +% ----- relations ----- + +solid +0 1.000000 1.000000 out +solid +1 1.000000 2.000000 in +solid +0 1.000000 2.000000 out +solid +1 1.000000 3.000000 in +solid +1 1.000000 0.250000 out +solid +0.000000 2.000000 1.000000 conn +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in +solid +0 2.000000 0.750000 in diff --git a/docs/latex/classcolor_channel.tex b/docs/latex/classcolor_channel.tex new file mode 100644 index 0000000..21afe9d --- /dev/null +++ b/docs/latex/classcolor_channel.tex @@ -0,0 +1,90 @@ +\hypertarget{classcolor_channel}{}\doxysection{color\+Channel Class Reference} +\label{classcolor_channel}\index{colorChannel@{colorChannel}} + + +{\ttfamily \#include $<$colorchannel.\+h$>$} + +Inheritance diagram for color\+Channel\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{classcolor_channel} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classcolor_channel_af5d8c0be99104c65484560a5a1c2cfd2}{color\+Channel}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classcolor_channel_a9d7354cc266c98067b7b43cbf8707feb}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool to\+Execute=true) override +\item +virtual int \mbox{\hyperlink{classcolor_channel_a6c835d00ee8af04679f03465617c2873}{Pixel\+Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool show=true)=0 +\item +short \mbox{\hyperlink{classcolor_channel_a09276ae99835316b9a222df20fb45097}{get\+Channel\+Addr}} (short n=0) +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +short \mbox{\hyperlink{classcolor_channel_a4dd2fa654273b3bf9a3413ee2966fdce}{iaddr}} +\item +short \mbox{\hyperlink{classcolor_channel_ace14fae07b9d51500db5d0191f5a7081}{num\+Args}} +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classcolor_channel_af5d8c0be99104c65484560a5a1c2cfd2}\label{classcolor_channel_af5d8c0be99104c65484560a5a1c2cfd2}} +\index{colorChannel@{colorChannel}!colorChannel@{colorChannel}} +\index{colorChannel@{colorChannel}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{colorChannel()}{colorChannel()}} +{\footnotesize\ttfamily color\+Channel\+::color\+Channel (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classcolor_channel_a9d7354cc266c98067b7b43cbf8707feb}\label{classcolor_channel_a9d7354cc266c98067b7b43cbf8707feb}} +\index{colorChannel@{colorChannel}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}} +{\footnotesize\ttfamily int color\+Channel\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{to\+Execute = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}{abstract\+Out}}. + +\mbox{\Hypertarget{classcolor_channel_a09276ae99835316b9a222df20fb45097}\label{classcolor_channel_a09276ae99835316b9a222df20fb45097}} +\index{colorChannel@{colorChannel}!getChannelAddr@{getChannelAddr}} +\index{getChannelAddr@{getChannelAddr}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{getChannelAddr()}{getChannelAddr()}} +{\footnotesize\ttfamily short color\+Channel\+::get\+Channel\+Addr (\begin{DoxyParamCaption}\item[{short}]{n = {\ttfamily 0} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classcolor_channel_a6c835d00ee8af04679f03465617c2873}\label{classcolor_channel_a6c835d00ee8af04679f03465617c2873}} +\index{colorChannel@{colorChannel}!PixelCtrl@{PixelCtrl}} +\index{PixelCtrl@{PixelCtrl}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{PixelCtrl()}{PixelCtrl()}} +{\footnotesize\ttfamily virtual int color\+Channel\+::\+Pixel\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{show = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}} + + + +Implemented in \mbox{\hyperlink{classout___s_p_i_led_a75d1e9b7333a0bb9777df807634607b3}{out\+\_\+\+S\+P\+I\+Led}}, \mbox{\hyperlink{classout__pwm_adcb4bb3d03aa8c4b7e12796136b5cd1e}{out\+\_\+pwm}}, and \mbox{\hyperlink{classout__dmx_ad33a8e316c5c8d409cddf4dcd8b15fcc}{out\+\_\+dmx}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classcolor_channel_a4dd2fa654273b3bf9a3413ee2966fdce}\label{classcolor_channel_a4dd2fa654273b3bf9a3413ee2966fdce}} +\index{colorChannel@{colorChannel}!iaddr@{iaddr}} +\index{iaddr@{iaddr}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{iaddr}{iaddr}} +{\footnotesize\ttfamily short color\+Channel\+::iaddr\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classcolor_channel_ace14fae07b9d51500db5d0191f5a7081}\label{classcolor_channel_ace14fae07b9d51500db5d0191f5a7081}} +\index{colorChannel@{colorChannel}!numArgs@{numArgs}} +\index{numArgs@{numArgs}!colorChannel@{colorChannel}} +\doxysubsubsection{\texorpdfstring{numArgs}{numArgs}} +{\footnotesize\ttfamily short color\+Channel\+::num\+Args\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{colorchannel_8h}{colorchannel.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{colorchannel_8cpp}{colorchannel.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classin__ccs811.eps b/docs/latex/classin__ccs811.eps new file mode 100644 index 0000000..c0494cd --- /dev/null +++ b/docs/latex/classin__ccs811.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 740.740723 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.675000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(in_ccs811) cw +(abstractIn) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (in_ccs811) 0.000000 0.000000 box + (abstractIn) 0.000000 1.000000 box + (abstractCh) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/classin__ccs811.tex b/docs/latex/classin__ccs811.tex new file mode 100644 index 0000000..bb7e705 --- /dev/null +++ b/docs/latex/classin__ccs811.tex @@ -0,0 +1,79 @@ +\hypertarget{classin__ccs811}{}\doxysection{in\+\_\+ccs811 Class Reference} +\label{classin__ccs811}\index{in\_ccs811@{in\_ccs811}} + + +{\ttfamily \#include $<$in\+\_\+ccs811\+\_\+hdc1080.\+h$>$} + +Inheritance diagram for in\+\_\+ccs811\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classin__ccs811} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classin__ccs811_a7e09edfd07c7c4f2e429e64f008f31c3}{in\+\_\+ccs811}} (\mbox{\hyperlink{class_input}{Input}} $\ast$\+\_\+in) +\item +int \mbox{\hyperlink{classin__ccs811_adc24e341d0df945dc9db85051fe03e48}{Setup}} () override +\item +int \mbox{\hyperlink{classin__ccs811_a8b57db4521730e66f090a3d6752fd112}{Poll}} (short cause) override +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{classin__ccs811_a2fe4385cca41473cefc8906920c60a22}{print\+Driver\+Error}} (C\+C\+S811\+Core\+::status error\+Code) +\item +void \mbox{\hyperlink{classin__ccs811_a6c2de6eca576ea6043b6899163a2d2ea}{print\+Sensor\+Error}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classin__ccs811_a7e09edfd07c7c4f2e429e64f008f31c3}\label{classin__ccs811_a7e09edfd07c7c4f2e429e64f008f31c3}} +\index{in\_ccs811@{in\_ccs811}!in\_ccs811@{in\_ccs811}} +\index{in\_ccs811@{in\_ccs811}!in\_ccs811@{in\_ccs811}} +\doxysubsubsection{\texorpdfstring{in\_ccs811()}{in\_ccs811()}} +{\footnotesize\ttfamily in\+\_\+ccs811\+::in\+\_\+ccs811 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_input}{Input}} $\ast$}]{\+\_\+in }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classin__ccs811_a8b57db4521730e66f090a3d6752fd112}\label{classin__ccs811_a8b57db4521730e66f090a3d6752fd112}} +\index{in\_ccs811@{in\_ccs811}!Poll@{Poll}} +\index{Poll@{Poll}!in\_ccs811@{in\_ccs811}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int in\+\_\+ccs811\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classin__ccs811_a2fe4385cca41473cefc8906920c60a22}\label{classin__ccs811_a2fe4385cca41473cefc8906920c60a22}} +\index{in\_ccs811@{in\_ccs811}!printDriverError@{printDriverError}} +\index{printDriverError@{printDriverError}!in\_ccs811@{in\_ccs811}} +\doxysubsubsection{\texorpdfstring{printDriverError()}{printDriverError()}} +{\footnotesize\ttfamily void in\+\_\+ccs811\+::print\+Driver\+Error (\begin{DoxyParamCaption}\item[{C\+C\+S811\+Core\+::status}]{error\+Code }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classin__ccs811_a6c2de6eca576ea6043b6899163a2d2ea}\label{classin__ccs811_a6c2de6eca576ea6043b6899163a2d2ea}} +\index{in\_ccs811@{in\_ccs811}!printSensorError@{printSensorError}} +\index{printSensorError@{printSensorError}!in\_ccs811@{in\_ccs811}} +\doxysubsubsection{\texorpdfstring{printSensorError()}{printSensorError()}} +{\footnotesize\ttfamily void in\+\_\+ccs811\+::print\+Sensor\+Error (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classin__ccs811_adc24e341d0df945dc9db85051fe03e48}\label{classin__ccs811_adc24e341d0df945dc9db85051fe03e48}} +\index{in\_ccs811@{in\_ccs811}!Setup@{Setup}} +\index{Setup@{Setup}!in\_ccs811@{in\_ccs811}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int in\+\_\+ccs811\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8h}{in\+\_\+ccs811\+\_\+hdc1080.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8cpp}{in\+\_\+ccs811\+\_\+hdc1080.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classin__hdc1080.eps b/docs/latex/classin__hdc1080.eps new file mode 100644 index 0000000..9ef2153 --- /dev/null +++ b/docs/latex/classin__hdc1080.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 697.674438 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.716667 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(in_hdc1080) cw +(abstractIn) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (in_hdc1080) 0.000000 0.000000 box + (abstractIn) 0.000000 1.000000 box + (abstractCh) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/classin__hdc1080.tex b/docs/latex/classin__hdc1080.tex new file mode 100644 index 0000000..501e317 --- /dev/null +++ b/docs/latex/classin__hdc1080.tex @@ -0,0 +1,71 @@ +\hypertarget{classin__hdc1080}{}\doxysection{in\+\_\+hdc1080 Class Reference} +\label{classin__hdc1080}\index{in\_hdc1080@{in\_hdc1080}} + + +{\ttfamily \#include $<$in\+\_\+ccs811\+\_\+hdc1080.\+h$>$} + +Inheritance diagram for in\+\_\+hdc1080\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classin__hdc1080} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classin__hdc1080_a1045683d0e3ef4ddddc5a12753df323e}{in\+\_\+hdc1080}} (\mbox{\hyperlink{class_input}{Input}} $\ast$\+\_\+in) +\item +int \mbox{\hyperlink{classin__hdc1080_ae8e077105f9b80dcf682cdc2bd4a95e3}{Setup}} () override +\item +int \mbox{\hyperlink{classin__hdc1080_a94cf44b2a347e2ee295fad5798f7ef54}{Poll}} (short cause) override +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{classin__hdc1080_ac1427b20242a2c829c118e8c4ed1d82a}{print\+Serial\+Number}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classin__hdc1080_a1045683d0e3ef4ddddc5a12753df323e}\label{classin__hdc1080_a1045683d0e3ef4ddddc5a12753df323e}} +\index{in\_hdc1080@{in\_hdc1080}!in\_hdc1080@{in\_hdc1080}} +\index{in\_hdc1080@{in\_hdc1080}!in\_hdc1080@{in\_hdc1080}} +\doxysubsubsection{\texorpdfstring{in\_hdc1080()}{in\_hdc1080()}} +{\footnotesize\ttfamily in\+\_\+hdc1080\+::in\+\_\+hdc1080 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_input}{Input}} $\ast$}]{\+\_\+in }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classin__hdc1080_a94cf44b2a347e2ee295fad5798f7ef54}\label{classin__hdc1080_a94cf44b2a347e2ee295fad5798f7ef54}} +\index{in\_hdc1080@{in\_hdc1080}!Poll@{Poll}} +\index{Poll@{Poll}!in\_hdc1080@{in\_hdc1080}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int in\+\_\+hdc1080\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classin__hdc1080_ac1427b20242a2c829c118e8c4ed1d82a}\label{classin__hdc1080_ac1427b20242a2c829c118e8c4ed1d82a}} +\index{in\_hdc1080@{in\_hdc1080}!printSerialNumber@{printSerialNumber}} +\index{printSerialNumber@{printSerialNumber}!in\_hdc1080@{in\_hdc1080}} +\doxysubsubsection{\texorpdfstring{printSerialNumber()}{printSerialNumber()}} +{\footnotesize\ttfamily void in\+\_\+hdc1080\+::print\+Serial\+Number (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classin__hdc1080_ae8e077105f9b80dcf682cdc2bd4a95e3}\label{classin__hdc1080_ae8e077105f9b80dcf682cdc2bd4a95e3}} +\index{in\_hdc1080@{in\_hdc1080}!Setup@{Setup}} +\index{Setup@{Setup}!in\_hdc1080@{in\_hdc1080}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int in\+\_\+hdc1080\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8h}{in\+\_\+ccs811\+\_\+hdc1080.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8cpp}{in\+\_\+ccs811\+\_\+hdc1080.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classitem_cmd.tex b/docs/latex/classitem_cmd.tex new file mode 100644 index 0000000..9c4085e --- /dev/null +++ b/docs/latex/classitem_cmd.tex @@ -0,0 +1,339 @@ +\hypertarget{classitem_cmd}{}\doxysection{item\+Cmd Class Reference} +\label{classitem_cmd}\index{itemCmd@{itemCmd}} + + +{\ttfamily \#include $<$item\+Cmd.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classitem_cmd_a0bb584552fc43e5f081ab839a56e6f47}{item\+Cmd}} (uint8\+\_\+t \+\_\+type=\mbox{\hyperlink{item_cmd_8h_a89b3fb099d3038f85ed3b573ba64d031}{S\+T\+\_\+\+V\+O\+ID}}, uint8\+\_\+t \+\_\+code=\mbox{\hyperlink{item_cmd_8h_a9bbd3f606a1c37e525a172fa9b6b345d}{C\+M\+D\+\_\+\+V\+O\+ID}}) +\item +\mbox{\hyperlink{classitem_cmd_a1d55aaa33dbc0e9cd5c24682434eceb5}{item\+Cmd}} (float val) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_ae41a813edbb1cdbc09792cae5dd2f434}{assign\+From}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} from) +\item +bool \mbox{\hyperlink{classitem_cmd_aea24f60f90bfe69d65669c06007421fc}{load\+Item}} (\mbox{\hyperlink{class_item}{Item}} $\ast$item, bool include\+Command=false) +\item +bool \mbox{\hyperlink{classitem_cmd_ab1b5e501888d0944b6c1215d58b524cf}{save\+Item}} (\mbox{\hyperlink{class_item}{Item}} $\ast$item, bool include\+Command=false) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_aa6d1298546ecd8bfdbeae946e8d8fb93}{Int}} (int32\+\_\+t i) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a00d824ac0ccb48770e01c69c83f6f265}{Int}} (uint32\+\_\+t i) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a8b1cc0b2b9e5f30f4cf9bb4db21988ac}{Cmd}} (uint8\+\_\+t i) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a7fcb37674371093f11886bc7d1d39825}{H\+SV}} (uint16\+\_\+t h, uint8\+\_\+t s, uint8\+\_\+t v) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_adf272eeb6a9d65581ea3b773e94a9f3f}{HS}} (uint16\+\_\+t h, uint8\+\_\+t s) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_aa820840f665aa22da6a25361ac5a3e37}{R\+GB}} (uint8\+\_\+t r, uint8\+\_\+t g, uint8\+\_\+t \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a07a886dbecc927d8d016436197a2f554}{R\+G\+BW}} (uint8\+\_\+t r, uint8\+\_\+t g, uint8\+\_\+t \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}, uint8\+\_\+t w) +\item +bool \mbox{\hyperlink{classitem_cmd_a80e4577e896d7d015402709153cc66cd}{setH}} (uint16\+\_\+t) +\item +bool \mbox{\hyperlink{classitem_cmd_aed6c891043edd0083ea036494956da93}{setS}} (uint8\+\_\+t) +\item +uint16\+\_\+t \mbox{\hyperlink{classitem_cmd_ad694475a5854b6fc65de797814bf6c34}{getH}} () +\item +uint16\+\_\+t \mbox{\hyperlink{classitem_cmd_ae583a6f85cc8e8f8c9fbca9e74874629}{getS}} () +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a599d3dda4601b317d4bc8c5d28309553}{set\+Arg\+Type}} (uint8\+\_\+t) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_a76db1daeacf143c857f06049949e8aa9}{Percents}} (int i) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_aa1e4243bd415e9b639deb9bc195775d4}{Percents255}} (int i) +\item +uint8\+\_\+t \mbox{\hyperlink{classitem_cmd_ac79ae89527f223885ef02db1c46ef20c}{get\+Suffix}} () +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_ab0c9dd09c598686d46dec923550d2e47}{set\+Suffix}} (uint8\+\_\+t suffix) +\item +bool \mbox{\hyperlink{classitem_cmd_a2557d6a4edf34be8d98d5629327041b6}{increment\+Percents}} (int16\+\_\+t) +\item +bool \mbox{\hyperlink{classitem_cmd_ae0224e0c9b5d1aff2bb75f48c79f9711}{incrementH}} (int16\+\_\+t) +\item +bool \mbox{\hyperlink{classitem_cmd_ad4f3518f0b46b17152cdf18229e77f97}{incrementS}} (int16\+\_\+t) +\item +long int \mbox{\hyperlink{classitem_cmd_accd4361f950ca4929aaa9fd09aa82dd7}{get\+Int}} () +\item +short \mbox{\hyperlink{classitem_cmd_a7e931f05bd5160906078edc9b69f2a81}{get\+Percents}} (bool inverse=false) +\item +short \mbox{\hyperlink{classitem_cmd_a35a4a9458cc6550ed6a4891599e6bf9e}{get\+Percents255}} (bool inverse=false) +\item +uint8\+\_\+t \mbox{\hyperlink{classitem_cmd_a3ebb3c736df555ec4761713244195efb}{get\+Cmd}} () +\item +uint8\+\_\+t \mbox{\hyperlink{classitem_cmd_afbb1ad437067315b7317b0846d71c7c7}{get\+Arg\+Type}} () +\item +uint8\+\_\+t \mbox{\hyperlink{classitem_cmd_a96d4c944d09209825c3a5f770ff9b662}{get\+Cmd\+Param}} () +\item +char $\ast$ \mbox{\hyperlink{classitem_cmd_a4400a0876f9f852f654bc7c5530ef00f}{to\+String}} (char $\ast$Buffer, int buf\+Len, int send\+Flags=\mbox{\hyperlink{item_cmd_8h_aebe7823b286110926c2da2893b56a7da}{S\+E\+N\+D\+\_\+\+C\+O\+M\+M\+A\+ND}}$\vert$\mbox{\hyperlink{item_cmd_8h_adba0eeb6b1a5678cea10f4a823829b24}{S\+E\+N\+D\+\_\+\+P\+A\+R\+A\+M\+E\+T\+E\+RS}}) +\item +bool \mbox{\hyperlink{classitem_cmd_aedd2c4f5da90fbe521be950f8f0d5f67}{is\+Command}} () +\item +bool \mbox{\hyperlink{classitem_cmd_a1c268b594eb9f4ea77ae8683f777e7ef}{is\+Value}} () +\item +bool \mbox{\hyperlink{classitem_cmd_aac6f0edbc2226dab5086a50537e31eb8}{is\+Color}} () +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_acd8e47506003ffd28db64d6a6c443300}{set\+Default}} () +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{classitem_cmd_af635936afc4c65095b1828bd32d5e9ca}{set\+Chan\+Type}} (short chan\+Type) +\item +void \mbox{\hyperlink{classitem_cmd_a313a3ec3e6507dc0b7bc6238a81ce53a}{debug\+Out}} () +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{unionitem_cmd_store}{item\+Cmd\+Store}} \mbox{\hyperlink{classitem_cmd_a4c421cb3f527b95459233ea210f6dfce}{cmd}} +\item +\mbox{\hyperlink{unionitem_arg_store}{item\+Arg\+Store}} \mbox{\hyperlink{classitem_cmd_ac8c117086fcec929c6cb214815705be3}{param}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classitem_cmd_a0bb584552fc43e5f081ab839a56e6f47}\label{classitem_cmd_a0bb584552fc43e5f081ab839a56e6f47}} +\index{itemCmd@{itemCmd}!itemCmd@{itemCmd}} +\index{itemCmd@{itemCmd}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{itemCmd()}{itemCmd()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily item\+Cmd\+::item\+Cmd (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{\+\_\+type = {\ttfamily \mbox{\hyperlink{item_cmd_8h_a89b3fb099d3038f85ed3b573ba64d031}{S\+T\+\_\+\+V\+O\+ID}}}, }\item[{uint8\+\_\+t}]{\+\_\+code = {\ttfamily \mbox{\hyperlink{item_cmd_8h_a9bbd3f606a1c37e525a172fa9b6b345d}{C\+M\+D\+\_\+\+V\+O\+ID}}} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a1d55aaa33dbc0e9cd5c24682434eceb5}\label{classitem_cmd_a1d55aaa33dbc0e9cd5c24682434eceb5}} +\index{itemCmd@{itemCmd}!itemCmd@{itemCmd}} +\index{itemCmd@{itemCmd}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{itemCmd()}{itemCmd()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily item\+Cmd\+::item\+Cmd (\begin{DoxyParamCaption}\item[{float}]{val }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classitem_cmd_ae41a813edbb1cdbc09792cae5dd2f434}\label{classitem_cmd_ae41a813edbb1cdbc09792cae5dd2f434}} +\index{itemCmd@{itemCmd}!assignFrom@{assignFrom}} +\index{assignFrom@{assignFrom}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{assignFrom()}{assignFrom()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::assign\+From (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{from }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a8b1cc0b2b9e5f30f4cf9bb4db21988ac}\label{classitem_cmd_a8b1cc0b2b9e5f30f4cf9bb4db21988ac}} +\index{itemCmd@{itemCmd}!Cmd@{Cmd}} +\index{Cmd@{Cmd}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{Cmd()}{Cmd()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+Cmd (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a313a3ec3e6507dc0b7bc6238a81ce53a}\label{classitem_cmd_a313a3ec3e6507dc0b7bc6238a81ce53a}} +\index{itemCmd@{itemCmd}!debugOut@{debugOut}} +\index{debugOut@{debugOut}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{debugOut()}{debugOut()}} +{\footnotesize\ttfamily void item\+Cmd\+::debug\+Out (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_afbb1ad437067315b7317b0846d71c7c7}\label{classitem_cmd_afbb1ad437067315b7317b0846d71c7c7}} +\index{itemCmd@{itemCmd}!getArgType@{getArgType}} +\index{getArgType@{getArgType}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getArgType()}{getArgType()}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+::get\+Arg\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a3ebb3c736df555ec4761713244195efb}\label{classitem_cmd_a3ebb3c736df555ec4761713244195efb}} +\index{itemCmd@{itemCmd}!getCmd@{getCmd}} +\index{getCmd@{getCmd}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getCmd()}{getCmd()}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+::get\+Cmd (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a96d4c944d09209825c3a5f770ff9b662}\label{classitem_cmd_a96d4c944d09209825c3a5f770ff9b662}} +\index{itemCmd@{itemCmd}!getCmdParam@{getCmdParam}} +\index{getCmdParam@{getCmdParam}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getCmdParam()}{getCmdParam()}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+::get\+Cmd\+Param (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ad694475a5854b6fc65de797814bf6c34}\label{classitem_cmd_ad694475a5854b6fc65de797814bf6c34}} +\index{itemCmd@{itemCmd}!getH@{getH}} +\index{getH@{getH}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getH()}{getH()}} +{\footnotesize\ttfamily uint16\+\_\+t item\+Cmd\+::getH (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_accd4361f950ca4929aaa9fd09aa82dd7}\label{classitem_cmd_accd4361f950ca4929aaa9fd09aa82dd7}} +\index{itemCmd@{itemCmd}!getInt@{getInt}} +\index{getInt@{getInt}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getInt()}{getInt()}} +{\footnotesize\ttfamily long int item\+Cmd\+::get\+Int (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a7e931f05bd5160906078edc9b69f2a81}\label{classitem_cmd_a7e931f05bd5160906078edc9b69f2a81}} +\index{itemCmd@{itemCmd}!getPercents@{getPercents}} +\index{getPercents@{getPercents}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getPercents()}{getPercents()}} +{\footnotesize\ttfamily short item\+Cmd\+::get\+Percents (\begin{DoxyParamCaption}\item[{bool}]{inverse = {\ttfamily false} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a35a4a9458cc6550ed6a4891599e6bf9e}\label{classitem_cmd_a35a4a9458cc6550ed6a4891599e6bf9e}} +\index{itemCmd@{itemCmd}!getPercents255@{getPercents255}} +\index{getPercents255@{getPercents255}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getPercents255()}{getPercents255()}} +{\footnotesize\ttfamily short item\+Cmd\+::get\+Percents255 (\begin{DoxyParamCaption}\item[{bool}]{inverse = {\ttfamily false} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ae583a6f85cc8e8f8c9fbca9e74874629}\label{classitem_cmd_ae583a6f85cc8e8f8c9fbca9e74874629}} +\index{itemCmd@{itemCmd}!getS@{getS}} +\index{getS@{getS}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getS()}{getS()}} +{\footnotesize\ttfamily uint16\+\_\+t item\+Cmd\+::getS (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ac79ae89527f223885ef02db1c46ef20c}\label{classitem_cmd_ac79ae89527f223885ef02db1c46ef20c}} +\index{itemCmd@{itemCmd}!getSuffix@{getSuffix}} +\index{getSuffix@{getSuffix}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{getSuffix()}{getSuffix()}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+::get\+Suffix (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_adf272eeb6a9d65581ea3b773e94a9f3f}\label{classitem_cmd_adf272eeb6a9d65581ea3b773e94a9f3f}} +\index{itemCmd@{itemCmd}!HS@{HS}} +\index{HS@{HS}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{HS()}{HS()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+HS (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{h, }\item[{uint8\+\_\+t}]{s }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a7fcb37674371093f11886bc7d1d39825}\label{classitem_cmd_a7fcb37674371093f11886bc7d1d39825}} +\index{itemCmd@{itemCmd}!HSV@{HSV}} +\index{HSV@{HSV}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{HSV()}{HSV()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+H\+SV (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{h, }\item[{uint8\+\_\+t}]{s, }\item[{uint8\+\_\+t}]{v }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ae0224e0c9b5d1aff2bb75f48c79f9711}\label{classitem_cmd_ae0224e0c9b5d1aff2bb75f48c79f9711}} +\index{itemCmd@{itemCmd}!incrementH@{incrementH}} +\index{incrementH@{incrementH}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{incrementH()}{incrementH()}} +{\footnotesize\ttfamily bool item\+Cmd\+::incrementH (\begin{DoxyParamCaption}\item[{int16\+\_\+t}]{dif }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a2557d6a4edf34be8d98d5629327041b6}\label{classitem_cmd_a2557d6a4edf34be8d98d5629327041b6}} +\index{itemCmd@{itemCmd}!incrementPercents@{incrementPercents}} +\index{incrementPercents@{incrementPercents}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{incrementPercents()}{incrementPercents()}} +{\footnotesize\ttfamily bool item\+Cmd\+::increment\+Percents (\begin{DoxyParamCaption}\item[{int16\+\_\+t}]{dif }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ad4f3518f0b46b17152cdf18229e77f97}\label{classitem_cmd_ad4f3518f0b46b17152cdf18229e77f97}} +\index{itemCmd@{itemCmd}!incrementS@{incrementS}} +\index{incrementS@{incrementS}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{incrementS()}{incrementS()}} +{\footnotesize\ttfamily bool item\+Cmd\+::incrementS (\begin{DoxyParamCaption}\item[{int16\+\_\+t}]{dif }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aa6d1298546ecd8bfdbeae946e8d8fb93}\label{classitem_cmd_aa6d1298546ecd8bfdbeae946e8d8fb93}} +\index{itemCmd@{itemCmd}!Int@{Int}} +\index{Int@{Int}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{Int()}{Int()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+Int (\begin{DoxyParamCaption}\item[{int32\+\_\+t}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a00d824ac0ccb48770e01c69c83f6f265}\label{classitem_cmd_a00d824ac0ccb48770e01c69c83f6f265}} +\index{itemCmd@{itemCmd}!Int@{Int}} +\index{Int@{Int}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{Int()}{Int()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+Int (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aac6f0edbc2226dab5086a50537e31eb8}\label{classitem_cmd_aac6f0edbc2226dab5086a50537e31eb8}} +\index{itemCmd@{itemCmd}!isColor@{isColor}} +\index{isColor@{isColor}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{isColor()}{isColor()}} +{\footnotesize\ttfamily bool item\+Cmd\+::is\+Color (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aedd2c4f5da90fbe521be950f8f0d5f67}\label{classitem_cmd_aedd2c4f5da90fbe521be950f8f0d5f67}} +\index{itemCmd@{itemCmd}!isCommand@{isCommand}} +\index{isCommand@{isCommand}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{isCommand()}{isCommand()}} +{\footnotesize\ttfamily bool item\+Cmd\+::is\+Command (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a1c268b594eb9f4ea77ae8683f777e7ef}\label{classitem_cmd_a1c268b594eb9f4ea77ae8683f777e7ef}} +\index{itemCmd@{itemCmd}!isValue@{isValue}} +\index{isValue@{isValue}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{isValue()}{isValue()}} +{\footnotesize\ttfamily bool item\+Cmd\+::is\+Value (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aea24f60f90bfe69d65669c06007421fc}\label{classitem_cmd_aea24f60f90bfe69d65669c06007421fc}} +\index{itemCmd@{itemCmd}!loadItem@{loadItem}} +\index{loadItem@{loadItem}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{loadItem()}{loadItem()}} +{\footnotesize\ttfamily bool item\+Cmd\+::load\+Item (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{item, }\item[{bool}]{include\+Command = {\ttfamily false} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a76db1daeacf143c857f06049949e8aa9}\label{classitem_cmd_a76db1daeacf143c857f06049949e8aa9}} +\index{itemCmd@{itemCmd}!Percents@{Percents}} +\index{Percents@{Percents}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{Percents()}{Percents()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+Percents (\begin{DoxyParamCaption}\item[{int}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aa1e4243bd415e9b639deb9bc195775d4}\label{classitem_cmd_aa1e4243bd415e9b639deb9bc195775d4}} +\index{itemCmd@{itemCmd}!Percents255@{Percents255}} +\index{Percents255@{Percents255}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{Percents255()}{Percents255()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+Percents255 (\begin{DoxyParamCaption}\item[{int}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aa820840f665aa22da6a25361ac5a3e37}\label{classitem_cmd_aa820840f665aa22da6a25361ac5a3e37}} +\index{itemCmd@{itemCmd}!RGB@{RGB}} +\index{RGB@{RGB}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{RGB()}{RGB()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+R\+GB (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{r, }\item[{uint8\+\_\+t}]{g, }\item[{uint8\+\_\+t}]{b }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a07a886dbecc927d8d016436197a2f554}\label{classitem_cmd_a07a886dbecc927d8d016436197a2f554}} +\index{itemCmd@{itemCmd}!RGBW@{RGBW}} +\index{RGBW@{RGBW}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{RGBW()}{RGBW()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::\+R\+G\+BW (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{r, }\item[{uint8\+\_\+t}]{g, }\item[{uint8\+\_\+t}]{b, }\item[{uint8\+\_\+t}]{w }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ab1b5e501888d0944b6c1215d58b524cf}\label{classitem_cmd_ab1b5e501888d0944b6c1215d58b524cf}} +\index{itemCmd@{itemCmd}!saveItem@{saveItem}} +\index{saveItem@{saveItem}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{saveItem()}{saveItem()}} +{\footnotesize\ttfamily bool item\+Cmd\+::save\+Item (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{item, }\item[{bool}]{include\+Command = {\ttfamily false} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a599d3dda4601b317d4bc8c5d28309553}\label{classitem_cmd_a599d3dda4601b317d4bc8c5d28309553}} +\index{itemCmd@{itemCmd}!setArgType@{setArgType}} +\index{setArgType@{setArgType}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setArgType()}{setArgType()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::set\+Arg\+Type (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{type }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_af635936afc4c65095b1828bd32d5e9ca}\label{classitem_cmd_af635936afc4c65095b1828bd32d5e9ca}} +\index{itemCmd@{itemCmd}!setChanType@{setChanType}} +\index{setChanType@{setChanType}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setChanType()}{setChanType()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::set\+Chan\+Type (\begin{DoxyParamCaption}\item[{short}]{chan\+Type }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_acd8e47506003ffd28db64d6a6c443300}\label{classitem_cmd_acd8e47506003ffd28db64d6a6c443300}} +\index{itemCmd@{itemCmd}!setDefault@{setDefault}} +\index{setDefault@{setDefault}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setDefault()}{setDefault()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::set\+Default (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a80e4577e896d7d015402709153cc66cd}\label{classitem_cmd_a80e4577e896d7d015402709153cc66cd}} +\index{itemCmd@{itemCmd}!setH@{setH}} +\index{setH@{setH}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setH()}{setH()}} +{\footnotesize\ttfamily bool item\+Cmd\+::setH (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{h }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_aed6c891043edd0083ea036494956da93}\label{classitem_cmd_aed6c891043edd0083ea036494956da93}} +\index{itemCmd@{itemCmd}!setS@{setS}} +\index{setS@{setS}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setS()}{setS()}} +{\footnotesize\ttfamily bool item\+Cmd\+::setS (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{s }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_ab0c9dd09c598686d46dec923550d2e47}\label{classitem_cmd_ab0c9dd09c598686d46dec923550d2e47}} +\index{itemCmd@{itemCmd}!setSuffix@{setSuffix}} +\index{setSuffix@{setSuffix}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{setSuffix()}{setSuffix()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} item\+Cmd\+::set\+Suffix (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{suffix }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classitem_cmd_a4400a0876f9f852f654bc7c5530ef00f}\label{classitem_cmd_a4400a0876f9f852f654bc7c5530ef00f}} +\index{itemCmd@{itemCmd}!toString@{toString}} +\index{toString@{toString}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{toString()}{toString()}} +{\footnotesize\ttfamily char $\ast$ item\+Cmd\+::to\+String (\begin{DoxyParamCaption}\item[{char $\ast$}]{Buffer, }\item[{int}]{buf\+Len, }\item[{int}]{send\+Flags = {\ttfamily \mbox{\hyperlink{item_cmd_8h_aebe7823b286110926c2da2893b56a7da}{S\+E\+N\+D\+\_\+\+C\+O\+M\+M\+A\+ND}}~$\vert$~\mbox{\hyperlink{item_cmd_8h_adba0eeb6b1a5678cea10f4a823829b24}{S\+E\+N\+D\+\_\+\+P\+A\+R\+A\+M\+E\+T\+E\+RS}}} }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classitem_cmd_a4c421cb3f527b95459233ea210f6dfce}\label{classitem_cmd_a4c421cb3f527b95459233ea210f6dfce}} +\index{itemCmd@{itemCmd}!cmd@{cmd}} +\index{cmd@{cmd}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{cmd}{cmd}} +{\footnotesize\ttfamily \mbox{\hyperlink{unionitem_cmd_store}{item\+Cmd\+Store}} item\+Cmd\+::cmd} + +\mbox{\Hypertarget{classitem_cmd_ac8c117086fcec929c6cb214815705be3}\label{classitem_cmd_ac8c117086fcec929c6cb214815705be3}} +\index{itemCmd@{itemCmd}!param@{param}} +\index{param@{param}!itemCmd@{itemCmd}} +\doxysubsubsection{\texorpdfstring{param}{param}} +{\footnotesize\ttfamily \mbox{\hyperlink{unionitem_arg_store}{item\+Arg\+Store}} item\+Cmd\+::param} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8h}{item\+Cmd.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8cpp}{item\+Cmd.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classmb_persistent.eps b/docs/latex/classmb_persistent.eps new file mode 100644 index 0000000..ca3fcb5 --- /dev/null +++ b/docs/latex/classmb_persistent.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 439.560425 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.137500 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(mbPersistent) cw +(chPersistent) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (mbPersistent) 0.000000 0.000000 box + (chPersistent) 0.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in diff --git a/docs/latex/classmb_persistent.tex b/docs/latex/classmb_persistent.tex new file mode 100644 index 0000000..67789a1 --- /dev/null +++ b/docs/latex/classmb_persistent.tex @@ -0,0 +1,79 @@ +\hypertarget{classmb_persistent}{}\doxysection{mb\+Persistent Class Reference} +\label{classmb_persistent}\index{mbPersistent@{mbPersistent}} + + +{\ttfamily \#include $<$out\+\_\+modbus.\+h$>$} + +Inheritance diagram for mb\+Persistent\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{classmb_persistent} +\end{center} +\end{figure} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +int8\+\_\+t \mbox{\hyperlink{classmb_persistent_aa394aed65c6af742dbae150639c7cfc3}{driver\+Status}} +\item +int \mbox{\hyperlink{classmb_persistent_ad204e2cc5ee3a22f9ed332c3c5cab598}{baud}} +\item +uint16\+\_\+t \mbox{\hyperlink{classmb_persistent_a3c94371c87997c1b90d04fce1e076f24}{serial\+Param}} +\item +uint16\+\_\+t \mbox{\hyperlink{classmb_persistent_aa958ac1f496b701507478b9384e7728e}{polling\+Interval}} +\item +uint32\+\_\+t \mbox{\hyperlink{classmb_persistent_a74503e0f253cf91c1e83a1e35693d6fc}{timestamp}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{classmb_persistent_a801983b127a63a82ea3c1c32989ceae8}{polling\+Registers}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{classmb_persistent_a498e43d5538b11348f2165e99e09413f}{parameters}} +\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classmb_persistent_ad204e2cc5ee3a22f9ed332c3c5cab598}\label{classmb_persistent_ad204e2cc5ee3a22f9ed332c3c5cab598}} +\index{mbPersistent@{mbPersistent}!baud@{baud}} +\index{baud@{baud}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{baud}{baud}} +{\footnotesize\ttfamily int mb\+Persistent\+::baud} + +\mbox{\Hypertarget{classmb_persistent_aa394aed65c6af742dbae150639c7cfc3}\label{classmb_persistent_aa394aed65c6af742dbae150639c7cfc3}} +\index{mbPersistent@{mbPersistent}!driverStatus@{driverStatus}} +\index{driverStatus@{driverStatus}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{driverStatus}{driverStatus}} +{\footnotesize\ttfamily int8\+\_\+t mb\+Persistent\+::driver\+Status} + +\mbox{\Hypertarget{classmb_persistent_a498e43d5538b11348f2165e99e09413f}\label{classmb_persistent_a498e43d5538b11348f2165e99e09413f}} +\index{mbPersistent@{mbPersistent}!parameters@{parameters}} +\index{parameters@{parameters}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{parameters}{parameters}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ mb\+Persistent\+::parameters} + +\mbox{\Hypertarget{classmb_persistent_aa958ac1f496b701507478b9384e7728e}\label{classmb_persistent_aa958ac1f496b701507478b9384e7728e}} +\index{mbPersistent@{mbPersistent}!pollingInterval@{pollingInterval}} +\index{pollingInterval@{pollingInterval}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{pollingInterval}{pollingInterval}} +{\footnotesize\ttfamily uint16\+\_\+t mb\+Persistent\+::polling\+Interval} + +\mbox{\Hypertarget{classmb_persistent_a801983b127a63a82ea3c1c32989ceae8}\label{classmb_persistent_a801983b127a63a82ea3c1c32989ceae8}} +\index{mbPersistent@{mbPersistent}!pollingRegisters@{pollingRegisters}} +\index{pollingRegisters@{pollingRegisters}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{pollingRegisters}{pollingRegisters}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ mb\+Persistent\+::polling\+Registers} + +\mbox{\Hypertarget{classmb_persistent_a3c94371c87997c1b90d04fce1e076f24}\label{classmb_persistent_a3c94371c87997c1b90d04fce1e076f24}} +\index{mbPersistent@{mbPersistent}!serialParam@{serialParam}} +\index{serialParam@{serialParam}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{serialParam}{serialParam}} +{\footnotesize\ttfamily uint16\+\_\+t mb\+Persistent\+::serial\+Param} + +\mbox{\Hypertarget{classmb_persistent_a74503e0f253cf91c1e83a1e35693d6fc}\label{classmb_persistent_a74503e0f253cf91c1e83a1e35693d6fc}} +\index{mbPersistent@{mbPersistent}!timestamp@{timestamp}} +\index{timestamp@{timestamp}!mbPersistent@{mbPersistent}} +\doxysubsubsection{\texorpdfstring{timestamp}{timestamp}} +{\footnotesize\ttfamily uint32\+\_\+t mb\+Persistent\+::timestamp} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8h}{out\+\_\+modbus.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout___a_c.eps b/docs/latex/classout___a_c.eps new file mode 100644 index 0000000..93b90d4 --- /dev/null +++ b/docs/latex/classout___a_c.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 705.882324 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.708333 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_AC) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_AC) 0.000000 0.000000 box + (abstractOut) 0.000000 1.000000 box + (abstractCh) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/classout___a_c.tex b/docs/latex/classout___a_c.tex new file mode 100644 index 0000000..a6ed0ff --- /dev/null +++ b/docs/latex/classout___a_c.tex @@ -0,0 +1,119 @@ +\hypertarget{classout___a_c}{}\doxysection{out\+\_\+\+AC Class Reference} +\label{classout___a_c}\index{out\_AC@{out\_AC}} + + +{\ttfamily \#include $<$out\+\_\+ac.\+h$>$} + +Inheritance diagram for out\+\_\+\+AC\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classout___a_c} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout___a_c_a68dc76d1632c64bcd4e9c19bea1a7443}{out\+\_\+\+AC}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout___a_c_a3a7b5b20a7d66870551f3dd485e66de2}{Setup}} () override +\item +int \mbox{\hyperlink{classout___a_c_a40fd702a4d9d621c19bfa140c905e64b}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout___a_c_a763ace53db4e64692d061db48f396aba}{Stop}} () override +\item +int \mbox{\hyperlink{classout___a_c_aba0d1953f95f7d04a24582c40cd26196}{Status}} () override +\item +int \mbox{\hyperlink{classout___a_c_ab2d5debf137c9cc91ce0b58a72da0766}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout___a_c_aeaf2ac4088b2b4b2fd4e1b83755c9964}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool to\+Execute=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{classout___a_c_ae1fe864367b2837872ad28f8f94f6cf0}{Insert\+Data}} (byte \mbox{\hyperlink{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}{data}}\mbox{[}$\,$\mbox{]}, size\+\_\+t size) +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout___a_c_a68dc76d1632c64bcd4e9c19bea1a7443}\label{classout___a_c_a68dc76d1632c64bcd4e9c19bea1a7443}} +\index{out\_AC@{out\_AC}!out\_AC@{out\_AC}} +\index{out\_AC@{out\_AC}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{out\_AC()}{out\_AC()}} +{\footnotesize\ttfamily out\+\_\+\+A\+C\+::out\+\_\+\+AC (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout___a_c_aeaf2ac4088b2b4b2fd4e1b83755c9964}\label{classout___a_c_aeaf2ac4088b2b4b2fd4e1b83755c9964}} +\index{out\_AC@{out\_AC}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{to\+Execute = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___a_c_ae1fe864367b2837872ad28f8f94f6cf0}\label{classout___a_c_ae1fe864367b2837872ad28f8f94f6cf0}} +\index{out\_AC@{out\_AC}!InsertData@{InsertData}} +\index{InsertData@{InsertData}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{InsertData()}{InsertData()}} +{\footnotesize\ttfamily void out\+\_\+\+A\+C\+::\+Insert\+Data (\begin{DoxyParamCaption}\item[{byte}]{data\mbox{[}$\,$\mbox{]}, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classout___a_c_ab2d5debf137c9cc91ce0b58a72da0766}\label{classout___a_c_ab2d5debf137c9cc91ce0b58a72da0766}} +\index{out\_AC@{out\_AC}!isActive@{isActive}} +\index{isActive@{isActive}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___a_c_a40fd702a4d9d621c19bfa140c905e64b}\label{classout___a_c_a40fd702a4d9d621c19bfa140c905e64b}} +\index{out\_AC@{out\_AC}!Poll@{Poll}} +\index{Poll@{Poll}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___a_c_a3a7b5b20a7d66870551f3dd485e66de2}\label{classout___a_c_a3a7b5b20a7d66870551f3dd485e66de2}} +\index{out\_AC@{out\_AC}!Setup@{Setup}} +\index{Setup@{Setup}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___a_c_aba0d1953f95f7d04a24582c40cd26196}\label{classout___a_c_aba0d1953f95f7d04a24582c40cd26196}} +\index{out\_AC@{out\_AC}!Status@{Status}} +\index{Status@{Status}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___a_c_a763ace53db4e64692d061db48f396aba}\label{classout___a_c_a763ace53db4e64692d061db48f396aba}} +\index{out\_AC@{out\_AC}!Stop@{Stop}} +\index{Stop@{Stop}!out\_AC@{out\_AC}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+\+A\+C\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__ac_8h}{out\+\_\+ac.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__ac_8cpp}{out\+\_\+ac.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout___modbus.eps b/docs/latex/classout___modbus.eps new file mode 100644 index 0000000..508af1c --- /dev/null +++ b/docs/latex/classout___modbus.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 674.157288 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.741667 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_Modbus) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_Modbus) 0.000000 0.000000 box + (abstractOut) 0.000000 1.000000 box + (abstractCh) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/classout___modbus.tex b/docs/latex/classout___modbus.tex new file mode 100644 index 0000000..4d58dcf --- /dev/null +++ b/docs/latex/classout___modbus.tex @@ -0,0 +1,152 @@ +\hypertarget{classout___modbus}{}\doxysection{out\+\_\+\+Modbus Class Reference} +\label{classout___modbus}\index{out\_Modbus@{out\_Modbus}} + + +{\ttfamily \#include $<$out\+\_\+modbus.\+h$>$} + +Inheritance diagram for out\+\_\+\+Modbus\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classout___modbus} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout___modbus_ad5aff68ec31c500be860a4f56b095373}{out\+\_\+\+Modbus}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout___modbus_acf5452aac576901614eca795ab4ca440}{Setup}} () override +\item +int \mbox{\hyperlink{classout___modbus_aec6803a6033403f8ac4038236cac5cd9}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout___modbus_a9cb4b395f5f8a6d15dcc429664a4174b}{Stop}} () override +\item +int \mbox{\hyperlink{classout___modbus_acc0fc0ecdb6928cfc7906986b8139780}{Status}} () override +\item +int \mbox{\hyperlink{classout___modbus_a6b94efbbbbea5a4ad3b489dba8f9b268}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout___modbus_a2752cf2376840f3763572963be8785db}{get\+Chan\+Type}} () override +\item +int \mbox{\hyperlink{classout___modbus_a784be57c40d67b41488b9585fe792019}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool to\+Execute=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +bool \mbox{\hyperlink{classout___modbus_aea16d64ad349120558951f92205d5249}{get\+Config}} () +\item +int \mbox{\hyperlink{classout___modbus_a026f3ad193b151565f70a72d1c8ca48b}{find\+Register}} (int register\+Num, int pos\+In\+Buffer) +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classmb_persistent}{mb\+Persistent}} $\ast$ \mbox{\hyperlink{classout___modbus_a78e591ac7d7de9e7a3ab0a6d96263c2b}{store}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout___modbus_ad5aff68ec31c500be860a4f56b095373}\label{classout___modbus_ad5aff68ec31c500be860a4f56b095373}} +\index{out\_Modbus@{out\_Modbus}!out\_Modbus@{out\_Modbus}} +\index{out\_Modbus@{out\_Modbus}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{out\_Modbus()}{out\_Modbus()}} +{\footnotesize\ttfamily out\+\_\+\+Modbus\+::out\+\_\+\+Modbus (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout___modbus_a784be57c40d67b41488b9585fe792019}\label{classout___modbus_a784be57c40d67b41488b9585fe792019}} +\index{out\_Modbus@{out\_Modbus}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{to\+Execute = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___modbus_a026f3ad193b151565f70a72d1c8ca48b}\label{classout___modbus_a026f3ad193b151565f70a72d1c8ca48b}} +\index{out\_Modbus@{out\_Modbus}!findRegister@{findRegister}} +\index{findRegister@{findRegister}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{findRegister()}{findRegister()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::find\+Register (\begin{DoxyParamCaption}\item[{int}]{register\+Num, }\item[{int}]{pos\+In\+Buffer }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classout___modbus_a2752cf2376840f3763572963be8785db}\label{classout___modbus_a2752cf2376840f3763572963be8785db}} +\index{out\_Modbus@{out\_Modbus}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___modbus_aea16d64ad349120558951f92205d5249}\label{classout___modbus_aea16d64ad349120558951f92205d5249}} +\index{out\_Modbus@{out\_Modbus}!getConfig@{getConfig}} +\index{getConfig@{getConfig}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{getConfig()}{getConfig()}} +{\footnotesize\ttfamily bool out\+\_\+\+Modbus\+::get\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classout___modbus_a6b94efbbbbea5a4ad3b489dba8f9b268}\label{classout___modbus_a6b94efbbbbea5a4ad3b489dba8f9b268}} +\index{out\_Modbus@{out\_Modbus}!isActive@{isActive}} +\index{isActive@{isActive}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___modbus_aec6803a6033403f8ac4038236cac5cd9}\label{classout___modbus_aec6803a6033403f8ac4038236cac5cd9}} +\index{out\_Modbus@{out\_Modbus}!Poll@{Poll}} +\index{Poll@{Poll}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___modbus_acf5452aac576901614eca795ab4ca440}\label{classout___modbus_acf5452aac576901614eca795ab4ca440}} +\index{out\_Modbus@{out\_Modbus}!Setup@{Setup}} +\index{Setup@{Setup}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___modbus_acc0fc0ecdb6928cfc7906986b8139780}\label{classout___modbus_acc0fc0ecdb6928cfc7906986b8139780}} +\index{out\_Modbus@{out\_Modbus}!Status@{Status}} +\index{Status@{Status}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___modbus_a9cb4b395f5f8a6d15dcc429664a4174b}\label{classout___modbus_a9cb4b395f5f8a6d15dcc429664a4174b}} +\index{out\_Modbus@{out\_Modbus}!Stop@{Stop}} +\index{Stop@{Stop}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+\+Modbus\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classout___modbus_a78e591ac7d7de9e7a3ab0a6d96263c2b}\label{classout___modbus_a78e591ac7d7de9e7a3ab0a6d96263c2b}} +\index{out\_Modbus@{out\_Modbus}!store@{store}} +\index{store@{store}!out\_Modbus@{out\_Modbus}} +\doxysubsubsection{\texorpdfstring{store}{store}} +{\footnotesize\ttfamily \mbox{\hyperlink{classmb_persistent}{mb\+Persistent}}$\ast$ out\+\_\+\+Modbus\+::store\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8h}{out\+\_\+modbus.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8cpp}{out\+\_\+modbus.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout___motor.eps b/docs/latex/classout___motor.eps new file mode 100644 index 0000000..3ecbbdb --- /dev/null +++ b/docs/latex/classout___motor.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 705.882324 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.708333 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_Motor) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_Motor) 0.000000 0.000000 box + (abstractOut) 0.000000 1.000000 box + (abstractCh) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/classout___motor.tex b/docs/latex/classout___motor.tex new file mode 100644 index 0000000..85fc634 --- /dev/null +++ b/docs/latex/classout___motor.tex @@ -0,0 +1,185 @@ +\hypertarget{classout___motor}{}\doxysection{out\+\_\+\+Motor Class Reference} +\label{classout___motor}\index{out\_Motor@{out\_Motor}} + + +{\ttfamily \#include $<$out\+\_\+motor.\+h$>$} + +Inheritance diagram for out\+\_\+\+Motor\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{classout___motor} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout___motor_a7698763731e54149861a9bdcc18e6344}{out\+\_\+\+Motor}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout___motor_ab9f2b433a4fedd6fec5b9cb504b934f4}{Setup}} () override +\item +int \mbox{\hyperlink{classout___motor_a7a98c58b6c32cc20b7b05ad07a07c231}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout___motor_aafdbaaaf47776dd8c0c5d6bfa32bb3c2}{Stop}} () override +\item +int \mbox{\hyperlink{classout___motor_a47de22f0ce071787ac14a19897337cea}{Status}} () override +\item +int \mbox{\hyperlink{classout___motor_ac2a224d74421c1a28d34a83779a45bdc}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout___motor_afd67d9b6e08f14074a236d5222809226}{get\+Chan\+Type}} () override +\item +int \mbox{\hyperlink{classout___motor_aa731e4d1848e07ac7dc4a99a0ddad942}{Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool to\+Execute=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +int8\+\_\+t \mbox{\hyperlink{classout___motor_aaa2493a4399f63fd8d17e37f0c731791}{pin\+Up}} +\item +int8\+\_\+t \mbox{\hyperlink{classout___motor_af21db4b38c3676a038c93d403b227152}{pin\+Down}} +\item +int8\+\_\+t \mbox{\hyperlink{classout___motor_ae4052839e88ca4a59e83c35400d239cf}{pin\+Feedback}} +\item +int16\+\_\+t \mbox{\hyperlink{classout___motor_a58e72bff70d2915b7b508d0605a082e8}{max\+On\+Time}} +\item +uint16\+\_\+t \mbox{\hyperlink{classout___motor_aa002cd716f47ee74a72dcd4e335b80ae}{feedback\+Open}} +\item +uint16\+\_\+t \mbox{\hyperlink{classout___motor_ad8179a6054b692c3f00c5fa350f59e3f}{feedback\+Closed}} +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{classout___motor_a7ba2681d317e29a412e44741ae1ff5e4}{get\+Config}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout___motor_a7698763731e54149861a9bdcc18e6344}\label{classout___motor_a7698763731e54149861a9bdcc18e6344}} +\index{out\_Motor@{out\_Motor}!out\_Motor@{out\_Motor}} +\index{out\_Motor@{out\_Motor}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{out\_Motor()}{out\_Motor()}} +{\footnotesize\ttfamily out\+\_\+\+Motor\+::out\+\_\+\+Motor (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout___motor_aa731e4d1848e07ac7dc4a99a0ddad942}\label{classout___motor_aa731e4d1848e07ac7dc4a99a0ddad942}} +\index{out\_Motor@{out\_Motor}!Ctrl@{Ctrl}} +\index{Ctrl@{Ctrl}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{Ctrl()}{Ctrl()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{to\+Execute = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_out_aacaa5ef80fdc683ef96a4dc80d24692a}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___motor_afd67d9b6e08f14074a236d5222809226}\label{classout___motor_afd67d9b6e08f14074a236d5222809226}} +\index{out\_Motor@{out\_Motor}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___motor_a7ba2681d317e29a412e44741ae1ff5e4}\label{classout___motor_a7ba2681d317e29a412e44741ae1ff5e4}} +\index{out\_Motor@{out\_Motor}!getConfig@{getConfig}} +\index{getConfig@{getConfig}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{getConfig()}{getConfig()}} +{\footnotesize\ttfamily void out\+\_\+\+Motor\+::get\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classout___motor_ac2a224d74421c1a28d34a83779a45bdc}\label{classout___motor_ac2a224d74421c1a28d34a83779a45bdc}} +\index{out\_Motor@{out\_Motor}!isActive@{isActive}} +\index{isActive@{isActive}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___motor_a7a98c58b6c32cc20b7b05ad07a07c231}\label{classout___motor_a7a98c58b6c32cc20b7b05ad07a07c231}} +\index{out\_Motor@{out\_Motor}!Poll@{Poll}} +\index{Poll@{Poll}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___motor_ab9f2b433a4fedd6fec5b9cb504b934f4}\label{classout___motor_ab9f2b433a4fedd6fec5b9cb504b934f4}} +\index{out\_Motor@{out\_Motor}!Setup@{Setup}} +\index{Setup@{Setup}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___motor_a47de22f0ce071787ac14a19897337cea}\label{classout___motor_a47de22f0ce071787ac14a19897337cea}} +\index{out\_Motor@{out\_Motor}!Status@{Status}} +\index{Status@{Status}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___motor_aafdbaaaf47776dd8c0c5d6bfa32bb3c2}\label{classout___motor_aafdbaaaf47776dd8c0c5d6bfa32bb3c2}} +\index{out\_Motor@{out\_Motor}!Stop@{Stop}} +\index{Stop@{Stop}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+\+Motor\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classout___motor_ad8179a6054b692c3f00c5fa350f59e3f}\label{classout___motor_ad8179a6054b692c3f00c5fa350f59e3f}} +\index{out\_Motor@{out\_Motor}!feedbackClosed@{feedbackClosed}} +\index{feedbackClosed@{feedbackClosed}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{feedbackClosed}{feedbackClosed}} +{\footnotesize\ttfamily uint16\+\_\+t out\+\_\+\+Motor\+::feedback\+Closed} + +\mbox{\Hypertarget{classout___motor_aa002cd716f47ee74a72dcd4e335b80ae}\label{classout___motor_aa002cd716f47ee74a72dcd4e335b80ae}} +\index{out\_Motor@{out\_Motor}!feedbackOpen@{feedbackOpen}} +\index{feedbackOpen@{feedbackOpen}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{feedbackOpen}{feedbackOpen}} +{\footnotesize\ttfamily uint16\+\_\+t out\+\_\+\+Motor\+::feedback\+Open} + +\mbox{\Hypertarget{classout___motor_a58e72bff70d2915b7b508d0605a082e8}\label{classout___motor_a58e72bff70d2915b7b508d0605a082e8}} +\index{out\_Motor@{out\_Motor}!maxOnTime@{maxOnTime}} +\index{maxOnTime@{maxOnTime}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{maxOnTime}{maxOnTime}} +{\footnotesize\ttfamily int16\+\_\+t out\+\_\+\+Motor\+::max\+On\+Time} + +\mbox{\Hypertarget{classout___motor_af21db4b38c3676a038c93d403b227152}\label{classout___motor_af21db4b38c3676a038c93d403b227152}} +\index{out\_Motor@{out\_Motor}!pinDown@{pinDown}} +\index{pinDown@{pinDown}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{pinDown}{pinDown}} +{\footnotesize\ttfamily int8\+\_\+t out\+\_\+\+Motor\+::pin\+Down} + +\mbox{\Hypertarget{classout___motor_ae4052839e88ca4a59e83c35400d239cf}\label{classout___motor_ae4052839e88ca4a59e83c35400d239cf}} +\index{out\_Motor@{out\_Motor}!pinFeedback@{pinFeedback}} +\index{pinFeedback@{pinFeedback}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{pinFeedback}{pinFeedback}} +{\footnotesize\ttfamily int8\+\_\+t out\+\_\+\+Motor\+::pin\+Feedback} + +\mbox{\Hypertarget{classout___motor_aaa2493a4399f63fd8d17e37f0c731791}\label{classout___motor_aaa2493a4399f63fd8d17e37f0c731791}} +\index{out\_Motor@{out\_Motor}!pinUp@{pinUp}} +\index{pinUp@{pinUp}!out\_Motor@{out\_Motor}} +\doxysubsubsection{\texorpdfstring{pinUp}{pinUp}} +{\footnotesize\ttfamily int8\+\_\+t out\+\_\+\+Motor\+::pin\+Up} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__motor_8h}{out\+\_\+motor.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__motor_8cpp}{out\+\_\+motor.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout___s_p_i_led.eps b/docs/latex/classout___s_p_i_led.eps new file mode 100644 index 0000000..a88444c --- /dev/null +++ b/docs/latex/classout___s_p_i_led.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 833.333313 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.600000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_SPILed) cw +(colorChannel) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_SPILed) 0.000000 0.000000 box + (colorChannel) 0.000000 1.000000 box + (abstractOut) 0.000000 2.000000 box + (abstractCh) 0.000000 3.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +0 0.000000 2.000000 out +solid +1 0.000000 3.000000 in diff --git a/docs/latex/classout___s_p_i_led.tex b/docs/latex/classout___s_p_i_led.tex new file mode 100644 index 0000000..ea926ea --- /dev/null +++ b/docs/latex/classout___s_p_i_led.tex @@ -0,0 +1,161 @@ +\hypertarget{classout___s_p_i_led}{}\doxysection{out\+\_\+\+S\+P\+I\+Led Class Reference} +\label{classout___s_p_i_led}\index{out\_SPILed@{out\_SPILed}} + + +{\ttfamily \#include $<$out\+\_\+spiled.\+h$>$} + +Inheritance diagram for out\+\_\+\+S\+P\+I\+Led\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{classout___s_p_i_led} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout___s_p_i_led_ae865d0b2e9d098e3e370488a2eaa1b40}{out\+\_\+\+S\+P\+I\+Led}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout___s_p_i_led_adbe9d6b9a2a5e515e9a372a4c4675b15}{Setup}} () override +\item +int \mbox{\hyperlink{classout___s_p_i_led_a8566a7b80d1a132c00dbaf989880649c}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout___s_p_i_led_a4e24b8a490f8353452b8594dffff8396}{Stop}} () override +\item +int \mbox{\hyperlink{classout___s_p_i_led_a9486de18e156758a12fa257f68314e20}{Status}} () override +\item +int \mbox{\hyperlink{classout___s_p_i_led_ae87041b49ca8c6484a72c3c29955fbfb}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout___s_p_i_led_aac304bcdc354a3667ec99d4c06513b72}{get\+Chan\+Type}} () override +\item +int \mbox{\hyperlink{classout___s_p_i_led_a75d1e9b7333a0bb9777df807634607b3}{Pixel\+Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool show=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{classout___s_p_i_led_a4d13edbe6d02a9519c73283d65d38086}{num\+Leds}} +\item +int8\+\_\+t \mbox{\hyperlink{classout___s_p_i_led_a1ef26d145d52578110f56087df1aa228}{pin}} +\item +int \mbox{\hyperlink{classout___s_p_i_led_a974b04b25156932c97dac2ba794c729f}{leds\+Type}} +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{classout___s_p_i_led_a6bcd6f13a335b380dfa655d5de4cbe75}{get\+Config}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout___s_p_i_led_ae865d0b2e9d098e3e370488a2eaa1b40}\label{classout___s_p_i_led_ae865d0b2e9d098e3e370488a2eaa1b40}} +\index{out\_SPILed@{out\_SPILed}!out\_SPILed@{out\_SPILed}} +\index{out\_SPILed@{out\_SPILed}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{out\_SPILed()}{out\_SPILed()}} +{\footnotesize\ttfamily out\+\_\+\+S\+P\+I\+Led\+::out\+\_\+\+S\+P\+I\+Led (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout___s_p_i_led_aac304bcdc354a3667ec99d4c06513b72}\label{classout___s_p_i_led_aac304bcdc354a3667ec99d4c06513b72}} +\index{out\_SPILed@{out\_SPILed}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___s_p_i_led_a6bcd6f13a335b380dfa655d5de4cbe75}\label{classout___s_p_i_led_a6bcd6f13a335b380dfa655d5de4cbe75}} +\index{out\_SPILed@{out\_SPILed}!getConfig@{getConfig}} +\index{getConfig@{getConfig}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{getConfig()}{getConfig()}} +{\footnotesize\ttfamily void out\+\_\+\+S\+P\+I\+Led\+::get\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classout___s_p_i_led_ae87041b49ca8c6484a72c3c29955fbfb}\label{classout___s_p_i_led_ae87041b49ca8c6484a72c3c29955fbfb}} +\index{out\_SPILed@{out\_SPILed}!isActive@{isActive}} +\index{isActive@{isActive}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout___s_p_i_led_a75d1e9b7333a0bb9777df807634607b3}\label{classout___s_p_i_led_a75d1e9b7333a0bb9777df807634607b3}} +\index{out\_SPILed@{out\_SPILed}!PixelCtrl@{PixelCtrl}} +\index{PixelCtrl@{PixelCtrl}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{PixelCtrl()}{PixelCtrl()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::\+Pixel\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{show = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classcolor_channel_a6c835d00ee8af04679f03465617c2873}{color\+Channel}}. + +\mbox{\Hypertarget{classout___s_p_i_led_a8566a7b80d1a132c00dbaf989880649c}\label{classout___s_p_i_led_a8566a7b80d1a132c00dbaf989880649c}} +\index{out\_SPILed@{out\_SPILed}!Poll@{Poll}} +\index{Poll@{Poll}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___s_p_i_led_adbe9d6b9a2a5e515e9a372a4c4675b15}\label{classout___s_p_i_led_adbe9d6b9a2a5e515e9a372a4c4675b15}} +\index{out\_SPILed@{out\_SPILed}!Setup@{Setup}} +\index{Setup@{Setup}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___s_p_i_led_a9486de18e156758a12fa257f68314e20}\label{classout___s_p_i_led_a9486de18e156758a12fa257f68314e20}} +\index{out\_SPILed@{out\_SPILed}!Status@{Status}} +\index{Status@{Status}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout___s_p_i_led_a4e24b8a490f8353452b8594dffff8396}\label{classout___s_p_i_led_a4e24b8a490f8353452b8594dffff8396}} +\index{out\_SPILed@{out\_SPILed}!Stop@{Stop}} +\index{Stop@{Stop}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classout___s_p_i_led_a974b04b25156932c97dac2ba794c729f}\label{classout___s_p_i_led_a974b04b25156932c97dac2ba794c729f}} +\index{out\_SPILed@{out\_SPILed}!ledsType@{ledsType}} +\index{ledsType@{ledsType}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{ledsType}{ledsType}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::leds\+Type} + +\mbox{\Hypertarget{classout___s_p_i_led_a4d13edbe6d02a9519c73283d65d38086}\label{classout___s_p_i_led_a4d13edbe6d02a9519c73283d65d38086}} +\index{out\_SPILed@{out\_SPILed}!numLeds@{numLeds}} +\index{numLeds@{numLeds}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{numLeds}{numLeds}} +{\footnotesize\ttfamily int out\+\_\+\+S\+P\+I\+Led\+::num\+Leds} + +\mbox{\Hypertarget{classout___s_p_i_led_a1ef26d145d52578110f56087df1aa228}\label{classout___s_p_i_led_a1ef26d145d52578110f56087df1aa228}} +\index{out\_SPILed@{out\_SPILed}!pin@{pin}} +\index{pin@{pin}!out\_SPILed@{out\_SPILed}} +\doxysubsubsection{\texorpdfstring{pin}{pin}} +{\footnotesize\ttfamily int8\+\_\+t out\+\_\+\+S\+P\+I\+Led\+::pin} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__spiled_8h}{out\+\_\+spiled.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__spiled_8cpp}{out\+\_\+spiled.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout__dmx.eps b/docs/latex/classout__dmx.eps new file mode 100644 index 0000000..9c4493e --- /dev/null +++ b/docs/latex/classout__dmx.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 833.333313 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.600000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_dmx) cw +(colorChannel) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_dmx) 0.000000 0.000000 box + (colorChannel) 0.000000 1.000000 box + (abstractOut) 0.000000 2.000000 box + (abstractCh) 0.000000 3.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +0 0.000000 2.000000 out +solid +1 0.000000 3.000000 in diff --git a/docs/latex/classout__dmx.tex b/docs/latex/classout__dmx.tex new file mode 100644 index 0000000..a4ed0ce --- /dev/null +++ b/docs/latex/classout__dmx.tex @@ -0,0 +1,120 @@ +\hypertarget{classout__dmx}{}\doxysection{out\+\_\+dmx Class Reference} +\label{classout__dmx}\index{out\_dmx@{out\_dmx}} + + +{\ttfamily \#include $<$out\+\_\+dmx.\+h$>$} + +Inheritance diagram for out\+\_\+dmx\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{classout__dmx} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout__dmx_a6fc6530587d5b7edfb31540ea2d0faba}{out\+\_\+dmx}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout__dmx_a7bf52f6c7ce630f879de60596b82dd87}{Setup}} () override +\item +int \mbox{\hyperlink{classout__dmx_a0b1d943e9772bf10487010040b948e8a}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout__dmx_a0b9383e7fe30707142915cbc3d0ec772}{Stop}} () override +\item +int \mbox{\hyperlink{classout__dmx_aa5f2590101b1951f4cf5eb57449d8365}{Status}} () override +\item +int \mbox{\hyperlink{classout__dmx_a691d16146df96df12df763a90cdc6d92}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout__dmx_a575351786cdc191555757cd39b4382f5}{get\+Chan\+Type}} () override +\item +virtual int \mbox{\hyperlink{classout__dmx_ad33a8e316c5c8d409cddf4dcd8b15fcc}{Pixel\+Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool show=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout__dmx_a6fc6530587d5b7edfb31540ea2d0faba}\label{classout__dmx_a6fc6530587d5b7edfb31540ea2d0faba}} +\index{out\_dmx@{out\_dmx}!out\_dmx@{out\_dmx}} +\index{out\_dmx@{out\_dmx}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{out\_dmx()}{out\_dmx()}} +{\footnotesize\ttfamily out\+\_\+dmx\+::out\+\_\+dmx (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout__dmx_a575351786cdc191555757cd39b4382f5}\label{classout__dmx_a575351786cdc191555757cd39b4382f5}} +\index{out\_dmx@{out\_dmx}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{abstract\+Out}}. + +\mbox{\Hypertarget{classout__dmx_a691d16146df96df12df763a90cdc6d92}\label{classout__dmx_a691d16146df96df12df763a90cdc6d92}} +\index{out\_dmx@{out\_dmx}!isActive@{isActive}} +\index{isActive@{isActive}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout__dmx_ad33a8e316c5c8d409cddf4dcd8b15fcc}\label{classout__dmx_ad33a8e316c5c8d409cddf4dcd8b15fcc}} +\index{out\_dmx@{out\_dmx}!PixelCtrl@{PixelCtrl}} +\index{PixelCtrl@{PixelCtrl}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{PixelCtrl()}{PixelCtrl()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::\+Pixel\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{show = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classcolor_channel_a6c835d00ee8af04679f03465617c2873}{color\+Channel}}. + +\mbox{\Hypertarget{classout__dmx_a0b1d943e9772bf10487010040b948e8a}\label{classout__dmx_a0b1d943e9772bf10487010040b948e8a}} +\index{out\_dmx@{out\_dmx}!Poll@{Poll}} +\index{Poll@{Poll}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__dmx_a7bf52f6c7ce630f879de60596b82dd87}\label{classout__dmx_a7bf52f6c7ce630f879de60596b82dd87}} +\index{out\_dmx@{out\_dmx}!Setup@{Setup}} +\index{Setup@{Setup}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__dmx_aa5f2590101b1951f4cf5eb57449d8365}\label{classout__dmx_aa5f2590101b1951f4cf5eb57449d8365}} +\index{out\_dmx@{out\_dmx}!Status@{Status}} +\index{Status@{Status}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__dmx_a0b9383e7fe30707142915cbc3d0ec772}\label{classout__dmx_a0b9383e7fe30707142915cbc3d0ec772}} +\index{out\_dmx@{out\_dmx}!Stop@{Stop}} +\index{Stop@{Stop}!out\_dmx@{out\_dmx}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+dmx\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__dmx_8h}{out\+\_\+dmx.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__dmx_8cpp}{out\+\_\+dmx.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classout__pwm.eps b/docs/latex/classout__pwm.eps new file mode 100644 index 0000000..7389273 --- /dev/null +++ b/docs/latex/classout__pwm.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 833.333313 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.600000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(out_pwm) cw +(colorChannel) cw +(abstractOut) cw +(abstractCh) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (out_pwm) 0.000000 0.000000 box + (colorChannel) 0.000000 1.000000 box + (abstractOut) 0.000000 2.000000 box + (abstractCh) 0.000000 3.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +0 0.000000 2.000000 out +solid +1 0.000000 3.000000 in diff --git a/docs/latex/classout__pwm.tex b/docs/latex/classout__pwm.tex new file mode 100644 index 0000000..0bfd688 --- /dev/null +++ b/docs/latex/classout__pwm.tex @@ -0,0 +1,134 @@ +\hypertarget{classout__pwm}{}\doxysection{out\+\_\+pwm Class Reference} +\label{classout__pwm}\index{out\_pwm@{out\_pwm}} + + +{\ttfamily \#include $<$out\+\_\+pwm.\+h$>$} + +Inheritance diagram for out\+\_\+pwm\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{classout__pwm} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classout__pwm_acd3804fb3d24afe569042202bdba2179}{out\+\_\+pwm}} (\mbox{\hyperlink{class_item}{Item}} $\ast$\+\_\+item) +\item +int \mbox{\hyperlink{classout__pwm_a0ba3173e9df1cb61b74a705c270ef7b6}{Setup}} () override +\item +int \mbox{\hyperlink{classout__pwm_a88c460e7ba29e5b068a2defa395cae2c}{Poll}} (short cause) override +\item +int \mbox{\hyperlink{classout__pwm_a9f3fc73a1fff6ecf991d42564a7b8273}{Stop}} () override +\item +int \mbox{\hyperlink{classout__pwm_a01edf9d010b717601898bf3fddecbc3f}{Status}} () override +\item +int \mbox{\hyperlink{classout__pwm_a18f9c90ab80a5bf00049e25c2c4657a5}{is\+Active}} () override +\item +int \mbox{\hyperlink{classout__pwm_a54bea9682560aa628f85a532a363d57a}{get\+Chan\+Type}} () override +\item +int \mbox{\hyperlink{classout__pwm_adcb4bb3d03aa8c4b7e12796136b5cd1e}{Pixel\+Ctrl}} (\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} cmd, char $\ast$sub\+Item=N\+U\+LL, bool show=true) override +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +short \mbox{\hyperlink{classout__pwm_a1d705ffb413e0e5b9c3ad007fdafcbbd}{num\+Channels}} +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classout__pwm_acd3804fb3d24afe569042202bdba2179}\label{classout__pwm_acd3804fb3d24afe569042202bdba2179}} +\index{out\_pwm@{out\_pwm}!out\_pwm@{out\_pwm}} +\index{out\_pwm@{out\_pwm}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{out\_pwm()}{out\_pwm()}} +{\footnotesize\ttfamily out\+\_\+pwm\+::out\+\_\+pwm (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_item}{Item}} $\ast$}]{\+\_\+item }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classout__pwm_a54bea9682560aa628f85a532a363d57a}\label{classout__pwm_a54bea9682560aa628f85a532a363d57a}} +\index{out\_pwm@{out\_pwm}!getChanType@{getChanType}} +\index{getChanType@{getChanType}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{getChanType()}{getChanType()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::get\+Chan\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_a3f7033b9cda791ad810c4837ed5909f2}{abstract\+Out}}. + +\mbox{\Hypertarget{classout__pwm_a18f9c90ab80a5bf00049e25c2c4657a5}\label{classout__pwm_a18f9c90ab80a5bf00049e25c2c4657a5}} +\index{out\_pwm@{out\_pwm}!isActive@{isActive}} +\index{isActive@{isActive}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{isActive()}{isActive()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::is\+Active (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_out_aec9af01cfc42f385cdf36ce51c8f3387}{abstract\+Out}}. + +\mbox{\Hypertarget{classout__pwm_adcb4bb3d03aa8c4b7e12796136b5cd1e}\label{classout__pwm_adcb4bb3d03aa8c4b7e12796136b5cd1e}} +\index{out\_pwm@{out\_pwm}!PixelCtrl@{PixelCtrl}} +\index{PixelCtrl@{PixelCtrl}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{PixelCtrl()}{PixelCtrl()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::\+Pixel\+Ctrl (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{cmd, }\item[{char $\ast$}]{sub\+Item = {\ttfamily NULL}, }\item[{bool}]{show = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classcolor_channel_a6c835d00ee8af04679f03465617c2873}{color\+Channel}}. + +\mbox{\Hypertarget{classout__pwm_a88c460e7ba29e5b068a2defa395cae2c}\label{classout__pwm_a88c460e7ba29e5b068a2defa395cae2c}} +\index{out\_pwm@{out\_pwm}!Poll@{Poll}} +\index{Poll@{Poll}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{Poll()}{Poll()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::\+Poll (\begin{DoxyParamCaption}\item[{short}]{cause }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_a044156a4dc4ca38d3e731b7df23d058a}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__pwm_a0ba3173e9df1cb61b74a705c270ef7b6}\label{classout__pwm_a0ba3173e9df1cb61b74a705c270ef7b6}} +\index{out\_pwm@{out\_pwm}!Setup@{Setup}} +\index{Setup@{Setup}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{Setup()}{Setup()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Implements \mbox{\hyperlink{classabstract_ch_aeaf6346625245be1774a6d27d9cece4e}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__pwm_a01edf9d010b717601898bf3fddecbc3f}\label{classout__pwm_a01edf9d010b717601898bf3fddecbc3f}} +\index{out\_pwm@{out\_pwm}!Status@{Status}} +\index{Status@{Status}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{Status()}{Status()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_aefb8821172a2e66f49ea0da9b7c205a5}{abstract\+Ch}}. + +\mbox{\Hypertarget{classout__pwm_a9f3fc73a1fff6ecf991d42564a7b8273}\label{classout__pwm_a9f3fc73a1fff6ecf991d42564a7b8273}} +\index{out\_pwm@{out\_pwm}!Stop@{Stop}} +\index{Stop@{Stop}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{Stop()}{Stop()}} +{\footnotesize\ttfamily int out\+\_\+pwm\+::\+Stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}} + + + +Reimplemented from \mbox{\hyperlink{classabstract_ch_afb7b6f4586412a13f8f6ac08061e5ae0}{abstract\+Ch}}. + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classout__pwm_a1d705ffb413e0e5b9c3ad007fdafcbbd}\label{classout__pwm_a1d705ffb413e0e5b9c3ad007fdafcbbd}} +\index{out\_pwm@{out\_pwm}!numChannels@{numChannels}} +\index{numChannels@{numChannels}!out\_pwm@{out\_pwm}} +\doxysubsubsection{\texorpdfstring{numChannels}{numChannels}} +{\footnotesize\ttfamily short out\+\_\+pwm\+::num\+Channels\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__pwm_8h}{out\+\_\+pwm.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__pwm_8cpp}{out\+\_\+pwm.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classread_cache.tex b/docs/latex/classread_cache.tex new file mode 100644 index 0000000..7f521a0 --- /dev/null +++ b/docs/latex/classread_cache.tex @@ -0,0 +1,83 @@ +\hypertarget{classread_cache}{}\doxysection{read\+Cache Class Reference} +\label{classread_cache}\index{readCache@{readCache}} + + +{\ttfamily \#include $<$inputs.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classread_cache_ab40001f6ce6d9c8e183751c4a0cd57c9}{read\+Cache}} () +\item +uint16\+\_\+t \mbox{\hyperlink{classread_cache_aa6e9ec22513d70ee0d77b6ab7304d140}{analog\+Read\+Cached}} (uint8\+\_\+t pin) +\item +uint8\+\_\+t \mbox{\hyperlink{classread_cache_a6fd0d58f3d2a4a027a80a2455999d9ae}{digital\+Read\+Cached}} (uint8\+\_\+t pin) +\item +void \mbox{\hyperlink{classread_cache_a7ecad823239b195a10fddb527b122dc7}{invalidate\+Input\+Cache}} () +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +uint8\+\_\+t \mbox{\hyperlink{classread_cache_acc32e1362354c4374519167c5dc5ea21}{addr}} +\item +uint8\+\_\+t \mbox{\hyperlink{classread_cache_a76353391e6c92fdb6381e0d6b120fde5}{type}} +\item +uint16\+\_\+t \mbox{\hyperlink{classread_cache_a0040f14299d3ddf8373b9251f0a69831}{cached\+\_\+data}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classread_cache_ab40001f6ce6d9c8e183751c4a0cd57c9}\label{classread_cache_ab40001f6ce6d9c8e183751c4a0cd57c9}} +\index{readCache@{readCache}!readCache@{readCache}} +\index{readCache@{readCache}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{readCache()}{readCache()}} +{\footnotesize\ttfamily read\+Cache\+::read\+Cache (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classread_cache_aa6e9ec22513d70ee0d77b6ab7304d140}\label{classread_cache_aa6e9ec22513d70ee0d77b6ab7304d140}} +\index{readCache@{readCache}!analogReadCached@{analogReadCached}} +\index{analogReadCached@{analogReadCached}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{analogReadCached()}{analogReadCached()}} +{\footnotesize\ttfamily uint16\+\_\+t read\+Cache\+::analog\+Read\+Cached (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pin }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classread_cache_a6fd0d58f3d2a4a027a80a2455999d9ae}\label{classread_cache_a6fd0d58f3d2a4a027a80a2455999d9ae}} +\index{readCache@{readCache}!digitalReadCached@{digitalReadCached}} +\index{digitalReadCached@{digitalReadCached}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{digitalReadCached()}{digitalReadCached()}} +{\footnotesize\ttfamily uint8\+\_\+t read\+Cache\+::digital\+Read\+Cached (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pin }\end{DoxyParamCaption})} + +T\+BD\mbox{\Hypertarget{classread_cache_a7ecad823239b195a10fddb527b122dc7}\label{classread_cache_a7ecad823239b195a10fddb527b122dc7}} +\index{readCache@{readCache}!invalidateInputCache@{invalidateInputCache}} +\index{invalidateInputCache@{invalidateInputCache}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{invalidateInputCache()}{invalidateInputCache()}} +{\footnotesize\ttfamily void read\+Cache\+::invalidate\+Input\+Cache (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{classread_cache_acc32e1362354c4374519167c5dc5ea21}\label{classread_cache_acc32e1362354c4374519167c5dc5ea21}} +\index{readCache@{readCache}!addr@{addr}} +\index{addr@{addr}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{addr}{addr}} +{\footnotesize\ttfamily uint8\+\_\+t read\+Cache\+::addr\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classread_cache_a0040f14299d3ddf8373b9251f0a69831}\label{classread_cache_a0040f14299d3ddf8373b9251f0a69831}} +\index{readCache@{readCache}!cached\_data@{cached\_data}} +\index{cached\_data@{cached\_data}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{cached\_data}{cached\_data}} +{\footnotesize\ttfamily uint16\+\_\+t read\+Cache\+::cached\+\_\+data\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{classread_cache_a76353391e6c92fdb6381e0d6b120fde5}\label{classread_cache_a76353391e6c92fdb6381e0d6b120fde5}} +\index{readCache@{readCache}!type@{type}} +\index{type@{type}!readCache@{readCache}} +\doxysubsubsection{\texorpdfstring{type}{type}} +{\footnotesize\ttfamily uint8\+\_\+t read\+Cache\+::type\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8h}{inputs.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8cpp}{inputs.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/classstatus_l_e_d.tex b/docs/latex/classstatus_l_e_d.tex new file mode 100644 index 0000000..66f7f05 --- /dev/null +++ b/docs/latex/classstatus_l_e_d.tex @@ -0,0 +1,61 @@ +\hypertarget{classstatus_l_e_d}{}\doxysection{status\+L\+ED Class Reference} +\label{classstatus_l_e_d}\index{statusLED@{statusLED}} + + +{\ttfamily \#include $<$statusled.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{classstatus_l_e_d_ae9a8652af566b29edf336fff51e239e1}{status\+L\+ED}} (uint8\+\_\+t pattern=0) +\item +void \mbox{\hyperlink{classstatus_l_e_d_a3e1eff776b7ffdac123d76b7419c89e6}{set}} (uint8\+\_\+t pattern) +\item +void \mbox{\hyperlink{classstatus_l_e_d_a611fa4b90edb00fa5b42923ea091cd9c}{show}} (uint8\+\_\+t pattern) +\item +void \mbox{\hyperlink{classstatus_l_e_d_a9692bced087cfc8a27f5a19601ebfc6e}{poll}} () +\item +void \mbox{\hyperlink{classstatus_l_e_d_a84044dc9116245b50a8c45792772dd7f}{flash}} (uint8\+\_\+t pattern) +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{classstatus_l_e_d_ae9a8652af566b29edf336fff51e239e1}\label{classstatus_l_e_d_ae9a8652af566b29edf336fff51e239e1}} +\index{statusLED@{statusLED}!statusLED@{statusLED}} +\index{statusLED@{statusLED}!statusLED@{statusLED}} +\doxysubsubsection{\texorpdfstring{statusLED()}{statusLED()}} +{\footnotesize\ttfamily status\+L\+E\+D\+::status\+L\+ED (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pattern = {\ttfamily 0} }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{classstatus_l_e_d_a84044dc9116245b50a8c45792772dd7f}\label{classstatus_l_e_d_a84044dc9116245b50a8c45792772dd7f}} +\index{statusLED@{statusLED}!flash@{flash}} +\index{flash@{flash}!statusLED@{statusLED}} +\doxysubsubsection{\texorpdfstring{flash()}{flash()}} +{\footnotesize\ttfamily void status\+L\+E\+D\+::flash (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pattern }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classstatus_l_e_d_a9692bced087cfc8a27f5a19601ebfc6e}\label{classstatus_l_e_d_a9692bced087cfc8a27f5a19601ebfc6e}} +\index{statusLED@{statusLED}!poll@{poll}} +\index{poll@{poll}!statusLED@{statusLED}} +\doxysubsubsection{\texorpdfstring{poll()}{poll()}} +{\footnotesize\ttfamily void status\+L\+E\+D\+::poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classstatus_l_e_d_a3e1eff776b7ffdac123d76b7419c89e6}\label{classstatus_l_e_d_a3e1eff776b7ffdac123d76b7419c89e6}} +\index{statusLED@{statusLED}!set@{set}} +\index{set@{set}!statusLED@{statusLED}} +\doxysubsubsection{\texorpdfstring{set()}{set()}} +{\footnotesize\ttfamily void status\+L\+E\+D\+::set (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pattern }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{classstatus_l_e_d_a611fa4b90edb00fa5b42923ea091cd9c}\label{classstatus_l_e_d_a611fa4b90edb00fa5b42923ea091cd9c}} +\index{statusLED@{statusLED}!show@{show}} +\index{show@{show}!statusLED@{statusLED}} +\doxysubsubsection{\texorpdfstring{show()}{show()}} +{\footnotesize\ttfamily void status\+L\+E\+D\+::show (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pattern }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{statusled_8h}{statusled.\+h}}\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{statusled_8cpp}{statusled.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/colorchannel_8cpp.tex b/docs/latex/colorchannel_8cpp.tex new file mode 100644 index 0000000..a5027c1 --- /dev/null +++ b/docs/latex/colorchannel_8cpp.tex @@ -0,0 +1,8 @@ +\hypertarget{colorchannel_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/colorchannel.cpp File Reference} +\label{colorchannel_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.cpp}} +{\ttfamily \#include \char`\"{}colorchannel.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline diff --git a/docs/latex/colorchannel_8h.tex b/docs/latex/colorchannel_8h.tex new file mode 100644 index 0000000..f39ea6b --- /dev/null +++ b/docs/latex/colorchannel_8h.tex @@ -0,0 +1,10 @@ +\hypertarget{colorchannel_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/colorchannel.h File Reference} +\label{colorchannel_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/colorchannel.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classcolor_channel}{color\+Channel}} +\end{DoxyCompactItemize} diff --git a/docs/latex/dir_82d7c1f210290ade9e0671f857ad27e3.tex b/docs/latex/dir_82d7c1f210290ade9e0671f857ad27e3.tex new file mode 100644 index 0000000..d0b4c79 --- /dev/null +++ b/docs/latex/dir_82d7c1f210290ade9e0671f857ad27e3.tex @@ -0,0 +1,68 @@ +\hypertarget{dir_82d7c1f210290ade9e0671f857ad27e3}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub Directory Reference} +\label{dir_82d7c1f210290ade9e0671f857ad27e3}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub Directory Reference@{/Users/andrey/Documents/Arduino/lighthub/lighthub Directory Reference}} +\doxysubsection*{Directories} +\begin{DoxyCompactItemize} +\item +directory \mbox{\hyperlink{dir_a26efa385a8243117251e7dce4d75390}{modules}} +\end{DoxyCompactItemize} +\doxysubsection*{Files} +\begin{DoxyCompactItemize} +\item +file \mbox{\hyperlink{abstractch_8cpp}{abstractch.\+cpp}} +\item +file \mbox{\hyperlink{abstractch_8h}{abstractch.\+h}} +\item +file \mbox{\hyperlink{abstractin_8cpp}{abstractin.\+cpp}} +\item +file \mbox{\hyperlink{abstractin_8h}{abstractin.\+h}} +\item +file \mbox{\hyperlink{abstractout_8h}{abstractout.\+h}} +\item +file \mbox{\hyperlink{bright_8cpp}{bright.\+cpp}} +\item +file \mbox{\hyperlink{bright_8h}{bright.\+h}} +\item +file \mbox{\hyperlink{colorchannel_8cpp}{colorchannel.\+cpp}} +\item +file \mbox{\hyperlink{colorchannel_8h}{colorchannel.\+h}} +\item +file \mbox{\hyperlink{dmx_8cpp}{dmx.\+cpp}} +\item +file \mbox{\hyperlink{dmx_8h}{dmx.\+h}} +\item +file \mbox{\hyperlink{inputs_8cpp}{inputs.\+cpp}} +\item +file \mbox{\hyperlink{inputs_8h}{inputs.\+h}} +\item +file \mbox{\hyperlink{item_8cpp}{item.\+cpp}} +\item +file \mbox{\hyperlink{item_8h}{item.\+h}} +\item +file \mbox{\hyperlink{item_cmd_8cpp}{item\+Cmd.\+cpp}} +\item +file \mbox{\hyperlink{item_cmd_8h}{item\+Cmd.\+h}} +\item +file \mbox{\hyperlink{main_8cpp}{main.\+cpp}} +\item +file \mbox{\hyperlink{main_8h}{main.\+h}} +\item +file \mbox{\hyperlink{options_8h}{options.\+h}} +\item +file \mbox{\hyperlink{ow_term_8cpp}{ow\+Term.\+cpp}} +\item +file \mbox{\hyperlink{ow_term_8h}{ow\+Term.\+h}} +\item +file \mbox{\hyperlink{statusled_8cpp}{statusled.\+cpp}} +\item +file \mbox{\hyperlink{statusled_8h}{statusled.\+h}} +\item +file \mbox{\hyperlink{streamlog_8cpp}{streamlog.\+cpp}} +\item +file \mbox{\hyperlink{streamlog_8h}{streamlog.\+h}} +\item +file \mbox{\hyperlink{textconst_8h}{textconst.\+h}} +\item +file \mbox{\hyperlink{utils_8cpp}{utils.\+cpp}} +\item +file \mbox{\hyperlink{utils_8h}{utils.\+h}} +\end{DoxyCompactItemize} diff --git a/docs/latex/dir_a26efa385a8243117251e7dce4d75390.tex b/docs/latex/dir_a26efa385a8243117251e7dce4d75390.tex new file mode 100644 index 0000000..f3e5b0b --- /dev/null +++ b/docs/latex/dir_a26efa385a8243117251e7dce4d75390.tex @@ -0,0 +1,33 @@ +\hypertarget{dir_a26efa385a8243117251e7dce4d75390}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules Directory Reference} +\label{dir_a26efa385a8243117251e7dce4d75390}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules Directory Reference@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules Directory Reference}} +\doxysubsection*{Files} +\begin{DoxyCompactItemize} +\item +file \mbox{\hyperlink{in__ccs811__hdc1080_8cpp}{in\+\_\+ccs811\+\_\+hdc1080.\+cpp}} +\item +file \mbox{\hyperlink{in__ccs811__hdc1080_8h}{in\+\_\+ccs811\+\_\+hdc1080.\+h}} +\item +file \mbox{\hyperlink{out__ac_8cpp}{out\+\_\+ac.\+cpp}} +\item +file \mbox{\hyperlink{out__ac_8h}{out\+\_\+ac.\+h}} +\item +file \mbox{\hyperlink{out__dmx_8cpp}{out\+\_\+dmx.\+cpp}} +\item +file \mbox{\hyperlink{out__dmx_8h}{out\+\_\+dmx.\+h}} +\item +file \mbox{\hyperlink{out__modbus_8cpp}{out\+\_\+modbus.\+cpp}} +\item +file \mbox{\hyperlink{out__modbus_8h}{out\+\_\+modbus.\+h}} +\item +file \mbox{\hyperlink{out__motor_8cpp}{out\+\_\+motor.\+cpp}} +\item +file \mbox{\hyperlink{out__motor_8h}{out\+\_\+motor.\+h}} +\item +file \mbox{\hyperlink{out__pwm_8cpp}{out\+\_\+pwm.\+cpp}} +\item +file \mbox{\hyperlink{out__pwm_8h}{out\+\_\+pwm.\+h}} +\item +file \mbox{\hyperlink{out__spiled_8cpp}{out\+\_\+spiled.\+cpp}} +\item +file \mbox{\hyperlink{out__spiled_8h}{out\+\_\+spiled.\+h}} +\end{DoxyCompactItemize} diff --git a/docs/latex/dmx_8cpp.tex b/docs/latex/dmx_8cpp.tex new file mode 100644 index 0000000..0d4acd8 --- /dev/null +++ b/docs/latex/dmx_8cpp.tex @@ -0,0 +1,153 @@ +\hypertarget{dmx_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/dmx.cpp File Reference} +\label{dmx_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.cpp}} +{\ttfamily \#include \char`\"{}dmx.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{dmx_8cpp_abbcd6bfbf8b1c05b00ba38459d41ff4d}{item\+Ctrl2}} (char $\ast$name, int r, int g, int \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}, int w) +\item +void \mbox{\hyperlink{dmx_8cpp_a5e41f4011e2b2e2d400e4ac43a6541b1}{D\+M\+X\+Immediate\+Update}} (short tch, short r, short g, short \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}, short w) +\item +void \mbox{\hyperlink{dmx_8cpp_ac68a7598c52a61fd8e6300149f466b97}{D\+M\+X\+Semi\+Immediate\+Update}} (short tch, short trh, int val) +\item +void \mbox{\hyperlink{dmx_8cpp_a9f36c84bdc0b4926f7d7b28bbe47cdc0}{D\+M\+Xput}} (void) +\item +void \mbox{\hyperlink{dmx_8cpp_a60c7644cd41f9525ada7b3799d015591}{D\+M\+X\+Update}} (void) +\item +void \mbox{\hyperlink{dmx_8cpp_a0d740c517b312806bd34e2ac3155c3a5}{D\+M\+X\+Check}} (void) +\item +void \mbox{\hyperlink{dmx_8cpp_a285d3a152ce7d118b6273c094110f742}{on\+Dmx\+Frame}} (uint16\+\_\+t universe, uint16\+\_\+t length, uint8\+\_\+t sequence, uint8\+\_\+t $\ast$\mbox{\hyperlink{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}{data}}, I\+P\+Address remote\+IP) +\item +void \mbox{\hyperlink{dmx_8cpp_a45b57fab4ca3a3f7d3491506945c6326}{D\+M\+Xin\+Setup}} (int channels) +\item +void \mbox{\hyperlink{dmx_8cpp_af5aeb81882ff7b4fe7cccb66a12539df}{D\+M\+Xout\+Setup}} (int channels) +\item +void \mbox{\hyperlink{dmx_8cpp_a7c166d810404d3d15f663706271de37f}{D\+M\+X\+O\+U\+T\+\_\+propagate}} () +\item +void \mbox{\hyperlink{dmx_8cpp_af7ba5611c2c7485938cbf745ed65741f}{Artnet\+Setup}} () +\item +void \mbox{\hyperlink{dmx_8cpp_a3faac041a7441faf18a1ad72021be077}{Dmx\+Write\+Buf}} (uint16\+\_\+t chan, uint8\+\_\+t val) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +uint8\+\_\+t $\ast$ \mbox{\hyperlink{dmx_8cpp_adf18ba2ebc00417130f18dc9e34411c6}{D\+M\+Xin}} = N\+U\+LL +\item +int \mbox{\hyperlink{dmx_8cpp_aa205b5f0812aa803bb5ebe6067ca7bc7}{D\+\_\+\+State}} =0 +\item +unsigned long \mbox{\hyperlink{dmx_8cpp_a2bdd5f5b1312117028586d6a9a11a02c}{D\+\_\+checkT}} =0 +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{dmx_8cpp_a012787f09a43864616e2b44349b29352}{items}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{dmx_8cpp_a077dba54087a1a3694f810ba9fd06933}{dmx\+Arr}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{dmx_8cpp_af7ba5611c2c7485938cbf745ed65741f}\label{dmx_8cpp_af7ba5611c2c7485938cbf745ed65741f}} +\index{dmx.cpp@{dmx.cpp}!ArtnetSetup@{ArtnetSetup}} +\index{ArtnetSetup@{ArtnetSetup}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{ArtnetSetup()}{ArtnetSetup()}} +{\footnotesize\ttfamily void Artnet\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a0d740c517b312806bd34e2ac3155c3a5}\label{dmx_8cpp_a0d740c517b312806bd34e2ac3155c3a5}} +\index{dmx.cpp@{dmx.cpp}!DMXCheck@{DMXCheck}} +\index{DMXCheck@{DMXCheck}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXCheck()}{DMXCheck()}} +{\footnotesize\ttfamily void D\+M\+X\+Check (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a5e41f4011e2b2e2d400e4ac43a6541b1}\label{dmx_8cpp_a5e41f4011e2b2e2d400e4ac43a6541b1}} +\index{dmx.cpp@{dmx.cpp}!DMXImmediateUpdate@{DMXImmediateUpdate}} +\index{DMXImmediateUpdate@{DMXImmediateUpdate}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXImmediateUpdate()}{DMXImmediateUpdate()}} +{\footnotesize\ttfamily void D\+M\+X\+Immediate\+Update (\begin{DoxyParamCaption}\item[{short}]{tch, }\item[{short}]{r, }\item[{short}]{g, }\item[{short}]{b, }\item[{short}]{w }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a45b57fab4ca3a3f7d3491506945c6326}\label{dmx_8cpp_a45b57fab4ca3a3f7d3491506945c6326}} +\index{dmx.cpp@{dmx.cpp}!DMXinSetup@{DMXinSetup}} +\index{DMXinSetup@{DMXinSetup}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXinSetup()}{DMXinSetup()}} +{\footnotesize\ttfamily void D\+M\+Xin\+Setup (\begin{DoxyParamCaption}\item[{int}]{channels }\end{DoxyParamCaption})} + +To\+Do\+: re-\/init\mbox{\Hypertarget{dmx_8cpp_a7c166d810404d3d15f663706271de37f}\label{dmx_8cpp_a7c166d810404d3d15f663706271de37f}} +\index{dmx.cpp@{dmx.cpp}!DMXOUT\_propagate@{DMXOUT\_propagate}} +\index{DMXOUT\_propagate@{DMXOUT\_propagate}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXOUT\_propagate()}{DMXOUT\_propagate()}} +{\footnotesize\ttfamily void D\+M\+X\+O\+U\+T\+\_\+propagate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_af5aeb81882ff7b4fe7cccb66a12539df}\label{dmx_8cpp_af5aeb81882ff7b4fe7cccb66a12539df}} +\index{dmx.cpp@{dmx.cpp}!DMXoutSetup@{DMXoutSetup}} +\index{DMXoutSetup@{DMXoutSetup}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXoutSetup()}{DMXoutSetup()}} +{\footnotesize\ttfamily void D\+M\+Xout\+Setup (\begin{DoxyParamCaption}\item[{int}]{channels }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a9f36c84bdc0b4926f7d7b28bbe47cdc0}\label{dmx_8cpp_a9f36c84bdc0b4926f7d7b28bbe47cdc0}} +\index{dmx.cpp@{dmx.cpp}!DMXput@{DMXput}} +\index{DMXput@{DMXput}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXput()}{DMXput()}} +{\footnotesize\ttfamily void D\+M\+Xput (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_ac68a7598c52a61fd8e6300149f466b97}\label{dmx_8cpp_ac68a7598c52a61fd8e6300149f466b97}} +\index{dmx.cpp@{dmx.cpp}!DMXSemiImmediateUpdate@{DMXSemiImmediateUpdate}} +\index{DMXSemiImmediateUpdate@{DMXSemiImmediateUpdate}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXSemiImmediateUpdate()}{DMXSemiImmediateUpdate()}} +{\footnotesize\ttfamily void D\+M\+X\+Semi\+Immediate\+Update (\begin{DoxyParamCaption}\item[{short}]{tch, }\item[{short}]{trh, }\item[{int}]{val }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a60c7644cd41f9525ada7b3799d015591}\label{dmx_8cpp_a60c7644cd41f9525ada7b3799d015591}} +\index{dmx.cpp@{dmx.cpp}!DMXUpdate@{DMXUpdate}} +\index{DMXUpdate@{DMXUpdate}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXUpdate()}{DMXUpdate()}} +{\footnotesize\ttfamily void D\+M\+X\+Update (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a3faac041a7441faf18a1ad72021be077}\label{dmx_8cpp_a3faac041a7441faf18a1ad72021be077}} +\index{dmx.cpp@{dmx.cpp}!DmxWriteBuf@{DmxWriteBuf}} +\index{DmxWriteBuf@{DmxWriteBuf}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DmxWriteBuf()}{DmxWriteBuf()}} +{\footnotesize\ttfamily void Dmx\+Write\+Buf (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{chan, }\item[{uint8\+\_\+t}]{val }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_abbcd6bfbf8b1c05b00ba38459d41ff4d}\label{dmx_8cpp_abbcd6bfbf8b1c05b00ba38459d41ff4d}} +\index{dmx.cpp@{dmx.cpp}!itemCtrl2@{itemCtrl2}} +\index{itemCtrl2@{itemCtrl2}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{itemCtrl2()}{itemCtrl2()}} +{\footnotesize\ttfamily int item\+Ctrl2 (\begin{DoxyParamCaption}\item[{char $\ast$}]{name, }\item[{int}]{r, }\item[{int}]{g, }\item[{int}]{b, }\item[{int}]{w }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8cpp_a285d3a152ce7d118b6273c094110f742}\label{dmx_8cpp_a285d3a152ce7d118b6273c094110f742}} +\index{dmx.cpp@{dmx.cpp}!onDmxFrame@{onDmxFrame}} +\index{onDmxFrame@{onDmxFrame}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{onDmxFrame()}{onDmxFrame()}} +{\footnotesize\ttfamily void on\+Dmx\+Frame (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{universe, }\item[{uint16\+\_\+t}]{length, }\item[{uint8\+\_\+t}]{sequence, }\item[{uint8\+\_\+t $\ast$}]{data, }\item[{I\+P\+Address}]{remote\+IP }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{dmx_8cpp_a2bdd5f5b1312117028586d6a9a11a02c}\label{dmx_8cpp_a2bdd5f5b1312117028586d6a9a11a02c}} +\index{dmx.cpp@{dmx.cpp}!D\_checkT@{D\_checkT}} +\index{D\_checkT@{D\_checkT}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{D\_checkT}{D\_checkT}} +{\footnotesize\ttfamily unsigned long D\+\_\+checkT =0} + +\mbox{\Hypertarget{dmx_8cpp_aa205b5f0812aa803bb5ebe6067ca7bc7}\label{dmx_8cpp_aa205b5f0812aa803bb5ebe6067ca7bc7}} +\index{dmx.cpp@{dmx.cpp}!D\_State@{D\_State}} +\index{D\_State@{D\_State}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{D\_State}{D\_State}} +{\footnotesize\ttfamily int D\+\_\+\+State =0} + +\mbox{\Hypertarget{dmx_8cpp_a077dba54087a1a3694f810ba9fd06933}\label{dmx_8cpp_a077dba54087a1a3694f810ba9fd06933}} +\index{dmx.cpp@{dmx.cpp}!dmxArr@{dmxArr}} +\index{dmxArr@{dmxArr}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{dmxArr}{dmxArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ dmx\+Arr\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{dmx_8cpp_adf18ba2ebc00417130f18dc9e34411c6}\label{dmx_8cpp_adf18ba2ebc00417130f18dc9e34411c6}} +\index{dmx.cpp@{dmx.cpp}!DMXin@{DMXin}} +\index{DMXin@{DMXin}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{DMXin}{DMXin}} +{\footnotesize\ttfamily uint8\+\_\+t$\ast$ D\+M\+Xin = N\+U\+LL} + +\mbox{\Hypertarget{dmx_8cpp_a012787f09a43864616e2b44349b29352}\label{dmx_8cpp_a012787f09a43864616e2b44349b29352}} +\index{dmx.cpp@{dmx.cpp}!items@{items}} +\index{items@{items}!dmx.cpp@{dmx.cpp}} +\doxysubsubsection{\texorpdfstring{items}{items}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ items\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/dmx_8h.tex b/docs/latex/dmx_8h.tex new file mode 100644 index 0000000..fdb79fc --- /dev/null +++ b/docs/latex/dmx_8h.tex @@ -0,0 +1,142 @@ +\hypertarget{dmx_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/dmx.h File Reference} +\label{dmx_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/dmx.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{dmx_8h_aa2d5ab73cfb3c82efe053ca1c3ba2b9a}{D\+\_\+\+U\+P\+D\+A\+T\+E\+D1}}~1 +\item +\#define \mbox{\hyperlink{dmx_8h_aaf60f29640da1e595ec01b5827cddc48}{D\+\_\+\+U\+P\+D\+A\+T\+E\+D2}}~2 +\item +\#define \mbox{\hyperlink{dmx_8h_a7dfd71e0bf48e87b1310b8bf75297aed}{D\+\_\+\+U\+P\+D\+A\+T\+E\+D3}}~4 +\item +\#define \mbox{\hyperlink{dmx_8h_a449cd019aa3e4cd80cb821450bd4f4bb}{D\+\_\+\+U\+P\+D\+A\+T\+E\+D4}}~8 +\item +\#define \mbox{\hyperlink{dmx_8h_a14052474033fc0b01cc36a5f52cfb575}{D\+\_\+\+C\+H\+E\+C\+KT}}~300 +\item +\#define \mbox{\hyperlink{dmx_8h_ac69ee46f4a51ed14f0d68628c2dec71d}{M\+A\+X\+\_\+\+C\+H\+A\+N\+N\+E\+LS}}~60 +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{dmx_8h_a9f36c84bdc0b4926f7d7b28bbe47cdc0}{D\+M\+Xput}} (void) +\item +void \mbox{\hyperlink{dmx_8h_a45b57fab4ca3a3f7d3491506945c6326}{D\+M\+Xin\+Setup}} (int channels) +\item +void \mbox{\hyperlink{dmx_8h_af5aeb81882ff7b4fe7cccb66a12539df}{D\+M\+Xout\+Setup}} (int channels) +\item +void \mbox{\hyperlink{dmx_8h_af7ba5611c2c7485938cbf745ed65741f}{Artnet\+Setup}} () +\item +void \mbox{\hyperlink{dmx_8h_a0d740c517b312806bd34e2ac3155c3a5}{D\+M\+X\+Check}} (void) +\item +int \mbox{\hyperlink{dmx_8h_abbcd6bfbf8b1c05b00ba38459d41ff4d}{item\+Ctrl2}} (char $\ast$name, int r, int g, int \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}, int w) +\item +void \mbox{\hyperlink{dmx_8h_a3faac041a7441faf18a1ad72021be077}{Dmx\+Write\+Buf}} (uint16\+\_\+t chan, uint8\+\_\+t val) +\item +void \mbox{\hyperlink{dmx_8h_a7c166d810404d3d15f663706271de37f}{D\+M\+X\+O\+U\+T\+\_\+propagate}} () +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{dmx_8h_a077dba54087a1a3694f810ba9fd06933}{dmx\+Arr}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{dmx_8h_a14052474033fc0b01cc36a5f52cfb575}\label{dmx_8h_a14052474033fc0b01cc36a5f52cfb575}} +\index{dmx.h@{dmx.h}!D\_CHECKT@{D\_CHECKT}} +\index{D\_CHECKT@{D\_CHECKT}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{D\_CHECKT}{D\_CHECKT}} +{\footnotesize\ttfamily \#define D\+\_\+\+C\+H\+E\+C\+KT~300} + +\mbox{\Hypertarget{dmx_8h_aa2d5ab73cfb3c82efe053ca1c3ba2b9a}\label{dmx_8h_aa2d5ab73cfb3c82efe053ca1c3ba2b9a}} +\index{dmx.h@{dmx.h}!D\_UPDATED1@{D\_UPDATED1}} +\index{D\_UPDATED1@{D\_UPDATED1}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{D\_UPDATED1}{D\_UPDATED1}} +{\footnotesize\ttfamily \#define D\+\_\+\+U\+P\+D\+A\+T\+E\+D1~1} + +\mbox{\Hypertarget{dmx_8h_aaf60f29640da1e595ec01b5827cddc48}\label{dmx_8h_aaf60f29640da1e595ec01b5827cddc48}} +\index{dmx.h@{dmx.h}!D\_UPDATED2@{D\_UPDATED2}} +\index{D\_UPDATED2@{D\_UPDATED2}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{D\_UPDATED2}{D\_UPDATED2}} +{\footnotesize\ttfamily \#define D\+\_\+\+U\+P\+D\+A\+T\+E\+D2~2} + +\mbox{\Hypertarget{dmx_8h_a7dfd71e0bf48e87b1310b8bf75297aed}\label{dmx_8h_a7dfd71e0bf48e87b1310b8bf75297aed}} +\index{dmx.h@{dmx.h}!D\_UPDATED3@{D\_UPDATED3}} +\index{D\_UPDATED3@{D\_UPDATED3}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{D\_UPDATED3}{D\_UPDATED3}} +{\footnotesize\ttfamily \#define D\+\_\+\+U\+P\+D\+A\+T\+E\+D3~4} + +\mbox{\Hypertarget{dmx_8h_a449cd019aa3e4cd80cb821450bd4f4bb}\label{dmx_8h_a449cd019aa3e4cd80cb821450bd4f4bb}} +\index{dmx.h@{dmx.h}!D\_UPDATED4@{D\_UPDATED4}} +\index{D\_UPDATED4@{D\_UPDATED4}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{D\_UPDATED4}{D\_UPDATED4}} +{\footnotesize\ttfamily \#define D\+\_\+\+U\+P\+D\+A\+T\+E\+D4~8} + +\mbox{\Hypertarget{dmx_8h_ac69ee46f4a51ed14f0d68628c2dec71d}\label{dmx_8h_ac69ee46f4a51ed14f0d68628c2dec71d}} +\index{dmx.h@{dmx.h}!MAX\_CHANNELS@{MAX\_CHANNELS}} +\index{MAX\_CHANNELS@{MAX\_CHANNELS}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{MAX\_CHANNELS}{MAX\_CHANNELS}} +{\footnotesize\ttfamily \#define M\+A\+X\+\_\+\+C\+H\+A\+N\+N\+E\+LS~60} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{dmx_8h_af7ba5611c2c7485938cbf745ed65741f}\label{dmx_8h_af7ba5611c2c7485938cbf745ed65741f}} +\index{dmx.h@{dmx.h}!ArtnetSetup@{ArtnetSetup}} +\index{ArtnetSetup@{ArtnetSetup}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{ArtnetSetup()}{ArtnetSetup()}} +{\footnotesize\ttfamily void Artnet\+Setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_a0d740c517b312806bd34e2ac3155c3a5}\label{dmx_8h_a0d740c517b312806bd34e2ac3155c3a5}} +\index{dmx.h@{dmx.h}!DMXCheck@{DMXCheck}} +\index{DMXCheck@{DMXCheck}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DMXCheck()}{DMXCheck()}} +{\footnotesize\ttfamily void D\+M\+X\+Check (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_a45b57fab4ca3a3f7d3491506945c6326}\label{dmx_8h_a45b57fab4ca3a3f7d3491506945c6326}} +\index{dmx.h@{dmx.h}!DMXinSetup@{DMXinSetup}} +\index{DMXinSetup@{DMXinSetup}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DMXinSetup()}{DMXinSetup()}} +{\footnotesize\ttfamily void D\+M\+Xin\+Setup (\begin{DoxyParamCaption}\item[{int}]{channels }\end{DoxyParamCaption})} + +To\+Do\+: re-\/init\mbox{\Hypertarget{dmx_8h_a7c166d810404d3d15f663706271de37f}\label{dmx_8h_a7c166d810404d3d15f663706271de37f}} +\index{dmx.h@{dmx.h}!DMXOUT\_propagate@{DMXOUT\_propagate}} +\index{DMXOUT\_propagate@{DMXOUT\_propagate}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DMXOUT\_propagate()}{DMXOUT\_propagate()}} +{\footnotesize\ttfamily void D\+M\+X\+O\+U\+T\+\_\+propagate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_af5aeb81882ff7b4fe7cccb66a12539df}\label{dmx_8h_af5aeb81882ff7b4fe7cccb66a12539df}} +\index{dmx.h@{dmx.h}!DMXoutSetup@{DMXoutSetup}} +\index{DMXoutSetup@{DMXoutSetup}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DMXoutSetup()}{DMXoutSetup()}} +{\footnotesize\ttfamily void D\+M\+Xout\+Setup (\begin{DoxyParamCaption}\item[{int}]{channels }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_a9f36c84bdc0b4926f7d7b28bbe47cdc0}\label{dmx_8h_a9f36c84bdc0b4926f7d7b28bbe47cdc0}} +\index{dmx.h@{dmx.h}!DMXput@{DMXput}} +\index{DMXput@{DMXput}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DMXput()}{DMXput()}} +{\footnotesize\ttfamily void D\+M\+Xput (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_a3faac041a7441faf18a1ad72021be077}\label{dmx_8h_a3faac041a7441faf18a1ad72021be077}} +\index{dmx.h@{dmx.h}!DmxWriteBuf@{DmxWriteBuf}} +\index{DmxWriteBuf@{DmxWriteBuf}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{DmxWriteBuf()}{DmxWriteBuf()}} +{\footnotesize\ttfamily void Dmx\+Write\+Buf (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{chan, }\item[{uint8\+\_\+t}]{val }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{dmx_8h_abbcd6bfbf8b1c05b00ba38459d41ff4d}\label{dmx_8h_abbcd6bfbf8b1c05b00ba38459d41ff4d}} +\index{dmx.h@{dmx.h}!itemCtrl2@{itemCtrl2}} +\index{itemCtrl2@{itemCtrl2}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{itemCtrl2()}{itemCtrl2()}} +{\footnotesize\ttfamily int item\+Ctrl2 (\begin{DoxyParamCaption}\item[{char $\ast$}]{name, }\item[{int}]{r, }\item[{int}]{g, }\item[{int}]{b, }\item[{int}]{w }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{dmx_8h_a077dba54087a1a3694f810ba9fd06933}\label{dmx_8h_a077dba54087a1a3694f810ba9fd06933}} +\index{dmx.h@{dmx.h}!dmxArr@{dmxArr}} +\index{dmxArr@{dmxArr}!dmx.h@{dmx.h}} +\doxysubsubsection{\texorpdfstring{dmxArr}{dmxArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ dmx\+Arr\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/doxygen.sty b/docs/latex/doxygen.sty new file mode 100644 index 0000000..78a5254 --- /dev/null +++ b/docs/latex/doxygen.sty @@ -0,0 +1,576 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{doxygen} + +% Packages used by this style file +\RequirePackage{alltt} +%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package +\RequirePackage{calc} +\RequirePackage{float} +%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package +\RequirePackage{verbatim} +\RequirePackage[table]{xcolor} +\RequirePackage{longtable_doxygen} +\RequirePackage{tabu_doxygen} +\RequirePackage{fancyvrb} +\RequirePackage{tabularx} +\RequirePackage{multirow} +\RequirePackage{hanging} +\RequirePackage{ifpdf} +\RequirePackage{adjustbox} +\RequirePackage{amssymb} +\RequirePackage{stackengine} +\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis + +%---------- Internal commands used in this style file ---------------- + +\newcommand{\ensurespace}[1]{% + \begingroup% + \setlength{\dimen@}{#1}% + \vskip\z@\@plus\dimen@% + \penalty -100\vskip\z@\@plus -\dimen@% + \vskip\dimen@% + \penalty 9999% + \vskip -\dimen@% + \vskip\z@skip% hide the previous |\vskip| from |\addvspace| + \endgroup% +} + +\newcommand{\DoxyHorRuler}[1]{% + \setlength{\parskip}{0ex plus 0ex minus 0ex}% + \ifthenelse{#1=0}% + {% + \hrule% + }% + {% + \hrulefilll% + }% +} +\newcommand{\DoxyLabelFont}{} +\newcommand{\entrylabel}[1]{% + {% + \parbox[b]{\labelwidth-4pt}{% + \makebox[0pt][l]{\DoxyLabelFont#1}% + \vspace{1.5\baselineskip}% + }% + }% +} + +\newenvironment{DoxyDesc}[1]{% + \ensurespace{4\baselineskip}% + \begin{list}{}{% + \settowidth{\labelwidth}{20pt}% + %\setlength{\parsep}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\leftmargin}{\labelwidth+\labelsep}% + \renewcommand{\makelabel}{\entrylabel}% + }% + \item[#1]% +}{% + \end{list}% +} + +\newsavebox{\xrefbox} +\newlength{\xreflength} +\newcommand{\xreflabel}[1]{% + \sbox{\xrefbox}{#1}% + \setlength{\xreflength}{\wd\xrefbox}% + \ifthenelse{\xreflength>\labelwidth}{% + \begin{minipage}{\textwidth}% + \setlength{\parindent}{0pt}% + \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}% + \end{minipage}% + }{% + \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}% + }% +} + +%---------- Commands used by doxygen LaTeX output generator ---------- + +% Used by
     ... 
    +\newenvironment{DoxyPre}{% + \small% + \begin{alltt}% +}{% + \end{alltt}% + \normalsize% +} +% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output. +\newlength{\CodeWidthChar} +\newlength{\CodeHeightChar} +\settowidth{\CodeWidthChar}{?} +\settoheight{\CodeHeightChar}{?} +% Necessary for hanging indent +\newlength{\DoxyCodeWidth} + +\newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par} + +\newcommand\NiceSpace{% + \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}% +} + +% Used by @code ... @endcode +\newenvironment{DoxyCode}[1]{% + \par% + \scriptsize% + \normalfont\ttfamily% + \rightskip0pt plus 1fil% + \settowidth{\DoxyCodeWidth}{000000}% + \settowidth{\CodeWidthChar}{?}% + \settoheight{\CodeHeightChar}{?}% + \setlength{\parskip}{0ex plus 0ex minus 0ex}% + \ifthenelse{\equal{#1}{0}} + { + {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces% + } + { + {\lccode`~32 \lowercase{\global\let~}}\obeyspaces% + } + +}{% + \normalfont% + \normalsize% + \settowidth{\CodeWidthChar}{?}% + \settoheight{\CodeHeightChar}{?}% +} + +% Redefining not defined characters, i.e. "Replacement Character" in tex output. +\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{% + \textcolor{white}{\sffamily\bfseries\small ?}}{% + \rotatebox{45}{$\blacksquare$}}}} + +% Used by @example, @include, @includelineno and @dontinclude +\newenvironment{DoxyCodeInclude}[1]{% + \DoxyCode{#1}% +}{% + \endDoxyCode% +} + +% Used by @verbatim ... @endverbatim +\newenvironment{DoxyVerb}{% + \footnotesize% + \verbatim% +}{% + \endverbatim% + \normalsize% +} + +% Used by @verbinclude +\newenvironment{DoxyVerbInclude}{% + \DoxyVerb% +}{% + \endDoxyVerb% +} + +% Used by numbered lists (using '-#' or
      ...
    ) +\newenvironment{DoxyEnumerate}{% + \enumerate% +}{% + \endenumerate% +} + +% Used by bullet lists (using '-', @li, @arg, or
      ...
    ) +\newenvironment{DoxyItemize}{% + \itemize% +}{% + \enditemize% +} + +% Used by description lists (using
    ...
    ) +\newenvironment{DoxyDescription}{% + \description% +}{% + \enddescription% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if caption is specified) +\newenvironment{DoxyImage}{% + \begin{figure}[H]% + \begin{center}% +}{% + \end{center}% + \end{figure}% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if no caption is specified) +\newenvironment{DoxyImageNoCaption}{% + \begin{center}% +}{% + \end{center}% +} + +% Used by @image +% (only if inline is specified) +\newenvironment{DoxyInlineImage}{% +}{% +} + +% Used by @attention +\newenvironment{DoxyAttention}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @author and @authors +\newenvironment{DoxyAuthor}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @date +\newenvironment{DoxyDate}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @invariant +\newenvironment{DoxyInvariant}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @note +\newenvironment{DoxyNote}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @post +\newenvironment{DoxyPostcond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @pre +\newenvironment{DoxyPrecond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @copyright +\newenvironment{DoxyCopyright}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @remark +\newenvironment{DoxyRemark}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @return and @returns +\newenvironment{DoxyReturn}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @since +\newenvironment{DoxySince}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @see +\newenvironment{DoxySeeAlso}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @version +\newenvironment{DoxyVersion}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @warning +\newenvironment{DoxyWarning}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @internal +\newenvironment{DoxyInternal}[1]{% + \paragraph*{#1}% +}{% +} + +% Used by @par and @paragraph +\newenvironment{DoxyParagraph}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by parameter lists +\newenvironment{DoxyParams}[2][]{% + \tabulinesep=1mm% + \par% + \ifthenelse{\equal{#1}{}}% + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description + {\ifthenelse{\equal{#1}{1}}% + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc + } + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for fields of simple structs +\newenvironment{DoxyFields}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}% + \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for fields simple class style enums +\newenvironment{DoxyEnumFields}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for parameters within a detailed function description +\newenvironment{DoxyParamCaption}{% + \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}% +}{% +} + +% Used by return value lists +\newenvironment{DoxyRetVals}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used by exception lists +\newenvironment{DoxyExceptions}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used by template parameter lists +\newenvironment{DoxyTemplParams}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for member lists +\newenvironment{DoxyCompactItemize}{% + \begin{itemize}% + \setlength{\itemsep}{-3pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \setlength{\partopsep}{0pt}% +}{% + \end{itemize}% +} + +% Used for member descriptions +\newenvironment{DoxyCompactList}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + \setlength{\itemsep}{0pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \renewcommand{\makelabel}{\hfill}% + }% +}{% + \end{list}% +} + +% Used for reference lists (@bug, @deprecated, @todo, etc.) +\newenvironment{DoxyRefList}{% + \begin{list}{}{% + \setlength{\labelwidth}{10pt}% + \setlength{\leftmargin}{\labelwidth}% + \addtolength{\leftmargin}{\labelsep}% + \renewcommand{\makelabel}{\xreflabel}% + }% +}{% + \end{list}% +} + +% Used by @bug, @deprecated, @todo, etc. +\newenvironment{DoxyRefDesc}[1]{% + \begin{list}{}{% + \renewcommand\makelabel[1]{\textbf{##1}}% + \settowidth\labelwidth{\makelabel{#1}}% + \setlength\leftmargin{\labelwidth+\labelsep}% + }% +}{% + \end{list}% +} + +% Used by parameter lists and simple sections +\newenvironment{Desc} +{\begin{list}{}{% + \settowidth{\labelwidth}{20pt}% + \setlength{\parsep}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\leftmargin}{\labelwidth+\labelsep}% + \renewcommand{\makelabel}{\entrylabel}% + } +}{% + \end{list}% +} + +% Used by tables +\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}% +\newenvironment{TabularC}[1]% +{\tabulinesep=1mm +\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}% +{\end{longtabu*}\par}% + +\newenvironment{TabularNC}[1]% +{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}% +{\end{tabu}\par}% + +% Used for member group headers +\newenvironment{Indent}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + }% + \item[]\ignorespaces% +}{% + \unskip% + \end{list}% +} + +% Used when hyperlinks are turned off +\newcommand{\doxyref}[3]{% + \textbf{#1} (\textnormal{#2}\,\pageref{#3})% +} + +% Used to link to a table when hyperlinks are turned on +\newcommand{\doxytablelink}[2]{% + \ref{#1}% +} + +% Used to link to a table when hyperlinks are turned off +\newcommand{\doxytableref}[3]{% + \ref{#3}% +} + +% Used by @addindex +\newcommand{\lcurly}{\{} +\newcommand{\rcurly}{\}} + +% Colors used for syntax highlighting +\definecolor{comment}{rgb}{0.5,0.0,0.0} +\definecolor{keyword}{rgb}{0.0,0.5,0.0} +\definecolor{keywordtype}{rgb}{0.38,0.25,0.125} +\definecolor{keywordflow}{rgb}{0.88,0.5,0.0} +\definecolor{preprocessor}{rgb}{0.5,0.38,0.125} +\definecolor{stringliteral}{rgb}{0.0,0.125,0.25} +\definecolor{charliteral}{rgb}{0.0,0.5,0.5} +\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0} +\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43} +\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0} +\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0} + +% Color used for table heading +\newcommand{\tableheadbgcolor}{lightgray}% + +% Version of hypertarget with correct landing location +\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}} + +% possibility to have sections etc. be within the margins +% unfortunately had to copy part of book.cls and add \raggedright +\makeatletter +\newcommand\doxysection{\@startsection {section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedright\normalfont\Large\bfseries}} +\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedright\normalfont\large\bfseries}} +\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedright\normalfont\normalsize\bfseries}} +\newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}% + {3.25ex \@plus1ex \@minus.2ex}% + {-1em}% + {\raggedright\normalfont\normalsize\bfseries}} +\newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}% + {3.25ex \@plus1ex \@minus .2ex}% + {-1em}% + {\raggedright\normalfont\normalsize\bfseries}} +\makeatother +% Define caption that is also suitable in a table +\makeatletter +\def\doxyfigcaption{% +\refstepcounter{figure}% +\@dblarg{\@caption{figure}}} +\makeatother diff --git a/docs/latex/files.tex b/docs/latex/files.tex new file mode 100644 index 0000000..df1315a --- /dev/null +++ b/docs/latex/files.tex @@ -0,0 +1,46 @@ +\doxysection{File List} +Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractch_8cpp}{abstractch.\+cpp}} }{\pageref{abstractch_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractch_8h}{abstractch.\+h}} }{\pageref{abstractch_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractin_8cpp}{abstractin.\+cpp}} }{\pageref{abstractin_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractin_8h}{abstractin.\+h}} }{\pageref{abstractin_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{abstractout_8h}{abstractout.\+h}} }{\pageref{abstractout_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{bright_8cpp}{bright.\+cpp}} }{\pageref{bright_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{bright_8h}{bright.\+h}} }{\pageref{bright_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{colorchannel_8cpp}{colorchannel.\+cpp}} }{\pageref{colorchannel_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{colorchannel_8h}{colorchannel.\+h}} }{\pageref{colorchannel_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{dmx_8cpp}{dmx.\+cpp}} }{\pageref{dmx_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{dmx_8h}{dmx.\+h}} }{\pageref{dmx_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8cpp}{inputs.\+cpp}} }{\pageref{inputs_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8h}{inputs.\+h}} }{\pageref{inputs_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_8cpp}{item.\+cpp}} }{\pageref{item_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_8h}{item.\+h}} }{\pageref{item_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8cpp}{item\+Cmd.\+cpp}} }{\pageref{item_cmd_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8h}{item\+Cmd.\+h}} }{\pageref{item_cmd_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{main_8cpp}{main.\+cpp}} }{\pageref{main_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{main_8h}{main.\+h}} }{\pageref{main_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{options_8h}{options.\+h}} }{\pageref{options_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{ow_term_8cpp}{ow\+Term.\+cpp}} }{\pageref{ow_term_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{ow_term_8h}{ow\+Term.\+h}} }{\pageref{ow_term_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{statusled_8cpp}{statusled.\+cpp}} }{\pageref{statusled_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{statusled_8h}{statusled.\+h}} }{\pageref{statusled_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{streamlog_8cpp}{streamlog.\+cpp}} }{\pageref{streamlog_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{streamlog_8h}{streamlog.\+h}} }{\pageref{streamlog_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{textconst_8h}{textconst.\+h}} }{\pageref{textconst_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{utils_8cpp}{utils.\+cpp}} }{\pageref{utils_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{utils_8h}{utils.\+h}} }{\pageref{utils_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8cpp}{in\+\_\+ccs811\+\_\+hdc1080.\+cpp}} }{\pageref{in__ccs811__hdc1080_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{in__ccs811__hdc1080_8h}{in\+\_\+ccs811\+\_\+hdc1080.\+h}} }{\pageref{in__ccs811__hdc1080_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__ac_8cpp}{out\+\_\+ac.\+cpp}} }{\pageref{out__ac_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__ac_8h}{out\+\_\+ac.\+h}} }{\pageref{out__ac_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__dmx_8cpp}{out\+\_\+dmx.\+cpp}} }{\pageref{out__dmx_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__dmx_8h}{out\+\_\+dmx.\+h}} }{\pageref{out__dmx_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8cpp}{out\+\_\+modbus.\+cpp}} }{\pageref{out__modbus_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8h}{out\+\_\+modbus.\+h}} }{\pageref{out__modbus_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__motor_8cpp}{out\+\_\+motor.\+cpp}} }{\pageref{out__motor_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__motor_8h}{out\+\_\+motor.\+h}} }{\pageref{out__motor_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__pwm_8cpp}{out\+\_\+pwm.\+cpp}} }{\pageref{out__pwm_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__pwm_8h}{out\+\_\+pwm.\+h}} }{\pageref{out__pwm_8h}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__spiled_8cpp}{out\+\_\+spiled.\+cpp}} }{\pageref{out__spiled_8cpp}}{} +\item\contentsline{section}{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__spiled_8h}{out\+\_\+spiled.\+h}} }{\pageref{out__spiled_8h}}{} +\end{DoxyCompactList} diff --git a/docs/latex/hierarchy.tex b/docs/latex/hierarchy.tex new file mode 100644 index 0000000..6e581cd --- /dev/null +++ b/docs/latex/hierarchy.tex @@ -0,0 +1,41 @@ +\doxysection{Class Hierarchy} +This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList} +\item \contentsline{section}{abstract\+Ch}{\pageref{classabstract_ch}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{abstract\+In}{\pageref{classabstract_in}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{in\+\_\+ccs811}{\pageref{classin__ccs811}}{} +\item \contentsline{section}{in\+\_\+hdc1080}{\pageref{classin__hdc1080}}{} +\end{DoxyCompactList} +\item \contentsline{section}{abstract\+Out}{\pageref{classabstract_out}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{color\+Channel}{\pageref{classcolor_channel}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{out\+\_\+dmx}{\pageref{classout__dmx}}{} +\item \contentsline{section}{out\+\_\+pwm}{\pageref{classout__pwm}}{} +\item \contentsline{section}{out\+\_\+\+S\+P\+I\+Led}{\pageref{classout___s_p_i_led}}{} +\end{DoxyCompactList} +\item \contentsline{section}{out\+\_\+\+AC}{\pageref{classout___a_c}}{} +\item \contentsline{section}{out\+\_\+\+Modbus}{\pageref{classout___modbus}}{} +\item \contentsline{section}{out\+\_\+\+Motor}{\pageref{classout___motor}}{} +\end{DoxyCompactList} +\end{DoxyCompactList} +\item \contentsline{section}{ch\+Persistent}{\pageref{classch_persistent}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{mb\+Persistent}{\pageref{classmb_persistent}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Input}{\pageref{class_input}}{} +\item \contentsline{section}{in\+Store}{\pageref{unionin_store}}{} +\item \contentsline{section}{Item}{\pageref{class_item}}{} +\item \contentsline{section}{item\+Arg\+Store}{\pageref{unionitem_arg_store}}{} +\item \contentsline{section}{item\+Cmd}{\pageref{classitem_cmd}}{} +\item \contentsline{section}{item\+Cmd\+Store}{\pageref{unionitem_cmd_store}}{} +\item Print\begin{DoxyCompactList} +\item \contentsline{section}{Streamlog}{\pageref{class_streamlog}}{} +\end{DoxyCompactList} +\item \contentsline{section}{read\+Cache}{\pageref{classread_cache}}{} +\item \contentsline{section}{reg\+\_\+t}{\pageref{structreg__t}}{} +\item \contentsline{section}{serial\+\_\+t}{\pageref{structserial__t}}{} +\item \contentsline{section}{status\+L\+ED}{\pageref{classstatus_l_e_d}}{} +\item \contentsline{section}{U\+ID}{\pageref{union_u_i_d}}{} +\end{DoxyCompactList} diff --git a/docs/latex/in__ccs811__hdc1080_8cpp.tex b/docs/latex/in__ccs811__hdc1080_8cpp.tex new file mode 100644 index 0000000..d1bbaba --- /dev/null +++ b/docs/latex/in__ccs811__hdc1080_8cpp.tex @@ -0,0 +1,36 @@ +\hypertarget{in__ccs811__hdc1080_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/in\+\_\+ccs811\+\_\+hdc1080.cpp File Reference} +\label{in__ccs811__hdc1080_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in\_ccs811\_hdc1080.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in\_ccs811\_hdc1080.cpp}} +{\ttfamily \#include \char`\"{}modules/in\+\_\+ccs811\+\_\+hdc1080.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{in__ccs811__hdc1080_8cpp_afb6d390da3bb3ce4bb8208512a7b6cdb}{i2c\+Reset}} () +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +long \mbox{\hyperlink{in__ccs811__hdc1080_8cpp_ac3bfd4c05f0b14fb919750932ee575ae}{ccs811\+Baseline}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{in__ccs811__hdc1080_8cpp_afb6d390da3bb3ce4bb8208512a7b6cdb}\label{in__ccs811__hdc1080_8cpp_afb6d390da3bb3ce4bb8208512a7b6cdb}} +\index{in\_ccs811\_hdc1080.cpp@{in\_ccs811\_hdc1080.cpp}!i2cReset@{i2cReset}} +\index{i2cReset@{i2cReset}!in\_ccs811\_hdc1080.cpp@{in\_ccs811\_hdc1080.cpp}} +\doxysubsubsection{\texorpdfstring{i2cReset()}{i2cReset()}} +{\footnotesize\ttfamily void i2c\+Reset (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{in__ccs811__hdc1080_8cpp_ac3bfd4c05f0b14fb919750932ee575ae}\label{in__ccs811__hdc1080_8cpp_ac3bfd4c05f0b14fb919750932ee575ae}} +\index{in\_ccs811\_hdc1080.cpp@{in\_ccs811\_hdc1080.cpp}!ccs811Baseline@{ccs811Baseline}} +\index{ccs811Baseline@{ccs811Baseline}!in\_ccs811\_hdc1080.cpp@{in\_ccs811\_hdc1080.cpp}} +\doxysubsubsection{\texorpdfstring{ccs811Baseline}{ccs811Baseline}} +{\footnotesize\ttfamily long ccs811\+Baseline} + diff --git a/docs/latex/in__ccs811__hdc1080_8h.tex b/docs/latex/in__ccs811__hdc1080_8h.tex new file mode 100644 index 0000000..3fea6ff --- /dev/null +++ b/docs/latex/in__ccs811__hdc1080_8h.tex @@ -0,0 +1,28 @@ +\hypertarget{in__ccs811__hdc1080_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/in\+\_\+ccs811\+\_\+hdc1080.h File Reference} +\label{in__ccs811__hdc1080_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in\_ccs811\_hdc1080.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/in\_ccs811\_hdc1080.h}} +{\ttfamily \#include $<$inputs.\+h$>$}\newline +{\ttfamily \#include $<$abstractin.\+h$>$}\newline +{\ttfamily \#include $<$Wire.\+h$>$}\newline +{\ttfamily \#include \char`\"{}Closed\+Cube\+\_\+\+H\+D\+C1080.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Spark\+Fun\+C\+C\+S811.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classin__ccs811}{in\+\_\+ccs811}} +\item +class \mbox{\hyperlink{classin__hdc1080}{in\+\_\+hdc1080}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{in__ccs811__hdc1080_8h_a4c3a63d41818b1c52526d478881f1403}{C\+C\+S811\+\_\+\+A\+D\+DR}}~0x5A +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{in__ccs811__hdc1080_8h_a4c3a63d41818b1c52526d478881f1403}\label{in__ccs811__hdc1080_8h_a4c3a63d41818b1c52526d478881f1403}} +\index{in\_ccs811\_hdc1080.h@{in\_ccs811\_hdc1080.h}!CCS811\_ADDR@{CCS811\_ADDR}} +\index{CCS811\_ADDR@{CCS811\_ADDR}!in\_ccs811\_hdc1080.h@{in\_ccs811\_hdc1080.h}} +\doxysubsubsection{\texorpdfstring{CCS811\_ADDR}{CCS811\_ADDR}} +{\footnotesize\ttfamily \#define C\+C\+S811\+\_\+\+A\+D\+DR~0x5A} + diff --git a/docs/latex/inputs_8cpp.tex b/docs/latex/inputs_8cpp.tex new file mode 100644 index 0000000..8a98e46 --- /dev/null +++ b/docs/latex/inputs_8cpp.tex @@ -0,0 +1,69 @@ +\hypertarget{inputs_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/inputs.cpp File Reference} +\label{inputs_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.cpp}} +{\ttfamily \#include \char`\"{}inputs.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item\+Cmd.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}D\+H\+T.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{inputs_8cpp_a4d0d8ca9d09c3caf99fbaec688ebef2a}{clean\+Store}} (a\+Json\+Object $\ast$input) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +Pub\+Sub\+Client \mbox{\hyperlink{inputs_8cpp_a86d63f481644da70f063c2593fcafe19}{mqtt\+Client}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{inputs_8cpp_a2e223992d94c34788bec64fb05f780ba}{root}} +\item +int8\+\_\+t \mbox{\hyperlink{inputs_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}{ethernet\+Idle\+Count}} +\item +int8\+\_\+t \mbox{\hyperlink{inputs_8cpp_a58655351bd1d5333e5eb92d4c29f4263}{config\+Locked}} +\item +\mbox{\hyperlink{classread_cache}{read\+Cache}} \mbox{\hyperlink{inputs_8cpp_a550fbf41418f36b963b995f7de144eea}{in\+Cache}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{inputs_8cpp_a4d0d8ca9d09c3caf99fbaec688ebef2a}\label{inputs_8cpp_a4d0d8ca9d09c3caf99fbaec688ebef2a}} +\index{inputs.cpp@{inputs.cpp}!cleanStore@{cleanStore}} +\index{cleanStore@{cleanStore}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{cleanStore()}{cleanStore()}} +{\footnotesize\ttfamily void clean\+Store (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{input }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{inputs_8cpp_a58655351bd1d5333e5eb92d4c29f4263}\label{inputs_8cpp_a58655351bd1d5333e5eb92d4c29f4263}} +\index{inputs.cpp@{inputs.cpp}!configLocked@{configLocked}} +\index{configLocked@{configLocked}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{configLocked}{configLocked}} +{\footnotesize\ttfamily int8\+\_\+t config\+Locked\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{inputs_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}\label{inputs_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}} +\index{inputs.cpp@{inputs.cpp}!ethernetIdleCount@{ethernetIdleCount}} +\index{ethernetIdleCount@{ethernetIdleCount}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdleCount}{ethernetIdleCount}} +{\footnotesize\ttfamily int8\+\_\+t ethernet\+Idle\+Count\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{inputs_8cpp_a550fbf41418f36b963b995f7de144eea}\label{inputs_8cpp_a550fbf41418f36b963b995f7de144eea}} +\index{inputs.cpp@{inputs.cpp}!inCache@{inCache}} +\index{inCache@{inCache}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{inCache}{inCache}} +{\footnotesize\ttfamily \mbox{\hyperlink{classread_cache}{read\+Cache}} in\+Cache} + +\mbox{\Hypertarget{inputs_8cpp_a86d63f481644da70f063c2593fcafe19}\label{inputs_8cpp_a86d63f481644da70f063c2593fcafe19}} +\index{inputs.cpp@{inputs.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient}{mqttClient}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{inputs_8cpp_a2e223992d94c34788bec64fb05f780ba}\label{inputs_8cpp_a2e223992d94c34788bec64fb05f780ba}} +\index{inputs.cpp@{inputs.cpp}!root@{root}} +\index{root@{root}!inputs.cpp@{inputs.cpp}} +\doxysubsubsection{\texorpdfstring{root}{root}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ root\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/inputs_8h.tex b/docs/latex/inputs_8h.tex new file mode 100644 index 0000000..318fc2f --- /dev/null +++ b/docs/latex/inputs_8h.tex @@ -0,0 +1,329 @@ +\hypertarget{inputs_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/inputs.h File Reference} +\label{inputs_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/inputs.h}} +{\ttfamily \#include $<$a\+J\+S\+O\+N.\+h$>$}\newline +{\ttfamily \#include \char`\"{}modules/in\+\_\+ccs811\+\_\+hdc1080.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +union \mbox{\hyperlink{unionin_store}{in\+Store}} +\item +class \mbox{\hyperlink{class_input}{Input}} +\item +class \mbox{\hyperlink{classread_cache}{read\+Cache}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{inputs_8h_aba343c99487259d92ad5bd6fbd3e01a0}{I\+N\+\_\+\+A\+C\+T\+I\+V\+E\+\_\+\+H\+I\+GH}}~2 +\item +\#define \mbox{\hyperlink{inputs_8h_ae5e104b6991479f7964dcc6ed21bd974}{I\+N\+\_\+\+A\+N\+A\+L\+OG}}~64 +\item +\#define \mbox{\hyperlink{inputs_8h_ad4e2a819b46d5e31f5f1cacd885a7679}{I\+N\+\_\+\+RE}}~32 +\item +\#define \mbox{\hyperlink{inputs_8h_ac34df8e2157eb91e5674ec0c445bbc8a}{I\+N\+\_\+\+I2C}}~128 +\item +\#define \mbox{\hyperlink{inputs_8h_a2ce550d73403239bdf30482a6882d2dd}{I\+N\+\_\+\+P\+U\+S\+H\+\_\+\+ON}}~0 +\item +\#define \mbox{\hyperlink{inputs_8h_acc7e62f775448aa89e2b13df0019c993}{I\+N\+\_\+\+P\+U\+S\+H\+\_\+\+T\+O\+G\+G\+LE}}~1 +\item +\#define \mbox{\hyperlink{inputs_8h_a099689609ba9908f787941e40c15b434}{I\+N\+\_\+\+D\+H\+T22}}~4 +\item +\#define \mbox{\hyperlink{inputs_8h_a59e48c8bcc2a86b2173aeb7667134c2c}{I\+N\+\_\+\+C\+C\+S811}}~5 +\item +\#define \mbox{\hyperlink{inputs_8h_a1e44d68ca398ab8d851125089790f0f1}{I\+N\+\_\+\+H\+D\+C1080}}~6 +\item +\#define \mbox{\hyperlink{inputs_8h_a7da1147e75fa22d9662c9294344168ba}{I\+N\+\_\+\+C\+O\+U\+N\+T\+ER}}~8 +\item +\#define \mbox{\hyperlink{inputs_8h_a1b200efddb3fee0da5f4c0d38769b7ff}{I\+N\+\_\+\+U\+P\+T\+I\+ME}}~16 +\item +\#define \mbox{\hyperlink{inputs_8h_a507029f213f840df9f2fe96dcc7073b6}{I\+S\+\_\+\+I\+D\+LE}}~0 +\item +\#define \mbox{\hyperlink{inputs_8h_a60858d59aa9fd54683018c3023970db5}{I\+S\+\_\+\+P\+R\+E\+S\+S\+ED}}~1 +\item +\#define \mbox{\hyperlink{inputs_8h_a48d052eb1ddf55fa433b502a04c9f039}{I\+S\+\_\+\+R\+E\+L\+E\+A\+S\+ED}}~2 +\item +\#define \mbox{\hyperlink{inputs_8h_a85528d0ffe9c9bda0ee24df255b3b4e8}{I\+S\+\_\+\+L\+O\+NG}}~3 +\item +\#define \mbox{\hyperlink{inputs_8h_ab3d60474188c792fa7bd73c7784cf20c}{I\+S\+\_\+\+R\+E\+P\+E\+AT}}~4 +\item +\#define \mbox{\hyperlink{inputs_8h_acf0965f44337b7a1204e76f274397aa9}{I\+S\+\_\+\+W\+A\+I\+T\+P\+R\+E\+SS}}~5 +\item +\#define \mbox{\hyperlink{inputs_8h_a8ff81a2547cf3c73928f178421c138cd}{I\+S\+\_\+\+P\+R\+E\+S\+S\+E\+D2}}~6 +\item +\#define \mbox{\hyperlink{inputs_8h_acc1208e582a1855b46186e8cbb2382cd}{I\+S\+\_\+\+R\+E\+L\+E\+A\+S\+E\+D2}}~7 +\item +\#define \mbox{\hyperlink{inputs_8h_a70196afd205ccebf16e0d21e28085463}{I\+S\+\_\+\+L\+O\+N\+G2}}~8u +\item +\#define \mbox{\hyperlink{inputs_8h_affb5fbff8a836cebd5a45aee2887421e}{I\+S\+\_\+\+R\+E\+P\+E\+A\+T2}}~9u +\item +\#define \mbox{\hyperlink{inputs_8h_aa39f578ac73d4da04627db6fd5113560}{I\+S\+\_\+\+P\+R\+E\+S\+S\+E\+D3}}~10u +\item +\#define \mbox{\hyperlink{inputs_8h_a7f49a84bcfd2ed0db0ef8286b2938ed3}{I\+S\+\_\+\+L\+O\+N\+G3}}~11u +\item +\#define \mbox{\hyperlink{inputs_8h_ab28e4094346017851f2af764b25caeea}{I\+S\+\_\+\+R\+E\+P\+E\+A\+T3}}~12u +\item +\#define \mbox{\hyperlink{inputs_8h_aa4d3605f66fe7dd02a6dcd8da2e61fce}{I\+S\+\_\+\+W\+A\+I\+T\+R\+E\+L\+E\+A\+SE}}~13u +\item +\#define \mbox{\hyperlink{inputs_8h_aa55e3a1001f7520b5623aaf68fa400ef}{I\+S\+\_\+\+R\+E\+Q\+S\+T\+A\+TE}}~0x\+FF +\item +\#define \mbox{\hyperlink{inputs_8h_ac274440d36c9abe1f71f18596c4dfea4}{S\+A\+M\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+A\+T\+T\+E\+M\+P\+TS}}~3 +\item +\#define \mbox{\hyperlink{inputs_8h_a7c48e9a4c306cc8cfea4e4162d0249e8}{A\+N\+A\+L\+O\+G\+\_\+\+S\+T\+A\+T\+E\+\_\+\+A\+T\+T\+E\+M\+P\+TS}}~6 +\item +\#define \mbox{\hyperlink{inputs_8h_a0e590b44f2e40d50c90c35a3deac7251}{A\+N\+A\+L\+O\+G\+\_\+\+N\+O\+I\+ZE}}~1 +\item +\#define \mbox{\hyperlink{inputs_8h_a3e39b572f12612cbe5e7259fa57441e4}{C\+H\+E\+C\+K\+\_\+\+S\+E\+N\+S\+OR}}~1 +\item +\#define \mbox{\hyperlink{inputs_8h_a1a4fde3dbdd8e8f920a325f551fcfd94}{C\+H\+E\+C\+K\+\_\+\+I\+N\+P\+UT}}~2 +\item +\#define \mbox{\hyperlink{inputs_8h_a98a52bad4b628c2b09416a9819010e81}{C\+H\+E\+C\+K\+\_\+\+I\+N\+T\+E\+R\+R\+U\+PT}}~3 +\item +\#define \mbox{\hyperlink{inputs_8h_a2d9ac9f51c75bdb21cf9dfd1412fa194}{T\+\_\+\+L\+O\+NG}}~1000 +\item +\#define \mbox{\hyperlink{inputs_8h_a8a75f24034739896ac50bba24d242d32}{T\+\_\+\+I\+D\+LE}}~600 +\item +\#define \mbox{\hyperlink{inputs_8h_a7182ef2ce51e276fb3b26cd8565eb954}{T\+\_\+\+R\+PT}}~300 +\item +\#define \mbox{\hyperlink{inputs_8h_a9fe7bdf99e30a49fd5aff60200a90172}{T\+\_\+\+R\+P\+T\+\_\+\+P\+U\+L\+SE}}~150 +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{inputs_8h_a9e63aa63a6b8b667a41f94bec231d7aa}{inputs}} +\item +\mbox{\hyperlink{classread_cache}{read\+Cache}} \mbox{\hyperlink{inputs_8h_a550fbf41418f36b963b995f7de144eea}{in\+Cache}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{inputs_8h_a0e590b44f2e40d50c90c35a3deac7251}\label{inputs_8h_a0e590b44f2e40d50c90c35a3deac7251}} +\index{inputs.h@{inputs.h}!ANALOG\_NOIZE@{ANALOG\_NOIZE}} +\index{ANALOG\_NOIZE@{ANALOG\_NOIZE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{ANALOG\_NOIZE}{ANALOG\_NOIZE}} +{\footnotesize\ttfamily \#define A\+N\+A\+L\+O\+G\+\_\+\+N\+O\+I\+ZE~1} + +\mbox{\Hypertarget{inputs_8h_a7c48e9a4c306cc8cfea4e4162d0249e8}\label{inputs_8h_a7c48e9a4c306cc8cfea4e4162d0249e8}} +\index{inputs.h@{inputs.h}!ANALOG\_STATE\_ATTEMPTS@{ANALOG\_STATE\_ATTEMPTS}} +\index{ANALOG\_STATE\_ATTEMPTS@{ANALOG\_STATE\_ATTEMPTS}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{ANALOG\_STATE\_ATTEMPTS}{ANALOG\_STATE\_ATTEMPTS}} +{\footnotesize\ttfamily \#define A\+N\+A\+L\+O\+G\+\_\+\+S\+T\+A\+T\+E\+\_\+\+A\+T\+T\+E\+M\+P\+TS~6} + +\mbox{\Hypertarget{inputs_8h_a1a4fde3dbdd8e8f920a325f551fcfd94}\label{inputs_8h_a1a4fde3dbdd8e8f920a325f551fcfd94}} +\index{inputs.h@{inputs.h}!CHECK\_INPUT@{CHECK\_INPUT}} +\index{CHECK\_INPUT@{CHECK\_INPUT}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{CHECK\_INPUT}{CHECK\_INPUT}} +{\footnotesize\ttfamily \#define C\+H\+E\+C\+K\+\_\+\+I\+N\+P\+UT~2} + +\mbox{\Hypertarget{inputs_8h_a98a52bad4b628c2b09416a9819010e81}\label{inputs_8h_a98a52bad4b628c2b09416a9819010e81}} +\index{inputs.h@{inputs.h}!CHECK\_INTERRUPT@{CHECK\_INTERRUPT}} +\index{CHECK\_INTERRUPT@{CHECK\_INTERRUPT}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{CHECK\_INTERRUPT}{CHECK\_INTERRUPT}} +{\footnotesize\ttfamily \#define C\+H\+E\+C\+K\+\_\+\+I\+N\+T\+E\+R\+R\+U\+PT~3} + +\mbox{\Hypertarget{inputs_8h_a3e39b572f12612cbe5e7259fa57441e4}\label{inputs_8h_a3e39b572f12612cbe5e7259fa57441e4}} +\index{inputs.h@{inputs.h}!CHECK\_SENSOR@{CHECK\_SENSOR}} +\index{CHECK\_SENSOR@{CHECK\_SENSOR}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{CHECK\_SENSOR}{CHECK\_SENSOR}} +{\footnotesize\ttfamily \#define C\+H\+E\+C\+K\+\_\+\+S\+E\+N\+S\+OR~1} + +\mbox{\Hypertarget{inputs_8h_aba343c99487259d92ad5bd6fbd3e01a0}\label{inputs_8h_aba343c99487259d92ad5bd6fbd3e01a0}} +\index{inputs.h@{inputs.h}!IN\_ACTIVE\_HIGH@{IN\_ACTIVE\_HIGH}} +\index{IN\_ACTIVE\_HIGH@{IN\_ACTIVE\_HIGH}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_ACTIVE\_HIGH}{IN\_ACTIVE\_HIGH}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+A\+C\+T\+I\+V\+E\+\_\+\+H\+I\+GH~2} + +\mbox{\Hypertarget{inputs_8h_ae5e104b6991479f7964dcc6ed21bd974}\label{inputs_8h_ae5e104b6991479f7964dcc6ed21bd974}} +\index{inputs.h@{inputs.h}!IN\_ANALOG@{IN\_ANALOG}} +\index{IN\_ANALOG@{IN\_ANALOG}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_ANALOG}{IN\_ANALOG}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+A\+N\+A\+L\+OG~64} + +\mbox{\Hypertarget{inputs_8h_a59e48c8bcc2a86b2173aeb7667134c2c}\label{inputs_8h_a59e48c8bcc2a86b2173aeb7667134c2c}} +\index{inputs.h@{inputs.h}!IN\_CCS811@{IN\_CCS811}} +\index{IN\_CCS811@{IN\_CCS811}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_CCS811}{IN\_CCS811}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+C\+C\+S811~5} + +\mbox{\Hypertarget{inputs_8h_a7da1147e75fa22d9662c9294344168ba}\label{inputs_8h_a7da1147e75fa22d9662c9294344168ba}} +\index{inputs.h@{inputs.h}!IN\_COUNTER@{IN\_COUNTER}} +\index{IN\_COUNTER@{IN\_COUNTER}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_COUNTER}{IN\_COUNTER}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+C\+O\+U\+N\+T\+ER~8} + +\mbox{\Hypertarget{inputs_8h_a099689609ba9908f787941e40c15b434}\label{inputs_8h_a099689609ba9908f787941e40c15b434}} +\index{inputs.h@{inputs.h}!IN\_DHT22@{IN\_DHT22}} +\index{IN\_DHT22@{IN\_DHT22}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_DHT22}{IN\_DHT22}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+D\+H\+T22~4} + +\mbox{\Hypertarget{inputs_8h_a1e44d68ca398ab8d851125089790f0f1}\label{inputs_8h_a1e44d68ca398ab8d851125089790f0f1}} +\index{inputs.h@{inputs.h}!IN\_HDC1080@{IN\_HDC1080}} +\index{IN\_HDC1080@{IN\_HDC1080}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_HDC1080}{IN\_HDC1080}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+H\+D\+C1080~6} + +\mbox{\Hypertarget{inputs_8h_ac34df8e2157eb91e5674ec0c445bbc8a}\label{inputs_8h_ac34df8e2157eb91e5674ec0c445bbc8a}} +\index{inputs.h@{inputs.h}!IN\_I2C@{IN\_I2C}} +\index{IN\_I2C@{IN\_I2C}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_I2C}{IN\_I2C}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+I2C~128} + +\mbox{\Hypertarget{inputs_8h_a2ce550d73403239bdf30482a6882d2dd}\label{inputs_8h_a2ce550d73403239bdf30482a6882d2dd}} +\index{inputs.h@{inputs.h}!IN\_PUSH\_ON@{IN\_PUSH\_ON}} +\index{IN\_PUSH\_ON@{IN\_PUSH\_ON}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_PUSH\_ON}{IN\_PUSH\_ON}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+P\+U\+S\+H\+\_\+\+ON~0} + +\mbox{\Hypertarget{inputs_8h_acc7e62f775448aa89e2b13df0019c993}\label{inputs_8h_acc7e62f775448aa89e2b13df0019c993}} +\index{inputs.h@{inputs.h}!IN\_PUSH\_TOGGLE@{IN\_PUSH\_TOGGLE}} +\index{IN\_PUSH\_TOGGLE@{IN\_PUSH\_TOGGLE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_PUSH\_TOGGLE}{IN\_PUSH\_TOGGLE}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+P\+U\+S\+H\+\_\+\+T\+O\+G\+G\+LE~1} + +\mbox{\Hypertarget{inputs_8h_ad4e2a819b46d5e31f5f1cacd885a7679}\label{inputs_8h_ad4e2a819b46d5e31f5f1cacd885a7679}} +\index{inputs.h@{inputs.h}!IN\_RE@{IN\_RE}} +\index{IN\_RE@{IN\_RE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_RE}{IN\_RE}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+RE~32} + +\mbox{\Hypertarget{inputs_8h_a1b200efddb3fee0da5f4c0d38769b7ff}\label{inputs_8h_a1b200efddb3fee0da5f4c0d38769b7ff}} +\index{inputs.h@{inputs.h}!IN\_UPTIME@{IN\_UPTIME}} +\index{IN\_UPTIME@{IN\_UPTIME}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IN\_UPTIME}{IN\_UPTIME}} +{\footnotesize\ttfamily \#define I\+N\+\_\+\+U\+P\+T\+I\+ME~16} + +\mbox{\Hypertarget{inputs_8h_a507029f213f840df9f2fe96dcc7073b6}\label{inputs_8h_a507029f213f840df9f2fe96dcc7073b6}} +\index{inputs.h@{inputs.h}!IS\_IDLE@{IS\_IDLE}} +\index{IS\_IDLE@{IS\_IDLE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_IDLE}{IS\_IDLE}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+I\+D\+LE~0} + +\mbox{\Hypertarget{inputs_8h_a85528d0ffe9c9bda0ee24df255b3b4e8}\label{inputs_8h_a85528d0ffe9c9bda0ee24df255b3b4e8}} +\index{inputs.h@{inputs.h}!IS\_LONG@{IS\_LONG}} +\index{IS\_LONG@{IS\_LONG}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_LONG}{IS\_LONG}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+L\+O\+NG~3} + +\mbox{\Hypertarget{inputs_8h_a70196afd205ccebf16e0d21e28085463}\label{inputs_8h_a70196afd205ccebf16e0d21e28085463}} +\index{inputs.h@{inputs.h}!IS\_LONG2@{IS\_LONG2}} +\index{IS\_LONG2@{IS\_LONG2}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_LONG2}{IS\_LONG2}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+L\+O\+N\+G2~8u} + +\mbox{\Hypertarget{inputs_8h_a7f49a84bcfd2ed0db0ef8286b2938ed3}\label{inputs_8h_a7f49a84bcfd2ed0db0ef8286b2938ed3}} +\index{inputs.h@{inputs.h}!IS\_LONG3@{IS\_LONG3}} +\index{IS\_LONG3@{IS\_LONG3}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_LONG3}{IS\_LONG3}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+L\+O\+N\+G3~11u} + +\mbox{\Hypertarget{inputs_8h_a60858d59aa9fd54683018c3023970db5}\label{inputs_8h_a60858d59aa9fd54683018c3023970db5}} +\index{inputs.h@{inputs.h}!IS\_PRESSED@{IS\_PRESSED}} +\index{IS\_PRESSED@{IS\_PRESSED}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_PRESSED}{IS\_PRESSED}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+P\+R\+E\+S\+S\+ED~1} + +\mbox{\Hypertarget{inputs_8h_a8ff81a2547cf3c73928f178421c138cd}\label{inputs_8h_a8ff81a2547cf3c73928f178421c138cd}} +\index{inputs.h@{inputs.h}!IS\_PRESSED2@{IS\_PRESSED2}} +\index{IS\_PRESSED2@{IS\_PRESSED2}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_PRESSED2}{IS\_PRESSED2}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+P\+R\+E\+S\+S\+E\+D2~6} + +\mbox{\Hypertarget{inputs_8h_aa39f578ac73d4da04627db6fd5113560}\label{inputs_8h_aa39f578ac73d4da04627db6fd5113560}} +\index{inputs.h@{inputs.h}!IS\_PRESSED3@{IS\_PRESSED3}} +\index{IS\_PRESSED3@{IS\_PRESSED3}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_PRESSED3}{IS\_PRESSED3}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+P\+R\+E\+S\+S\+E\+D3~10u} + +\mbox{\Hypertarget{inputs_8h_a48d052eb1ddf55fa433b502a04c9f039}\label{inputs_8h_a48d052eb1ddf55fa433b502a04c9f039}} +\index{inputs.h@{inputs.h}!IS\_RELEASED@{IS\_RELEASED}} +\index{IS\_RELEASED@{IS\_RELEASED}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_RELEASED}{IS\_RELEASED}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+L\+E\+A\+S\+ED~2} + +\mbox{\Hypertarget{inputs_8h_acc1208e582a1855b46186e8cbb2382cd}\label{inputs_8h_acc1208e582a1855b46186e8cbb2382cd}} +\index{inputs.h@{inputs.h}!IS\_RELEASED2@{IS\_RELEASED2}} +\index{IS\_RELEASED2@{IS\_RELEASED2}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_RELEASED2}{IS\_RELEASED2}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+L\+E\+A\+S\+E\+D2~7} + +\mbox{\Hypertarget{inputs_8h_ab3d60474188c792fa7bd73c7784cf20c}\label{inputs_8h_ab3d60474188c792fa7bd73c7784cf20c}} +\index{inputs.h@{inputs.h}!IS\_REPEAT@{IS\_REPEAT}} +\index{IS\_REPEAT@{IS\_REPEAT}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_REPEAT}{IS\_REPEAT}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+P\+E\+AT~4} + +\mbox{\Hypertarget{inputs_8h_affb5fbff8a836cebd5a45aee2887421e}\label{inputs_8h_affb5fbff8a836cebd5a45aee2887421e}} +\index{inputs.h@{inputs.h}!IS\_REPEAT2@{IS\_REPEAT2}} +\index{IS\_REPEAT2@{IS\_REPEAT2}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_REPEAT2}{IS\_REPEAT2}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+P\+E\+A\+T2~9u} + +\mbox{\Hypertarget{inputs_8h_ab28e4094346017851f2af764b25caeea}\label{inputs_8h_ab28e4094346017851f2af764b25caeea}} +\index{inputs.h@{inputs.h}!IS\_REPEAT3@{IS\_REPEAT3}} +\index{IS\_REPEAT3@{IS\_REPEAT3}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_REPEAT3}{IS\_REPEAT3}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+P\+E\+A\+T3~12u} + +\mbox{\Hypertarget{inputs_8h_aa55e3a1001f7520b5623aaf68fa400ef}\label{inputs_8h_aa55e3a1001f7520b5623aaf68fa400ef}} +\index{inputs.h@{inputs.h}!IS\_REQSTATE@{IS\_REQSTATE}} +\index{IS\_REQSTATE@{IS\_REQSTATE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_REQSTATE}{IS\_REQSTATE}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+R\+E\+Q\+S\+T\+A\+TE~0x\+FF} + +\mbox{\Hypertarget{inputs_8h_acf0965f44337b7a1204e76f274397aa9}\label{inputs_8h_acf0965f44337b7a1204e76f274397aa9}} +\index{inputs.h@{inputs.h}!IS\_WAITPRESS@{IS\_WAITPRESS}} +\index{IS\_WAITPRESS@{IS\_WAITPRESS}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_WAITPRESS}{IS\_WAITPRESS}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+W\+A\+I\+T\+P\+R\+E\+SS~5} + +\mbox{\Hypertarget{inputs_8h_aa4d3605f66fe7dd02a6dcd8da2e61fce}\label{inputs_8h_aa4d3605f66fe7dd02a6dcd8da2e61fce}} +\index{inputs.h@{inputs.h}!IS\_WAITRELEASE@{IS\_WAITRELEASE}} +\index{IS\_WAITRELEASE@{IS\_WAITRELEASE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{IS\_WAITRELEASE}{IS\_WAITRELEASE}} +{\footnotesize\ttfamily \#define I\+S\+\_\+\+W\+A\+I\+T\+R\+E\+L\+E\+A\+SE~13u} + +\mbox{\Hypertarget{inputs_8h_ac274440d36c9abe1f71f18596c4dfea4}\label{inputs_8h_ac274440d36c9abe1f71f18596c4dfea4}} +\index{inputs.h@{inputs.h}!SAME\_STATE\_ATTEMPTS@{SAME\_STATE\_ATTEMPTS}} +\index{SAME\_STATE\_ATTEMPTS@{SAME\_STATE\_ATTEMPTS}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{SAME\_STATE\_ATTEMPTS}{SAME\_STATE\_ATTEMPTS}} +{\footnotesize\ttfamily \#define S\+A\+M\+E\+\_\+\+S\+T\+A\+T\+E\+\_\+\+A\+T\+T\+E\+M\+P\+TS~3} + +\mbox{\Hypertarget{inputs_8h_a8a75f24034739896ac50bba24d242d32}\label{inputs_8h_a8a75f24034739896ac50bba24d242d32}} +\index{inputs.h@{inputs.h}!T\_IDLE@{T\_IDLE}} +\index{T\_IDLE@{T\_IDLE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{T\_IDLE}{T\_IDLE}} +{\footnotesize\ttfamily \#define T\+\_\+\+I\+D\+LE~600} + +\mbox{\Hypertarget{inputs_8h_a2d9ac9f51c75bdb21cf9dfd1412fa194}\label{inputs_8h_a2d9ac9f51c75bdb21cf9dfd1412fa194}} +\index{inputs.h@{inputs.h}!T\_LONG@{T\_LONG}} +\index{T\_LONG@{T\_LONG}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{T\_LONG}{T\_LONG}} +{\footnotesize\ttfamily \#define T\+\_\+\+L\+O\+NG~1000} + +\mbox{\Hypertarget{inputs_8h_a7182ef2ce51e276fb3b26cd8565eb954}\label{inputs_8h_a7182ef2ce51e276fb3b26cd8565eb954}} +\index{inputs.h@{inputs.h}!T\_RPT@{T\_RPT}} +\index{T\_RPT@{T\_RPT}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{T\_RPT}{T\_RPT}} +{\footnotesize\ttfamily \#define T\+\_\+\+R\+PT~300} + +\mbox{\Hypertarget{inputs_8h_a9fe7bdf99e30a49fd5aff60200a90172}\label{inputs_8h_a9fe7bdf99e30a49fd5aff60200a90172}} +\index{inputs.h@{inputs.h}!T\_RPT\_PULSE@{T\_RPT\_PULSE}} +\index{T\_RPT\_PULSE@{T\_RPT\_PULSE}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{T\_RPT\_PULSE}{T\_RPT\_PULSE}} +{\footnotesize\ttfamily \#define T\+\_\+\+R\+P\+T\+\_\+\+P\+U\+L\+SE~150} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{inputs_8h_a550fbf41418f36b963b995f7de144eea}\label{inputs_8h_a550fbf41418f36b963b995f7de144eea}} +\index{inputs.h@{inputs.h}!inCache@{inCache}} +\index{inCache@{inCache}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{inCache}{inCache}} +{\footnotesize\ttfamily \mbox{\hyperlink{classread_cache}{read\+Cache}} in\+Cache\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{inputs_8h_a9e63aa63a6b8b667a41f94bec231d7aa}\label{inputs_8h_a9e63aa63a6b8b667a41f94bec231d7aa}} +\index{inputs.h@{inputs.h}!inputs@{inputs}} +\index{inputs@{inputs}!inputs.h@{inputs.h}} +\doxysubsubsection{\texorpdfstring{inputs}{inputs}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ inputs\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/item_8cpp.tex b/docs/latex/item_8cpp.tex new file mode 100644 index 0000000..9da2432 --- /dev/null +++ b/docs/latex/item_8cpp.tex @@ -0,0 +1,142 @@ +\hypertarget{item_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/item.cpp File Reference} +\label{item_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/item.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/item.cpp}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}textconst.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}bright.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item\+Cmd.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}dmx.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Adafruit\+\_\+\+Neo\+Pixel.\+h$>$}\newline +{\ttfamily \#include $<$Modbus\+Master.\+h$>$}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+spiled.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+ac.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+motor.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+modbus.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+dmx.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}modules/out\+\_\+pwm.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{item_8cpp_a8d3c3518d793541417a4845125da1ae1}{a}}~0.\+1842f +\item +\#define \mbox{\hyperlink{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}{b}}~-\/36.\+68f +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{item_8cpp_a4aef78280fd80bcca6d297030691f57b}{retrieve\+Code}} (char $\ast$$\ast$psub\+Item) +\item +int \mbox{\hyperlink{item_8cpp_a44da304670c8b0446f674b318ebc9294}{subitem2cmd}} (char $\ast$payload) +\item +int \mbox{\hyperlink{item_8cpp_ac002f1e83a05b79e27bda8f93184bcee}{txt2sub\+Item}} (char $\ast$payload) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +short \mbox{\hyperlink{item_8cpp_a02d3e5fb154e56cf7fc169649e232078}{modbus\+Busy}} = 0 +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{item_8cpp_aa8f2c895949680c2aadc4843bb350347}{polling\+Item}} +\item +Pub\+Sub\+Client \mbox{\hyperlink{item_8cpp_a86d63f481644da70f063c2593fcafe19}{mqtt\+Client}} +\item +int8\+\_\+t \mbox{\hyperlink{item_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}{ethernet\+Idle\+Count}} +\item +int8\+\_\+t \mbox{\hyperlink{item_8cpp_a58655351bd1d5333e5eb92d4c29f4263}{config\+Locked}} +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{item_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}{lan\+Status}} +\item +const short \mbox{\hyperlink{item_8cpp_abcb640867546187e7cbe6229cc3ec872}{defval}} \mbox{[}4\mbox{]} = \{0, 0, 0, 0\} +\item +Modbus\+Master \mbox{\hyperlink{item_8cpp_aed3ca48125de3e138d26fa4884c35c93}{node}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{item_8cpp_a8d3c3518d793541417a4845125da1ae1}\label{item_8cpp_a8d3c3518d793541417a4845125da1ae1}} +\index{item.cpp@{item.cpp}!a@{a}} +\index{a@{a}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{a}{a}} +{\footnotesize\ttfamily \#define a~0.\+1842f} + +\mbox{\Hypertarget{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}\label{item_8cpp_ab2d05693952610f937e5acb3c4a8fa1b}} +\index{item.cpp@{item.cpp}!b@{b}} +\index{b@{b}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{b}{b}} +{\footnotesize\ttfamily \#define b~-\/36.\+68f} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{item_8cpp_a4aef78280fd80bcca6d297030691f57b}\label{item_8cpp_a4aef78280fd80bcca6d297030691f57b}} +\index{item.cpp@{item.cpp}!retrieveCode@{retrieveCode}} +\index{retrieveCode@{retrieveCode}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{retrieveCode()}{retrieveCode()}} +{\footnotesize\ttfamily int retrieve\+Code (\begin{DoxyParamCaption}\item[{char $\ast$$\ast$}]{psub\+Item }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{item_8cpp_a44da304670c8b0446f674b318ebc9294}\label{item_8cpp_a44da304670c8b0446f674b318ebc9294}} +\index{item.cpp@{item.cpp}!subitem2cmd@{subitem2cmd}} +\index{subitem2cmd@{subitem2cmd}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{subitem2cmd()}{subitem2cmd()}} +{\footnotesize\ttfamily int subitem2cmd (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{item_8cpp_ac002f1e83a05b79e27bda8f93184bcee}\label{item_8cpp_ac002f1e83a05b79e27bda8f93184bcee}} +\index{item.cpp@{item.cpp}!txt2subItem@{txt2subItem}} +\index{txt2subItem@{txt2subItem}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{txt2subItem()}{txt2subItem()}} +{\footnotesize\ttfamily int txt2sub\+Item (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{item_8cpp_a58655351bd1d5333e5eb92d4c29f4263}\label{item_8cpp_a58655351bd1d5333e5eb92d4c29f4263}} +\index{item.cpp@{item.cpp}!configLocked@{configLocked}} +\index{configLocked@{configLocked}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{configLocked}{configLocked}} +{\footnotesize\ttfamily int8\+\_\+t config\+Locked\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{item_8cpp_abcb640867546187e7cbe6229cc3ec872}\label{item_8cpp_abcb640867546187e7cbe6229cc3ec872}} +\index{item.cpp@{item.cpp}!defval@{defval}} +\index{defval@{defval}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{defval}{defval}} +{\footnotesize\ttfamily const short defval\mbox{[}4\mbox{]} = \{0, 0, 0, 0\}} + +\mbox{\Hypertarget{item_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}\label{item_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}} +\index{item.cpp@{item.cpp}!ethernetIdleCount@{ethernetIdleCount}} +\index{ethernetIdleCount@{ethernetIdleCount}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdleCount}{ethernetIdleCount}} +{\footnotesize\ttfamily int8\+\_\+t ethernet\+Idle\+Count\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{item_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}\label{item_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}} +\index{item.cpp@{item.cpp}!lanStatus@{lanStatus}} +\index{lanStatus@{lanStatus}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{lanStatus}{lanStatus}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Status\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{item_8cpp_a02d3e5fb154e56cf7fc169649e232078}\label{item_8cpp_a02d3e5fb154e56cf7fc169649e232078}} +\index{item.cpp@{item.cpp}!modbusBusy@{modbusBusy}} +\index{modbusBusy@{modbusBusy}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{modbusBusy}{modbusBusy}} +{\footnotesize\ttfamily short modbus\+Busy = 0} + +\mbox{\Hypertarget{item_8cpp_a86d63f481644da70f063c2593fcafe19}\label{item_8cpp_a86d63f481644da70f063c2593fcafe19}} +\index{item.cpp@{item.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient}{mqttClient}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{item_8cpp_aed3ca48125de3e138d26fa4884c35c93}\label{item_8cpp_aed3ca48125de3e138d26fa4884c35c93}} +\index{item.cpp@{item.cpp}!node@{node}} +\index{node@{node}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{node}{node}} +{\footnotesize\ttfamily Modbus\+Master node\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{item_8cpp_aa8f2c895949680c2aadc4843bb350347}\label{item_8cpp_aa8f2c895949680c2aadc4843bb350347}} +\index{item.cpp@{item.cpp}!pollingItem@{pollingItem}} +\index{pollingItem@{pollingItem}!item.cpp@{item.cpp}} +\doxysubsubsection{\texorpdfstring{pollingItem}{pollingItem}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ polling\+Item\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/item_8h.tex b/docs/latex/item_8h.tex new file mode 100644 index 0000000..063a257 --- /dev/null +++ b/docs/latex/item_8h.tex @@ -0,0 +1,397 @@ +\hypertarget{item_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/item.h File Reference} +\label{item_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/item.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/item.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}abstractout.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item\+Cmd.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_item}{Item}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{item_8h_a131cfabb558ab1b7ad493e75d5e060c9}{S\+\_\+\+N\+O\+T\+F\+O\+U\+ND}}~0 +\item +\#define \mbox{\hyperlink{item_8h_a7fc4fdff41f72de35ff7f31a88d2ef17}{S\+\_\+\+C\+MD}}~1 +\item +\#define \mbox{\hyperlink{item_8h_a9937ac1220b7ab4dbc8d79911e81a709}{S\+\_\+\+S\+ET}}~2 +\item +\#define \mbox{\hyperlink{item_8h_a8c9b4a8b457fa12f533dbdf16850a2f1}{S\+\_\+\+H\+SV}}~3 +\item +\#define \mbox{\hyperlink{item_8h_a110d6e77da40715a6d53921bab49b3f3}{S\+\_\+\+R\+GB}}~4 +\item +\#define \mbox{\hyperlink{item_8h_ad3cdbaefd6a2dfcd2a87bdc60f6874d4}{S\+\_\+\+F\+AN}}~5 +\item +\#define \mbox{\hyperlink{item_8h_af90af1bc68960811e82d0ca3782b8c46}{S\+\_\+\+M\+O\+DE}}~6 +\item +\#define \mbox{\hyperlink{item_8h_a87a96d42c1cafebc18c7e558c015137b}{S\+\_\+\+H\+UE}}~7 +\item +\#define \mbox{\hyperlink{item_8h_aca68093e2923b0b080643fc4bba25e75}{S\+\_\+\+S\+AT}}~8 +\item +\#define \mbox{\hyperlink{item_8h_a9073478a392efbb9bf25be0f83f8654e}{S\+\_\+\+T\+E\+MP}}~9 +\item +\#define \mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}~9 +\item +\#define \mbox{\hyperlink{item_8h_ae8deebae2223cc41b707c0ccc12110f7}{C\+H\+\_\+\+D\+I\+M\+M\+ER}}~0 +\item +\#define \mbox{\hyperlink{item_8h_abdcc93b4a9164bb10e473766c4083d8b}{C\+H\+\_\+\+R\+G\+BW}}~1 +\item +\#define \mbox{\hyperlink{item_8h_abbb5a64a224fe607fbf2fc5ac29e31cb}{C\+H\+\_\+\+R\+GB}}~2 +\item +\#define \mbox{\hyperlink{item_8h_a2daad851379261136f0c22f056663fc2}{C\+H\+\_\+\+P\+WM}}~3 +\item +\#define \mbox{\hyperlink{item_8h_abdb1c8601e3997eeabfbe85b77ae9a9e}{C\+H\+\_\+\+M\+O\+D\+B\+US}}~4 +\item +\#define \mbox{\hyperlink{item_8h_a3f68dec7d0ed1ba592fa281ee427a72a}{C\+H\+\_\+\+T\+H\+E\+R\+MO}}~5 +\item +\#define \mbox{\hyperlink{item_8h_ac9f09e5e652cb6797b7a05e93133d20f}{C\+H\+\_\+\+R\+E\+L\+AY}}~6 +\item +\#define \mbox{\hyperlink{item_8h_a8013a9895a9e2fa6afc8b411f2ee4d77}{C\+H\+\_\+\+G\+R\+O\+UP}}~7 +\item +\#define \mbox{\hyperlink{item_8h_a0b5411d14d7fed59c97adaf6523323b7}{C\+H\+\_\+\+V\+C\+T\+E\+MP}}~8 +\item +\#define \mbox{\hyperlink{item_8h_a762566fb96b5a377eada6a32639c4e37}{C\+H\+\_\+\+VC}}~9 +\item +\#define \mbox{\hyperlink{item_8h_ae5faa28ae90e3c8658289b9c513d0f1f}{C\+H\+\_\+\+AC}}~10 +\item +\#define \mbox{\hyperlink{item_8h_ab43c8cc9fb5c1667a5956e48017826ff}{C\+H\+\_\+\+S\+P\+I\+L\+ED}}~11 +\item +\#define \mbox{\hyperlink{item_8h_a7fc4d0ba1b07d30d6276ebda33dd6987}{C\+H\+\_\+\+M\+O\+T\+OR}}~12 +\item +\#define \mbox{\hyperlink{item_8h_a446f242b566032430f42ce9be6b366aa}{C\+H\+\_\+\+M\+B\+US}}~14 +\item +\#define \mbox{\hyperlink{item_8h_a63c6b75de3cb38d4287f404544617d49}{C\+H\+\_\+\+W\+H\+I\+TE}}~127 +\item +\#define \mbox{\hyperlink{item_8h_a262c6c5a68af279047e881fa9b3cef5c}{P\+O\+L\+L\+I\+N\+G\+\_\+\+S\+L\+OW}}~1 +\item +\#define \mbox{\hyperlink{item_8h_a54a9699996650faf9d4d6c02b3f963fc}{P\+O\+L\+L\+I\+N\+G\+\_\+\+F\+A\+ST}}~2 +\item +\#define \mbox{\hyperlink{item_8h_ac6867c708730303da2f01e340eee37d9}{P\+O\+L\+L\+I\+N\+G\+\_\+\+I\+NT}}~3 +\item +\#define \mbox{\hyperlink{item_8h_a685813f758ad8fb6fad67c0084c5ca09}{I\+\_\+\+T\+Y\+PE}}~0 +\item +\#define \mbox{\hyperlink{item_8h_af8d092a321ecfbeda6cdd7c4b66489d1}{I\+\_\+\+A\+RG}}~1 +\item +\#define \mbox{\hyperlink{item_8h_a0b4d13f8b65a71a667a459ebad8e589b}{I\+\_\+\+V\+AL}}~2 +\item +\#define \mbox{\hyperlink{item_8h_a238f99ac45b5fc2219c6832dde0c0c9c}{I\+\_\+\+C\+MD}}~3 +\item +\#define \mbox{\hyperlink{item_8h_acb5cc75c544a0305caec81705c5342d5}{I\+\_\+\+E\+XT}}~4 +\item +\#define \mbox{\hyperlink{item_8h_a33e16fb9464b81250690be772e5453b2}{M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+A\+D\+DR}}~0 +\item +\#define \mbox{\hyperlink{item_8h_a11473a232ebb7404cac737c76e923168}{M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+R\+EG}}~1 +\item +\#define \mbox{\hyperlink{item_8h_a780e889b24bc8eef15a2a5ad322be003}{M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+M\+A\+SK}}~2 +\item +\#define \mbox{\hyperlink{item_8h_a03528b38365390c9e8059b0df0609c18}{M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+M\+A\+X\+\_\+\+S\+C\+A\+LE}}~3 +\item +\#define \mbox{\hyperlink{item_8h_ad4b2787dc56378c18bf75d617d14d6a3}{M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE}}~4 +\item +\#define \mbox{\hyperlink{item_8h_a787c9259a8994221c35a2b3002c4380e}{M\+O\+D\+B\+U\+S\+\_\+\+C\+O\+I\+L\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE}}~0 +\item +\#define \mbox{\hyperlink{item_8h_a7b8cf3bbb886d61a0142da2771f84ca0}{M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+S\+C\+R\+E\+T\+E\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE}}~1 +\item +\#define \mbox{\hyperlink{item_8h_abbf10f9ea9343e50ce072778b23b80f3}{M\+O\+D\+B\+U\+S\+\_\+\+H\+O\+L\+D\+I\+N\+G\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE}}~2 +\item +\#define \mbox{\hyperlink{item_8h_a3b7f235ae917b235caa3eef85e16b856}{M\+O\+D\+B\+U\+S\+\_\+\+I\+N\+P\+U\+T\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE}}~3 +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +short \mbox{\hyperlink{item_8h_a73643474e211698e96d2a6ac69264b46}{thermo\+Set\+Cur\+Temp}} (char $\ast$name, float t) +\item +int \mbox{\hyperlink{item_8h_a354a79f09dd98fcf6c171dd5c8de21b6}{txt2cmd}} (char $\ast$payload) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{item_8h_a012787f09a43864616e2b44349b29352}{items}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{item_8h_ae5faa28ae90e3c8658289b9c513d0f1f}\label{item_8h_ae5faa28ae90e3c8658289b9c513d0f1f}} +\index{item.h@{item.h}!CH\_AC@{CH\_AC}} +\index{CH\_AC@{CH\_AC}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_AC}{CH\_AC}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+AC~10} + +\mbox{\Hypertarget{item_8h_ae8deebae2223cc41b707c0ccc12110f7}\label{item_8h_ae8deebae2223cc41b707c0ccc12110f7}} +\index{item.h@{item.h}!CH\_DIMMER@{CH\_DIMMER}} +\index{CH\_DIMMER@{CH\_DIMMER}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_DIMMER}{CH\_DIMMER}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+D\+I\+M\+M\+ER~0} + +\mbox{\Hypertarget{item_8h_a8013a9895a9e2fa6afc8b411f2ee4d77}\label{item_8h_a8013a9895a9e2fa6afc8b411f2ee4d77}} +\index{item.h@{item.h}!CH\_GROUP@{CH\_GROUP}} +\index{CH\_GROUP@{CH\_GROUP}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_GROUP}{CH\_GROUP}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+G\+R\+O\+UP~7} + +\mbox{\Hypertarget{item_8h_a446f242b566032430f42ce9be6b366aa}\label{item_8h_a446f242b566032430f42ce9be6b366aa}} +\index{item.h@{item.h}!CH\_MBUS@{CH\_MBUS}} +\index{CH\_MBUS@{CH\_MBUS}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_MBUS}{CH\_MBUS}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+M\+B\+US~14} + +\mbox{\Hypertarget{item_8h_abdb1c8601e3997eeabfbe85b77ae9a9e}\label{item_8h_abdb1c8601e3997eeabfbe85b77ae9a9e}} +\index{item.h@{item.h}!CH\_MODBUS@{CH\_MODBUS}} +\index{CH\_MODBUS@{CH\_MODBUS}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_MODBUS}{CH\_MODBUS}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+M\+O\+D\+B\+US~4} + +\mbox{\Hypertarget{item_8h_a7fc4d0ba1b07d30d6276ebda33dd6987}\label{item_8h_a7fc4d0ba1b07d30d6276ebda33dd6987}} +\index{item.h@{item.h}!CH\_MOTOR@{CH\_MOTOR}} +\index{CH\_MOTOR@{CH\_MOTOR}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_MOTOR}{CH\_MOTOR}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+M\+O\+T\+OR~12} + +\mbox{\Hypertarget{item_8h_a2daad851379261136f0c22f056663fc2}\label{item_8h_a2daad851379261136f0c22f056663fc2}} +\index{item.h@{item.h}!CH\_PWM@{CH\_PWM}} +\index{CH\_PWM@{CH\_PWM}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_PWM}{CH\_PWM}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+P\+WM~3} + +\mbox{\Hypertarget{item_8h_ac9f09e5e652cb6797b7a05e93133d20f}\label{item_8h_ac9f09e5e652cb6797b7a05e93133d20f}} +\index{item.h@{item.h}!CH\_RELAY@{CH\_RELAY}} +\index{CH\_RELAY@{CH\_RELAY}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_RELAY}{CH\_RELAY}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+R\+E\+L\+AY~6} + +\mbox{\Hypertarget{item_8h_abbb5a64a224fe607fbf2fc5ac29e31cb}\label{item_8h_abbb5a64a224fe607fbf2fc5ac29e31cb}} +\index{item.h@{item.h}!CH\_RGB@{CH\_RGB}} +\index{CH\_RGB@{CH\_RGB}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_RGB}{CH\_RGB}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+R\+GB~2} + +\mbox{\Hypertarget{item_8h_abdcc93b4a9164bb10e473766c4083d8b}\label{item_8h_abdcc93b4a9164bb10e473766c4083d8b}} +\index{item.h@{item.h}!CH\_RGBW@{CH\_RGBW}} +\index{CH\_RGBW@{CH\_RGBW}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_RGBW}{CH\_RGBW}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+R\+G\+BW~1} + +\mbox{\Hypertarget{item_8h_ab43c8cc9fb5c1667a5956e48017826ff}\label{item_8h_ab43c8cc9fb5c1667a5956e48017826ff}} +\index{item.h@{item.h}!CH\_SPILED@{CH\_SPILED}} +\index{CH\_SPILED@{CH\_SPILED}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_SPILED}{CH\_SPILED}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+S\+P\+I\+L\+ED~11} + +\mbox{\Hypertarget{item_8h_a3f68dec7d0ed1ba592fa281ee427a72a}\label{item_8h_a3f68dec7d0ed1ba592fa281ee427a72a}} +\index{item.h@{item.h}!CH\_THERMO@{CH\_THERMO}} +\index{CH\_THERMO@{CH\_THERMO}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_THERMO}{CH\_THERMO}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+T\+H\+E\+R\+MO~5} + +\mbox{\Hypertarget{item_8h_a762566fb96b5a377eada6a32639c4e37}\label{item_8h_a762566fb96b5a377eada6a32639c4e37}} +\index{item.h@{item.h}!CH\_VC@{CH\_VC}} +\index{CH\_VC@{CH\_VC}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_VC}{CH\_VC}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+VC~9} + +\mbox{\Hypertarget{item_8h_a0b5411d14d7fed59c97adaf6523323b7}\label{item_8h_a0b5411d14d7fed59c97adaf6523323b7}} +\index{item.h@{item.h}!CH\_VCTEMP@{CH\_VCTEMP}} +\index{CH\_VCTEMP@{CH\_VCTEMP}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_VCTEMP}{CH\_VCTEMP}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+V\+C\+T\+E\+MP~8} + +\mbox{\Hypertarget{item_8h_a63c6b75de3cb38d4287f404544617d49}\label{item_8h_a63c6b75de3cb38d4287f404544617d49}} +\index{item.h@{item.h}!CH\_WHITE@{CH\_WHITE}} +\index{CH\_WHITE@{CH\_WHITE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{CH\_WHITE}{CH\_WHITE}} +{\footnotesize\ttfamily \#define C\+H\+\_\+\+W\+H\+I\+TE~127} + +\mbox{\Hypertarget{item_8h_af8d092a321ecfbeda6cdd7c4b66489d1}\label{item_8h_af8d092a321ecfbeda6cdd7c4b66489d1}} +\index{item.h@{item.h}!I\_ARG@{I\_ARG}} +\index{I\_ARG@{I\_ARG}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{I\_ARG}{I\_ARG}} +{\footnotesize\ttfamily \#define I\+\_\+\+A\+RG~1} + +\mbox{\Hypertarget{item_8h_a238f99ac45b5fc2219c6832dde0c0c9c}\label{item_8h_a238f99ac45b5fc2219c6832dde0c0c9c}} +\index{item.h@{item.h}!I\_CMD@{I\_CMD}} +\index{I\_CMD@{I\_CMD}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{I\_CMD}{I\_CMD}} +{\footnotesize\ttfamily \#define I\+\_\+\+C\+MD~3} + +\mbox{\Hypertarget{item_8h_acb5cc75c544a0305caec81705c5342d5}\label{item_8h_acb5cc75c544a0305caec81705c5342d5}} +\index{item.h@{item.h}!I\_EXT@{I\_EXT}} +\index{I\_EXT@{I\_EXT}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{I\_EXT}{I\_EXT}} +{\footnotesize\ttfamily \#define I\+\_\+\+E\+XT~4} + +\mbox{\Hypertarget{item_8h_a685813f758ad8fb6fad67c0084c5ca09}\label{item_8h_a685813f758ad8fb6fad67c0084c5ca09}} +\index{item.h@{item.h}!I\_TYPE@{I\_TYPE}} +\index{I\_TYPE@{I\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{I\_TYPE}{I\_TYPE}} +{\footnotesize\ttfamily \#define I\+\_\+\+T\+Y\+PE~0} + +\mbox{\Hypertarget{item_8h_a0b4d13f8b65a71a667a459ebad8e589b}\label{item_8h_a0b4d13f8b65a71a667a459ebad8e589b}} +\index{item.h@{item.h}!I\_VAL@{I\_VAL}} +\index{I\_VAL@{I\_VAL}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{I\_VAL}{I\_VAL}} +{\footnotesize\ttfamily \#define I\+\_\+\+V\+AL~2} + +\mbox{\Hypertarget{item_8h_a33e16fb9464b81250690be772e5453b2}\label{item_8h_a33e16fb9464b81250690be772e5453b2}} +\index{item.h@{item.h}!MODBUS\_CMD\_ARG\_ADDR@{MODBUS\_CMD\_ARG\_ADDR}} +\index{MODBUS\_CMD\_ARG\_ADDR@{MODBUS\_CMD\_ARG\_ADDR}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_CMD\_ARG\_ADDR}{MODBUS\_CMD\_ARG\_ADDR}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+A\+D\+DR~0} + +\mbox{\Hypertarget{item_8h_a780e889b24bc8eef15a2a5ad322be003}\label{item_8h_a780e889b24bc8eef15a2a5ad322be003}} +\index{item.h@{item.h}!MODBUS\_CMD\_ARG\_MASK@{MODBUS\_CMD\_ARG\_MASK}} +\index{MODBUS\_CMD\_ARG\_MASK@{MODBUS\_CMD\_ARG\_MASK}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_CMD\_ARG\_MASK}{MODBUS\_CMD\_ARG\_MASK}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+M\+A\+SK~2} + +\mbox{\Hypertarget{item_8h_a03528b38365390c9e8059b0df0609c18}\label{item_8h_a03528b38365390c9e8059b0df0609c18}} +\index{item.h@{item.h}!MODBUS\_CMD\_ARG\_MAX\_SCALE@{MODBUS\_CMD\_ARG\_MAX\_SCALE}} +\index{MODBUS\_CMD\_ARG\_MAX\_SCALE@{MODBUS\_CMD\_ARG\_MAX\_SCALE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_CMD\_ARG\_MAX\_SCALE}{MODBUS\_CMD\_ARG\_MAX\_SCALE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+M\+A\+X\+\_\+\+S\+C\+A\+LE~3} + +\mbox{\Hypertarget{item_8h_a11473a232ebb7404cac737c76e923168}\label{item_8h_a11473a232ebb7404cac737c76e923168}} +\index{item.h@{item.h}!MODBUS\_CMD\_ARG\_REG@{MODBUS\_CMD\_ARG\_REG}} +\index{MODBUS\_CMD\_ARG\_REG@{MODBUS\_CMD\_ARG\_REG}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_CMD\_ARG\_REG}{MODBUS\_CMD\_ARG\_REG}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+R\+EG~1} + +\mbox{\Hypertarget{item_8h_ad4b2787dc56378c18bf75d617d14d6a3}\label{item_8h_ad4b2787dc56378c18bf75d617d14d6a3}} +\index{item.h@{item.h}!MODBUS\_CMD\_ARG\_REG\_TYPE@{MODBUS\_CMD\_ARG\_REG\_TYPE}} +\index{MODBUS\_CMD\_ARG\_REG\_TYPE@{MODBUS\_CMD\_ARG\_REG\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_CMD\_ARG\_REG\_TYPE}{MODBUS\_CMD\_ARG\_REG\_TYPE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+M\+D\+\_\+\+A\+R\+G\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE~4} + +\mbox{\Hypertarget{item_8h_a787c9259a8994221c35a2b3002c4380e}\label{item_8h_a787c9259a8994221c35a2b3002c4380e}} +\index{item.h@{item.h}!MODBUS\_COIL\_REG\_TYPE@{MODBUS\_COIL\_REG\_TYPE}} +\index{MODBUS\_COIL\_REG\_TYPE@{MODBUS\_COIL\_REG\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_COIL\_REG\_TYPE}{MODBUS\_COIL\_REG\_TYPE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+C\+O\+I\+L\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE~0} + +\mbox{\Hypertarget{item_8h_a7b8cf3bbb886d61a0142da2771f84ca0}\label{item_8h_a7b8cf3bbb886d61a0142da2771f84ca0}} +\index{item.h@{item.h}!MODBUS\_DISCRETE\_REG\_TYPE@{MODBUS\_DISCRETE\_REG\_TYPE}} +\index{MODBUS\_DISCRETE\_REG\_TYPE@{MODBUS\_DISCRETE\_REG\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_DISCRETE\_REG\_TYPE}{MODBUS\_DISCRETE\_REG\_TYPE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+S\+C\+R\+E\+T\+E\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE~1} + +\mbox{\Hypertarget{item_8h_abbf10f9ea9343e50ce072778b23b80f3}\label{item_8h_abbf10f9ea9343e50ce072778b23b80f3}} +\index{item.h@{item.h}!MODBUS\_HOLDING\_REG\_TYPE@{MODBUS\_HOLDING\_REG\_TYPE}} +\index{MODBUS\_HOLDING\_REG\_TYPE@{MODBUS\_HOLDING\_REG\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_HOLDING\_REG\_TYPE}{MODBUS\_HOLDING\_REG\_TYPE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+H\+O\+L\+D\+I\+N\+G\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE~2} + +\mbox{\Hypertarget{item_8h_a3b7f235ae917b235caa3eef85e16b856}\label{item_8h_a3b7f235ae917b235caa3eef85e16b856}} +\index{item.h@{item.h}!MODBUS\_INPUT\_REG\_TYPE@{MODBUS\_INPUT\_REG\_TYPE}} +\index{MODBUS\_INPUT\_REG\_TYPE@{MODBUS\_INPUT\_REG\_TYPE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_INPUT\_REG\_TYPE}{MODBUS\_INPUT\_REG\_TYPE}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+I\+N\+P\+U\+T\+\_\+\+R\+E\+G\+\_\+\+T\+Y\+PE~3} + +\mbox{\Hypertarget{item_8h_a54a9699996650faf9d4d6c02b3f963fc}\label{item_8h_a54a9699996650faf9d4d6c02b3f963fc}} +\index{item.h@{item.h}!POLLING\_FAST@{POLLING\_FAST}} +\index{POLLING\_FAST@{POLLING\_FAST}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{POLLING\_FAST}{POLLING\_FAST}} +{\footnotesize\ttfamily \#define P\+O\+L\+L\+I\+N\+G\+\_\+\+F\+A\+ST~2} + +\mbox{\Hypertarget{item_8h_ac6867c708730303da2f01e340eee37d9}\label{item_8h_ac6867c708730303da2f01e340eee37d9}} +\index{item.h@{item.h}!POLLING\_INT@{POLLING\_INT}} +\index{POLLING\_INT@{POLLING\_INT}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{POLLING\_INT}{POLLING\_INT}} +{\footnotesize\ttfamily \#define P\+O\+L\+L\+I\+N\+G\+\_\+\+I\+NT~3} + +\mbox{\Hypertarget{item_8h_a262c6c5a68af279047e881fa9b3cef5c}\label{item_8h_a262c6c5a68af279047e881fa9b3cef5c}} +\index{item.h@{item.h}!POLLING\_SLOW@{POLLING\_SLOW}} +\index{POLLING\_SLOW@{POLLING\_SLOW}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{POLLING\_SLOW}{POLLING\_SLOW}} +{\footnotesize\ttfamily \#define P\+O\+L\+L\+I\+N\+G\+\_\+\+S\+L\+OW~1} + +\mbox{\Hypertarget{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}\label{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}} +\index{item.h@{item.h}!S\_ADDITIONAL@{S\_ADDITIONAL}} +\index{S\_ADDITIONAL@{S\_ADDITIONAL}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_ADDITIONAL}{S\_ADDITIONAL}} +{\footnotesize\ttfamily \#define S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL~9} + +\mbox{\Hypertarget{item_8h_a7fc4fdff41f72de35ff7f31a88d2ef17}\label{item_8h_a7fc4fdff41f72de35ff7f31a88d2ef17}} +\index{item.h@{item.h}!S\_CMD@{S\_CMD}} +\index{S\_CMD@{S\_CMD}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_CMD}{S\_CMD}} +{\footnotesize\ttfamily \#define S\+\_\+\+C\+MD~1} + +\mbox{\Hypertarget{item_8h_ad3cdbaefd6a2dfcd2a87bdc60f6874d4}\label{item_8h_ad3cdbaefd6a2dfcd2a87bdc60f6874d4}} +\index{item.h@{item.h}!S\_FAN@{S\_FAN}} +\index{S\_FAN@{S\_FAN}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_FAN}{S\_FAN}} +{\footnotesize\ttfamily \#define S\+\_\+\+F\+AN~5} + +\mbox{\Hypertarget{item_8h_a8c9b4a8b457fa12f533dbdf16850a2f1}\label{item_8h_a8c9b4a8b457fa12f533dbdf16850a2f1}} +\index{item.h@{item.h}!S\_HSV@{S\_HSV}} +\index{S\_HSV@{S\_HSV}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_HSV}{S\_HSV}} +{\footnotesize\ttfamily \#define S\+\_\+\+H\+SV~3} + +\mbox{\Hypertarget{item_8h_a87a96d42c1cafebc18c7e558c015137b}\label{item_8h_a87a96d42c1cafebc18c7e558c015137b}} +\index{item.h@{item.h}!S\_HUE@{S\_HUE}} +\index{S\_HUE@{S\_HUE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_HUE}{S\_HUE}} +{\footnotesize\ttfamily \#define S\+\_\+\+H\+UE~7} + +\mbox{\Hypertarget{item_8h_af90af1bc68960811e82d0ca3782b8c46}\label{item_8h_af90af1bc68960811e82d0ca3782b8c46}} +\index{item.h@{item.h}!S\_MODE@{S\_MODE}} +\index{S\_MODE@{S\_MODE}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_MODE}{S\_MODE}} +{\footnotesize\ttfamily \#define S\+\_\+\+M\+O\+DE~6} + +\mbox{\Hypertarget{item_8h_a131cfabb558ab1b7ad493e75d5e060c9}\label{item_8h_a131cfabb558ab1b7ad493e75d5e060c9}} +\index{item.h@{item.h}!S\_NOTFOUND@{S\_NOTFOUND}} +\index{S\_NOTFOUND@{S\_NOTFOUND}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_NOTFOUND}{S\_NOTFOUND}} +{\footnotesize\ttfamily \#define S\+\_\+\+N\+O\+T\+F\+O\+U\+ND~0} + +\mbox{\Hypertarget{item_8h_a110d6e77da40715a6d53921bab49b3f3}\label{item_8h_a110d6e77da40715a6d53921bab49b3f3}} +\index{item.h@{item.h}!S\_RGB@{S\_RGB}} +\index{S\_RGB@{S\_RGB}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_RGB}{S\_RGB}} +{\footnotesize\ttfamily \#define S\+\_\+\+R\+GB~4} + +\mbox{\Hypertarget{item_8h_aca68093e2923b0b080643fc4bba25e75}\label{item_8h_aca68093e2923b0b080643fc4bba25e75}} +\index{item.h@{item.h}!S\_SAT@{S\_SAT}} +\index{S\_SAT@{S\_SAT}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_SAT}{S\_SAT}} +{\footnotesize\ttfamily \#define S\+\_\+\+S\+AT~8} + +\mbox{\Hypertarget{item_8h_a9937ac1220b7ab4dbc8d79911e81a709}\label{item_8h_a9937ac1220b7ab4dbc8d79911e81a709}} +\index{item.h@{item.h}!S\_SET@{S\_SET}} +\index{S\_SET@{S\_SET}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_SET}{S\_SET}} +{\footnotesize\ttfamily \#define S\+\_\+\+S\+ET~2} + +\mbox{\Hypertarget{item_8h_a9073478a392efbb9bf25be0f83f8654e}\label{item_8h_a9073478a392efbb9bf25be0f83f8654e}} +\index{item.h@{item.h}!S\_TEMP@{S\_TEMP}} +\index{S\_TEMP@{S\_TEMP}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{S\_TEMP}{S\_TEMP}} +{\footnotesize\ttfamily \#define S\+\_\+\+T\+E\+MP~9} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{item_8h_a73643474e211698e96d2a6ac69264b46}\label{item_8h_a73643474e211698e96d2a6ac69264b46}} +\index{item.h@{item.h}!thermoSetCurTemp@{thermoSetCurTemp}} +\index{thermoSetCurTemp@{thermoSetCurTemp}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{thermoSetCurTemp()}{thermoSetCurTemp()}} +{\footnotesize\ttfamily short thermo\+Set\+Cur\+Temp (\begin{DoxyParamCaption}\item[{char $\ast$}]{name, }\item[{float}]{t }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{item_8h_a354a79f09dd98fcf6c171dd5c8de21b6}\label{item_8h_a354a79f09dd98fcf6c171dd5c8de21b6}} +\index{item.h@{item.h}!txt2cmd@{txt2cmd}} +\index{txt2cmd@{txt2cmd}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{txt2cmd()}{txt2cmd()}} +{\footnotesize\ttfamily int txt2cmd (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{item_8h_a012787f09a43864616e2b44349b29352}\label{item_8h_a012787f09a43864616e2b44349b29352}} +\index{item.h@{item.h}!items@{items}} +\index{items@{items}!item.h@{item.h}} +\doxysubsubsection{\texorpdfstring{items}{items}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ items\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/item_cmd_8cpp.tex b/docs/latex/item_cmd_8cpp.tex new file mode 100644 index 0000000..2c3f99d --- /dev/null +++ b/docs/latex/item_cmd_8cpp.tex @@ -0,0 +1,22 @@ +\hypertarget{item_cmd_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/item\+Cmd.cpp File Reference} +\label{item_cmd_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.cpp}} +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +{\ttfamily \#include \char`\"{}item\+Cmd.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Adafruit\+\_\+\+Neo\+Pixel.\+h$>$}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{item_cmd_8cpp_a354a79f09dd98fcf6c171dd5c8de21b6}{txt2cmd}} (char $\ast$payload) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{item_cmd_8cpp_a354a79f09dd98fcf6c171dd5c8de21b6}\label{item_cmd_8cpp_a354a79f09dd98fcf6c171dd5c8de21b6}} +\index{itemCmd.cpp@{itemCmd.cpp}!txt2cmd@{txt2cmd}} +\index{txt2cmd@{txt2cmd}!itemCmd.cpp@{itemCmd.cpp}} +\doxysubsubsection{\texorpdfstring{txt2cmd()}{txt2cmd()}} +{\footnotesize\ttfamily int txt2cmd (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload }\end{DoxyParamCaption})} + diff --git a/docs/latex/item_cmd_8h.tex b/docs/latex/item_cmd_8h.tex new file mode 100644 index 0000000..b2506fe --- /dev/null +++ b/docs/latex/item_cmd_8h.tex @@ -0,0 +1,482 @@ +\hypertarget{item_cmd_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/item\+Cmd.h File Reference} +\label{item_cmd_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/itemCmd.h}} +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +union \mbox{\hyperlink{unionitem_cmd_store}{item\+Cmd\+Store}} +\item +union \mbox{\hyperlink{unionitem_arg_store}{item\+Arg\+Store}} +\item +class \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{item_cmd_8h_a4abe93c906bb31bebd4afd78fadec6f4}{commands\+Num}}~sizeof(commands\+\_\+P)/sizeof(\mbox{\hyperlink{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}{cmdstr}}) +\item +\#define \mbox{\hyperlink{item_cmd_8h_ad22b3834e4e8a59a072b1b630b2a0cb7}{C\+M\+D\+\_\+\+ON}}~1 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a48422ade9d3e69812b682755ed27b51d}{C\+M\+D\+\_\+\+O\+FF}}~2 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a55530b510f79a5db17ecf0a9db2ecaf7}{C\+M\+D\+\_\+\+R\+E\+S\+T\+O\+RE}}~3 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a343682f7c52665540fd653195f727ef2}{C\+M\+D\+\_\+\+T\+O\+G\+G\+LE}}~4 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a565ec1390b7b34a6ac42039ecb299455}{C\+M\+D\+\_\+\+H\+A\+LT}}~5 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a3871f1b01413297e1c23e1e484016a21}{C\+M\+D\+\_\+\+X\+ON}}~6 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a5a0861b5be0a4e513580704940c32c38}{C\+M\+D\+\_\+\+X\+O\+FF}}~7 +\item +\#define \mbox{\hyperlink{item_cmd_8h_ad5c2fd894f208b25f6f8ed2b43660e7c}{C\+M\+D\+\_\+\+UP}}~8 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a28e8a03e7dd6bd46383c79a8f329bda2}{C\+M\+D\+\_\+\+DN}}~9 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a897c95ff7be54fc9316186b97412c9cf}{C\+M\+D\+\_\+\+H\+E\+AT}}~0xa +\item +\#define \mbox{\hyperlink{item_cmd_8h_a4714e5ac85eca811a7d871e0cef7e720}{C\+M\+D\+\_\+\+C\+O\+OL}}~0xb +\item +\#define \mbox{\hyperlink{item_cmd_8h_ac6314f47e3a245eec13c6b5b0fa1c7db}{C\+M\+D\+\_\+\+A\+U\+TO}}~0xc +\item +\#define \mbox{\hyperlink{item_cmd_8h_ab321d93c256f9d29b4029a69711c6a12}{C\+M\+D\+\_\+\+F\+AN}}~0xd +\item +\#define \mbox{\hyperlink{item_cmd_8h_a2f5d120eea10ae12a0da9cfecc64d75b}{C\+M\+D\+\_\+\+D\+RY}}~0xe +\item +\#define \mbox{\hyperlink{item_cmd_8h_a46dc7ae84992bfe62cc00731959a67f4}{C\+M\+D\+\_\+\+S\+T\+OP}}~0xf +\item +\#define \mbox{\hyperlink{item_cmd_8h_ae1666304f65177e83cebf6ae965d28d2}{C\+M\+D\+\_\+\+H\+I\+GH}}~0x10 +\item +\#define \mbox{\hyperlink{item_cmd_8h_aa903c4f6ec21104fa3f2960e2acdd2f6}{C\+M\+D\+\_\+\+M\+ED}}~0x11 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a1d207679bdb2eb0b008bdb13fddd0f5c}{C\+M\+D\+\_\+\+L\+OW}}~0x12 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a6b3022e09de5e4e8677a44c47c14fd7f}{C\+M\+D\+\_\+\+E\+N\+A\+B\+L\+ED}}~0x13 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a9921eb85f3037b82c45510c726a444ee}{C\+M\+D\+\_\+\+D\+I\+S\+A\+B\+L\+ED}}~0x14 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a04b54affc87ca5d5434e05fb2ba287c1}{C\+M\+D\+\_\+\+T\+R\+UE}}~0x15 +\item +\#define \mbox{\hyperlink{item_cmd_8h_ace5569e1c56237a640e7321e71ce91ad}{C\+M\+D\+\_\+\+F\+A\+L\+SE}}~0x16 +\item +\#define \mbox{\hyperlink{item_cmd_8h_aed0d15abd0c058f50b31c3d77da9190b}{C\+M\+D\+\_\+\+R\+GB}}~0x17 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a6df5caa95ccde9d14fc620a8a7154aef}{C\+M\+D\+\_\+\+H\+SV}}~0x18 +\item +\#define \mbox{\hyperlink{item_cmd_8h_aede8404e1d3398c2c235eaa17ea2cd5d}{C\+M\+D\+\_\+\+M\+A\+SK}}~0xff +\item +\#define \mbox{\hyperlink{item_cmd_8h_a890221cb651a3f30f6d1bca0d9b0e13d}{F\+L\+A\+G\+\_\+\+M\+A\+SK}}~0xff00 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a9bbd3f606a1c37e525a172fa9b6b345d}{C\+M\+D\+\_\+\+V\+O\+ID}}~0 +\item +\#define \mbox{\hyperlink{item_cmd_8h_ae629f52b1af9bf75713ef35ea00b6ffa}{C\+M\+D\+\_\+\+U\+N\+K\+N\+O\+WN}}~-\/1 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a8ebc7dfd9ad3fa1a7ea3f5c1c4df02ab}{C\+M\+D\+\_\+\+J\+S\+ON}}~-\/2 +\item +\#define \mbox{\hyperlink{item_cmd_8h_aebe7823b286110926c2da2893b56a7da}{S\+E\+N\+D\+\_\+\+C\+O\+M\+M\+A\+ND}}~0x100 +\item +\#define \mbox{\hyperlink{item_cmd_8h_adba0eeb6b1a5678cea10f4a823829b24}{S\+E\+N\+D\+\_\+\+P\+A\+R\+A\+M\+E\+T\+E\+RS}}~0x200 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a73ec395d869a354733c01a5331c942f1}{S\+E\+N\+D\+\_\+\+R\+E\+T\+RY}}~0x400 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a33ea54bfccbf6af4fc41fdd08b6d0e57}{S\+E\+N\+D\+\_\+\+D\+E\+F\+F\+E\+R\+ED}}~0x800 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a2bfeb847a3993b4da4f0a5811af7b995}{A\+C\+T\+I\+O\+N\+\_\+\+N\+E\+E\+D\+ED}}~0x1000 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a7c17785e1674783a1b4ba4274ae3fb44}{A\+C\+T\+I\+O\+N\+\_\+\+I\+N\+\_\+\+P\+R\+O\+C\+E\+SS}}~0x2000 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a89b3fb099d3038f85ed3b573ba64d031}{S\+T\+\_\+\+V\+O\+ID}}~0 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a0612f5b4f1bcd3a696c6a17b7e3e059e}{S\+T\+\_\+\+P\+E\+R\+C\+E\+N\+TS}}~1 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a6291bb44d8bcbb4f371c010314f059cb}{S\+T\+\_\+\+T\+E\+NS}}~2 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a67ad81da37213da74d71033ecd62a00c}{S\+T\+\_\+\+H\+SV}}~3 +\item +\#define \mbox{\hyperlink{item_cmd_8h_abac7e90eb597c98d2f5870c6528c09da}{S\+T\+\_\+\+HS}}~4 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a644980a3323313ed2e620aebdd993537}{S\+T\+\_\+\+F\+L\+O\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US}}~5 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a38685184c002f8c14fab409847cdd9a5}{S\+T\+\_\+\+F\+L\+O\+A\+T\+\_\+\+F\+A\+R\+E\+N\+H\+E\+IT}}~6 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a0cc85c763ceffc24cddfe74853f1d2ee}{S\+T\+\_\+\+R\+GB}}~7 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a5f433ae9408b87addac620079cb92f1a}{S\+T\+\_\+\+R\+G\+BW}}~8 +\item +\#define \mbox{\hyperlink{item_cmd_8h_ad5b8ab06d61866259ae7bc34655701a8}{S\+T\+\_\+\+P\+E\+R\+C\+E\+N\+T\+S255}}~9 +\item +\#define \mbox{\hyperlink{item_cmd_8h_af1ffdc01c9fc9cc648518fef4fde8a52}{S\+T\+\_\+\+H\+S\+V255}}~10 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a9bbd91c0ea3ac6af8f0deadcddce706c}{S\+T\+\_\+\+I\+N\+T32}}~11 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a6af0c39035eaf94f9c436ab0260c1d94}{S\+T\+\_\+\+U\+I\+N\+T32}}~12 +\item +\#define \mbox{\hyperlink{item_cmd_8h_a9eb365863cb3267d934a4f517c3d4aad}{S\+T\+\_\+\+S\+T\+R\+I\+NG}}~13 +\item +\#define \mbox{\hyperlink{item_cmd_8h_ad8579fb5b68f5adc9862a20aeb3d9913}{S\+T\+\_\+\+F\+L\+O\+AT}}~14 +\end{DoxyCompactItemize} +\doxysubsection*{Typedefs} +\begin{DoxyCompactItemize} +\item +typedef char \mbox{\hyperlink{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}{cmdstr}}\mbox{[}9\mbox{]} +\begin{DoxyCompactList}\small\item\em \#include \char`\"{}item.\+h\char`\"{} \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{item_cmd_8h_a354a79f09dd98fcf6c171dd5c8de21b6}{txt2cmd}} (char $\ast$payload) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +const \mbox{\hyperlink{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}{cmdstr}} commands\+\_\+P\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{item_cmd_8h_a948e42c714310535a6faa06c9c652e82}{P\+R\+O\+G\+M\+EM}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{item_cmd_8h_a7c17785e1674783a1b4ba4274ae3fb44}\label{item_cmd_8h_a7c17785e1674783a1b4ba4274ae3fb44}} +\index{itemCmd.h@{itemCmd.h}!ACTION\_IN\_PROCESS@{ACTION\_IN\_PROCESS}} +\index{ACTION\_IN\_PROCESS@{ACTION\_IN\_PROCESS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ACTION\_IN\_PROCESS}{ACTION\_IN\_PROCESS}} +{\footnotesize\ttfamily \#define A\+C\+T\+I\+O\+N\+\_\+\+I\+N\+\_\+\+P\+R\+O\+C\+E\+SS~0x2000} + +\mbox{\Hypertarget{item_cmd_8h_a2bfeb847a3993b4da4f0a5811af7b995}\label{item_cmd_8h_a2bfeb847a3993b4da4f0a5811af7b995}} +\index{itemCmd.h@{itemCmd.h}!ACTION\_NEEDED@{ACTION\_NEEDED}} +\index{ACTION\_NEEDED@{ACTION\_NEEDED}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ACTION\_NEEDED}{ACTION\_NEEDED}} +{\footnotesize\ttfamily \#define A\+C\+T\+I\+O\+N\+\_\+\+N\+E\+E\+D\+ED~0x1000} + +\mbox{\Hypertarget{item_cmd_8h_ac6314f47e3a245eec13c6b5b0fa1c7db}\label{item_cmd_8h_ac6314f47e3a245eec13c6b5b0fa1c7db}} +\index{itemCmd.h@{itemCmd.h}!CMD\_AUTO@{CMD\_AUTO}} +\index{CMD\_AUTO@{CMD\_AUTO}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_AUTO}{CMD\_AUTO}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+A\+U\+TO~0xc} + +\mbox{\Hypertarget{item_cmd_8h_a4714e5ac85eca811a7d871e0cef7e720}\label{item_cmd_8h_a4714e5ac85eca811a7d871e0cef7e720}} +\index{itemCmd.h@{itemCmd.h}!CMD\_COOL@{CMD\_COOL}} +\index{CMD\_COOL@{CMD\_COOL}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_COOL}{CMD\_COOL}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+C\+O\+OL~0xb} + +\mbox{\Hypertarget{item_cmd_8h_a9921eb85f3037b82c45510c726a444ee}\label{item_cmd_8h_a9921eb85f3037b82c45510c726a444ee}} +\index{itemCmd.h@{itemCmd.h}!CMD\_DISABLED@{CMD\_DISABLED}} +\index{CMD\_DISABLED@{CMD\_DISABLED}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_DISABLED}{CMD\_DISABLED}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+D\+I\+S\+A\+B\+L\+ED~0x14} + +\mbox{\Hypertarget{item_cmd_8h_a28e8a03e7dd6bd46383c79a8f329bda2}\label{item_cmd_8h_a28e8a03e7dd6bd46383c79a8f329bda2}} +\index{itemCmd.h@{itemCmd.h}!CMD\_DN@{CMD\_DN}} +\index{CMD\_DN@{CMD\_DN}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_DN}{CMD\_DN}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+DN~9} + +\mbox{\Hypertarget{item_cmd_8h_a2f5d120eea10ae12a0da9cfecc64d75b}\label{item_cmd_8h_a2f5d120eea10ae12a0da9cfecc64d75b}} +\index{itemCmd.h@{itemCmd.h}!CMD\_DRY@{CMD\_DRY}} +\index{CMD\_DRY@{CMD\_DRY}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_DRY}{CMD\_DRY}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+D\+RY~0xe} + +\mbox{\Hypertarget{item_cmd_8h_a6b3022e09de5e4e8677a44c47c14fd7f}\label{item_cmd_8h_a6b3022e09de5e4e8677a44c47c14fd7f}} +\index{itemCmd.h@{itemCmd.h}!CMD\_ENABLED@{CMD\_ENABLED}} +\index{CMD\_ENABLED@{CMD\_ENABLED}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_ENABLED}{CMD\_ENABLED}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+E\+N\+A\+B\+L\+ED~0x13} + +\mbox{\Hypertarget{item_cmd_8h_ace5569e1c56237a640e7321e71ce91ad}\label{item_cmd_8h_ace5569e1c56237a640e7321e71ce91ad}} +\index{itemCmd.h@{itemCmd.h}!CMD\_FALSE@{CMD\_FALSE}} +\index{CMD\_FALSE@{CMD\_FALSE}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_FALSE}{CMD\_FALSE}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+F\+A\+L\+SE~0x16} + +\mbox{\Hypertarget{item_cmd_8h_ab321d93c256f9d29b4029a69711c6a12}\label{item_cmd_8h_ab321d93c256f9d29b4029a69711c6a12}} +\index{itemCmd.h@{itemCmd.h}!CMD\_FAN@{CMD\_FAN}} +\index{CMD\_FAN@{CMD\_FAN}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_FAN}{CMD\_FAN}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+F\+AN~0xd} + +\mbox{\Hypertarget{item_cmd_8h_a565ec1390b7b34a6ac42039ecb299455}\label{item_cmd_8h_a565ec1390b7b34a6ac42039ecb299455}} +\index{itemCmd.h@{itemCmd.h}!CMD\_HALT@{CMD\_HALT}} +\index{CMD\_HALT@{CMD\_HALT}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_HALT}{CMD\_HALT}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+H\+A\+LT~5} + +\mbox{\Hypertarget{item_cmd_8h_a897c95ff7be54fc9316186b97412c9cf}\label{item_cmd_8h_a897c95ff7be54fc9316186b97412c9cf}} +\index{itemCmd.h@{itemCmd.h}!CMD\_HEAT@{CMD\_HEAT}} +\index{CMD\_HEAT@{CMD\_HEAT}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_HEAT}{CMD\_HEAT}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+H\+E\+AT~0xa} + +\mbox{\Hypertarget{item_cmd_8h_ae1666304f65177e83cebf6ae965d28d2}\label{item_cmd_8h_ae1666304f65177e83cebf6ae965d28d2}} +\index{itemCmd.h@{itemCmd.h}!CMD\_HIGH@{CMD\_HIGH}} +\index{CMD\_HIGH@{CMD\_HIGH}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_HIGH}{CMD\_HIGH}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+H\+I\+GH~0x10} + +\mbox{\Hypertarget{item_cmd_8h_a6df5caa95ccde9d14fc620a8a7154aef}\label{item_cmd_8h_a6df5caa95ccde9d14fc620a8a7154aef}} +\index{itemCmd.h@{itemCmd.h}!CMD\_HSV@{CMD\_HSV}} +\index{CMD\_HSV@{CMD\_HSV}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_HSV}{CMD\_HSV}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+H\+SV~0x18} + +\mbox{\Hypertarget{item_cmd_8h_a8ebc7dfd9ad3fa1a7ea3f5c1c4df02ab}\label{item_cmd_8h_a8ebc7dfd9ad3fa1a7ea3f5c1c4df02ab}} +\index{itemCmd.h@{itemCmd.h}!CMD\_JSON@{CMD\_JSON}} +\index{CMD\_JSON@{CMD\_JSON}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_JSON}{CMD\_JSON}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+J\+S\+ON~-\/2} + +\mbox{\Hypertarget{item_cmd_8h_a1d207679bdb2eb0b008bdb13fddd0f5c}\label{item_cmd_8h_a1d207679bdb2eb0b008bdb13fddd0f5c}} +\index{itemCmd.h@{itemCmd.h}!CMD\_LOW@{CMD\_LOW}} +\index{CMD\_LOW@{CMD\_LOW}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_LOW}{CMD\_LOW}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+L\+OW~0x12} + +\mbox{\Hypertarget{item_cmd_8h_aede8404e1d3398c2c235eaa17ea2cd5d}\label{item_cmd_8h_aede8404e1d3398c2c235eaa17ea2cd5d}} +\index{itemCmd.h@{itemCmd.h}!CMD\_MASK@{CMD\_MASK}} +\index{CMD\_MASK@{CMD\_MASK}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_MASK}{CMD\_MASK}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+M\+A\+SK~0xff} + +\mbox{\Hypertarget{item_cmd_8h_aa903c4f6ec21104fa3f2960e2acdd2f6}\label{item_cmd_8h_aa903c4f6ec21104fa3f2960e2acdd2f6}} +\index{itemCmd.h@{itemCmd.h}!CMD\_MED@{CMD\_MED}} +\index{CMD\_MED@{CMD\_MED}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_MED}{CMD\_MED}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+M\+ED~0x11} + +\mbox{\Hypertarget{item_cmd_8h_a48422ade9d3e69812b682755ed27b51d}\label{item_cmd_8h_a48422ade9d3e69812b682755ed27b51d}} +\index{itemCmd.h@{itemCmd.h}!CMD\_OFF@{CMD\_OFF}} +\index{CMD\_OFF@{CMD\_OFF}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_OFF}{CMD\_OFF}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+O\+FF~2} + +\mbox{\Hypertarget{item_cmd_8h_ad22b3834e4e8a59a072b1b630b2a0cb7}\label{item_cmd_8h_ad22b3834e4e8a59a072b1b630b2a0cb7}} +\index{itemCmd.h@{itemCmd.h}!CMD\_ON@{CMD\_ON}} +\index{CMD\_ON@{CMD\_ON}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_ON}{CMD\_ON}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+ON~1} + +\mbox{\Hypertarget{item_cmd_8h_a55530b510f79a5db17ecf0a9db2ecaf7}\label{item_cmd_8h_a55530b510f79a5db17ecf0a9db2ecaf7}} +\index{itemCmd.h@{itemCmd.h}!CMD\_RESTORE@{CMD\_RESTORE}} +\index{CMD\_RESTORE@{CMD\_RESTORE}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_RESTORE}{CMD\_RESTORE}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+R\+E\+S\+T\+O\+RE~3} + +\mbox{\Hypertarget{item_cmd_8h_aed0d15abd0c058f50b31c3d77da9190b}\label{item_cmd_8h_aed0d15abd0c058f50b31c3d77da9190b}} +\index{itemCmd.h@{itemCmd.h}!CMD\_RGB@{CMD\_RGB}} +\index{CMD\_RGB@{CMD\_RGB}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_RGB}{CMD\_RGB}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+R\+GB~0x17} + +\mbox{\Hypertarget{item_cmd_8h_a46dc7ae84992bfe62cc00731959a67f4}\label{item_cmd_8h_a46dc7ae84992bfe62cc00731959a67f4}} +\index{itemCmd.h@{itemCmd.h}!CMD\_STOP@{CMD\_STOP}} +\index{CMD\_STOP@{CMD\_STOP}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_STOP}{CMD\_STOP}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+S\+T\+OP~0xf} + +\mbox{\Hypertarget{item_cmd_8h_a343682f7c52665540fd653195f727ef2}\label{item_cmd_8h_a343682f7c52665540fd653195f727ef2}} +\index{itemCmd.h@{itemCmd.h}!CMD\_TOGGLE@{CMD\_TOGGLE}} +\index{CMD\_TOGGLE@{CMD\_TOGGLE}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_TOGGLE}{CMD\_TOGGLE}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+T\+O\+G\+G\+LE~4} + +\mbox{\Hypertarget{item_cmd_8h_a04b54affc87ca5d5434e05fb2ba287c1}\label{item_cmd_8h_a04b54affc87ca5d5434e05fb2ba287c1}} +\index{itemCmd.h@{itemCmd.h}!CMD\_TRUE@{CMD\_TRUE}} +\index{CMD\_TRUE@{CMD\_TRUE}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_TRUE}{CMD\_TRUE}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+T\+R\+UE~0x15} + +\mbox{\Hypertarget{item_cmd_8h_ae629f52b1af9bf75713ef35ea00b6ffa}\label{item_cmd_8h_ae629f52b1af9bf75713ef35ea00b6ffa}} +\index{itemCmd.h@{itemCmd.h}!CMD\_UNKNOWN@{CMD\_UNKNOWN}} +\index{CMD\_UNKNOWN@{CMD\_UNKNOWN}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_UNKNOWN}{CMD\_UNKNOWN}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+U\+N\+K\+N\+O\+WN~-\/1} + +\mbox{\Hypertarget{item_cmd_8h_ad5c2fd894f208b25f6f8ed2b43660e7c}\label{item_cmd_8h_ad5c2fd894f208b25f6f8ed2b43660e7c}} +\index{itemCmd.h@{itemCmd.h}!CMD\_UP@{CMD\_UP}} +\index{CMD\_UP@{CMD\_UP}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_UP}{CMD\_UP}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+UP~8} + +\mbox{\Hypertarget{item_cmd_8h_a9bbd3f606a1c37e525a172fa9b6b345d}\label{item_cmd_8h_a9bbd3f606a1c37e525a172fa9b6b345d}} +\index{itemCmd.h@{itemCmd.h}!CMD\_VOID@{CMD\_VOID}} +\index{CMD\_VOID@{CMD\_VOID}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_VOID}{CMD\_VOID}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+V\+O\+ID~0} + +\mbox{\Hypertarget{item_cmd_8h_a5a0861b5be0a4e513580704940c32c38}\label{item_cmd_8h_a5a0861b5be0a4e513580704940c32c38}} +\index{itemCmd.h@{itemCmd.h}!CMD\_XOFF@{CMD\_XOFF}} +\index{CMD\_XOFF@{CMD\_XOFF}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_XOFF}{CMD\_XOFF}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+X\+O\+FF~7} + +\mbox{\Hypertarget{item_cmd_8h_a3871f1b01413297e1c23e1e484016a21}\label{item_cmd_8h_a3871f1b01413297e1c23e1e484016a21}} +\index{itemCmd.h@{itemCmd.h}!CMD\_XON@{CMD\_XON}} +\index{CMD\_XON@{CMD\_XON}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{CMD\_XON}{CMD\_XON}} +{\footnotesize\ttfamily \#define C\+M\+D\+\_\+\+X\+ON~6} + +\mbox{\Hypertarget{item_cmd_8h_a4abe93c906bb31bebd4afd78fadec6f4}\label{item_cmd_8h_a4abe93c906bb31bebd4afd78fadec6f4}} +\index{itemCmd.h@{itemCmd.h}!commandsNum@{commandsNum}} +\index{commandsNum@{commandsNum}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{commandsNum}{commandsNum}} +{\footnotesize\ttfamily \#define commands\+Num~sizeof(commands\+\_\+P)/sizeof(\mbox{\hyperlink{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}{cmdstr}})} + +\mbox{\Hypertarget{item_cmd_8h_a890221cb651a3f30f6d1bca0d9b0e13d}\label{item_cmd_8h_a890221cb651a3f30f6d1bca0d9b0e13d}} +\index{itemCmd.h@{itemCmd.h}!FLAG\_MASK@{FLAG\_MASK}} +\index{FLAG\_MASK@{FLAG\_MASK}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{FLAG\_MASK}{FLAG\_MASK}} +{\footnotesize\ttfamily \#define F\+L\+A\+G\+\_\+\+M\+A\+SK~0xff00} + +\mbox{\Hypertarget{item_cmd_8h_aebe7823b286110926c2da2893b56a7da}\label{item_cmd_8h_aebe7823b286110926c2da2893b56a7da}} +\index{itemCmd.h@{itemCmd.h}!SEND\_COMMAND@{SEND\_COMMAND}} +\index{SEND\_COMMAND@{SEND\_COMMAND}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{SEND\_COMMAND}{SEND\_COMMAND}} +{\footnotesize\ttfamily \#define S\+E\+N\+D\+\_\+\+C\+O\+M\+M\+A\+ND~0x100} + +\mbox{\Hypertarget{item_cmd_8h_a33ea54bfccbf6af4fc41fdd08b6d0e57}\label{item_cmd_8h_a33ea54bfccbf6af4fc41fdd08b6d0e57}} +\index{itemCmd.h@{itemCmd.h}!SEND\_DEFFERED@{SEND\_DEFFERED}} +\index{SEND\_DEFFERED@{SEND\_DEFFERED}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{SEND\_DEFFERED}{SEND\_DEFFERED}} +{\footnotesize\ttfamily \#define S\+E\+N\+D\+\_\+\+D\+E\+F\+F\+E\+R\+ED~0x800} + +\mbox{\Hypertarget{item_cmd_8h_adba0eeb6b1a5678cea10f4a823829b24}\label{item_cmd_8h_adba0eeb6b1a5678cea10f4a823829b24}} +\index{itemCmd.h@{itemCmd.h}!SEND\_PARAMETERS@{SEND\_PARAMETERS}} +\index{SEND\_PARAMETERS@{SEND\_PARAMETERS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{SEND\_PARAMETERS}{SEND\_PARAMETERS}} +{\footnotesize\ttfamily \#define S\+E\+N\+D\+\_\+\+P\+A\+R\+A\+M\+E\+T\+E\+RS~0x200} + +\mbox{\Hypertarget{item_cmd_8h_a73ec395d869a354733c01a5331c942f1}\label{item_cmd_8h_a73ec395d869a354733c01a5331c942f1}} +\index{itemCmd.h@{itemCmd.h}!SEND\_RETRY@{SEND\_RETRY}} +\index{SEND\_RETRY@{SEND\_RETRY}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{SEND\_RETRY}{SEND\_RETRY}} +{\footnotesize\ttfamily \#define S\+E\+N\+D\+\_\+\+R\+E\+T\+RY~0x400} + +\mbox{\Hypertarget{item_cmd_8h_ad8579fb5b68f5adc9862a20aeb3d9913}\label{item_cmd_8h_ad8579fb5b68f5adc9862a20aeb3d9913}} +\index{itemCmd.h@{itemCmd.h}!ST\_FLOAT@{ST\_FLOAT}} +\index{ST\_FLOAT@{ST\_FLOAT}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_FLOAT}{ST\_FLOAT}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+F\+L\+O\+AT~14} + +\mbox{\Hypertarget{item_cmd_8h_a644980a3323313ed2e620aebdd993537}\label{item_cmd_8h_a644980a3323313ed2e620aebdd993537}} +\index{itemCmd.h@{itemCmd.h}!ST\_FLOAT\_CELSIUS@{ST\_FLOAT\_CELSIUS}} +\index{ST\_FLOAT\_CELSIUS@{ST\_FLOAT\_CELSIUS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_FLOAT\_CELSIUS}{ST\_FLOAT\_CELSIUS}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+F\+L\+O\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US~5} + +\mbox{\Hypertarget{item_cmd_8h_a38685184c002f8c14fab409847cdd9a5}\label{item_cmd_8h_a38685184c002f8c14fab409847cdd9a5}} +\index{itemCmd.h@{itemCmd.h}!ST\_FLOAT\_FARENHEIT@{ST\_FLOAT\_FARENHEIT}} +\index{ST\_FLOAT\_FARENHEIT@{ST\_FLOAT\_FARENHEIT}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_FLOAT\_FARENHEIT}{ST\_FLOAT\_FARENHEIT}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+F\+L\+O\+A\+T\+\_\+\+F\+A\+R\+E\+N\+H\+E\+IT~6} + +\mbox{\Hypertarget{item_cmd_8h_abac7e90eb597c98d2f5870c6528c09da}\label{item_cmd_8h_abac7e90eb597c98d2f5870c6528c09da}} +\index{itemCmd.h@{itemCmd.h}!ST\_HS@{ST\_HS}} +\index{ST\_HS@{ST\_HS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_HS}{ST\_HS}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+HS~4} + +\mbox{\Hypertarget{item_cmd_8h_a67ad81da37213da74d71033ecd62a00c}\label{item_cmd_8h_a67ad81da37213da74d71033ecd62a00c}} +\index{itemCmd.h@{itemCmd.h}!ST\_HSV@{ST\_HSV}} +\index{ST\_HSV@{ST\_HSV}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_HSV}{ST\_HSV}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+H\+SV~3} + +\mbox{\Hypertarget{item_cmd_8h_af1ffdc01c9fc9cc648518fef4fde8a52}\label{item_cmd_8h_af1ffdc01c9fc9cc648518fef4fde8a52}} +\index{itemCmd.h@{itemCmd.h}!ST\_HSV255@{ST\_HSV255}} +\index{ST\_HSV255@{ST\_HSV255}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_HSV255}{ST\_HSV255}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+H\+S\+V255~10} + +\mbox{\Hypertarget{item_cmd_8h_a9bbd91c0ea3ac6af8f0deadcddce706c}\label{item_cmd_8h_a9bbd91c0ea3ac6af8f0deadcddce706c}} +\index{itemCmd.h@{itemCmd.h}!ST\_INT32@{ST\_INT32}} +\index{ST\_INT32@{ST\_INT32}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_INT32}{ST\_INT32}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+I\+N\+T32~11} + +\mbox{\Hypertarget{item_cmd_8h_a0612f5b4f1bcd3a696c6a17b7e3e059e}\label{item_cmd_8h_a0612f5b4f1bcd3a696c6a17b7e3e059e}} +\index{itemCmd.h@{itemCmd.h}!ST\_PERCENTS@{ST\_PERCENTS}} +\index{ST\_PERCENTS@{ST\_PERCENTS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_PERCENTS}{ST\_PERCENTS}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+P\+E\+R\+C\+E\+N\+TS~1} + +\mbox{\Hypertarget{item_cmd_8h_ad5b8ab06d61866259ae7bc34655701a8}\label{item_cmd_8h_ad5b8ab06d61866259ae7bc34655701a8}} +\index{itemCmd.h@{itemCmd.h}!ST\_PERCENTS255@{ST\_PERCENTS255}} +\index{ST\_PERCENTS255@{ST\_PERCENTS255}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_PERCENTS255}{ST\_PERCENTS255}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+P\+E\+R\+C\+E\+N\+T\+S255~9} + +\mbox{\Hypertarget{item_cmd_8h_a0cc85c763ceffc24cddfe74853f1d2ee}\label{item_cmd_8h_a0cc85c763ceffc24cddfe74853f1d2ee}} +\index{itemCmd.h@{itemCmd.h}!ST\_RGB@{ST\_RGB}} +\index{ST\_RGB@{ST\_RGB}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_RGB}{ST\_RGB}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+R\+GB~7} + +\mbox{\Hypertarget{item_cmd_8h_a5f433ae9408b87addac620079cb92f1a}\label{item_cmd_8h_a5f433ae9408b87addac620079cb92f1a}} +\index{itemCmd.h@{itemCmd.h}!ST\_RGBW@{ST\_RGBW}} +\index{ST\_RGBW@{ST\_RGBW}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_RGBW}{ST\_RGBW}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+R\+G\+BW~8} + +\mbox{\Hypertarget{item_cmd_8h_a9eb365863cb3267d934a4f517c3d4aad}\label{item_cmd_8h_a9eb365863cb3267d934a4f517c3d4aad}} +\index{itemCmd.h@{itemCmd.h}!ST\_STRING@{ST\_STRING}} +\index{ST\_STRING@{ST\_STRING}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_STRING}{ST\_STRING}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+S\+T\+R\+I\+NG~13} + +\mbox{\Hypertarget{item_cmd_8h_a6291bb44d8bcbb4f371c010314f059cb}\label{item_cmd_8h_a6291bb44d8bcbb4f371c010314f059cb}} +\index{itemCmd.h@{itemCmd.h}!ST\_TENS@{ST\_TENS}} +\index{ST\_TENS@{ST\_TENS}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_TENS}{ST\_TENS}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+T\+E\+NS~2} + +\mbox{\Hypertarget{item_cmd_8h_a6af0c39035eaf94f9c436ab0260c1d94}\label{item_cmd_8h_a6af0c39035eaf94f9c436ab0260c1d94}} +\index{itemCmd.h@{itemCmd.h}!ST\_UINT32@{ST\_UINT32}} +\index{ST\_UINT32@{ST\_UINT32}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_UINT32}{ST\_UINT32}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+U\+I\+N\+T32~12} + +\mbox{\Hypertarget{item_cmd_8h_a89b3fb099d3038f85ed3b573ba64d031}\label{item_cmd_8h_a89b3fb099d3038f85ed3b573ba64d031}} +\index{itemCmd.h@{itemCmd.h}!ST\_VOID@{ST\_VOID}} +\index{ST\_VOID@{ST\_VOID}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{ST\_VOID}{ST\_VOID}} +{\footnotesize\ttfamily \#define S\+T\+\_\+\+V\+O\+ID~0} + + + +\doxysubsection{Typedef Documentation} +\mbox{\Hypertarget{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}\label{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}} +\index{itemCmd.h@{itemCmd.h}!cmdstr@{cmdstr}} +\index{cmdstr@{cmdstr}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{cmdstr}{cmdstr}} +{\footnotesize\ttfamily typedef char cmdstr\mbox{[}9\mbox{]}} + + + +\#include \char`\"{}item.\+h\char`\"{} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{item_cmd_8h_a354a79f09dd98fcf6c171dd5c8de21b6}\label{item_cmd_8h_a354a79f09dd98fcf6c171dd5c8de21b6}} +\index{itemCmd.h@{itemCmd.h}!txt2cmd@{txt2cmd}} +\index{txt2cmd@{txt2cmd}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{txt2cmd()}{txt2cmd()}} +{\footnotesize\ttfamily int txt2cmd (\begin{DoxyParamCaption}\item[{char $\ast$}]{payload }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{item_cmd_8h_a948e42c714310535a6faa06c9c652e82}\label{item_cmd_8h_a948e42c714310535a6faa06c9c652e82}} +\index{itemCmd.h@{itemCmd.h}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!itemCmd.h@{itemCmd.h}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const \mbox{\hyperlink{item_cmd_8h_ac49c4ac803caeb10fcfb19ecd93f0cea}{cmdstr}} commands\+\_\+P \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM} + +{\bfseries Initial value\+:} +\begin{DoxyCode}{0} +\DoxyCodeLine{=} +\DoxyCodeLine{\{} +\DoxyCodeLine{\textcolor{stringliteral}{"{}"{}},\textcolor{stringliteral}{"{}ON"{}},\textcolor{stringliteral}{"{}OFF"{}},\textcolor{stringliteral}{"{}REST"{}},\textcolor{stringliteral}{"{}TOGGLE"{}},\textcolor{stringliteral}{"{}HALT"{}},\textcolor{stringliteral}{"{}XON"{}},\textcolor{stringliteral}{"{}XOFF"{}},\textcolor{stringliteral}{"{}INCREASE"{}},\textcolor{stringliteral}{"{}DECREASE"{}},} +\DoxyCodeLine{\textcolor{stringliteral}{"{}HEAT"{}},\textcolor{stringliteral}{"{}COOL"{}},\textcolor{stringliteral}{"{}AUTO"{}},\textcolor{stringliteral}{"{}FAN\_ONLY"{}},\textcolor{stringliteral}{"{}DRY"{}},\textcolor{stringliteral}{"{}STOP"{}},\textcolor{stringliteral}{"{}HIGH"{}},\textcolor{stringliteral}{"{}MEDIUM"{}},\textcolor{stringliteral}{"{}LOW"{}},} +\DoxyCodeLine{\textcolor{stringliteral}{"{}TRUE"{}},\textcolor{stringliteral}{"{}FALSE"{}},\textcolor{stringliteral}{"{}ENABLED"{}},\textcolor{stringliteral}{"{}DISABLED"{}},\textcolor{stringliteral}{"{}RGB"{}},\textcolor{stringliteral}{"{}HSV"{}}} +\DoxyCodeLine{\}} + +\end{DoxyCode} diff --git a/docs/latex/lh.png b/docs/latex/lh.png new file mode 100644 index 0000000000000000000000000000000000000000..051350c2e7ed2c8c45870ba9f2adf0e3ddf9276d GIT binary patch literal 16277 zcmeHOd0bQ1wq_Is5tS->5u(*fRU}a>C>Ua^RVhQ-S_`6(C<^tWAcG);Bq(|*MWr|Z zijWQh4q$|c5T*o~M24uT3_=LV7!wkvjAXd`MBA%y-hc1j_ulXES0Fj(>@|Gr+iS12 zPQuq7yG@P%W~`&5W9qVJ=eIgK2HSOX^t@*4fp3PN82q85vs}kz=jY#@zB$Z^VrTEW z_RFMNM}=Ct@dgQ9X5s&Ph zs0BwdcQ3t4_lW45b7Q=?zu6{?BYH*PFxK72to^Mqh7v%1x`_YN$VCNGGY71y6E}h@ zz(9ZK2-fP&0v}A&>?P2@Rm<_v$K1GBUGRaLJM-g=5&nZncyKkAu6}c%OGYOBxXwSx zus5V;vvk==!X|2GG*)6%IdTihoQIYeOl+?T(VXS|pLdR*MBi|N8v<4J*@0?BXJR{I{*KGw*6)})XJ)5m z>-n!TaAOPd@jA`)ktC7g2{K(=z%C*VRpTh*@q(m;(LK0WtF`#p?FMdpbvG^4%RVOY zdbYVEh%~}g_ug!ENo`diDci>H28x>0PnIN17`FYYH*5Az=4XpgD_7ue0R1z@hI(1n zqg4$N8+?5E7D;WPt>svMa?FL#6?%fNb@dHC#@{ebOP-H%2Qpi?$0!~-ln1hd{%E+T zo+!>^p*7!1q}xT1(H5b$FW1Yy6T5VdF8ecr?NFjCwK$L)=fS-a9`!O(K$BkxD+(a5 z2zQ5huy3)dxlYr2k6{XlOr<#T-|$5Z>d>L9Fe1y9V!8!6MzFbuH|EWl$V(K_S;$)a zHJD55Z$@=VibS-imguOLzmr0SO^~vhCCcCz7WjDMCClgQvcF?qI2U{D272+Wkl~9` zgp5aXSncC0&X~-6xbk`d!!ddVQ8(gttghYyl)GW$9^jOAzt8o|oRt%;m&(H9*!_hh z0XrbLyb@Wvo%z{EAKIYp2U5tGX>iQsh6M50U7T7{Bkj@*3Z&at^GqJ>Fq}L8$Jk?Q z@w>iYe%54dVt{72L(XnWO=^NF%sAv9o;(;G0!yxPgUK>;+!lxO4faewdz|L!I?{&hk6`E2F zBxMJcz3yWUl_+{)gped|@Pn}!-c(pNn1GDw{cR$2sLr8mIL+N=U)$rvPo^WX(r)yz z2~q_jl2`dGN5s+ejoX#1C+uvqfv3!3nbhZ{X$vyYm0&E&D$nJV76BCS-c?lV+#2#nOi_)!7yINeb1o2bNFQ zWB+0Y&e*dR6ij4Y<$C-Jeg8U&qVLckr%csTs9t^;CU{aF|DJ>)RGT3Q;_k&Lv_Yc> zL)F`WAdevfRUtc*rw4`YS#xZMB)i zGy1DOcCsVx05g0M%84WW1?Ll5;}fVtx9ym2^OSo+j*Z; z(?kT$^C~q?%McQtQSIojn+u&^>cOq?x}^hwo@lT*-Uzv37=@2ev{xZJM`1?!Z3c{$w3Y_2BeXnSVPAB1{fE&?QjD}>P&Ajy8qR5 zKovaSCRMs(+8=IKfzZpp1o!~`#-g=iQ!>8vuuPNNKDj&5o|mZ0G(~d&IXF>f#7qf7*6XYMOAs@ zj)cSDkiI3j;RLkNOVW5a26%=fhZwP@PwV zi5^Nt?!nka?f{`K2jmlA#yDALgX5=1cuZfUAbp#7Vw^kKzK>_rAG8jC*k=!LqtR}h zs*%Q`iixE#X+^u02YP&fOyZ96BKtCd{yyIU4$4Dp>6xGf@8_?R!f;%Hbt*25MKYo! zlbnTg;LI$;Mh`Pt^>t5Qg2)?J<^bbNpQCj(n)AU2uaY+I0{Z*-1IZG1AE!@t*|aJY zDj0ydjVs5Isy>kK1RTxs(AGp7&qQqRw`Fa^akr|AI}h940iHoBZIy8`|UGfBqE1(rF3+aYU+6b z+*;s{MJO^$N}RZAVpl=Tt83o_Ba)`Zy=YtblR=g{Mr{8rBvTX-BR@YL)TJKr#y;FI zO{mCElbqFp1(-5hRawVrKy-Tkp31)<|8>|j+Nw^tdHU5OhvC9Cs=Kb=Fss+%Bc79E zq#-sLB(`_(=5pXB-6ZSE8%4=3W>LiM;1fmBrry+c6rUFV}cp(Sa*!)Z_T)qCnH@1W@ z)otOIaw-IGO4-N<&Dx7kQeXY7aoj(Z1_n?6U3Zgq`E%>=1@E6$!2=efu0X1|73-~b zegEJ;bJM#D$c!QW1BUp=s(WusA{o7R3>$Aj;cI?Bc18W&w^gVQe6XkB?%NXC)=Y1v z8`x|Yp?Zv$T+Y3#Ekb<&>6yoZxSlb>j1k^4{0tIiknrD%goI#3#BqhDCVXfac0GRe z+a$zruFLnQ>RifnElEKJjlcc>VDvQGz-5cK+Z>D8UH~ehunz8^W2jdmuqWZ5vt##ErJ~&(7i%l3a z1>-Az*b-7+U8gxzLu}b%8|yJ2bzXWQcK<_Kg`8-%O?*vs@G|MjsoPNP>YVJQ$XCJK z0m_<}341`1>DdPfjlM65Zz?4U_6B4j0(?M0cM*y(bS6HN2nxO` z*rfYnXUko1%V6vj94myf?HJF9J4;(Qc9+U!JPRBNlw4_*)0MA#(S2@jurfZybcJ zOOhQ~0JTb%?}u4qEc$q7m%VC0?t_8z-gO%q&m*5gq3GjZJh5jwDm%;ej#r z)1ENO&9?L_6N7R51<`P}@_BvD(|7AYHUC9$^>*Mw*Li7RjAF>$#)r|;DvF0uqNN** zyC|MU+PN?+c7RH-ojtxn!O@PC6jl&CVT3BMKM-6j@}oGeQ=RPG0TwZto0f!#mJ~X4 zFjyDsrj(jC(!Bude*44xJW46h7l^d5$9EjmRZdCn7&oY4xp;P(10#?lX()6N3mWl1&aJ4_v=M-(RHfu~h?gINQW9 zD|~V$6_9(HIkf@p3y|n%*l5`mF_C@cKIr~?LjAp|3w$Odbl;)I3|`JP2khhcH8bYj z{8XXyi9^$Nf_6U_|98ZGLb(VqoYlv8XK0*^b6Vp~p=k%MJ|JB|et6~5!65RabGpM= z3h;J>HAC%R4wNR&YCOd43~fbY?~5x_;Mfoy3W%ND*NtOEzXISOn53!9w)Xy%C(RWn zr$8Oesc=$-K3(ddVRzNB!n?r@lXKFF$~5QL%_T?k%xFho%*4Ba!H7GPcl&IuyAI4W zyb52T8NUZj;T1a9KZg3uQ=y^rh%0%L!wCOekOgjVH%nv1^gqU^dHIFT`s%&Rhq>=> zm$bT#b1hV0R*)okc$)wM^~Ms^WQ=km5y=S4qg?WYTL9&;MO;fhJ(y1*iGdD#^#+uw5XmW@~0WSmmx1*$UIOkwPDryfTkjMk;!Ux136)%XpgO#x>0 z^28R0;cSw%F|t!!J;)#>$1eR8KW}m%rBoOdn#V9EK+|ATktwFXV{AjWLESLsihzT3 zab}@3On}?H8z8a}MejPi4+8qIzn;lrPH!jNr-n zINU)#Ch0m1JPb?E#U_|835Qd>?Gu9wv1{Oh^?$=JFHC+7Gi>|?#;j+3UW0svI~lw8 zh10JGFygFn+U|24nD|?qTbZ9u#bVEQDZwDr3A*5tpdRl46B35}5UxI!*x!+QD`1CN zh1{p^g!735lI;(6!!6J0dBYb@rjjw6&?^@HImvQ_rAvU@M%#!Unx^%^D&`#C`us}u zqy>x7-x5#bT5G2UKFHv~a5(z)^#F>dl12S0>8FdMaR{g3BF5xi$(5CtVFGAA^UwJe zvkUSVwr{$}mY3AhkESL1V1E8wh;}n)WTseK_K=`0Rw1LcQxo^YL8emq`l_X7(&>^r z_0oJyR9h5-D{S>y3j;%w*HJ^s0Tt?UZq{I3rtA!PtN5|2vc#1L6Ty`S4;Brd0a;x{ z^iR2bjkwt_3DaLIsH>U<&2&z|x5+?%2}z+|8~r#M;5W#9$W5T00>=RSNs7 zuGBJqm62*K+B-tQ<%S4CY`8zGRy~2U@u~;%iS#bz{oYW1za>}0sY=>*MYV9x>goH! z;=Yl#Ua}k{_E?uxkh%*Wr6U?iI^odk0#n)P$&n5)aHXV&+1vU^oV%}%Kk7_TWj$X2 zquX*y7-_N&?8>RM>;_9NsWBU;IAxIwlM0)ZbZ4dds@q3fo4-TiG+iR=7#UAM{m~jO zHmpLV3`r)vp|2!I_j~ik3RfbD-76Tvvpz7H*y4%i^+nEO zqWBDl>vl#&i9;)QV!I^11`j9dhT`ta9bD=2y*GGcV3d69rims^rMqDjj9u}oE}?mf zYtdU3)qG!4yQmbNL*ha-aab#LhHJ#F253CBPIFTgg3?Y0Pf6(TdmeEFno<)zILk0Y z;hX^Ttx#6vJ{H{6<(2r?vF+SCLpKgMO701LDY#fT`$bOY`v=UKZ{HrYXY4RzhncvT z;fEQX{Im4<<%S9NtL2roW\@ne + \@twocolumntrue + \fi + \fi + \if@twocolumn + \LT@err{longtable not in 1-column mode}\@ehc + \fi + \begingroup + \@ifnextchar[\LT@array{\LT@array[x]}} +\def\LT@array[#1]#2{% + \refstepcounter{table}\stepcounter{LT@tables}% + \if l#1% + \LTleft\z@ \LTright\fill + \else\if r#1% + \LTleft\fill \LTright\z@ + \else\if c#1% + \LTleft\fill \LTright\fill + \fi\fi\fi + \let\LT@mcol\multicolumn + \let\LT@@tabarray\@tabarray + \let\LT@@hl\hline + \def\@tabarray{% + \let\hline\LT@@hl + \LT@@tabarray}% + \let\\\LT@tabularcr\let\tabularnewline\\% + \def\newpage{\noalign{\break}}% + \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}% + \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}% + \let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption + \@tempdima\ht\strutbox + \let\@endpbox\LT@endpbox + \ifx\extrarowheight\@undefined + \let\@acol\@tabacol + \let\@classz\@tabclassz \let\@classiv\@tabclassiv + \def\@startpbox{\vtop\LT@startpbox}% + \let\@@startpbox\@startpbox + \let\@@endpbox\@endpbox + \let\LT@LL@FM@cr\@tabularcr + \else + \advance\@tempdima\extrarowheight + \col@sep\tabcolsep + \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr + \fi + \setbox\@arstrutbox\hbox{\vrule + \@height \arraystretch \@tempdima + \@depth \arraystretch \dp \strutbox + \@width \z@}% + \let\@sharp##\let\protect\relax + \begingroup + \@mkpream{#2}% + \xdef\LT@bchunk{% + \global\advance\c@LT@chunks\@ne + \global\LT@rows\z@\setbox\z@\vbox\bgroup + \LT@setprevdepth + \tabskip\LTleft \noexpand\halign to\hsize\bgroup + \tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}% + \endgroup + \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols + \LT@make@row + \m@th\let\par\@empty + \everycr{}\lineskip\z@\baselineskip\z@ + \LT@bchunk} +\def\LT@no@pgbk#1[#2]{\penalty #1\@getpen{#2}\ifnum`{=0\fi}} +\def\LT@start{% + \let\LT@start\endgraf + \endgraf\penalty\z@\vskip\LTpre + \dimen@\pagetotal + \advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi + \advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi + \advance\dimen@ \ht\LT@foot + \dimen@ii\vfuzz + \vfuzz\maxdimen + \setbox\tw@\copy\z@ + \setbox\tw@\vsplit\tw@ to \ht\@arstrutbox + \setbox\tw@\vbox{\unvbox\tw@}% + \vfuzz\dimen@ii + \advance\dimen@ \ht + \ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi + \advance\dimen@\dp + \ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi + \advance\dimen@ -\pagegoal + \ifdim \dimen@>\z@\vfil\break\fi + \global\@colroom\@colht + \ifvoid\LT@foot\else + \advance\vsize-\ht\LT@foot + \global\advance\@colroom-\ht\LT@foot + \dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@ + \maxdepth\z@ + \fi + \ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi\nobreak + \output{\LT@output}} +\def\endlongtable{% + \crcr + \noalign{% + \let\LT@entry\LT@entry@chop + \xdef\LT@save@row{\LT@save@row}}% + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \if@filesw + {\let\LT@entry\LT@entry@write\immediate\write\@auxout{% + \gdef\expandafter\noexpand + \csname LT@\romannumeral\c@LT@tables\endcsname + {\LT@save@row}}}% + \fi + \ifx\LT@save@row\LT@@save@row + \else + \LT@warn{Column \@width s have changed\MessageBreak + in table \thetable}% + \LT@final@warn + \fi + \endgraf\penalty -\LT@end@pen + \endgroup + \global\@mparbottom\z@ + \pagegoal\vsize + \endgraf\penalty\z@\addvspace\LTpost + \ifvoid\footins\else\insert\footins{}\fi} +\def\LT@nofcols#1&{% + \futurelet\@let@token\LT@n@fcols} +\def\LT@n@fcols{% + \advance\LT@cols\@ne + \ifx\@let@token\LT@nofcols + \expandafter\@gobble + \else + \expandafter\LT@nofcols + \fi} +\def\LT@tabularcr{% + \relax\iffalse{\fi\ifnum0=`}\fi + \@ifstar + {\def\crcr{\LT@crcr\noalign{\nobreak}}\let\cr\crcr + \LT@t@bularcr}% + {\LT@t@bularcr}} +\let\LT@crcr\crcr +\let\LT@setprevdepth\relax +\def\LT@t@bularcr{% + \global\advance\LT@rows\@ne + \ifnum\LT@rows=\LTchunksize + \gdef\LT@setprevdepth{% + \prevdepth\z@\global + \global\let\LT@setprevdepth\relax}% + \expandafter\LT@xtabularcr + \else + \ifnum0=`{}\fi + \expandafter\LT@LL@FM@cr + \fi} +\def\LT@xtabularcr{% + \@ifnextchar[\LT@argtabularcr\LT@ntabularcr} +\def\LT@ntabularcr{% + \ifnum0=`{}\fi + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \LT@bchunk} +\def\LT@argtabularcr[#1]{% + \ifnum0=`{}\fi + \ifdim #1>\z@ + \unskip\@xargarraycr{#1}% + \else + \@yargarraycr{#1}% + \fi + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \LT@bchunk} +\def\LT@echunk{% + \crcr\LT@save@row\cr\egroup + \global\setbox\@ne\lastbox + \unskip + \egroup} +\def\LT@entry#1#2{% + \ifhmode\@firstofone{&}\fi\omit + \ifnum#1=\c@LT@chunks + \else + \kern#2\relax + \fi} +\def\LT@entry@chop#1#2{% + \noexpand\LT@entry + {\ifnum#1>\c@LT@chunks + 1}{0pt% + \else + #1}{#2% + \fi}} +\def\LT@entry@write{% + \noexpand\LT@entry^^J% + \@spaces} +\def\LT@kill{% + \LT@echunk + \LT@get@widths + \expandafter\LT@rebox\LT@bchunk} +\def\LT@rebox#1\bgroup{% + #1\bgroup + \unvbox\z@ + \unskip + \setbox\z@\lastbox} +\def\LT@blank@row{% + \xdef\LT@save@row{\expandafter\LT@build@blank + \romannumeral\number\LT@cols 001 }} +\def\LT@build@blank#1{% + \if#1m% + \noexpand\LT@entry{1}{0pt}% + \expandafter\LT@build@blank + \fi} +\def\LT@make@row{% + \global\expandafter\let\expandafter\LT@save@row + \csname LT@\romannumeral\c@LT@tables\endcsname + \ifx\LT@save@row\relax + \LT@blank@row + \else + {\let\LT@entry\or + \if!% + \ifcase\expandafter\expandafter\expandafter\LT@cols + \expandafter\@gobble\LT@save@row + \or + \else + \relax + \fi + !% + \else + \aftergroup\LT@blank@row + \fi}% + \fi} +\let\setlongtables\relax +\def\LT@get@widths{% + \setbox\tw@\hbox{% + \unhbox\@ne + \let\LT@old@row\LT@save@row + \global\let\LT@save@row\@empty + \count@\LT@cols + \loop + \unskip + \setbox\tw@\lastbox + \ifhbox\tw@ + \LT@def@row + \advance\count@\m@ne + \repeat}% + \ifx\LT@@save@row\@undefined + \let\LT@@save@row\LT@save@row + \fi} +\def\LT@def@row{% + \let\LT@entry\or + \edef\@tempa{% + \ifcase\expandafter\count@\LT@old@row + \else + {1}{0pt}% + \fi}% + \let\LT@entry\relax + \xdef\LT@save@row{% + \LT@entry + \expandafter\LT@max@sel\@tempa + \LT@save@row}} +\def\LT@max@sel#1#2{% + {\ifdim#2=\wd\tw@ + #1% + \else + \number\c@LT@chunks + \fi}% + {\the\wd\tw@}} +\def\LT@hline{% + \noalign{\ifnum0=`}\fi + \penalty\@M + \futurelet\@let@token\LT@@hline} +\def\LT@@hline{% + \ifx\@let@token\hline + \global\let\@gtempa\@gobble + \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}% + \else + \global\let\@gtempa\@empty + \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}% + \fi + \ifnum0=`{\fi}% + \multispan\LT@cols + \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr + \noalign{\LT@sep}% + \multispan\LT@cols + \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr + \noalign{\penalty\@M}% + \@gtempa} +\def\LT@caption{% + \noalign\bgroup + \@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n} +\def\LT@c@ption#1[#2]#3{% + \LT@makecaption#1\fnum@table{#3}% + \def\@tempa{#2}% + \ifx\@tempa\@empty\else + {\let\\\space + \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}% + \fi} +\def\LT@capti@n{% + \@ifstar + {\egroup\LT@c@ption\@gobble[]}% + {\egroup\@xdblarg{\LT@c@ption\@firstofone}}} +\def\LT@makecaption#1#2#3{% + \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{% + \sbox\@tempboxa{#1{#2: }#3}% + \ifdim\wd\@tempboxa>\hsize + #1{#2: }#3% + \else + \hbox to\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \endgraf\vskip\baselineskip}% + \hss}}} +\def\LT@output{% + \ifnum\outputpenalty <-\@Mi + \ifnum\outputpenalty > -\LT@end@pen + \LT@err{floats and marginpars not allowed in a longtable}\@ehc + \else + \setbox\z@\vbox{\unvbox\@cclv}% + \ifdim \ht\LT@lastfoot>\ht\LT@foot + \dimen@\pagegoal + \advance\dimen@-\ht\LT@lastfoot + \ifdim\dimen@<\ht\z@ + \setbox\@cclv\vbox{\unvbox\z@\copy\LT@foot\vss}% + \@makecol + \@outputpage + \setbox\z@\vbox{\box\LT@head}% + \fi + \fi + \global\@colroom\@colht + \global\vsize\@colht + \vbox + {\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}% + \fi + \else + \setbox\@cclv\vbox{\unvbox\@cclv\copy\LT@foot\vss}% + \@makecol + \@outputpage + \global\vsize\@colroom + \copy\LT@head\nobreak + \fi} +\def\LT@end@hd@ft#1{% + \LT@echunk + \ifx\LT@start\endgraf + \LT@err + {Longtable head or foot not at start of table}% + {Increase LTchunksize}% + \fi + \setbox#1\box\z@ + \LT@get@widths + \LT@bchunk} +\def\endfirsthead{\LT@end@hd@ft\LT@firsthead} +\def\endhead{\LT@end@hd@ft\LT@head} +\def\endfoot{\LT@end@hd@ft\LT@foot} +\def\endlastfoot{\LT@end@hd@ft\LT@lastfoot} +\def\LT@startpbox#1{% + \bgroup + \let\@footnotetext\LT@p@ftntext + \setlength\hsize{#1}% + \@arrayparboxrestore + \vrule \@height \ht\@arstrutbox \@width \z@} +\def\LT@endpbox{% + \@finalstrut\@arstrutbox + \egroup + \the\LT@p@ftn + \global\LT@p@ftn{}% + \hfil} +\def\LT@p@ftntext#1{% + \edef\@tempa{\the\LT@p@ftn\noexpand\footnotetext[\the\c@footnote]}% + \global\LT@p@ftn\expandafter{\@tempa{#1}}}% + +\@namedef{ver@longtable.sty}{2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen} +\endinput +%% +%% End of file `longtable.sty'. diff --git a/docs/latex/main_8cpp.tex b/docs/latex/main_8cpp.tex new file mode 100644 index 0000000..944cc53 --- /dev/null +++ b/docs/latex/main_8cpp.tex @@ -0,0 +1,715 @@ +\hypertarget{main_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/main.cpp File Reference} +\label{main_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/main.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/main.cpp}} +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}statusled.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Dhcp.\+h$>$}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +Pub\+Sub\+Client \mbox{\hyperlink{main_8cpp_a18e15522dd78764c518fd5526cc2d446}{mqtt\+Client}} (\mbox{\hyperlink{main_8cpp_a2a65545cb474469b22d80319e302a2f8}{eth\+Client}}) +\item +void \mbox{\hyperlink{main_8cpp_a19861585da4d4540b8f7c2601895607d}{clean\+Conf}} () +\item +bool \mbox{\hyperlink{main_8cpp_a9b73380a4525361ce5634b890e83c8d2}{is\+Not\+Retaining\+Status}} () +\item +void \mbox{\hyperlink{main_8cpp_a6f06b273defaebb581fdf1adc8969f40}{mqtt\+Callback}} (char $\ast$topic, byte $\ast$payload, unsigned int length) +\item +void \mbox{\hyperlink{main_8cpp_ad04c200b33c848aace1315bdf676201e}{print\+M\+A\+C\+Address}} () +\item +char $\ast$ \mbox{\hyperlink{main_8cpp_a900f9d7a9963ef64b642248a76175af7}{get\+String\+From\+Config}} (a\+Json\+Object $\ast$\mbox{\hyperlink{item_8cpp_a8d3c3518d793541417a4845125da1ae1}{a}}, int i) +\item +char $\ast$ \mbox{\hyperlink{main_8cpp_a7d5e0e0612ab235c45bea4406faa5f76}{get\+String\+From\+Config}} (a\+Json\+Object $\ast$\mbox{\hyperlink{item_8cpp_a8d3c3518d793541417a4845125da1ae1}{a}}, char $\ast$name) +\item +void \mbox{\hyperlink{main_8cpp_acfca2f2b3c22e56799e7fd1f66952729}{setup\+O\+TA}} (void) +\item +void \mbox{\hyperlink{main_8cpp_afa048a9d2e392a67cb5af8ab00b3ec0f}{setup\+Syslog}} () +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{main_8cpp_ac90757e5d1212e1b230bb4db8924d310}{lan\+Loop}} () +\item +void \mbox{\hyperlink{main_8cpp_af1a9158faed86994ef3c4f248bdd86c8}{on\+M\+Q\+T\+T\+Connect}} () +\item +void \mbox{\hyperlink{main_8cpp_aed1aedfd8ec1c64e58ca24e5de9470b2}{ip\+\_\+ready\+\_\+config\+\_\+loaded\+\_\+connecting\+\_\+to\+\_\+broker}} () +\item +void \mbox{\hyperlink{main_8cpp_ae886a24c554e48191a1ea668c43d2287}{on\+Initial\+State\+Init\+L\+AN}} () +\item +void \mbox{\hyperlink{main_8cpp_a8a8de594b1a60fc6867b639d1c50a34b}{reset\+Hard}} () +\item +void \mbox{\hyperlink{main_8cpp_abbcbfa3bc0f5d93f1f1d84c3fdc23608}{Changed}} (int i, Device\+Address addr, float current\+Temp) +\item +void \mbox{\hyperlink{main_8cpp_a21fea6de1fe7b59684f3d18e3f4764d7}{cmd\+Function\+Help}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_ab6cb5750ee8902ca29b51dd013bb74b9}{print\+Curent\+Lan\+Config}} () +\item +void \mbox{\hyperlink{main_8cpp_ab854d947e87c345f801a07f196e50a67}{cmd\+Function\+Kill}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a1f823c0616ac50cfe9d6d262c313b416}{cmd\+Function\+Reboot}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a82529a2f0678bfb6b0808935865ba42d}{apply\+Config}} () +\item +void \mbox{\hyperlink{main_8cpp_ae22f686238cf5f09109b12f4b628ccea}{print\+Config\+Summary}} () +\item +void \mbox{\hyperlink{main_8cpp_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}{cmd\+Function\+Load}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8cpp_a92e24c034fb886c8155d50831bae5823}{load\+Config\+From\+E\+E\+P\+R\+OM}} () +\item +void \mbox{\hyperlink{main_8cpp_a1ebb3f04dc34df941a4bf974f7ad9443}{cmd\+Function\+Req}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8cpp_aec955c97b23e5875d0fdb3c00e789903}{mqtt\+Config\+Request}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8cpp_ad60a48a0c509facdc6dc61df64d49fae}{mqtt\+Config\+Resp}} (char $\ast$as) +\item +void \mbox{\hyperlink{main_8cpp_a66af021e24df0f8f82d9550cdb6bf865}{cmd\+Function\+Save}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a5c6faf75e381fd57cf83b6efb002ceb4}{cmd\+Function\+Ip}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_ab2e128aecd2d6a7c32257adb25b6bc0d}{cmd\+Function\+Clear\+E\+E\+P\+R\+OM}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a46b3fce70062889d311e18a31d1dac28}{cmd\+Function\+Pwd}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_aea9177f835f6f4ad83d8f71dc0a4db77}{cmd\+Function\+Set\+Mac}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a84a345181b5379a4dc0eec58f348deb7}{cmd\+Function\+Get}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a2d4b5aa8fbc197c31397235607aeba13}{print\+Bool}} (bool arg) +\item +void \mbox{\hyperlink{main_8cpp_a3d9b2a443a58bf0d3e28c174d2c43b8f}{save\+Flash}} (short n, char $\ast$str) +\item +int \mbox{\hyperlink{main_8cpp_aff5e7d5d674ed8a8fedcde644c725f68}{load\+Flash}} (short n, char $\ast$str, short l) +\item +void \mbox{\hyperlink{main_8cpp_a881f36fdc5bf71038ea93823437e7751}{save\+Flash}} (short n, I\+P\+Address \&ip) +\item +int \mbox{\hyperlink{main_8cpp_a4ae13d2288d58c3ea8b731270fa798d3}{ip\+Load\+From\+Flash}} (short n, I\+P\+Address \&ip) +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{main_8cpp_aa6db506a9d019ba9decab546c15eb819}{load\+Config\+From\+Http}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8cpp_a1c43d8a4afead0d0df29635242290377}{pre\+Transmission}} () +\item +void \mbox{\hyperlink{main_8cpp_a33b535e84f654e423bb627b25b7b3759}{post\+Transmission}} () +\item +void \mbox{\hyperlink{main_8cpp_aa34675c2dc6eb3d0744844d8e67e3af8}{setup\+\_\+main}} () +\item +void \mbox{\hyperlink{main_8cpp_a1cff64c0263246441c972f03e6893714}{print\+Firmware\+Version\+And\+Build\+Options}} () +\item +void \mbox{\hyperlink{main_8cpp_a2cf2114e80da1894dc41209a4b66a08f}{publish\+Stat}} () +\item +void \mbox{\hyperlink{main_8cpp_a2186513a50a77b9bd9bb453d4584c5f8}{setup\+Mac\+Address}} () +\item +void \mbox{\hyperlink{main_8cpp_abec54b31996557c73a31054ce068c8fa}{setup\+Cmd\+Arduino}} () +\item +void \mbox{\hyperlink{main_8cpp_a840f282fdf876a88d5ff634fd74f10be}{loop\+\_\+main}} () +\item +void \mbox{\hyperlink{main_8cpp_a58e08cc15112818913fe96d75642265e}{ow\+Idle}} (void) +\item +void \mbox{\hyperlink{main_8cpp_ae161ded98969a4b68b902b79633edc3b}{ethernet\+Idle}} (void) +\item +void \mbox{\hyperlink{main_8cpp_aa557ba1fef085fb9865ffd399c738dbf}{modbus\+Idle}} (void) +\item +void \mbox{\hyperlink{main_8cpp_ad146ac5b8d70c1a9a590ba4029c3548e}{input\+Loop}} (void) +\item +void \mbox{\hyperlink{main_8cpp_a312b53e977f386af72ed576bca617fef}{input\+Setup}} (void) +\item +void \mbox{\hyperlink{main_8cpp_aec2ff7b5df24b3ae0cfe8d556088fd7c}{polling\+Loop}} (void) +\item +bool \mbox{\hyperlink{main_8cpp_a5976046ebb500523e75d64f9c858d73d}{is\+Thermostat\+With\+Min\+Array\+Size}} (a\+Json\+Object $\ast$item, int minimal\+Array\+Size) +\item +bool \mbox{\hyperlink{main_8cpp_a35f5a9d31c8cb726a3c7e77e7ad9c4b2}{thermo\+Disabled\+Or\+Disconnected}} (a\+Json\+Object $\ast$thermo\+Extension\+Array, int thermo\+State\+Command) +\item +void \mbox{\hyperlink{main_8cpp_a2d1cd6009a6e25d3605fee3e54065577}{thermo\+Loop}} (void) +\item +short \mbox{\hyperlink{main_8cpp_a73643474e211698e96d2a6ac69264b46}{thermo\+Set\+Cur\+Temp}} (char $\ast$name, float t) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +Ethernet\+Client \mbox{\hyperlink{main_8cpp_a2a65545cb474469b22d80319e302a2f8}{eth\+Client}} +\item +\mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a9f5fbaf4b0a3b028eb31e734a5899428}{debug\+Serial}} \& \mbox{\hyperlink{main_8cpp_a525e5725911fc3939bb449849aa1b5ab}{debug\+Serial\+Port}} +\item +\mbox{\hyperlink{classstatus_l_e_d}{status\+L\+ED}} \mbox{\hyperlink{main_8cpp_a1c77e6f587043bdec86e0cabd956e2e2}{L\+ED}} (\mbox{\hyperlink{statusled_8h_abfe826857256aa93aa762e7d98390743}{led\+R\+ED}}) +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{main_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}{lan\+Status}} = \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f}{I\+N\+I\+T\+I\+A\+L\+\_\+\+S\+T\+A\+TE}} +\item +const char configserver\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{main_8cpp_adf233b4843635c473146d0fd1d2a8b46}{P\+R\+O\+G\+M\+EM}} = \mbox{\hyperlink{options_8h_a979988f1e12c581103bd7dcd41be2a4a}{C\+O\+N\+F\+I\+G\+\_\+\+S\+E\+R\+V\+ER}} +\item +char $\ast$ \mbox{\hyperlink{main_8cpp_a5da66826e811349c98b2daf2bafb78c2}{device\+Name}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_addabf1c5a7be47e4e89beb38a435cb51}{topics}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a2e223992d94c34788bec64fb05f780ba}{root}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a012787f09a43864616e2b44349b29352}{items}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a9e63aa63a6b8b667a41f94bec231d7aa}{inputs}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a5a49c3c9f18e1b12e3706522c19c62c3}{mqtt\+Arr}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_aabc7159a42d55e7c474862449404d65c}{modbus\+Obj}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a564a174b067eee3b33b1162935884d55}{ow\+Arr}} = N\+U\+LL +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_a077dba54087a1a3694f810ba9fd06933}{dmx\+Arr}} = N\+U\+LL +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_a44ea85dd3be07c7cf3ad07d3565c8663}{next\+Polling\+Check}} = 0 +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_ab97b60e63c8bfbdd8baaf7d1ad94501f}{next\+Input\+Check}} = 0 +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_a718a0d8e0b8df891d3f1e4ac55c786ca}{next\+Lan\+Check\+Time}} = 0 +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_a8389528c25c33724774418d61bb3ac35}{next\+Thermostat\+Check}} = 0 +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_a1faa7904cff01b8c7c39eeedcc205325}{next\+Sensor\+Check}} =0 +\item +uint32\+\_\+t \mbox{\hyperlink{main_8cpp_ae4b71bfb7d27827d7d6c40fc3b745510}{Wi\+Fi\+Awaiting\+Time}} =0 +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{main_8cpp_aa8f2c895949680c2aadc4843bb350347}{polling\+Item}} = N\+U\+LL +\item +bool \mbox{\hyperlink{main_8cpp_a9638cf28423f00ad98377d1d89cba57e}{ow\+Ready}} = false +\item +bool \mbox{\hyperlink{main_8cpp_a459dec3d2fac52eba9bf53c19d14bcc7}{config\+Ok}} = false +\item +bool \mbox{\hyperlink{main_8cpp_a235b23edd19d4c133a8d49bc1b09cedb}{config\+Loaded}} = false +\item +bool \mbox{\hyperlink{main_8cpp_ad40189c6dffdd91758f3686c80484ac7}{initialized\+Listeners}} = false +\item +int8\+\_\+t \mbox{\hyperlink{main_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}{ethernet\+Idle\+Count}} =0 +\item +int8\+\_\+t \mbox{\hyperlink{main_8cpp_a58655351bd1d5333e5eb92d4c29f4263}{config\+Locked}} = 0 +\item +Modbus\+Master \mbox{\hyperlink{main_8cpp_aed3ca48125de3e138d26fa4884c35c93}{node}} +\item +byte \mbox{\hyperlink{main_8cpp_a775118f5b90a904c7e65066faabab1a2}{mac}} \mbox{[}6\mbox{]} +\item +bool \mbox{\hyperlink{main_8cpp_a6a547b8f65552a00acceaae5fb86fb0d}{wifi\+Initialized}} +\item +int \mbox{\hyperlink{main_8cpp_ac2567a764f7c3bef5306a430ba615de9}{mqtt\+Error\+Rate}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{main_8cpp_a82529a2f0678bfb6b0808935865ba42d}\label{main_8cpp_a82529a2f0678bfb6b0808935865ba42d}} +\index{main.cpp@{main.cpp}!applyConfig@{applyConfig}} +\index{applyConfig@{applyConfig}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{applyConfig()}{applyConfig()}} +{\footnotesize\ttfamily void apply\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_abbcbfa3bc0f5d93f1f1d84c3fdc23608}\label{main_8cpp_abbcbfa3bc0f5d93f1f1d84c3fdc23608}} +\index{main.cpp@{main.cpp}!Changed@{Changed}} +\index{Changed@{Changed}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{Changed()}{Changed()}} +{\footnotesize\ttfamily void Changed (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Device\+Address}]{addr, }\item[{float}]{current\+Temp }\end{DoxyParamCaption})} + +T\+O\+DO\+: Refactore using Items interface\mbox{\Hypertarget{main_8cpp_a19861585da4d4540b8f7c2601895607d}\label{main_8cpp_a19861585da4d4540b8f7c2601895607d}} +\index{main.cpp@{main.cpp}!cleanConf@{cleanConf}} +\index{cleanConf@{cleanConf}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cleanConf()}{cleanConf()}} +{\footnotesize\ttfamily void clean\+Conf (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ab2e128aecd2d6a7c32257adb25b6bc0d}\label{main_8cpp_ab2e128aecd2d6a7c32257adb25b6bc0d}} +\index{main.cpp@{main.cpp}!cmdFunctionClearEEPROM@{cmdFunctionClearEEPROM}} +\index{cmdFunctionClearEEPROM@{cmdFunctionClearEEPROM}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionClearEEPROM()}{cmdFunctionClearEEPROM()}} +{\footnotesize\ttfamily void cmd\+Function\+Clear\+E\+E\+P\+R\+OM (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a84a345181b5379a4dc0eec58f348deb7}\label{main_8cpp_a84a345181b5379a4dc0eec58f348deb7}} +\index{main.cpp@{main.cpp}!cmdFunctionGet@{cmdFunctionGet}} +\index{cmdFunctionGet@{cmdFunctionGet}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionGet()}{cmdFunctionGet()}} +{\footnotesize\ttfamily void cmd\+Function\+Get (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a21fea6de1fe7b59684f3d18e3f4764d7}\label{main_8cpp_a21fea6de1fe7b59684f3d18e3f4764d7}} +\index{main.cpp@{main.cpp}!cmdFunctionHelp@{cmdFunctionHelp}} +\index{cmdFunctionHelp@{cmdFunctionHelp}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionHelp()}{cmdFunctionHelp()}} +{\footnotesize\ttfamily void cmd\+Function\+Help (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a5c6faf75e381fd57cf83b6efb002ceb4}\label{main_8cpp_a5c6faf75e381fd57cf83b6efb002ceb4}} +\index{main.cpp@{main.cpp}!cmdFunctionIp@{cmdFunctionIp}} +\index{cmdFunctionIp@{cmdFunctionIp}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionIp()}{cmdFunctionIp()}} +{\footnotesize\ttfamily void cmd\+Function\+Ip (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ab854d947e87c345f801a07f196e50a67}\label{main_8cpp_ab854d947e87c345f801a07f196e50a67}} +\index{main.cpp@{main.cpp}!cmdFunctionKill@{cmdFunctionKill}} +\index{cmdFunctionKill@{cmdFunctionKill}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionKill()}{cmdFunctionKill()}} +{\footnotesize\ttfamily void cmd\+Function\+Kill (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}\label{main_8cpp_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}} +\index{main.cpp@{main.cpp}!cmdFunctionLoad@{cmdFunctionLoad}} +\index{cmdFunctionLoad@{cmdFunctionLoad}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionLoad()}{cmdFunctionLoad()}} +{\footnotesize\ttfamily void cmd\+Function\+Load (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a46b3fce70062889d311e18a31d1dac28}\label{main_8cpp_a46b3fce70062889d311e18a31d1dac28}} +\index{main.cpp@{main.cpp}!cmdFunctionPwd@{cmdFunctionPwd}} +\index{cmdFunctionPwd@{cmdFunctionPwd}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionPwd()}{cmdFunctionPwd()}} +{\footnotesize\ttfamily void cmd\+Function\+Pwd (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a1f823c0616ac50cfe9d6d262c313b416}\label{main_8cpp_a1f823c0616ac50cfe9d6d262c313b416}} +\index{main.cpp@{main.cpp}!cmdFunctionReboot@{cmdFunctionReboot}} +\index{cmdFunctionReboot@{cmdFunctionReboot}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionReboot()}{cmdFunctionReboot()}} +{\footnotesize\ttfamily void cmd\+Function\+Reboot (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a1ebb3f04dc34df941a4bf974f7ad9443}\label{main_8cpp_a1ebb3f04dc34df941a4bf974f7ad9443}} +\index{main.cpp@{main.cpp}!cmdFunctionReq@{cmdFunctionReq}} +\index{cmdFunctionReq@{cmdFunctionReq}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionReq()}{cmdFunctionReq()}} +{\footnotesize\ttfamily void cmd\+Function\+Req (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a66af021e24df0f8f82d9550cdb6bf865}\label{main_8cpp_a66af021e24df0f8f82d9550cdb6bf865}} +\index{main.cpp@{main.cpp}!cmdFunctionSave@{cmdFunctionSave}} +\index{cmdFunctionSave@{cmdFunctionSave}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionSave()}{cmdFunctionSave()}} +{\footnotesize\ttfamily void cmd\+Function\+Save (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aea9177f835f6f4ad83d8f71dc0a4db77}\label{main_8cpp_aea9177f835f6f4ad83d8f71dc0a4db77}} +\index{main.cpp@{main.cpp}!cmdFunctionSetMac@{cmdFunctionSetMac}} +\index{cmdFunctionSetMac@{cmdFunctionSetMac}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{cmdFunctionSetMac()}{cmdFunctionSetMac()}} +{\footnotesize\ttfamily void cmd\+Function\+Set\+Mac (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ae161ded98969a4b68b902b79633edc3b}\label{main_8cpp_ae161ded98969a4b68b902b79633edc3b}} +\index{main.cpp@{main.cpp}!ethernetIdle@{ethernetIdle}} +\index{ethernetIdle@{ethernetIdle}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdle()}{ethernetIdle()}} +{\footnotesize\ttfamily void ethernet\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a7d5e0e0612ab235c45bea4406faa5f76}\label{main_8cpp_a7d5e0e0612ab235c45bea4406faa5f76}} +\index{main.cpp@{main.cpp}!getStringFromConfig@{getStringFromConfig}} +\index{getStringFromConfig@{getStringFromConfig}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{getStringFromConfig()}{getStringFromConfig()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily char$\ast$ get\+String\+From\+Config (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{a, }\item[{char $\ast$}]{name }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a900f9d7a9963ef64b642248a76175af7}\label{main_8cpp_a900f9d7a9963ef64b642248a76175af7}} +\index{main.cpp@{main.cpp}!getStringFromConfig@{getStringFromConfig}} +\index{getStringFromConfig@{getStringFromConfig}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{getStringFromConfig()}{getStringFromConfig()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily char$\ast$ get\+String\+From\+Config (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{a, }\item[{int}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ad146ac5b8d70c1a9a590ba4029c3548e}\label{main_8cpp_ad146ac5b8d70c1a9a590ba4029c3548e}} +\index{main.cpp@{main.cpp}!inputLoop@{inputLoop}} +\index{inputLoop@{inputLoop}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{inputLoop()}{inputLoop()}} +{\footnotesize\ttfamily void input\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a312b53e977f386af72ed576bca617fef}\label{main_8cpp_a312b53e977f386af72ed576bca617fef}} +\index{main.cpp@{main.cpp}!inputSetup@{inputSetup}} +\index{inputSetup@{inputSetup}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{inputSetup()}{inputSetup()}} +{\footnotesize\ttfamily void input\+Setup (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aed1aedfd8ec1c64e58ca24e5de9470b2}\label{main_8cpp_aed1aedfd8ec1c64e58ca24e5de9470b2}} +\index{main.cpp@{main.cpp}!ip\_ready\_config\_loaded\_connecting\_to\_broker@{ip\_ready\_config\_loaded\_connecting\_to\_broker}} +\index{ip\_ready\_config\_loaded\_connecting\_to\_broker@{ip\_ready\_config\_loaded\_connecting\_to\_broker}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{ip\_ready\_config\_loaded\_connecting\_to\_broker()}{ip\_ready\_config\_loaded\_connecting\_to\_broker()}} +{\footnotesize\ttfamily void ip\+\_\+ready\+\_\+config\+\_\+loaded\+\_\+connecting\+\_\+to\+\_\+broker (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a4ae13d2288d58c3ea8b731270fa798d3}\label{main_8cpp_a4ae13d2288d58c3ea8b731270fa798d3}} +\index{main.cpp@{main.cpp}!ipLoadFromFlash@{ipLoadFromFlash}} +\index{ipLoadFromFlash@{ipLoadFromFlash}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{ipLoadFromFlash()}{ipLoadFromFlash()}} +{\footnotesize\ttfamily int ip\+Load\+From\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{I\+P\+Address \&}]{ip }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a9b73380a4525361ce5634b890e83c8d2}\label{main_8cpp_a9b73380a4525361ce5634b890e83c8d2}} +\index{main.cpp@{main.cpp}!isNotRetainingStatus@{isNotRetainingStatus}} +\index{isNotRetainingStatus@{isNotRetainingStatus}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{isNotRetainingStatus()}{isNotRetainingStatus()}} +{\footnotesize\ttfamily bool is\+Not\+Retaining\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a5976046ebb500523e75d64f9c858d73d}\label{main_8cpp_a5976046ebb500523e75d64f9c858d73d}} +\index{main.cpp@{main.cpp}!isThermostatWithMinArraySize@{isThermostatWithMinArraySize}} +\index{isThermostatWithMinArraySize@{isThermostatWithMinArraySize}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{isThermostatWithMinArraySize()}{isThermostatWithMinArraySize()}} +{\footnotesize\ttfamily bool is\+Thermostat\+With\+Min\+Array\+Size (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{item, }\item[{int}]{minimal\+Array\+Size }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ac90757e5d1212e1b230bb4db8924d310}\label{main_8cpp_ac90757e5d1212e1b230bb4db8924d310}} +\index{main.cpp@{main.cpp}!lanLoop@{lanLoop}} +\index{lanLoop@{lanLoop}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{lanLoop()}{lanLoop()}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Loop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a92e24c034fb886c8155d50831bae5823}\label{main_8cpp_a92e24c034fb886c8155d50831bae5823}} +\index{main.cpp@{main.cpp}!loadConfigFromEEPROM@{loadConfigFromEEPROM}} +\index{loadConfigFromEEPROM@{loadConfigFromEEPROM}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{loadConfigFromEEPROM()}{loadConfigFromEEPROM()}} +{\footnotesize\ttfamily int load\+Config\+From\+E\+E\+P\+R\+OM (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aa6db506a9d019ba9decab546c15eb819}\label{main_8cpp_aa6db506a9d019ba9decab546c15eb819}} +\index{main.cpp@{main.cpp}!loadConfigFromHttp@{loadConfigFromHttp}} +\index{loadConfigFromHttp@{loadConfigFromHttp}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{loadConfigFromHttp()}{loadConfigFromHttp()}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} load\+Config\+From\+Http (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aff5e7d5d674ed8a8fedcde644c725f68}\label{main_8cpp_aff5e7d5d674ed8a8fedcde644c725f68}} +\index{main.cpp@{main.cpp}!loadFlash@{loadFlash}} +\index{loadFlash@{loadFlash}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{loadFlash()}{loadFlash()}} +{\footnotesize\ttfamily int load\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{char $\ast$}]{str, }\item[{short}]{l }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a840f282fdf876a88d5ff634fd74f10be}\label{main_8cpp_a840f282fdf876a88d5ff634fd74f10be}} +\index{main.cpp@{main.cpp}!loop\_main@{loop\_main}} +\index{loop\_main@{loop\_main}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{loop\_main()}{loop\_main()}} +{\footnotesize\ttfamily void loop\+\_\+main (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aa557ba1fef085fb9865ffd399c738dbf}\label{main_8cpp_aa557ba1fef085fb9865ffd399c738dbf}} +\index{main.cpp@{main.cpp}!modbusIdle@{modbusIdle}} +\index{modbusIdle@{modbusIdle}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{modbusIdle()}{modbusIdle()}} +{\footnotesize\ttfamily void modbus\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a6f06b273defaebb581fdf1adc8969f40}\label{main_8cpp_a6f06b273defaebb581fdf1adc8969f40}} +\index{main.cpp@{main.cpp}!mqttCallback@{mqttCallback}} +\index{mqttCallback@{mqttCallback}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttCallback()}{mqttCallback()}} +{\footnotesize\ttfamily void mqtt\+Callback (\begin{DoxyParamCaption}\item[{char $\ast$}]{topic, }\item[{byte $\ast$}]{payload, }\item[{unsigned int}]{length }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a18e15522dd78764c518fd5526cc2d446}\label{main_8cpp_a18e15522dd78764c518fd5526cc2d446}} +\index{main.cpp@{main.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient()}{mqttClient()}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{main_8cpp_a2a65545cb474469b22d80319e302a2f8}{eth\+Client}}}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aec955c97b23e5875d0fdb3c00e789903}\label{main_8cpp_aec955c97b23e5875d0fdb3c00e789903}} +\index{main.cpp@{main.cpp}!mqttConfigRequest@{mqttConfigRequest}} +\index{mqttConfigRequest@{mqttConfigRequest}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttConfigRequest()}{mqttConfigRequest()}} +{\footnotesize\ttfamily int mqtt\+Config\+Request (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ad60a48a0c509facdc6dc61df64d49fae}\label{main_8cpp_ad60a48a0c509facdc6dc61df64d49fae}} +\index{main.cpp@{main.cpp}!mqttConfigResp@{mqttConfigResp}} +\index{mqttConfigResp@{mqttConfigResp}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttConfigResp()}{mqttConfigResp()}} +{\footnotesize\ttfamily int mqtt\+Config\+Resp (\begin{DoxyParamCaption}\item[{char $\ast$}]{as }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ae886a24c554e48191a1ea668c43d2287}\label{main_8cpp_ae886a24c554e48191a1ea668c43d2287}} +\index{main.cpp@{main.cpp}!onInitialStateInitLAN@{onInitialStateInitLAN}} +\index{onInitialStateInitLAN@{onInitialStateInitLAN}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{onInitialStateInitLAN()}{onInitialStateInitLAN()}} +{\footnotesize\ttfamily void on\+Initial\+State\+Init\+L\+AN (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_af1a9158faed86994ef3c4f248bdd86c8}\label{main_8cpp_af1a9158faed86994ef3c4f248bdd86c8}} +\index{main.cpp@{main.cpp}!onMQTTConnect@{onMQTTConnect}} +\index{onMQTTConnect@{onMQTTConnect}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{onMQTTConnect()}{onMQTTConnect()}} +{\footnotesize\ttfamily void on\+M\+Q\+T\+T\+Connect (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +strncat(buf,item-\/$>$name,sizeof(buf)); strncat(buf,\char`\"{},\char`\"{},sizeof(buf)); + +mqtt\+Client.\+publish(topic,buf,true);\mbox{\Hypertarget{main_8cpp_a58e08cc15112818913fe96d75642265e}\label{main_8cpp_a58e08cc15112818913fe96d75642265e}} +\index{main.cpp@{main.cpp}!owIdle@{owIdle}} +\index{owIdle@{owIdle}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{owIdle()}{owIdle()}} +{\footnotesize\ttfamily void ow\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aec2ff7b5df24b3ae0cfe8d556088fd7c}\label{main_8cpp_aec2ff7b5df24b3ae0cfe8d556088fd7c}} +\index{main.cpp@{main.cpp}!pollingLoop@{pollingLoop}} +\index{pollingLoop@{pollingLoop}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{pollingLoop()}{pollingLoop()}} +{\footnotesize\ttfamily void polling\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a33b535e84f654e423bb627b25b7b3759}\label{main_8cpp_a33b535e84f654e423bb627b25b7b3759}} +\index{main.cpp@{main.cpp}!postTransmission@{postTransmission}} +\index{postTransmission@{postTransmission}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{postTransmission()}{postTransmission()}} +{\footnotesize\ttfamily void post\+Transmission (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a1c43d8a4afead0d0df29635242290377}\label{main_8cpp_a1c43d8a4afead0d0df29635242290377}} +\index{main.cpp@{main.cpp}!preTransmission@{preTransmission}} +\index{preTransmission@{preTransmission}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{preTransmission()}{preTransmission()}} +{\footnotesize\ttfamily void pre\+Transmission (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a2d4b5aa8fbc197c31397235607aeba13}\label{main_8cpp_a2d4b5aa8fbc197c31397235607aeba13}} +\index{main.cpp@{main.cpp}!printBool@{printBool}} +\index{printBool@{printBool}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{printBool()}{printBool()}} +{\footnotesize\ttfamily void print\+Bool (\begin{DoxyParamCaption}\item[{bool}]{arg }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ae22f686238cf5f09109b12f4b628ccea}\label{main_8cpp_ae22f686238cf5f09109b12f4b628ccea}} +\index{main.cpp@{main.cpp}!printConfigSummary@{printConfigSummary}} +\index{printConfigSummary@{printConfigSummary}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{printConfigSummary()}{printConfigSummary()}} +{\footnotesize\ttfamily void print\+Config\+Summary (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ab6cb5750ee8902ca29b51dd013bb74b9}\label{main_8cpp_ab6cb5750ee8902ca29b51dd013bb74b9}} +\index{main.cpp@{main.cpp}!printCurentLanConfig@{printCurentLanConfig}} +\index{printCurentLanConfig@{printCurentLanConfig}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{printCurentLanConfig()}{printCurentLanConfig()}} +{\footnotesize\ttfamily void print\+Curent\+Lan\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a1cff64c0263246441c972f03e6893714}\label{main_8cpp_a1cff64c0263246441c972f03e6893714}} +\index{main.cpp@{main.cpp}!printFirmwareVersionAndBuildOptions@{printFirmwareVersionAndBuildOptions}} +\index{printFirmwareVersionAndBuildOptions@{printFirmwareVersionAndBuildOptions}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{printFirmwareVersionAndBuildOptions()}{printFirmwareVersionAndBuildOptions()}} +{\footnotesize\ttfamily void print\+Firmware\+Version\+And\+Build\+Options (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_ad04c200b33c848aace1315bdf676201e}\label{main_8cpp_ad04c200b33c848aace1315bdf676201e}} +\index{main.cpp@{main.cpp}!printMACAddress@{printMACAddress}} +\index{printMACAddress@{printMACAddress}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{printMACAddress()}{printMACAddress()}} +{\footnotesize\ttfamily void print\+M\+A\+C\+Address (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a2cf2114e80da1894dc41209a4b66a08f}\label{main_8cpp_a2cf2114e80da1894dc41209a4b66a08f}} +\index{main.cpp@{main.cpp}!publishStat@{publishStat}} +\index{publishStat@{publishStat}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{publishStat()}{publishStat()}} +{\footnotesize\ttfamily void publish\+Stat (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a8a8de594b1a60fc6867b639d1c50a34b}\label{main_8cpp_a8a8de594b1a60fc6867b639d1c50a34b}} +\index{main.cpp@{main.cpp}!resetHard@{resetHard}} +\index{resetHard@{resetHard}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{resetHard()}{resetHard()}} +{\footnotesize\ttfamily void reset\+Hard (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a3d9b2a443a58bf0d3e28c174d2c43b8f}\label{main_8cpp_a3d9b2a443a58bf0d3e28c174d2c43b8f}} +\index{main.cpp@{main.cpp}!saveFlash@{saveFlash}} +\index{saveFlash@{saveFlash}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{saveFlash()}{saveFlash()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void save\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{char $\ast$}]{str }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a881f36fdc5bf71038ea93823437e7751}\label{main_8cpp_a881f36fdc5bf71038ea93823437e7751}} +\index{main.cpp@{main.cpp}!saveFlash@{saveFlash}} +\index{saveFlash@{saveFlash}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{saveFlash()}{saveFlash()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void save\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{I\+P\+Address \&}]{ip }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_aa34675c2dc6eb3d0744844d8e67e3af8}\label{main_8cpp_aa34675c2dc6eb3d0744844d8e67e3af8}} +\index{main.cpp@{main.cpp}!setup\_main@{setup\_main}} +\index{setup\_main@{setup\_main}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{setup\_main()}{setup\_main()}} +{\footnotesize\ttfamily void setup\+\_\+main (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_abec54b31996557c73a31054ce068c8fa}\label{main_8cpp_abec54b31996557c73a31054ce068c8fa}} +\index{main.cpp@{main.cpp}!setupCmdArduino@{setupCmdArduino}} +\index{setupCmdArduino@{setupCmdArduino}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{setupCmdArduino()}{setupCmdArduino()}} +{\footnotesize\ttfamily void setup\+Cmd\+Arduino (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a2186513a50a77b9bd9bb453d4584c5f8}\label{main_8cpp_a2186513a50a77b9bd9bb453d4584c5f8}} +\index{main.cpp@{main.cpp}!setupMacAddress@{setupMacAddress}} +\index{setupMacAddress@{setupMacAddress}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{setupMacAddress()}{setupMacAddress()}} +{\footnotesize\ttfamily void setup\+Mac\+Address (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_acfca2f2b3c22e56799e7fd1f66952729}\label{main_8cpp_acfca2f2b3c22e56799e7fd1f66952729}} +\index{main.cpp@{main.cpp}!setupOTA@{setupOTA}} +\index{setupOTA@{setupOTA}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{setupOTA()}{setupOTA()}} +{\footnotesize\ttfamily void setup\+O\+TA (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_afa048a9d2e392a67cb5af8ab00b3ec0f}\label{main_8cpp_afa048a9d2e392a67cb5af8ab00b3ec0f}} +\index{main.cpp@{main.cpp}!setupSyslog@{setupSyslog}} +\index{setupSyslog@{setupSyslog}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{setupSyslog()}{setupSyslog()}} +{\footnotesize\ttfamily void setup\+Syslog (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a35f5a9d31c8cb726a3c7e77e7ad9c4b2}\label{main_8cpp_a35f5a9d31c8cb726a3c7e77e7ad9c4b2}} +\index{main.cpp@{main.cpp}!thermoDisabledOrDisconnected@{thermoDisabledOrDisconnected}} +\index{thermoDisabledOrDisconnected@{thermoDisabledOrDisconnected}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{thermoDisabledOrDisconnected()}{thermoDisabledOrDisconnected()}} +{\footnotesize\ttfamily bool thermo\+Disabled\+Or\+Disconnected (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{thermo\+Extension\+Array, }\item[{int}]{thermo\+State\+Command }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a2d1cd6009a6e25d3605fee3e54065577}\label{main_8cpp_a2d1cd6009a6e25d3605fee3e54065577}} +\index{main.cpp@{main.cpp}!thermoLoop@{thermoLoop}} +\index{thermoLoop@{thermoLoop}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{thermoLoop()}{thermoLoop()}} +{\footnotesize\ttfamily void thermo\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8cpp_a73643474e211698e96d2a6ac69264b46}\label{main_8cpp_a73643474e211698e96d2a6ac69264b46}} +\index{main.cpp@{main.cpp}!thermoSetCurTemp@{thermoSetCurTemp}} +\index{thermoSetCurTemp@{thermoSetCurTemp}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{thermoSetCurTemp()}{thermoSetCurTemp()}} +{\footnotesize\ttfamily short thermo\+Set\+Cur\+Temp (\begin{DoxyParamCaption}\item[{char $\ast$}]{name, }\item[{float}]{t }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{main_8cpp_a235b23edd19d4c133a8d49bc1b09cedb}\label{main_8cpp_a235b23edd19d4c133a8d49bc1b09cedb}} +\index{main.cpp@{main.cpp}!configLoaded@{configLoaded}} +\index{configLoaded@{configLoaded}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{configLoaded}{configLoaded}} +{\footnotesize\ttfamily bool config\+Loaded = false} + +\mbox{\Hypertarget{main_8cpp_a58655351bd1d5333e5eb92d4c29f4263}\label{main_8cpp_a58655351bd1d5333e5eb92d4c29f4263}} +\index{main.cpp@{main.cpp}!configLocked@{configLocked}} +\index{configLocked@{configLocked}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{configLocked}{configLocked}} +{\footnotesize\ttfamily int8\+\_\+t config\+Locked = 0} + +\mbox{\Hypertarget{main_8cpp_a459dec3d2fac52eba9bf53c19d14bcc7}\label{main_8cpp_a459dec3d2fac52eba9bf53c19d14bcc7}} +\index{main.cpp@{main.cpp}!configOk@{configOk}} +\index{configOk@{configOk}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{configOk}{configOk}} +{\footnotesize\ttfamily bool config\+Ok = false} + +\mbox{\Hypertarget{main_8cpp_a525e5725911fc3939bb449849aa1b5ab}\label{main_8cpp_a525e5725911fc3939bb449849aa1b5ab}} +\index{main.cpp@{main.cpp}!debugSerialPort@{debugSerialPort}} +\index{debugSerialPort@{debugSerialPort}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{debugSerialPort}{debugSerialPort}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a962d0234b6d650699159b02bbb1ba659}{info\+Serial}}\& debug\+Serial\+Port} + +\mbox{\Hypertarget{main_8cpp_a5da66826e811349c98b2daf2bafb78c2}\label{main_8cpp_a5da66826e811349c98b2daf2bafb78c2}} +\index{main.cpp@{main.cpp}!deviceName@{deviceName}} +\index{deviceName@{deviceName}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{deviceName}{deviceName}} +{\footnotesize\ttfamily char$\ast$ device\+Name = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a077dba54087a1a3694f810ba9fd06933}\label{main_8cpp_a077dba54087a1a3694f810ba9fd06933}} +\index{main.cpp@{main.cpp}!dmxArr@{dmxArr}} +\index{dmxArr@{dmxArr}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{dmxArr}{dmxArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ dmx\+Arr = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a2a65545cb474469b22d80319e302a2f8}\label{main_8cpp_a2a65545cb474469b22d80319e302a2f8}} +\index{main.cpp@{main.cpp}!ethClient@{ethClient}} +\index{ethClient@{ethClient}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{ethClient}{ethClient}} +{\footnotesize\ttfamily Ethernet\+Client eth\+Client} + +\mbox{\Hypertarget{main_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}\label{main_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}} +\index{main.cpp@{main.cpp}!ethernetIdleCount@{ethernetIdleCount}} +\index{ethernetIdleCount@{ethernetIdleCount}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdleCount}{ethernetIdleCount}} +{\footnotesize\ttfamily int8\+\_\+t ethernet\+Idle\+Count =0} + +\mbox{\Hypertarget{main_8cpp_ad40189c6dffdd91758f3686c80484ac7}\label{main_8cpp_ad40189c6dffdd91758f3686c80484ac7}} +\index{main.cpp@{main.cpp}!initializedListeners@{initializedListeners}} +\index{initializedListeners@{initializedListeners}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{initializedListeners}{initializedListeners}} +{\footnotesize\ttfamily bool initialized\+Listeners = false} + +\mbox{\Hypertarget{main_8cpp_a9e63aa63a6b8b667a41f94bec231d7aa}\label{main_8cpp_a9e63aa63a6b8b667a41f94bec231d7aa}} +\index{main.cpp@{main.cpp}!inputs@{inputs}} +\index{inputs@{inputs}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{inputs}{inputs}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ inputs = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a012787f09a43864616e2b44349b29352}\label{main_8cpp_a012787f09a43864616e2b44349b29352}} +\index{main.cpp@{main.cpp}!items@{items}} +\index{items@{items}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{items}{items}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ items = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}\label{main_8cpp_a7bbda7cf303a1bc3222e7a270f9040bd}} +\index{main.cpp@{main.cpp}!lanStatus@{lanStatus}} +\index{lanStatus@{lanStatus}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{lanStatus}{lanStatus}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Status = \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f}{I\+N\+I\+T\+I\+A\+L\+\_\+\+S\+T\+A\+TE}}} + +\mbox{\Hypertarget{main_8cpp_a1c77e6f587043bdec86e0cabd956e2e2}\label{main_8cpp_a1c77e6f587043bdec86e0cabd956e2e2}} +\index{main.cpp@{main.cpp}!LED@{LED}} +\index{LED@{LED}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{LED}{LED}} +{\footnotesize\ttfamily \mbox{\hyperlink{classstatus_l_e_d}{status\+L\+ED}} L\+ED(\mbox{\hyperlink{statusled_8h_abfe826857256aa93aa762e7d98390743}{led\+R\+ED}})} + +\mbox{\Hypertarget{main_8cpp_a775118f5b90a904c7e65066faabab1a2}\label{main_8cpp_a775118f5b90a904c7e65066faabab1a2}} +\index{main.cpp@{main.cpp}!mac@{mac}} +\index{mac@{mac}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mac}{mac}} +{\footnotesize\ttfamily byte mac\mbox{[}6\mbox{]}} + +\mbox{\Hypertarget{main_8cpp_aabc7159a42d55e7c474862449404d65c}\label{main_8cpp_aabc7159a42d55e7c474862449404d65c}} +\index{main.cpp@{main.cpp}!modbusObj@{modbusObj}} +\index{modbusObj@{modbusObj}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{modbusObj}{modbusObj}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ modbus\+Obj = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a5a49c3c9f18e1b12e3706522c19c62c3}\label{main_8cpp_a5a49c3c9f18e1b12e3706522c19c62c3}} +\index{main.cpp@{main.cpp}!mqttArr@{mqttArr}} +\index{mqttArr@{mqttArr}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttArr}{mqttArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ mqtt\+Arr = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_ac2567a764f7c3bef5306a430ba615de9}\label{main_8cpp_ac2567a764f7c3bef5306a430ba615de9}} +\index{main.cpp@{main.cpp}!mqttErrorRate@{mqttErrorRate}} +\index{mqttErrorRate@{mqttErrorRate}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{mqttErrorRate}{mqttErrorRate}} +{\footnotesize\ttfamily int mqtt\+Error\+Rate} + +\mbox{\Hypertarget{main_8cpp_ab97b60e63c8bfbdd8baaf7d1ad94501f}\label{main_8cpp_ab97b60e63c8bfbdd8baaf7d1ad94501f}} +\index{main.cpp@{main.cpp}!nextInputCheck@{nextInputCheck}} +\index{nextInputCheck@{nextInputCheck}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{nextInputCheck}{nextInputCheck}} +{\footnotesize\ttfamily uint32\+\_\+t next\+Input\+Check = 0} + +\mbox{\Hypertarget{main_8cpp_a718a0d8e0b8df891d3f1e4ac55c786ca}\label{main_8cpp_a718a0d8e0b8df891d3f1e4ac55c786ca}} +\index{main.cpp@{main.cpp}!nextLanCheckTime@{nextLanCheckTime}} +\index{nextLanCheckTime@{nextLanCheckTime}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{nextLanCheckTime}{nextLanCheckTime}} +{\footnotesize\ttfamily uint32\+\_\+t next\+Lan\+Check\+Time = 0} + +\mbox{\Hypertarget{main_8cpp_a44ea85dd3be07c7cf3ad07d3565c8663}\label{main_8cpp_a44ea85dd3be07c7cf3ad07d3565c8663}} +\index{main.cpp@{main.cpp}!nextPollingCheck@{nextPollingCheck}} +\index{nextPollingCheck@{nextPollingCheck}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{nextPollingCheck}{nextPollingCheck}} +{\footnotesize\ttfamily uint32\+\_\+t next\+Polling\+Check = 0} + +\mbox{\Hypertarget{main_8cpp_a1faa7904cff01b8c7c39eeedcc205325}\label{main_8cpp_a1faa7904cff01b8c7c39eeedcc205325}} +\index{main.cpp@{main.cpp}!nextSensorCheck@{nextSensorCheck}} +\index{nextSensorCheck@{nextSensorCheck}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{nextSensorCheck}{nextSensorCheck}} +{\footnotesize\ttfamily uint32\+\_\+t next\+Sensor\+Check =0} + +\mbox{\Hypertarget{main_8cpp_a8389528c25c33724774418d61bb3ac35}\label{main_8cpp_a8389528c25c33724774418d61bb3ac35}} +\index{main.cpp@{main.cpp}!nextThermostatCheck@{nextThermostatCheck}} +\index{nextThermostatCheck@{nextThermostatCheck}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{nextThermostatCheck}{nextThermostatCheck}} +{\footnotesize\ttfamily uint32\+\_\+t next\+Thermostat\+Check = 0} + +\mbox{\Hypertarget{main_8cpp_aed3ca48125de3e138d26fa4884c35c93}\label{main_8cpp_aed3ca48125de3e138d26fa4884c35c93}} +\index{main.cpp@{main.cpp}!node@{node}} +\index{node@{node}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{node}{node}} +{\footnotesize\ttfamily Modbus\+Master node} + +\mbox{\Hypertarget{main_8cpp_a564a174b067eee3b33b1162935884d55}\label{main_8cpp_a564a174b067eee3b33b1162935884d55}} +\index{main.cpp@{main.cpp}!owArr@{owArr}} +\index{owArr@{owArr}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{owArr}{owArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ ow\+Arr = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_a9638cf28423f00ad98377d1d89cba57e}\label{main_8cpp_a9638cf28423f00ad98377d1d89cba57e}} +\index{main.cpp@{main.cpp}!owReady@{owReady}} +\index{owReady@{owReady}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{owReady}{owReady}} +{\footnotesize\ttfamily bool ow\+Ready = false} + +\mbox{\Hypertarget{main_8cpp_aa8f2c895949680c2aadc4843bb350347}\label{main_8cpp_aa8f2c895949680c2aadc4843bb350347}} +\index{main.cpp@{main.cpp}!pollingItem@{pollingItem}} +\index{pollingItem@{pollingItem}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{pollingItem}{pollingItem}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ polling\+Item = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_adf233b4843635c473146d0fd1d2a8b46}\label{main_8cpp_adf233b4843635c473146d0fd1d2a8b46}} +\index{main.cpp@{main.cpp}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const char verval\+\_\+P \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM = \mbox{\hyperlink{options_8h_a979988f1e12c581103bd7dcd41be2a4a}{C\+O\+N\+F\+I\+G\+\_\+\+S\+E\+R\+V\+ER}}} + +\mbox{\Hypertarget{main_8cpp_a2e223992d94c34788bec64fb05f780ba}\label{main_8cpp_a2e223992d94c34788bec64fb05f780ba}} +\index{main.cpp@{main.cpp}!root@{root}} +\index{root@{root}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{root}{root}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ root = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_addabf1c5a7be47e4e89beb38a435cb51}\label{main_8cpp_addabf1c5a7be47e4e89beb38a435cb51}} +\index{main.cpp@{main.cpp}!topics@{topics}} +\index{topics@{topics}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{topics}{topics}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ topics = N\+U\+LL} + +\mbox{\Hypertarget{main_8cpp_ae4b71bfb7d27827d7d6c40fc3b745510}\label{main_8cpp_ae4b71bfb7d27827d7d6c40fc3b745510}} +\index{main.cpp@{main.cpp}!WiFiAwaitingTime@{WiFiAwaitingTime}} +\index{WiFiAwaitingTime@{WiFiAwaitingTime}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{WiFiAwaitingTime}{WiFiAwaitingTime}} +{\footnotesize\ttfamily uint32\+\_\+t Wi\+Fi\+Awaiting\+Time =0} + +\mbox{\Hypertarget{main_8cpp_a6a547b8f65552a00acceaae5fb86fb0d}\label{main_8cpp_a6a547b8f65552a00acceaae5fb86fb0d}} +\index{main.cpp@{main.cpp}!wifiInitialized@{wifiInitialized}} +\index{wifiInitialized@{wifiInitialized}!main.cpp@{main.cpp}} +\doxysubsubsection{\texorpdfstring{wifiInitialized}{wifiInitialized}} +{\footnotesize\ttfamily bool wifi\+Initialized} + diff --git a/docs/latex/main_8h.tex b/docs/latex/main_8h.tex new file mode 100644 index 0000000..1ff1527 --- /dev/null +++ b/docs/latex/main_8h.tex @@ -0,0 +1,504 @@ +\hypertarget{main_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/main.h File Reference} +\label{main_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/main.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/main.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}streamlog.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Dallas\+Temperature.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Modbus\+Master.\+h$>$}\newline +{\ttfamily \#include \char`\"{}ow\+Term.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}dmx.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Ethernet.\+h$>$}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}textconst.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +{\ttfamily \#include $<$S\+P\+I.\+h$>$}\newline +{\ttfamily \#include $<$string.\+h$>$}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Cmd.\+h$>$}\newline +{\ttfamily \#include \char`\"{}stdarg.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}inputs.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +union \mbox{\hyperlink{union_u_i_d}{U\+ID}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{main_8h_a71a294b57014bc72835215290f1735fe}{D\+H\+C\+P\+\_\+\+R\+E\+T\+R\+Y\+\_\+\+I\+N\+T\+E\+R\+V\+AL}}~60000 +\end{DoxyCompactItemize} +\doxysubsection*{Enumerations} +\begin{DoxyCompactItemize} +\item +enum \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \{ \newline +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f}{I\+N\+I\+T\+I\+A\+L\+\_\+\+S\+T\+A\+TE}} = 0, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473aff1c53b962fb36482e2ef34640bd6eb9}{A\+W\+A\+I\+T\+I\+N\+G\+\_\+\+A\+D\+D\+R\+E\+SS}} = 1, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473ad5eee46b7b3980a2e3434ec7f605fa4a}{H\+A\+V\+E\+\_\+\+I\+P\+\_\+\+A\+D\+D\+R\+E\+SS}} = 2, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a3e7fa6277fa286ce64cfab4f9e6d77c2}{L\+I\+B\+S\+\_\+\+I\+N\+I\+T\+I\+A\+L\+I\+Z\+ED}} = 3, +\newline +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a3313433a81a25d16c72bb69503429b2d}{I\+P\+\_\+\+R\+E\+A\+D\+Y\+\_\+\+C\+O\+N\+F\+I\+G\+\_\+\+L\+O\+A\+D\+E\+D\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+N\+G\+\_\+\+T\+O\+\_\+\+B\+R\+O\+K\+ER}} = 4, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473ade482451d4b1a70137e1590d5d9e0fe8}{R\+E\+T\+A\+I\+N\+I\+N\+G\+\_\+\+C\+O\+L\+L\+E\+C\+T\+I\+NG}} = 5, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473ae6c7d41b255eff353251fbec6fe839e4}{O\+P\+E\+R\+A\+T\+I\+ON}} = 6, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a7b6874c83593674f516620bb883fff8b}{D\+O\+\_\+\+R\+E\+I\+N\+IT}} = -\/10, +\newline +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a8d100cff0932a4777f300647958ca8ba}{R\+E\+I\+N\+IT}} = -\/ 11, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473a9ea9900a7508394e36b0a3024397c285}{D\+O\+\_\+\+R\+E\+C\+O\+N\+N\+E\+CT}} = 12, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473af0a5833d071a9c74f91cd1ef5063d2dc}{R\+E\+C\+O\+N\+N\+E\+CT}} = 13, +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473af3d074e791c337efc66c7e5bd378e946}{R\+E\+A\+D\+\_\+\+R\+E\+\_\+\+C\+O\+N\+F\+IG}} = 14, +\newline +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473aa3c06bc7e4d652a970cab72026c6fed1}{D\+O\+\_\+\+N\+O\+T\+H\+I\+NG}} = -\/15 + \} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +bool \mbox{\hyperlink{main_8h_a9b73380a4525361ce5634b890e83c8d2}{is\+Not\+Retaining\+Status}} () +\item +void \mbox{\hyperlink{main_8h_a6f06b273defaebb581fdf1adc8969f40}{mqtt\+Callback}} (char $\ast$topic, byte $\ast$payload, unsigned int length) +\item +void \mbox{\hyperlink{main_8h_ad04c200b33c848aace1315bdf676201e}{print\+M\+A\+C\+Address}} () +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{main_8h_ac90757e5d1212e1b230bb4db8924d310}{lan\+Loop}} () +\item +void \mbox{\hyperlink{main_8h_abbcbfa3bc0f5d93f1f1d84c3fdc23608}{Changed}} (int i, Device\+Address addr, float current\+Temp) +\item +void \mbox{\hyperlink{main_8h_aa557ba1fef085fb9865ffd399c738dbf}{modbus\+Idle}} (void) +\item +void \mbox{\hyperlink{main_8h_a21fea6de1fe7b59684f3d18e3f4764d7}{cmd\+Function\+Help}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8h_ab854d947e87c345f801a07f196e50a67}{cmd\+Function\+Kill}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8h_a82529a2f0678bfb6b0808935865ba42d}{apply\+Config}} () +\item +void \mbox{\hyperlink{main_8h_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}{cmd\+Function\+Load}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8h_a92e24c034fb886c8155d50831bae5823}{load\+Config\+From\+E\+E\+P\+R\+OM}} () +\item +void \mbox{\hyperlink{main_8h_a1ebb3f04dc34df941a4bf974f7ad9443}{cmd\+Function\+Req}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8h_aec955c97b23e5875d0fdb3c00e789903}{mqtt\+Config\+Request}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +int \mbox{\hyperlink{main_8h_ad60a48a0c509facdc6dc61df64d49fae}{mqtt\+Config\+Resp}} (char $\ast$as) +\item +void \mbox{\hyperlink{main_8h_a66af021e24df0f8f82d9550cdb6bf865}{cmd\+Function\+Save}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8h_aea9177f835f6f4ad83d8f71dc0a4db77}{cmd\+Function\+Set\+Mac}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8h_a84a345181b5379a4dc0eec58f348deb7}{cmd\+Function\+Get}} (int arg\+\_\+cnt, char $\ast$$\ast$args) +\item +void \mbox{\hyperlink{main_8h_a2d4b5aa8fbc197c31397235607aeba13}{print\+Bool}} (bool arg) +\item +void \mbox{\hyperlink{main_8h_a3d9b2a443a58bf0d3e28c174d2c43b8f}{save\+Flash}} (short n, char $\ast$str) +\item +int \mbox{\hyperlink{main_8h_a7f53de7620c6cfb1462d7c94b5f9814c}{load\+Flash}} (short n, char $\ast$str, short l=\mbox{\hyperlink{options_8h_a62d02da8c36fd3ab5519e373620382d1}{M\+A\+X\+F\+L\+A\+S\+H\+S\+TR}}) +\item +void \mbox{\hyperlink{main_8h_a881f36fdc5bf71038ea93823437e7751}{save\+Flash}} (short n, I\+P\+Address \&ip) +\item +int \mbox{\hyperlink{main_8h_a4ae13d2288d58c3ea8b731270fa798d3}{ip\+Load\+From\+Flash}} (short n, I\+P\+Address \&ip) +\item +\mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} \mbox{\hyperlink{main_8h_a1369dd2c9e03f46af35b247a5e8548df}{load\+Config\+From\+Http}} (int arg\+\_\+cnt=0, char $\ast$$\ast$args=N\+U\+LL) +\item +void \mbox{\hyperlink{main_8h_a1c43d8a4afead0d0df29635242290377}{pre\+Transmission}} () +\item +void \mbox{\hyperlink{main_8h_a33b535e84f654e423bb627b25b7b3759}{post\+Transmission}} () +\item +void \mbox{\hyperlink{main_8h_aa34675c2dc6eb3d0744844d8e67e3af8}{setup\+\_\+main}} () +\item +void \mbox{\hyperlink{main_8h_a840f282fdf876a88d5ff634fd74f10be}{loop\+\_\+main}} () +\item +void \mbox{\hyperlink{main_8h_a58e08cc15112818913fe96d75642265e}{ow\+Idle}} (void) +\item +void \mbox{\hyperlink{main_8h_ad146ac5b8d70c1a9a590ba4029c3548e}{input\+Loop}} (void) +\item +void \mbox{\hyperlink{main_8h_a312b53e977f386af72ed576bca617fef}{input\+Setup}} (void) +\item +void \mbox{\hyperlink{main_8h_aec2ff7b5df24b3ae0cfe8d556088fd7c}{polling\+Loop}} (void) +\item +void \mbox{\hyperlink{main_8h_a2d1cd6009a6e25d3605fee3e54065577}{thermo\+Loop}} (void) +\item +short \mbox{\hyperlink{main_8h_a73643474e211698e96d2a6ac69264b46}{thermo\+Set\+Cur\+Temp}} (char $\ast$name, float t) +\item +void \mbox{\hyperlink{main_8h_ae22f686238cf5f09109b12f4b628ccea}{print\+Config\+Summary}} () +\item +void \mbox{\hyperlink{main_8h_abec54b31996557c73a31054ce068c8fa}{setup\+Cmd\+Arduino}} () +\item +void \mbox{\hyperlink{main_8h_a2186513a50a77b9bd9bb453d4584c5f8}{setup\+Mac\+Address}} () +\item +void \mbox{\hyperlink{main_8h_a1cff64c0263246441c972f03e6893714}{print\+Firmware\+Version\+And\+Build\+Options}} () +\item +bool \mbox{\hyperlink{main_8h_a31ee3eed42c2bdf317dca09913f89b27}{Is\+Thermostat}} (const a\+Json\+Object $\ast$item) +\item +bool \mbox{\hyperlink{main_8h_a4d31c49c58edcc310db78d660c434995}{disabled\+Disconnected}} (const a\+Json\+Object $\ast$thermo\+Extension\+Array, int thermo\+Latest\+Command) +\item +void \mbox{\hyperlink{main_8h_a8a8de594b1a60fc6867b639d1c50a34b}{reset\+Hard}} () +\item +void \mbox{\hyperlink{main_8h_ae886a24c554e48191a1ea668c43d2287}{on\+Initial\+State\+Init\+L\+AN}} () +\item +void \mbox{\hyperlink{main_8h_aed1aedfd8ec1c64e58ca24e5de9470b2}{ip\+\_\+ready\+\_\+config\+\_\+loaded\+\_\+connecting\+\_\+to\+\_\+broker}} () +\item +void \mbox{\hyperlink{main_8h_ab6cb5750ee8902ca29b51dd013bb74b9}{print\+Curent\+Lan\+Config}} () +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a9f5fbaf4b0a3b028eb31e734a5899428}{debug\+Serial}} +\item +\mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a962d0234b6d650699159b02bbb1ba659}{info\+Serial}} +\item +\mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a49f4668352e76de3b6187103927915f5}{error\+Serial}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{main_8h_a71a294b57014bc72835215290f1735fe}\label{main_8h_a71a294b57014bc72835215290f1735fe}} +\index{main.h@{main.h}!DHCP\_RETRY\_INTERVAL@{DHCP\_RETRY\_INTERVAL}} +\index{DHCP\_RETRY\_INTERVAL@{DHCP\_RETRY\_INTERVAL}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{DHCP\_RETRY\_INTERVAL}{DHCP\_RETRY\_INTERVAL}} +{\footnotesize\ttfamily \#define D\+H\+C\+P\+\_\+\+R\+E\+T\+R\+Y\+\_\+\+I\+N\+T\+E\+R\+V\+AL~60000} + + + +\doxysubsection{Enumeration Type Documentation} +\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473}\label{main_8h_a98b39d850b041da059cf5de62463a473}} +\index{main.h@{main.h}!lan\_status@{lan\_status}} +\index{lan\_status@{lan\_status}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{lan\_status}{lan\_status}} +{\footnotesize\ttfamily enum \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}}} + +\begin{DoxyEnumFields}{Enumerator} +\raisebox{\heightof{T}}[0pt][0pt]{\index{INITIAL\_STATE@{INITIAL\_STATE}!main.h@{main.h}}\index{main.h@{main.h}!INITIAL\_STATE@{INITIAL\_STATE}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f}\label{main_8h_a98b39d850b041da059cf5de62463a473a11ea6a01636f6011440e189d5ba5f34f}} +I\+N\+I\+T\+I\+A\+L\+\_\+\+S\+T\+A\+TE&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{AWAITING\_ADDRESS@{AWAITING\_ADDRESS}!main.h@{main.h}}\index{main.h@{main.h}!AWAITING\_ADDRESS@{AWAITING\_ADDRESS}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473aff1c53b962fb36482e2ef34640bd6eb9}\label{main_8h_a98b39d850b041da059cf5de62463a473aff1c53b962fb36482e2ef34640bd6eb9}} +A\+W\+A\+I\+T\+I\+N\+G\+\_\+\+A\+D\+D\+R\+E\+SS&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{HAVE\_IP\_ADDRESS@{HAVE\_IP\_ADDRESS}!main.h@{main.h}}\index{main.h@{main.h}!HAVE\_IP\_ADDRESS@{HAVE\_IP\_ADDRESS}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473ad5eee46b7b3980a2e3434ec7f605fa4a}\label{main_8h_a98b39d850b041da059cf5de62463a473ad5eee46b7b3980a2e3434ec7f605fa4a}} +H\+A\+V\+E\+\_\+\+I\+P\+\_\+\+A\+D\+D\+R\+E\+SS&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{LIBS\_INITIALIZED@{LIBS\_INITIALIZED}!main.h@{main.h}}\index{main.h@{main.h}!LIBS\_INITIALIZED@{LIBS\_INITIALIZED}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a3e7fa6277fa286ce64cfab4f9e6d77c2}\label{main_8h_a98b39d850b041da059cf5de62463a473a3e7fa6277fa286ce64cfab4f9e6d77c2}} +L\+I\+B\+S\+\_\+\+I\+N\+I\+T\+I\+A\+L\+I\+Z\+ED&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{IP\_READY\_CONFIG\_LOADED\_CONNECTING\_TO\_BROKER@{IP\_READY\_CONFIG\_LOADED\_CONNECTING\_TO\_BROKER}!main.h@{main.h}}\index{main.h@{main.h}!IP\_READY\_CONFIG\_LOADED\_CONNECTING\_TO\_BROKER@{IP\_READY\_CONFIG\_LOADED\_CONNECTING\_TO\_BROKER}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a3313433a81a25d16c72bb69503429b2d}\label{main_8h_a98b39d850b041da059cf5de62463a473a3313433a81a25d16c72bb69503429b2d}} +I\+P\+\_\+\+R\+E\+A\+D\+Y\+\_\+\+C\+O\+N\+F\+I\+G\+\_\+\+L\+O\+A\+D\+E\+D\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+N\+G\+\_\+\+T\+O\+\_\+\+B\+R\+O\+K\+ER&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{RETAINING\_COLLECTING@{RETAINING\_COLLECTING}!main.h@{main.h}}\index{main.h@{main.h}!RETAINING\_COLLECTING@{RETAINING\_COLLECTING}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473ade482451d4b1a70137e1590d5d9e0fe8}\label{main_8h_a98b39d850b041da059cf5de62463a473ade482451d4b1a70137e1590d5d9e0fe8}} +R\+E\+T\+A\+I\+N\+I\+N\+G\+\_\+\+C\+O\+L\+L\+E\+C\+T\+I\+NG&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{OPERATION@{OPERATION}!main.h@{main.h}}\index{main.h@{main.h}!OPERATION@{OPERATION}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473ae6c7d41b255eff353251fbec6fe839e4}\label{main_8h_a98b39d850b041da059cf5de62463a473ae6c7d41b255eff353251fbec6fe839e4}} +O\+P\+E\+R\+A\+T\+I\+ON&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{DO\_REINIT@{DO\_REINIT}!main.h@{main.h}}\index{main.h@{main.h}!DO\_REINIT@{DO\_REINIT}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a7b6874c83593674f516620bb883fff8b}\label{main_8h_a98b39d850b041da059cf5de62463a473a7b6874c83593674f516620bb883fff8b}} +D\+O\+\_\+\+R\+E\+I\+N\+IT&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{REINIT@{REINIT}!main.h@{main.h}}\index{main.h@{main.h}!REINIT@{REINIT}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a8d100cff0932a4777f300647958ca8ba}\label{main_8h_a98b39d850b041da059cf5de62463a473a8d100cff0932a4777f300647958ca8ba}} +R\+E\+I\+N\+IT&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{DO\_RECONNECT@{DO\_RECONNECT}!main.h@{main.h}}\index{main.h@{main.h}!DO\_RECONNECT@{DO\_RECONNECT}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473a9ea9900a7508394e36b0a3024397c285}\label{main_8h_a98b39d850b041da059cf5de62463a473a9ea9900a7508394e36b0a3024397c285}} +D\+O\+\_\+\+R\+E\+C\+O\+N\+N\+E\+CT&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{RECONNECT@{RECONNECT}!main.h@{main.h}}\index{main.h@{main.h}!RECONNECT@{RECONNECT}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473af0a5833d071a9c74f91cd1ef5063d2dc}\label{main_8h_a98b39d850b041da059cf5de62463a473af0a5833d071a9c74f91cd1ef5063d2dc}} +R\+E\+C\+O\+N\+N\+E\+CT&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{READ\_RE\_CONFIG@{READ\_RE\_CONFIG}!main.h@{main.h}}\index{main.h@{main.h}!READ\_RE\_CONFIG@{READ\_RE\_CONFIG}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473af3d074e791c337efc66c7e5bd378e946}\label{main_8h_a98b39d850b041da059cf5de62463a473af3d074e791c337efc66c7e5bd378e946}} +R\+E\+A\+D\+\_\+\+R\+E\+\_\+\+C\+O\+N\+F\+IG&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{DO\_NOTHING@{DO\_NOTHING}!main.h@{main.h}}\index{main.h@{main.h}!DO\_NOTHING@{DO\_NOTHING}}}\mbox{\Hypertarget{main_8h_a98b39d850b041da059cf5de62463a473aa3c06bc7e4d652a970cab72026c6fed1}\label{main_8h_a98b39d850b041da059cf5de62463a473aa3c06bc7e4d652a970cab72026c6fed1}} +D\+O\+\_\+\+N\+O\+T\+H\+I\+NG&\\ +\hline + +\end{DoxyEnumFields} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{main_8h_a82529a2f0678bfb6b0808935865ba42d}\label{main_8h_a82529a2f0678bfb6b0808935865ba42d}} +\index{main.h@{main.h}!applyConfig@{applyConfig}} +\index{applyConfig@{applyConfig}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{applyConfig()}{applyConfig()}} +{\footnotesize\ttfamily void apply\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_abbcbfa3bc0f5d93f1f1d84c3fdc23608}\label{main_8h_abbcbfa3bc0f5d93f1f1d84c3fdc23608}} +\index{main.h@{main.h}!Changed@{Changed}} +\index{Changed@{Changed}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{Changed()}{Changed()}} +{\footnotesize\ttfamily void Changed (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Device\+Address}]{addr, }\item[{float}]{current\+Temp }\end{DoxyParamCaption})} + +T\+O\+DO\+: Refactore using Items interface\mbox{\Hypertarget{main_8h_a84a345181b5379a4dc0eec58f348deb7}\label{main_8h_a84a345181b5379a4dc0eec58f348deb7}} +\index{main.h@{main.h}!cmdFunctionGet@{cmdFunctionGet}} +\index{cmdFunctionGet@{cmdFunctionGet}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionGet()}{cmdFunctionGet()}} +{\footnotesize\ttfamily void cmd\+Function\+Get (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a21fea6de1fe7b59684f3d18e3f4764d7}\label{main_8h_a21fea6de1fe7b59684f3d18e3f4764d7}} +\index{main.h@{main.h}!cmdFunctionHelp@{cmdFunctionHelp}} +\index{cmdFunctionHelp@{cmdFunctionHelp}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionHelp()}{cmdFunctionHelp()}} +{\footnotesize\ttfamily void cmd\+Function\+Help (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ab854d947e87c345f801a07f196e50a67}\label{main_8h_ab854d947e87c345f801a07f196e50a67}} +\index{main.h@{main.h}!cmdFunctionKill@{cmdFunctionKill}} +\index{cmdFunctionKill@{cmdFunctionKill}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionKill()}{cmdFunctionKill()}} +{\footnotesize\ttfamily void cmd\+Function\+Kill (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}\label{main_8h_a3e35733dfdfb0fc4a3c55ab4bfc34fc1}} +\index{main.h@{main.h}!cmdFunctionLoad@{cmdFunctionLoad}} +\index{cmdFunctionLoad@{cmdFunctionLoad}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionLoad()}{cmdFunctionLoad()}} +{\footnotesize\ttfamily void cmd\+Function\+Load (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a1ebb3f04dc34df941a4bf974f7ad9443}\label{main_8h_a1ebb3f04dc34df941a4bf974f7ad9443}} +\index{main.h@{main.h}!cmdFunctionReq@{cmdFunctionReq}} +\index{cmdFunctionReq@{cmdFunctionReq}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionReq()}{cmdFunctionReq()}} +{\footnotesize\ttfamily void cmd\+Function\+Req (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a66af021e24df0f8f82d9550cdb6bf865}\label{main_8h_a66af021e24df0f8f82d9550cdb6bf865}} +\index{main.h@{main.h}!cmdFunctionSave@{cmdFunctionSave}} +\index{cmdFunctionSave@{cmdFunctionSave}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionSave()}{cmdFunctionSave()}} +{\footnotesize\ttfamily void cmd\+Function\+Save (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aea9177f835f6f4ad83d8f71dc0a4db77}\label{main_8h_aea9177f835f6f4ad83d8f71dc0a4db77}} +\index{main.h@{main.h}!cmdFunctionSetMac@{cmdFunctionSetMac}} +\index{cmdFunctionSetMac@{cmdFunctionSetMac}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{cmdFunctionSetMac()}{cmdFunctionSetMac()}} +{\footnotesize\ttfamily void cmd\+Function\+Set\+Mac (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a4d31c49c58edcc310db78d660c434995}\label{main_8h_a4d31c49c58edcc310db78d660c434995}} +\index{main.h@{main.h}!disabledDisconnected@{disabledDisconnected}} +\index{disabledDisconnected@{disabledDisconnected}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{disabledDisconnected()}{disabledDisconnected()}} +{\footnotesize\ttfamily bool disabled\+Disconnected (\begin{DoxyParamCaption}\item[{const a\+Json\+Object $\ast$}]{thermo\+Extension\+Array, }\item[{int}]{thermo\+Latest\+Command }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ad146ac5b8d70c1a9a590ba4029c3548e}\label{main_8h_ad146ac5b8d70c1a9a590ba4029c3548e}} +\index{main.h@{main.h}!inputLoop@{inputLoop}} +\index{inputLoop@{inputLoop}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{inputLoop()}{inputLoop()}} +{\footnotesize\ttfamily void input\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a312b53e977f386af72ed576bca617fef}\label{main_8h_a312b53e977f386af72ed576bca617fef}} +\index{main.h@{main.h}!inputSetup@{inputSetup}} +\index{inputSetup@{inputSetup}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{inputSetup()}{inputSetup()}} +{\footnotesize\ttfamily void input\+Setup (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aed1aedfd8ec1c64e58ca24e5de9470b2}\label{main_8h_aed1aedfd8ec1c64e58ca24e5de9470b2}} +\index{main.h@{main.h}!ip\_ready\_config\_loaded\_connecting\_to\_broker@{ip\_ready\_config\_loaded\_connecting\_to\_broker}} +\index{ip\_ready\_config\_loaded\_connecting\_to\_broker@{ip\_ready\_config\_loaded\_connecting\_to\_broker}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{ip\_ready\_config\_loaded\_connecting\_to\_broker()}{ip\_ready\_config\_loaded\_connecting\_to\_broker()}} +{\footnotesize\ttfamily void ip\+\_\+ready\+\_\+config\+\_\+loaded\+\_\+connecting\+\_\+to\+\_\+broker (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a4ae13d2288d58c3ea8b731270fa798d3}\label{main_8h_a4ae13d2288d58c3ea8b731270fa798d3}} +\index{main.h@{main.h}!ipLoadFromFlash@{ipLoadFromFlash}} +\index{ipLoadFromFlash@{ipLoadFromFlash}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{ipLoadFromFlash()}{ipLoadFromFlash()}} +{\footnotesize\ttfamily int ip\+Load\+From\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{I\+P\+Address \&}]{ip }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a9b73380a4525361ce5634b890e83c8d2}\label{main_8h_a9b73380a4525361ce5634b890e83c8d2}} +\index{main.h@{main.h}!isNotRetainingStatus@{isNotRetainingStatus}} +\index{isNotRetainingStatus@{isNotRetainingStatus}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{isNotRetainingStatus()}{isNotRetainingStatus()}} +{\footnotesize\ttfamily bool is\+Not\+Retaining\+Status (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a31ee3eed42c2bdf317dca09913f89b27}\label{main_8h_a31ee3eed42c2bdf317dca09913f89b27}} +\index{main.h@{main.h}!IsThermostat@{IsThermostat}} +\index{IsThermostat@{IsThermostat}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{IsThermostat()}{IsThermostat()}} +{\footnotesize\ttfamily bool Is\+Thermostat (\begin{DoxyParamCaption}\item[{const a\+Json\+Object $\ast$}]{item }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ac90757e5d1212e1b230bb4db8924d310}\label{main_8h_ac90757e5d1212e1b230bb4db8924d310}} +\index{main.h@{main.h}!lanLoop@{lanLoop}} +\index{lanLoop@{lanLoop}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{lanLoop()}{lanLoop()}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} lan\+Loop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a92e24c034fb886c8155d50831bae5823}\label{main_8h_a92e24c034fb886c8155d50831bae5823}} +\index{main.h@{main.h}!loadConfigFromEEPROM@{loadConfigFromEEPROM}} +\index{loadConfigFromEEPROM@{loadConfigFromEEPROM}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{loadConfigFromEEPROM()}{loadConfigFromEEPROM()}} +{\footnotesize\ttfamily int load\+Config\+From\+E\+E\+P\+R\+OM (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a1369dd2c9e03f46af35b247a5e8548df}\label{main_8h_a1369dd2c9e03f46af35b247a5e8548df}} +\index{main.h@{main.h}!loadConfigFromHttp@{loadConfigFromHttp}} +\index{loadConfigFromHttp@{loadConfigFromHttp}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{loadConfigFromHttp()}{loadConfigFromHttp()}} +{\footnotesize\ttfamily \mbox{\hyperlink{main_8h_a98b39d850b041da059cf5de62463a473}{lan\+\_\+status}} load\+Config\+From\+Http (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt = {\ttfamily 0}, }\item[{char $\ast$$\ast$}]{args = {\ttfamily NULL} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a7f53de7620c6cfb1462d7c94b5f9814c}\label{main_8h_a7f53de7620c6cfb1462d7c94b5f9814c}} +\index{main.h@{main.h}!loadFlash@{loadFlash}} +\index{loadFlash@{loadFlash}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{loadFlash()}{loadFlash()}} +{\footnotesize\ttfamily int load\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{char $\ast$}]{str, }\item[{short}]{l = {\ttfamily \mbox{\hyperlink{options_8h_a62d02da8c36fd3ab5519e373620382d1}{M\+A\+X\+F\+L\+A\+S\+H\+S\+TR}}} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a840f282fdf876a88d5ff634fd74f10be}\label{main_8h_a840f282fdf876a88d5ff634fd74f10be}} +\index{main.h@{main.h}!loop\_main@{loop\_main}} +\index{loop\_main@{loop\_main}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{loop\_main()}{loop\_main()}} +{\footnotesize\ttfamily void loop\+\_\+main (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aa557ba1fef085fb9865ffd399c738dbf}\label{main_8h_aa557ba1fef085fb9865ffd399c738dbf}} +\index{main.h@{main.h}!modbusIdle@{modbusIdle}} +\index{modbusIdle@{modbusIdle}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{modbusIdle()}{modbusIdle()}} +{\footnotesize\ttfamily void modbus\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a6f06b273defaebb581fdf1adc8969f40}\label{main_8h_a6f06b273defaebb581fdf1adc8969f40}} +\index{main.h@{main.h}!mqttCallback@{mqttCallback}} +\index{mqttCallback@{mqttCallback}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{mqttCallback()}{mqttCallback()}} +{\footnotesize\ttfamily void mqtt\+Callback (\begin{DoxyParamCaption}\item[{char $\ast$}]{topic, }\item[{byte $\ast$}]{payload, }\item[{unsigned int}]{length }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aec955c97b23e5875d0fdb3c00e789903}\label{main_8h_aec955c97b23e5875d0fdb3c00e789903}} +\index{main.h@{main.h}!mqttConfigRequest@{mqttConfigRequest}} +\index{mqttConfigRequest@{mqttConfigRequest}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{mqttConfigRequest()}{mqttConfigRequest()}} +{\footnotesize\ttfamily int mqtt\+Config\+Request (\begin{DoxyParamCaption}\item[{int}]{arg\+\_\+cnt, }\item[{char $\ast$$\ast$}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ad60a48a0c509facdc6dc61df64d49fae}\label{main_8h_ad60a48a0c509facdc6dc61df64d49fae}} +\index{main.h@{main.h}!mqttConfigResp@{mqttConfigResp}} +\index{mqttConfigResp@{mqttConfigResp}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{mqttConfigResp()}{mqttConfigResp()}} +{\footnotesize\ttfamily int mqtt\+Config\+Resp (\begin{DoxyParamCaption}\item[{char $\ast$}]{as }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ae886a24c554e48191a1ea668c43d2287}\label{main_8h_ae886a24c554e48191a1ea668c43d2287}} +\index{main.h@{main.h}!onInitialStateInitLAN@{onInitialStateInitLAN}} +\index{onInitialStateInitLAN@{onInitialStateInitLAN}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{onInitialStateInitLAN()}{onInitialStateInitLAN()}} +{\footnotesize\ttfamily void on\+Initial\+State\+Init\+L\+AN (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a58e08cc15112818913fe96d75642265e}\label{main_8h_a58e08cc15112818913fe96d75642265e}} +\index{main.h@{main.h}!owIdle@{owIdle}} +\index{owIdle@{owIdle}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{owIdle()}{owIdle()}} +{\footnotesize\ttfamily void ow\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aec2ff7b5df24b3ae0cfe8d556088fd7c}\label{main_8h_aec2ff7b5df24b3ae0cfe8d556088fd7c}} +\index{main.h@{main.h}!pollingLoop@{pollingLoop}} +\index{pollingLoop@{pollingLoop}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{pollingLoop()}{pollingLoop()}} +{\footnotesize\ttfamily void polling\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a33b535e84f654e423bb627b25b7b3759}\label{main_8h_a33b535e84f654e423bb627b25b7b3759}} +\index{main.h@{main.h}!postTransmission@{postTransmission}} +\index{postTransmission@{postTransmission}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{postTransmission()}{postTransmission()}} +{\footnotesize\ttfamily void post\+Transmission (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a1c43d8a4afead0d0df29635242290377}\label{main_8h_a1c43d8a4afead0d0df29635242290377}} +\index{main.h@{main.h}!preTransmission@{preTransmission}} +\index{preTransmission@{preTransmission}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{preTransmission()}{preTransmission()}} +{\footnotesize\ttfamily void pre\+Transmission (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a2d4b5aa8fbc197c31397235607aeba13}\label{main_8h_a2d4b5aa8fbc197c31397235607aeba13}} +\index{main.h@{main.h}!printBool@{printBool}} +\index{printBool@{printBool}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{printBool()}{printBool()}} +{\footnotesize\ttfamily void print\+Bool (\begin{DoxyParamCaption}\item[{bool}]{arg }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ae22f686238cf5f09109b12f4b628ccea}\label{main_8h_ae22f686238cf5f09109b12f4b628ccea}} +\index{main.h@{main.h}!printConfigSummary@{printConfigSummary}} +\index{printConfigSummary@{printConfigSummary}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{printConfigSummary()}{printConfigSummary()}} +{\footnotesize\ttfamily void print\+Config\+Summary (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ab6cb5750ee8902ca29b51dd013bb74b9}\label{main_8h_ab6cb5750ee8902ca29b51dd013bb74b9}} +\index{main.h@{main.h}!printCurentLanConfig@{printCurentLanConfig}} +\index{printCurentLanConfig@{printCurentLanConfig}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{printCurentLanConfig()}{printCurentLanConfig()}} +{\footnotesize\ttfamily void print\+Curent\+Lan\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a1cff64c0263246441c972f03e6893714}\label{main_8h_a1cff64c0263246441c972f03e6893714}} +\index{main.h@{main.h}!printFirmwareVersionAndBuildOptions@{printFirmwareVersionAndBuildOptions}} +\index{printFirmwareVersionAndBuildOptions@{printFirmwareVersionAndBuildOptions}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{printFirmwareVersionAndBuildOptions()}{printFirmwareVersionAndBuildOptions()}} +{\footnotesize\ttfamily void print\+Firmware\+Version\+And\+Build\+Options (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_ad04c200b33c848aace1315bdf676201e}\label{main_8h_ad04c200b33c848aace1315bdf676201e}} +\index{main.h@{main.h}!printMACAddress@{printMACAddress}} +\index{printMACAddress@{printMACAddress}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{printMACAddress()}{printMACAddress()}} +{\footnotesize\ttfamily void print\+M\+A\+C\+Address (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a8a8de594b1a60fc6867b639d1c50a34b}\label{main_8h_a8a8de594b1a60fc6867b639d1c50a34b}} +\index{main.h@{main.h}!resetHard@{resetHard}} +\index{resetHard@{resetHard}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{resetHard()}{resetHard()}} +{\footnotesize\ttfamily void reset\+Hard (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a3d9b2a443a58bf0d3e28c174d2c43b8f}\label{main_8h_a3d9b2a443a58bf0d3e28c174d2c43b8f}} +\index{main.h@{main.h}!saveFlash@{saveFlash}} +\index{saveFlash@{saveFlash}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{saveFlash()}{saveFlash()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void save\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{char $\ast$}]{str }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a881f36fdc5bf71038ea93823437e7751}\label{main_8h_a881f36fdc5bf71038ea93823437e7751}} +\index{main.h@{main.h}!saveFlash@{saveFlash}} +\index{saveFlash@{saveFlash}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{saveFlash()}{saveFlash()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void save\+Flash (\begin{DoxyParamCaption}\item[{short}]{n, }\item[{I\+P\+Address \&}]{ip }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_aa34675c2dc6eb3d0744844d8e67e3af8}\label{main_8h_aa34675c2dc6eb3d0744844d8e67e3af8}} +\index{main.h@{main.h}!setup\_main@{setup\_main}} +\index{setup\_main@{setup\_main}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{setup\_main()}{setup\_main()}} +{\footnotesize\ttfamily void setup\+\_\+main (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_abec54b31996557c73a31054ce068c8fa}\label{main_8h_abec54b31996557c73a31054ce068c8fa}} +\index{main.h@{main.h}!setupCmdArduino@{setupCmdArduino}} +\index{setupCmdArduino@{setupCmdArduino}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{setupCmdArduino()}{setupCmdArduino()}} +{\footnotesize\ttfamily void setup\+Cmd\+Arduino (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a2186513a50a77b9bd9bb453d4584c5f8}\label{main_8h_a2186513a50a77b9bd9bb453d4584c5f8}} +\index{main.h@{main.h}!setupMacAddress@{setupMacAddress}} +\index{setupMacAddress@{setupMacAddress}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{setupMacAddress()}{setupMacAddress()}} +{\footnotesize\ttfamily void setup\+Mac\+Address (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a2d1cd6009a6e25d3605fee3e54065577}\label{main_8h_a2d1cd6009a6e25d3605fee3e54065577}} +\index{main.h@{main.h}!thermoLoop@{thermoLoop}} +\index{thermoLoop@{thermoLoop}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{thermoLoop()}{thermoLoop()}} +{\footnotesize\ttfamily void thermo\+Loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{main_8h_a73643474e211698e96d2a6ac69264b46}\label{main_8h_a73643474e211698e96d2a6ac69264b46}} +\index{main.h@{main.h}!thermoSetCurTemp@{thermoSetCurTemp}} +\index{thermoSetCurTemp@{thermoSetCurTemp}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{thermoSetCurTemp()}{thermoSetCurTemp()}} +{\footnotesize\ttfamily short thermo\+Set\+Cur\+Temp (\begin{DoxyParamCaption}\item[{char $\ast$}]{name, }\item[{float}]{t }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{main_8h_a9f5fbaf4b0a3b028eb31e734a5899428}\label{main_8h_a9f5fbaf4b0a3b028eb31e734a5899428}} +\index{main.h@{main.h}!debugSerial@{debugSerial}} +\index{debugSerial@{debugSerial}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{debugSerial}{debugSerial}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_streamlog}{Streamlog}} debug\+Serial\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{main_8h_a49f4668352e76de3b6187103927915f5}\label{main_8h_a49f4668352e76de3b6187103927915f5}} +\index{main.h@{main.h}!errorSerial@{errorSerial}} +\index{errorSerial@{errorSerial}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{errorSerial}{errorSerial}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_streamlog}{Streamlog}} error\+Serial\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{main_8h_a962d0234b6d650699159b02bbb1ba659}\label{main_8h_a962d0234b6d650699159b02bbb1ba659}} +\index{main.h@{main.h}!infoSerial@{infoSerial}} +\index{infoSerial@{infoSerial}!main.h@{main.h}} +\doxysubsubsection{\texorpdfstring{infoSerial}{infoSerial}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_streamlog}{Streamlog}} info\+Serial\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/options_8h.tex b/docs/latex/options_8h.tex new file mode 100644 index 0000000..7e8ae20 --- /dev/null +++ b/docs/latex/options_8h.tex @@ -0,0 +1,496 @@ +\hypertarget{options_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/options.h File Reference} +\label{options_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/options.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/options.h}} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{options_8h_a2ea96e90902d4db4f9db6d5f5e3298dd}{S\+Y\+S\+L\+O\+G\+\_\+\+L\+O\+C\+A\+L\+\_\+\+S\+O\+C\+K\+ET}}~514 +\item +\#define \mbox{\hyperlink{options_8h_a26b65d67289c43289cc3758c517c55ba}{A\+D\+A\+F\+R\+U\+I\+T\+\_\+\+L\+ED}} +\item +\#define \mbox{\hyperlink{options_8h_a6fa0e88c2f73f4e656831351dfdbf6e5}{C\+O\+N\+T\+R\+O\+L\+L\+ER}}~T\+M1809 +\item +\#define \mbox{\hyperlink{options_8h_adad67fe595ea440c8f8247ec2cddf070}{D\+A\+T\+A\+\_\+\+P\+IN}}~4 +\item +\#define \mbox{\hyperlink{options_8h_a826715579f0649bd271fb6702a175dbc}{O\+R\+D\+ER}}~B\+RG +\item +\#define \mbox{\hyperlink{options_8h_ab992e9e25bfa08a3572b6a2c4826a0dc}{T\+X\+Enable\+Pin}}~13 +\item +\#define \mbox{\hyperlink{options_8h_a5b3cf2242175107b05c2f2b43c55a44c}{E\+S\+P\+\_\+\+E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+ZE}}~2048 +\item +\#define \mbox{\hyperlink{options_8h_abb18d4c1c4db26508cb496f6467feb54}{A\+V\+R\+\_\+\+D\+M\+X\+O\+U\+T\+\_\+\+P\+IN}}~18 +\item +\#define \mbox{\hyperlink{options_8h_a6a65f02746daae5d420afda0cada7b78}{T\+\_\+\+A\+T\+T\+E\+M\+P\+TS}}~200 +\item +\#define \mbox{\hyperlink{options_8h_afae9befc056895af99a4ee18cd5abc8c}{I\+E\+T\+\_\+\+T\+E\+MP}}~0 +\item +\#define \mbox{\hyperlink{options_8h_a826349834da27a108e00c318c756710d}{I\+E\+T\+\_\+\+A\+T\+T\+E\+M\+P\+TS}}~1 +\item +\#define \mbox{\hyperlink{options_8h_af589ab4b091beec656a4529510d63937}{T\+H\+E\+R\+M\+O\+\_\+\+G\+I\+S\+T\+\_\+\+C\+E\+L\+S\+I\+US}}~1. +\item +\#define \mbox{\hyperlink{options_8h_af512e1ccc2f2a4fd372d0816603e961c}{T\+H\+E\+R\+M\+O\+\_\+\+O\+V\+E\+R\+H\+E\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US}}~38. +\item +\#define \mbox{\hyperlink{options_8h_a9532a64e88b10a5317afd57397f99d3c}{F\+M\+\_\+\+O\+V\+E\+R\+H\+E\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US}}~40. +\item +\#define \mbox{\hyperlink{options_8h_aaec32701bf16879bd71fdddc223959c6}{M\+I\+N\+\_\+\+V\+O\+L\+U\+ME}}~25 +\item +\#define \mbox{\hyperlink{options_8h_a10a53e1555887eda29a06279883b5407}{I\+N\+I\+T\+\_\+\+V\+O\+L\+U\+ME}}~40 +\item +\#define \mbox{\hyperlink{options_8h_a62d02da8c36fd3ab5519e373620382d1}{M\+A\+X\+F\+L\+A\+S\+H\+S\+TR}}~32 +\item +\#define \mbox{\hyperlink{options_8h_a83c7af577ab2df562e66ffcdc81fc1c0}{P\+W\+D\+F\+L\+A\+S\+H\+S\+TR}}~16 +\item +\#define \mbox{\hyperlink{options_8h_a084dba44a01332b67ab1ba8a599cde26}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}~\char`\"{}L\+H\+CF\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_a9fe94e22a13344d105a17cf07a5842cd}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+R\+E\+\_\+\+L\+E\+N\+G\+TH}}~4 +\item +\#define \mbox{\hyperlink{options_8h_aaae016d9ffd26640306394acbf5ca7c9}{O\+F\+F\+S\+E\+T\+\_\+\+M\+AC}}~0 +\item +\#define \mbox{\hyperlink{options_8h_a9bbde19ac58d0524f2ade893b617c004}{O\+F\+F\+S\+E\+T\+\_\+\+IP}}~\mbox{\hyperlink{options_8h_aaae016d9ffd26640306394acbf5ca7c9}{O\+F\+F\+S\+E\+T\+\_\+\+M\+AC}}+6 +\item +\#define \mbox{\hyperlink{options_8h_adbd439473b680ddc08bba5e1d980ed0f}{O\+F\+F\+S\+E\+T\+\_\+\+D\+NS}}~\mbox{\hyperlink{options_8h_a9bbde19ac58d0524f2ade893b617c004}{O\+F\+F\+S\+E\+T\+\_\+\+IP}}+4 +\item +\#define \mbox{\hyperlink{options_8h_ac025812b72523a2fb2cdaabaa8f589f3}{O\+F\+F\+S\+E\+T\+\_\+\+GW}}~\mbox{\hyperlink{options_8h_adbd439473b680ddc08bba5e1d980ed0f}{O\+F\+F\+S\+E\+T\+\_\+\+D\+NS}}+4 +\item +\#define \mbox{\hyperlink{options_8h_a9d6fc23740ab9f37272a3299949d3c11}{O\+F\+F\+S\+E\+T\+\_\+\+M\+A\+SK}}~\mbox{\hyperlink{options_8h_ac025812b72523a2fb2cdaabaa8f589f3}{O\+F\+F\+S\+E\+T\+\_\+\+GW}}+4 +\item +\#define \mbox{\hyperlink{options_8h_ab3dc28242a8c02f3f2e94730b5ecbfc0}{O\+F\+F\+S\+E\+T\+\_\+\+C\+O\+N\+F\+I\+G\+S\+E\+R\+V\+ER}}~\mbox{\hyperlink{options_8h_a9d6fc23740ab9f37272a3299949d3c11}{O\+F\+F\+S\+E\+T\+\_\+\+M\+A\+SK}}+4 +\item +\#define \mbox{\hyperlink{options_8h_abd247d3da250a7b87a77f24d0f6ca472}{O\+F\+F\+S\+E\+T\+\_\+\+M\+Q\+T\+T\+\_\+\+P\+WD}}~\mbox{\hyperlink{options_8h_ab3dc28242a8c02f3f2e94730b5ecbfc0}{O\+F\+F\+S\+E\+T\+\_\+\+C\+O\+N\+F\+I\+G\+S\+E\+R\+V\+ER}}+\mbox{\hyperlink{options_8h_a62d02da8c36fd3ab5519e373620382d1}{M\+A\+X\+F\+L\+A\+S\+H\+S\+TR}} +\item +\#define \mbox{\hyperlink{options_8h_a0d2901cf398ca7e59223684da79da151}{O\+F\+F\+S\+E\+T\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}~\mbox{\hyperlink{options_8h_abd247d3da250a7b87a77f24d0f6ca472}{O\+F\+F\+S\+E\+T\+\_\+\+M\+Q\+T\+T\+\_\+\+P\+WD}}+\mbox{\hyperlink{options_8h_a83c7af577ab2df562e66ffcdc81fc1c0}{P\+W\+D\+F\+L\+A\+S\+H\+S\+TR}} +\item +\#define \mbox{\hyperlink{options_8h_a003b1faba137828f090984d6ebc4817e}{E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned}}~\mbox{\hyperlink{options_8h_a0d2901cf398ca7e59223684da79da151}{O\+F\+F\+S\+E\+T\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}+\mbox{\hyperlink{options_8h_a9fe94e22a13344d105a17cf07a5842cd}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+R\+E\+\_\+\+L\+E\+N\+G\+TH}} +\item +\#define \mbox{\hyperlink{options_8h_a5d3ef55d19773db32ebd9956edcc8b8d}{E\+E\+P\+R\+O\+M\+\_\+offset\+J\+S\+ON}}~\mbox{\hyperlink{options_8h_a003b1faba137828f090984d6ebc4817e}{E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned}} + (4 -\/(\mbox{\hyperlink{options_8h_a003b1faba137828f090984d6ebc4817e}{E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned}} \& 3)) +\item +\#define \mbox{\hyperlink{options_8h_aff59a0ac9e9d04f17868c674c13fbfdf}{E\+E\+P\+R\+O\+M\+\_\+\+F\+I\+X\+\_\+\+P\+A\+R\+T\+\_\+\+L\+EN}}~\mbox{\hyperlink{options_8h_a5d3ef55d19773db32ebd9956edcc8b8d}{E\+E\+P\+R\+O\+M\+\_\+offset\+J\+S\+ON}}-\/\mbox{\hyperlink{options_8h_aaae016d9ffd26640306394acbf5ca7c9}{O\+F\+F\+S\+E\+T\+\_\+\+M\+AC}} +\item +\#define \mbox{\hyperlink{options_8h_a67828bcb6f0269a0e14ccb7b3dd8bc36}{I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+I\+N\+P\+UT}}~15 +\item +\#define \mbox{\hyperlink{options_8h_acfa30965b93565c71cdeb70b86d08560}{I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+S\+E\+N\+S\+OR}}~5000 +\item +\#define \mbox{\hyperlink{options_8h_ad122bb80520d348463d54eebac2ba4a5}{I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+M\+O\+D\+B\+US}}~2000 +\item +\#define \mbox{\hyperlink{options_8h_ad644e892aeb35da4ec2d602aa2fffb59}{I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+P\+O\+L\+L\+I\+NG}}~100 +\item +\#define \mbox{\hyperlink{options_8h_a265b8a391d46da3dd31693f510d02ad6}{T\+H\+E\+R\+M\+O\+S\+T\+A\+T\+\_\+\+C\+H\+E\+C\+K\+\_\+\+P\+E\+R\+I\+OD}}~30000 +\item +\#define \mbox{\hyperlink{options_8h_a2993ae74a7ab13c7de09ffcc8b35e4fc}{O\+W\+\_\+\+U\+P\+D\+A\+T\+E\+\_\+\+I\+N\+T\+E\+R\+V\+AL}}~5000 +\item +\#define \mbox{\hyperlink{options_8h_a0c85c2202ae5366e8a3b07c2cd90998d}{M\+O\+D\+B\+U\+S\+\_\+\+S\+E\+R\+I\+A\+L\+\_\+\+B\+A\+UD}}~9600 +\item +\#define \mbox{\hyperlink{options_8h_a3e6232d55dfd349c20e087bd7769c5ee}{M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+M\+M\+E\+R\+\_\+\+P\+A\+R\+AM}}~S\+E\+R\+I\+A\+L\+\_\+8\+N1 +\item +\#define \mbox{\hyperlink{options_8h_a704a7ddbb1bdbf424a389aaa9210c931}{dim\+Par}}~\mbox{\hyperlink{options_8h_a3e6232d55dfd349c20e087bd7769c5ee}{M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+M\+M\+E\+R\+\_\+\+P\+A\+R\+AM}} +\item +\#define \mbox{\hyperlink{options_8h_ab3adab6384decdb29117063df1a48ca7}{fm\+Par}}~S\+E\+R\+I\+A\+L\+\_\+8\+N1 +\item +\#define \mbox{\hyperlink{options_8h_a94df10e7efe7613d074c105099c7fd0e}{S\+E\+R\+I\+A\+L\+\_\+\+B\+A\+UD}}~115200 +\item +\#define \mbox{\hyperlink{options_8h_abe0b358ba1d45a2a0aff0771182d4cb9}{D\+E\+F\+A\+U\+L\+T\+\_\+\+F\+I\+R\+M\+W\+A\+R\+E\+\_\+\+M\+AC}}~\{0x\+DE, 0x\+AD, 0x\+BE, 0x\+EF, 0x\+FE, 0x\+FF\} +\item +\#define \mbox{\hyperlink{options_8h_a979988f1e12c581103bd7dcd41be2a4a}{C\+O\+N\+F\+I\+G\+\_\+\+S\+E\+R\+V\+ER}}~\char`\"{}lazyhome.\+ru\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_adc36ff54aa68faae86f3aacd10a05f30}{H\+O\+M\+E\+T\+O\+P\+IC}}~\char`\"{}myhome\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_ad41dc04ab9a3863ee0d70153e844c92a}{O\+U\+T\+T\+O\+P\+IC}}~\char`\"{}s\+\_\+out\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_a351952e3a94b04d5f782d2cb69ea4209}{C\+M\+D\+T\+O\+P\+IC}}~\char`\"{}\$command\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_a05897083928b56e953ae17a19bf42ecc}{I\+N\+T\+O\+P\+IC}}~\char`\"{}in\char`\"{} +\item +\#define \mbox{\hyperlink{options_8h_a86d2121e2224195f5d97811335df6cae}{M\+Q\+T\+T\+\_\+\+S\+U\+B\+J\+E\+C\+T\+\_\+\+L\+E\+N\+G\+TH}}~20 +\item +\#define \mbox{\hyperlink{options_8h_a237252f3f1f9d37812d9ec005e3a3d6a}{M\+Q\+T\+T\+\_\+\+T\+O\+P\+I\+C\+\_\+\+L\+E\+N\+G\+TH}}~64 +\item +\#define \mbox{\hyperlink{options_8h_ad54ae9a16c5077af731dfeed78b700c8}{\+\_\+dmxin}} +\item +\#define \mbox{\hyperlink{options_8h_a894c0d8dfff112dcfe75b67a128c5562}{\+\_\+dmxout}} +\item +\#define \mbox{\hyperlink{options_8h_ad5287891697598444dfa4597895b4ac6}{\+\_\+owire}} +\item +\#define \mbox{\hyperlink{options_8h_a3c1dfe0b98e8a89fc314fd5880f67652}{\+\_\+modbus}} +\item +\#define \mbox{\hyperlink{options_8h_ab6d9c8b27dcdac1da3fb43eed5dd893c}{L\+A\+N\+\_\+\+I\+N\+I\+T\+\_\+\+D\+E\+L\+AY}}~500 +\item +\#define \mbox{\hyperlink{options_8h_ad04a0305cd8c165e0c8ae2aba5cf9f22}{D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+C\+\_\+\+S\+T\+EP}}~5 +\item +\#define \mbox{\hyperlink{options_8h_a1c0469867d0a25f440986acb7861fc7a}{D\+H\+T\+\_\+\+P\+O\+L\+L\+\_\+\+D\+E\+L\+A\+Y\+\_\+\+D\+E\+F\+A\+U\+LT}}~15000 +\item +\#define \mbox{\hyperlink{options_8h_a9377a9603fb9295926b3292cd0506209}{U\+P\+T\+I\+M\+E\+\_\+\+P\+O\+L\+L\+\_\+\+D\+E\+L\+A\+Y\+\_\+\+D\+E\+F\+A\+U\+LT}}~30000 +\item +\#define \mbox{\hyperlink{options_8h_ac9eefc1c2dc6cc5bf105a5acd40787ad}{D\+M\+X\+\_\+\+S\+M\+O\+O\+T\+H\+\_\+\+D\+E\+L\+AY}}~10 +\item +\#define \mbox{\hyperlink{options_8h_ac24cce505133ea92266546bf33a6d713}{debug\+Serial\+Port}}~Serial +\item +\#define \mbox{\hyperlink{options_8h_a7658e9cd3f6887dd4e5cf06b3d865b52}{W5100\+\_\+\+E\+T\+H\+E\+R\+N\+E\+T\+\_\+\+S\+H\+I\+E\+LD}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{options_8h_ad54ae9a16c5077af731dfeed78b700c8}\label{options_8h_ad54ae9a16c5077af731dfeed78b700c8}} +\index{options.h@{options.h}!\_dmxin@{\_dmxin}} +\index{\_dmxin@{\_dmxin}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{\_dmxin}{\_dmxin}} +{\footnotesize\ttfamily \#define \+\_\+dmxin} + +\mbox{\Hypertarget{options_8h_a894c0d8dfff112dcfe75b67a128c5562}\label{options_8h_a894c0d8dfff112dcfe75b67a128c5562}} +\index{options.h@{options.h}!\_dmxout@{\_dmxout}} +\index{\_dmxout@{\_dmxout}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{\_dmxout}{\_dmxout}} +{\footnotesize\ttfamily \#define \+\_\+dmxout} + +\mbox{\Hypertarget{options_8h_a3c1dfe0b98e8a89fc314fd5880f67652}\label{options_8h_a3c1dfe0b98e8a89fc314fd5880f67652}} +\index{options.h@{options.h}!\_modbus@{\_modbus}} +\index{\_modbus@{\_modbus}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{\_modbus}{\_modbus}} +{\footnotesize\ttfamily \#define \+\_\+modbus} + +\mbox{\Hypertarget{options_8h_ad5287891697598444dfa4597895b4ac6}\label{options_8h_ad5287891697598444dfa4597895b4ac6}} +\index{options.h@{options.h}!\_owire@{\_owire}} +\index{\_owire@{\_owire}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{\_owire}{\_owire}} +{\footnotesize\ttfamily \#define \+\_\+owire} + +\mbox{\Hypertarget{options_8h_a26b65d67289c43289cc3758c517c55ba}\label{options_8h_a26b65d67289c43289cc3758c517c55ba}} +\index{options.h@{options.h}!ADAFRUIT\_LED@{ADAFRUIT\_LED}} +\index{ADAFRUIT\_LED@{ADAFRUIT\_LED}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{ADAFRUIT\_LED}{ADAFRUIT\_LED}} +{\footnotesize\ttfamily \#define A\+D\+A\+F\+R\+U\+I\+T\+\_\+\+L\+ED} + +\mbox{\Hypertarget{options_8h_abb18d4c1c4db26508cb496f6467feb54}\label{options_8h_abb18d4c1c4db26508cb496f6467feb54}} +\index{options.h@{options.h}!AVR\_DMXOUT\_PIN@{AVR\_DMXOUT\_PIN}} +\index{AVR\_DMXOUT\_PIN@{AVR\_DMXOUT\_PIN}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{AVR\_DMXOUT\_PIN}{AVR\_DMXOUT\_PIN}} +{\footnotesize\ttfamily \#define A\+V\+R\+\_\+\+D\+M\+X\+O\+U\+T\+\_\+\+P\+IN~18} + +\mbox{\Hypertarget{options_8h_a351952e3a94b04d5f782d2cb69ea4209}\label{options_8h_a351952e3a94b04d5f782d2cb69ea4209}} +\index{options.h@{options.h}!CMDTOPIC@{CMDTOPIC}} +\index{CMDTOPIC@{CMDTOPIC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{CMDTOPIC}{CMDTOPIC}} +{\footnotesize\ttfamily \#define C\+M\+D\+T\+O\+P\+IC~\char`\"{}\$command\char`\"{}} + +\mbox{\Hypertarget{options_8h_a979988f1e12c581103bd7dcd41be2a4a}\label{options_8h_a979988f1e12c581103bd7dcd41be2a4a}} +\index{options.h@{options.h}!CONFIG\_SERVER@{CONFIG\_SERVER}} +\index{CONFIG\_SERVER@{CONFIG\_SERVER}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{CONFIG\_SERVER}{CONFIG\_SERVER}} +{\footnotesize\ttfamily \#define C\+O\+N\+F\+I\+G\+\_\+\+S\+E\+R\+V\+ER~\char`\"{}lazyhome.\+ru\char`\"{}} + +\mbox{\Hypertarget{options_8h_a6fa0e88c2f73f4e656831351dfdbf6e5}\label{options_8h_a6fa0e88c2f73f4e656831351dfdbf6e5}} +\index{options.h@{options.h}!CONTROLLER@{CONTROLLER}} +\index{CONTROLLER@{CONTROLLER}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{CONTROLLER}{CONTROLLER}} +{\footnotesize\ttfamily \#define C\+O\+N\+T\+R\+O\+L\+L\+ER~T\+M1809} + +\mbox{\Hypertarget{options_8h_adad67fe595ea440c8f8247ec2cddf070}\label{options_8h_adad67fe595ea440c8f8247ec2cddf070}} +\index{options.h@{options.h}!DATA\_PIN@{DATA\_PIN}} +\index{DATA\_PIN@{DATA\_PIN}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{DATA\_PIN}{DATA\_PIN}} +{\footnotesize\ttfamily \#define D\+A\+T\+A\+\_\+\+P\+IN~4} + +\mbox{\Hypertarget{options_8h_ac24cce505133ea92266546bf33a6d713}\label{options_8h_ac24cce505133ea92266546bf33a6d713}} +\index{options.h@{options.h}!debugSerialPort@{debugSerialPort}} +\index{debugSerialPort@{debugSerialPort}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{debugSerialPort}{debugSerialPort}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_streamlog}{Streamlog}} \mbox{\hyperlink{main_8h_a962d0234b6d650699159b02bbb1ba659}{info\+Serial}} \& debug\+Serial\+Port~Serial} + +\mbox{\Hypertarget{options_8h_abe0b358ba1d45a2a0aff0771182d4cb9}\label{options_8h_abe0b358ba1d45a2a0aff0771182d4cb9}} +\index{options.h@{options.h}!DEFAULT\_FIRMWARE\_MAC@{DEFAULT\_FIRMWARE\_MAC}} +\index{DEFAULT\_FIRMWARE\_MAC@{DEFAULT\_FIRMWARE\_MAC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{DEFAULT\_FIRMWARE\_MAC}{DEFAULT\_FIRMWARE\_MAC}} +{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+F\+I\+R\+M\+W\+A\+R\+E\+\_\+\+M\+AC~\{0x\+DE, 0x\+AD, 0x\+BE, 0x\+EF, 0x\+FE, 0x\+FF\}} + +\mbox{\Hypertarget{options_8h_ad04a0305cd8c165e0c8ae2aba5cf9f22}\label{options_8h_ad04a0305cd8c165e0c8ae2aba5cf9f22}} +\index{options.h@{options.h}!DEFAULT\_INC\_STEP@{DEFAULT\_INC\_STEP}} +\index{DEFAULT\_INC\_STEP@{DEFAULT\_INC\_STEP}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{DEFAULT\_INC\_STEP}{DEFAULT\_INC\_STEP}} +{\footnotesize\ttfamily \#define D\+E\+F\+A\+U\+L\+T\+\_\+\+I\+N\+C\+\_\+\+S\+T\+EP~5} + +\mbox{\Hypertarget{options_8h_a1c0469867d0a25f440986acb7861fc7a}\label{options_8h_a1c0469867d0a25f440986acb7861fc7a}} +\index{options.h@{options.h}!DHT\_POLL\_DELAY\_DEFAULT@{DHT\_POLL\_DELAY\_DEFAULT}} +\index{DHT\_POLL\_DELAY\_DEFAULT@{DHT\_POLL\_DELAY\_DEFAULT}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{DHT\_POLL\_DELAY\_DEFAULT}{DHT\_POLL\_DELAY\_DEFAULT}} +{\footnotesize\ttfamily \#define D\+H\+T\+\_\+\+P\+O\+L\+L\+\_\+\+D\+E\+L\+A\+Y\+\_\+\+D\+E\+F\+A\+U\+LT~15000} + +\mbox{\Hypertarget{options_8h_a704a7ddbb1bdbf424a389aaa9210c931}\label{options_8h_a704a7ddbb1bdbf424a389aaa9210c931}} +\index{options.h@{options.h}!dimPar@{dimPar}} +\index{dimPar@{dimPar}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{dimPar}{dimPar}} +{\footnotesize\ttfamily \#define dim\+Par~\mbox{\hyperlink{options_8h_a3e6232d55dfd349c20e087bd7769c5ee}{M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+M\+M\+E\+R\+\_\+\+P\+A\+R\+AM}}} + +\mbox{\Hypertarget{options_8h_ac9eefc1c2dc6cc5bf105a5acd40787ad}\label{options_8h_ac9eefc1c2dc6cc5bf105a5acd40787ad}} +\index{options.h@{options.h}!DMX\_SMOOTH\_DELAY@{DMX\_SMOOTH\_DELAY}} +\index{DMX\_SMOOTH\_DELAY@{DMX\_SMOOTH\_DELAY}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{DMX\_SMOOTH\_DELAY}{DMX\_SMOOTH\_DELAY}} +{\footnotesize\ttfamily \#define D\+M\+X\+\_\+\+S\+M\+O\+O\+T\+H\+\_\+\+D\+E\+L\+AY~10} + +\mbox{\Hypertarget{options_8h_aff59a0ac9e9d04f17868c674c13fbfdf}\label{options_8h_aff59a0ac9e9d04f17868c674c13fbfdf}} +\index{options.h@{options.h}!EEPROM\_FIX\_PART\_LEN@{EEPROM\_FIX\_PART\_LEN}} +\index{EEPROM\_FIX\_PART\_LEN@{EEPROM\_FIX\_PART\_LEN}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_FIX\_PART\_LEN}{EEPROM\_FIX\_PART\_LEN}} +{\footnotesize\ttfamily \#define E\+E\+P\+R\+O\+M\+\_\+\+F\+I\+X\+\_\+\+P\+A\+R\+T\+\_\+\+L\+EN~\mbox{\hyperlink{options_8h_a5d3ef55d19773db32ebd9956edcc8b8d}{E\+E\+P\+R\+O\+M\+\_\+offset\+J\+S\+ON}}-\/\mbox{\hyperlink{options_8h_aaae016d9ffd26640306394acbf5ca7c9}{O\+F\+F\+S\+E\+T\+\_\+\+M\+AC}}} + +\mbox{\Hypertarget{options_8h_a003b1faba137828f090984d6ebc4817e}\label{options_8h_a003b1faba137828f090984d6ebc4817e}} +\index{options.h@{options.h}!EEPROM\_offset\_NotAlligned@{EEPROM\_offset\_NotAlligned}} +\index{EEPROM\_offset\_NotAlligned@{EEPROM\_offset\_NotAlligned}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_offset\_NotAlligned}{EEPROM\_offset\_NotAlligned}} +{\footnotesize\ttfamily \#define E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned~\mbox{\hyperlink{options_8h_a0d2901cf398ca7e59223684da79da151}{O\+F\+F\+S\+E\+T\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}+\mbox{\hyperlink{options_8h_a9fe94e22a13344d105a17cf07a5842cd}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+R\+E\+\_\+\+L\+E\+N\+G\+TH}}} + +\mbox{\Hypertarget{options_8h_a5d3ef55d19773db32ebd9956edcc8b8d}\label{options_8h_a5d3ef55d19773db32ebd9956edcc8b8d}} +\index{options.h@{options.h}!EEPROM\_offsetJSON@{EEPROM\_offsetJSON}} +\index{EEPROM\_offsetJSON@{EEPROM\_offsetJSON}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_offsetJSON}{EEPROM\_offsetJSON}} +{\footnotesize\ttfamily \#define E\+E\+P\+R\+O\+M\+\_\+offset\+J\+S\+ON~\mbox{\hyperlink{options_8h_a003b1faba137828f090984d6ebc4817e}{E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned}} + (4 -\/(\mbox{\hyperlink{options_8h_a003b1faba137828f090984d6ebc4817e}{E\+E\+P\+R\+O\+M\+\_\+offset\+\_\+\+Not\+Alligned}} \& 3))} + +\mbox{\Hypertarget{options_8h_a084dba44a01332b67ab1ba8a599cde26}\label{options_8h_a084dba44a01332b67ab1ba8a599cde26}} +\index{options.h@{options.h}!EEPROM\_SIGNATURE@{EEPROM\_SIGNATURE}} +\index{EEPROM\_SIGNATURE@{EEPROM\_SIGNATURE}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_SIGNATURE}{EEPROM\_SIGNATURE}} +{\footnotesize\ttfamily \#define E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE~\char`\"{}L\+H\+CF\char`\"{}} + +\mbox{\Hypertarget{options_8h_a9fe94e22a13344d105a17cf07a5842cd}\label{options_8h_a9fe94e22a13344d105a17cf07a5842cd}} +\index{options.h@{options.h}!EEPROM\_SIGNATURE\_LENGTH@{EEPROM\_SIGNATURE\_LENGTH}} +\index{EEPROM\_SIGNATURE\_LENGTH@{EEPROM\_SIGNATURE\_LENGTH}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_SIGNATURE\_LENGTH}{EEPROM\_SIGNATURE\_LENGTH}} +{\footnotesize\ttfamily \#define E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+R\+E\+\_\+\+L\+E\+N\+G\+TH~4} + +\mbox{\Hypertarget{options_8h_a5b3cf2242175107b05c2f2b43c55a44c}\label{options_8h_a5b3cf2242175107b05c2f2b43c55a44c}} +\index{options.h@{options.h}!ESP\_EEPROM\_SIZE@{ESP\_EEPROM\_SIZE}} +\index{ESP\_EEPROM\_SIZE@{ESP\_EEPROM\_SIZE}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{ESP\_EEPROM\_SIZE}{ESP\_EEPROM\_SIZE}} +{\footnotesize\ttfamily \#define E\+S\+P\+\_\+\+E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+ZE~2048} + +\mbox{\Hypertarget{options_8h_a9532a64e88b10a5317afd57397f99d3c}\label{options_8h_a9532a64e88b10a5317afd57397f99d3c}} +\index{options.h@{options.h}!FM\_OVERHEAT\_CELSIUS@{FM\_OVERHEAT\_CELSIUS}} +\index{FM\_OVERHEAT\_CELSIUS@{FM\_OVERHEAT\_CELSIUS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{FM\_OVERHEAT\_CELSIUS}{FM\_OVERHEAT\_CELSIUS}} +{\footnotesize\ttfamily \#define F\+M\+\_\+\+O\+V\+E\+R\+H\+E\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US~40.} + +\mbox{\Hypertarget{options_8h_ab3adab6384decdb29117063df1a48ca7}\label{options_8h_ab3adab6384decdb29117063df1a48ca7}} +\index{options.h@{options.h}!fmPar@{fmPar}} +\index{fmPar@{fmPar}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{fmPar}{fmPar}} +{\footnotesize\ttfamily \#define fm\+Par~S\+E\+R\+I\+A\+L\+\_\+8\+N1} + +\mbox{\Hypertarget{options_8h_adc36ff54aa68faae86f3aacd10a05f30}\label{options_8h_adc36ff54aa68faae86f3aacd10a05f30}} +\index{options.h@{options.h}!HOMETOPIC@{HOMETOPIC}} +\index{HOMETOPIC@{HOMETOPIC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{HOMETOPIC}{HOMETOPIC}} +{\footnotesize\ttfamily \#define H\+O\+M\+E\+T\+O\+P\+IC~\char`\"{}myhome\char`\"{}} + +\mbox{\Hypertarget{options_8h_a826349834da27a108e00c318c756710d}\label{options_8h_a826349834da27a108e00c318c756710d}} +\index{options.h@{options.h}!IET\_ATTEMPTS@{IET\_ATTEMPTS}} +\index{IET\_ATTEMPTS@{IET\_ATTEMPTS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{IET\_ATTEMPTS}{IET\_ATTEMPTS}} +{\footnotesize\ttfamily \#define I\+E\+T\+\_\+\+A\+T\+T\+E\+M\+P\+TS~1} + +\mbox{\Hypertarget{options_8h_afae9befc056895af99a4ee18cd5abc8c}\label{options_8h_afae9befc056895af99a4ee18cd5abc8c}} +\index{options.h@{options.h}!IET\_TEMP@{IET\_TEMP}} +\index{IET\_TEMP@{IET\_TEMP}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{IET\_TEMP}{IET\_TEMP}} +{\footnotesize\ttfamily \#define I\+E\+T\+\_\+\+T\+E\+MP~0} + +\mbox{\Hypertarget{options_8h_a10a53e1555887eda29a06279883b5407}\label{options_8h_a10a53e1555887eda29a06279883b5407}} +\index{options.h@{options.h}!INIT\_VOLUME@{INIT\_VOLUME}} +\index{INIT\_VOLUME@{INIT\_VOLUME}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INIT\_VOLUME}{INIT\_VOLUME}} +{\footnotesize\ttfamily \#define I\+N\+I\+T\+\_\+\+V\+O\+L\+U\+ME~40} + +\mbox{\Hypertarget{options_8h_a67828bcb6f0269a0e14ccb7b3dd8bc36}\label{options_8h_a67828bcb6f0269a0e14ccb7b3dd8bc36}} +\index{options.h@{options.h}!INTERVAL\_CHECK\_INPUT@{INTERVAL\_CHECK\_INPUT}} +\index{INTERVAL\_CHECK\_INPUT@{INTERVAL\_CHECK\_INPUT}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INTERVAL\_CHECK\_INPUT}{INTERVAL\_CHECK\_INPUT}} +{\footnotesize\ttfamily \#define I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+I\+N\+P\+UT~15} + +\mbox{\Hypertarget{options_8h_ad122bb80520d348463d54eebac2ba4a5}\label{options_8h_ad122bb80520d348463d54eebac2ba4a5}} +\index{options.h@{options.h}!INTERVAL\_CHECK\_MODBUS@{INTERVAL\_CHECK\_MODBUS}} +\index{INTERVAL\_CHECK\_MODBUS@{INTERVAL\_CHECK\_MODBUS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INTERVAL\_CHECK\_MODBUS}{INTERVAL\_CHECK\_MODBUS}} +{\footnotesize\ttfamily \#define I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+M\+O\+D\+B\+US~2000} + +\mbox{\Hypertarget{options_8h_acfa30965b93565c71cdeb70b86d08560}\label{options_8h_acfa30965b93565c71cdeb70b86d08560}} +\index{options.h@{options.h}!INTERVAL\_CHECK\_SENSOR@{INTERVAL\_CHECK\_SENSOR}} +\index{INTERVAL\_CHECK\_SENSOR@{INTERVAL\_CHECK\_SENSOR}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INTERVAL\_CHECK\_SENSOR}{INTERVAL\_CHECK\_SENSOR}} +{\footnotesize\ttfamily \#define I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+C\+H\+E\+C\+K\+\_\+\+S\+E\+N\+S\+OR~5000} + +\mbox{\Hypertarget{options_8h_ad644e892aeb35da4ec2d602aa2fffb59}\label{options_8h_ad644e892aeb35da4ec2d602aa2fffb59}} +\index{options.h@{options.h}!INTERVAL\_POLLING@{INTERVAL\_POLLING}} +\index{INTERVAL\_POLLING@{INTERVAL\_POLLING}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INTERVAL\_POLLING}{INTERVAL\_POLLING}} +{\footnotesize\ttfamily \#define I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+P\+O\+L\+L\+I\+NG~100} + +\mbox{\Hypertarget{options_8h_a05897083928b56e953ae17a19bf42ecc}\label{options_8h_a05897083928b56e953ae17a19bf42ecc}} +\index{options.h@{options.h}!INTOPIC@{INTOPIC}} +\index{INTOPIC@{INTOPIC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{INTOPIC}{INTOPIC}} +{\footnotesize\ttfamily \#define I\+N\+T\+O\+P\+IC~\char`\"{}in\char`\"{}} + +\mbox{\Hypertarget{options_8h_ab6d9c8b27dcdac1da3fb43eed5dd893c}\label{options_8h_ab6d9c8b27dcdac1da3fb43eed5dd893c}} +\index{options.h@{options.h}!LAN\_INIT\_DELAY@{LAN\_INIT\_DELAY}} +\index{LAN\_INIT\_DELAY@{LAN\_INIT\_DELAY}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{LAN\_INIT\_DELAY}{LAN\_INIT\_DELAY}} +{\footnotesize\ttfamily \#define L\+A\+N\+\_\+\+I\+N\+I\+T\+\_\+\+D\+E\+L\+AY~500} + +\mbox{\Hypertarget{options_8h_a62d02da8c36fd3ab5519e373620382d1}\label{options_8h_a62d02da8c36fd3ab5519e373620382d1}} +\index{options.h@{options.h}!MAXFLASHSTR@{MAXFLASHSTR}} +\index{MAXFLASHSTR@{MAXFLASHSTR}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MAXFLASHSTR}{MAXFLASHSTR}} +{\footnotesize\ttfamily \#define M\+A\+X\+F\+L\+A\+S\+H\+S\+TR~32} + +\mbox{\Hypertarget{options_8h_aaec32701bf16879bd71fdddc223959c6}\label{options_8h_aaec32701bf16879bd71fdddc223959c6}} +\index{options.h@{options.h}!MIN\_VOLUME@{MIN\_VOLUME}} +\index{MIN\_VOLUME@{MIN\_VOLUME}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MIN\_VOLUME}{MIN\_VOLUME}} +{\footnotesize\ttfamily \#define M\+I\+N\+\_\+\+V\+O\+L\+U\+ME~25} + +\mbox{\Hypertarget{options_8h_a3e6232d55dfd349c20e087bd7769c5ee}\label{options_8h_a3e6232d55dfd349c20e087bd7769c5ee}} +\index{options.h@{options.h}!MODBUS\_DIMMER\_PARAM@{MODBUS\_DIMMER\_PARAM}} +\index{MODBUS\_DIMMER\_PARAM@{MODBUS\_DIMMER\_PARAM}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_DIMMER\_PARAM}{MODBUS\_DIMMER\_PARAM}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+D\+I\+M\+M\+E\+R\+\_\+\+P\+A\+R\+AM~S\+E\+R\+I\+A\+L\+\_\+8\+N1} + +\mbox{\Hypertarget{options_8h_a0c85c2202ae5366e8a3b07c2cd90998d}\label{options_8h_a0c85c2202ae5366e8a3b07c2cd90998d}} +\index{options.h@{options.h}!MODBUS\_SERIAL\_BAUD@{MODBUS\_SERIAL\_BAUD}} +\index{MODBUS\_SERIAL\_BAUD@{MODBUS\_SERIAL\_BAUD}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MODBUS\_SERIAL\_BAUD}{MODBUS\_SERIAL\_BAUD}} +{\footnotesize\ttfamily \#define M\+O\+D\+B\+U\+S\+\_\+\+S\+E\+R\+I\+A\+L\+\_\+\+B\+A\+UD~9600} + +\mbox{\Hypertarget{options_8h_a86d2121e2224195f5d97811335df6cae}\label{options_8h_a86d2121e2224195f5d97811335df6cae}} +\index{options.h@{options.h}!MQTT\_SUBJECT\_LENGTH@{MQTT\_SUBJECT\_LENGTH}} +\index{MQTT\_SUBJECT\_LENGTH@{MQTT\_SUBJECT\_LENGTH}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MQTT\_SUBJECT\_LENGTH}{MQTT\_SUBJECT\_LENGTH}} +{\footnotesize\ttfamily \#define M\+Q\+T\+T\+\_\+\+S\+U\+B\+J\+E\+C\+T\+\_\+\+L\+E\+N\+G\+TH~20} + +\mbox{\Hypertarget{options_8h_a237252f3f1f9d37812d9ec005e3a3d6a}\label{options_8h_a237252f3f1f9d37812d9ec005e3a3d6a}} +\index{options.h@{options.h}!MQTT\_TOPIC\_LENGTH@{MQTT\_TOPIC\_LENGTH}} +\index{MQTT\_TOPIC\_LENGTH@{MQTT\_TOPIC\_LENGTH}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{MQTT\_TOPIC\_LENGTH}{MQTT\_TOPIC\_LENGTH}} +{\footnotesize\ttfamily \#define M\+Q\+T\+T\+\_\+\+T\+O\+P\+I\+C\+\_\+\+L\+E\+N\+G\+TH~64} + +\mbox{\Hypertarget{options_8h_ab3dc28242a8c02f3f2e94730b5ecbfc0}\label{options_8h_ab3dc28242a8c02f3f2e94730b5ecbfc0}} +\index{options.h@{options.h}!OFFSET\_CONFIGSERVER@{OFFSET\_CONFIGSERVER}} +\index{OFFSET\_CONFIGSERVER@{OFFSET\_CONFIGSERVER}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_CONFIGSERVER}{OFFSET\_CONFIGSERVER}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+C\+O\+N\+F\+I\+G\+S\+E\+R\+V\+ER~\mbox{\hyperlink{options_8h_a9d6fc23740ab9f37272a3299949d3c11}{O\+F\+F\+S\+E\+T\+\_\+\+M\+A\+SK}}+4} + +\mbox{\Hypertarget{options_8h_adbd439473b680ddc08bba5e1d980ed0f}\label{options_8h_adbd439473b680ddc08bba5e1d980ed0f}} +\index{options.h@{options.h}!OFFSET\_DNS@{OFFSET\_DNS}} +\index{OFFSET\_DNS@{OFFSET\_DNS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_DNS}{OFFSET\_DNS}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+D\+NS~\mbox{\hyperlink{options_8h_a9bbde19ac58d0524f2ade893b617c004}{O\+F\+F\+S\+E\+T\+\_\+\+IP}}+4} + +\mbox{\Hypertarget{options_8h_ac025812b72523a2fb2cdaabaa8f589f3}\label{options_8h_ac025812b72523a2fb2cdaabaa8f589f3}} +\index{options.h@{options.h}!OFFSET\_GW@{OFFSET\_GW}} +\index{OFFSET\_GW@{OFFSET\_GW}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_GW}{OFFSET\_GW}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+GW~\mbox{\hyperlink{options_8h_adbd439473b680ddc08bba5e1d980ed0f}{O\+F\+F\+S\+E\+T\+\_\+\+D\+NS}}+4} + +\mbox{\Hypertarget{options_8h_a9bbde19ac58d0524f2ade893b617c004}\label{options_8h_a9bbde19ac58d0524f2ade893b617c004}} +\index{options.h@{options.h}!OFFSET\_IP@{OFFSET\_IP}} +\index{OFFSET\_IP@{OFFSET\_IP}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_IP}{OFFSET\_IP}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+IP~\mbox{\hyperlink{options_8h_aaae016d9ffd26640306394acbf5ca7c9}{O\+F\+F\+S\+E\+T\+\_\+\+M\+AC}}+6} + +\mbox{\Hypertarget{options_8h_aaae016d9ffd26640306394acbf5ca7c9}\label{options_8h_aaae016d9ffd26640306394acbf5ca7c9}} +\index{options.h@{options.h}!OFFSET\_MAC@{OFFSET\_MAC}} +\index{OFFSET\_MAC@{OFFSET\_MAC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_MAC}{OFFSET\_MAC}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+M\+AC~0} + +\mbox{\Hypertarget{options_8h_a9d6fc23740ab9f37272a3299949d3c11}\label{options_8h_a9d6fc23740ab9f37272a3299949d3c11}} +\index{options.h@{options.h}!OFFSET\_MASK@{OFFSET\_MASK}} +\index{OFFSET\_MASK@{OFFSET\_MASK}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_MASK}{OFFSET\_MASK}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+M\+A\+SK~\mbox{\hyperlink{options_8h_ac025812b72523a2fb2cdaabaa8f589f3}{O\+F\+F\+S\+E\+T\+\_\+\+GW}}+4} + +\mbox{\Hypertarget{options_8h_abd247d3da250a7b87a77f24d0f6ca472}\label{options_8h_abd247d3da250a7b87a77f24d0f6ca472}} +\index{options.h@{options.h}!OFFSET\_MQTT\_PWD@{OFFSET\_MQTT\_PWD}} +\index{OFFSET\_MQTT\_PWD@{OFFSET\_MQTT\_PWD}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_MQTT\_PWD}{OFFSET\_MQTT\_PWD}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+M\+Q\+T\+T\+\_\+\+P\+WD~\mbox{\hyperlink{options_8h_ab3dc28242a8c02f3f2e94730b5ecbfc0}{O\+F\+F\+S\+E\+T\+\_\+\+C\+O\+N\+F\+I\+G\+S\+E\+R\+V\+ER}}+\mbox{\hyperlink{options_8h_a62d02da8c36fd3ab5519e373620382d1}{M\+A\+X\+F\+L\+A\+S\+H\+S\+TR}}} + +\mbox{\Hypertarget{options_8h_a0d2901cf398ca7e59223684da79da151}\label{options_8h_a0d2901cf398ca7e59223684da79da151}} +\index{options.h@{options.h}!OFFSET\_SIGNATURE@{OFFSET\_SIGNATURE}} +\index{OFFSET\_SIGNATURE@{OFFSET\_SIGNATURE}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OFFSET\_SIGNATURE}{OFFSET\_SIGNATURE}} +{\footnotesize\ttfamily \#define O\+F\+F\+S\+E\+T\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE~\mbox{\hyperlink{options_8h_abd247d3da250a7b87a77f24d0f6ca472}{O\+F\+F\+S\+E\+T\+\_\+\+M\+Q\+T\+T\+\_\+\+P\+WD}}+\mbox{\hyperlink{options_8h_a83c7af577ab2df562e66ffcdc81fc1c0}{P\+W\+D\+F\+L\+A\+S\+H\+S\+TR}}} + +\mbox{\Hypertarget{options_8h_a826715579f0649bd271fb6702a175dbc}\label{options_8h_a826715579f0649bd271fb6702a175dbc}} +\index{options.h@{options.h}!ORDER@{ORDER}} +\index{ORDER@{ORDER}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{ORDER}{ORDER}} +{\footnotesize\ttfamily \#define O\+R\+D\+ER~B\+RG} + +\mbox{\Hypertarget{options_8h_ad41dc04ab9a3863ee0d70153e844c92a}\label{options_8h_ad41dc04ab9a3863ee0d70153e844c92a}} +\index{options.h@{options.h}!OUTTOPIC@{OUTTOPIC}} +\index{OUTTOPIC@{OUTTOPIC}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OUTTOPIC}{OUTTOPIC}} +{\footnotesize\ttfamily \#define O\+U\+T\+T\+O\+P\+IC~\char`\"{}s\+\_\+out\char`\"{}} + +\mbox{\Hypertarget{options_8h_a2993ae74a7ab13c7de09ffcc8b35e4fc}\label{options_8h_a2993ae74a7ab13c7de09ffcc8b35e4fc}} +\index{options.h@{options.h}!OW\_UPDATE\_INTERVAL@{OW\_UPDATE\_INTERVAL}} +\index{OW\_UPDATE\_INTERVAL@{OW\_UPDATE\_INTERVAL}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{OW\_UPDATE\_INTERVAL}{OW\_UPDATE\_INTERVAL}} +{\footnotesize\ttfamily \#define O\+W\+\_\+\+U\+P\+D\+A\+T\+E\+\_\+\+I\+N\+T\+E\+R\+V\+AL~5000} + +\mbox{\Hypertarget{options_8h_a83c7af577ab2df562e66ffcdc81fc1c0}\label{options_8h_a83c7af577ab2df562e66ffcdc81fc1c0}} +\index{options.h@{options.h}!PWDFLASHSTR@{PWDFLASHSTR}} +\index{PWDFLASHSTR@{PWDFLASHSTR}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{PWDFLASHSTR}{PWDFLASHSTR}} +{\footnotesize\ttfamily \#define P\+W\+D\+F\+L\+A\+S\+H\+S\+TR~16} + +\mbox{\Hypertarget{options_8h_a94df10e7efe7613d074c105099c7fd0e}\label{options_8h_a94df10e7efe7613d074c105099c7fd0e}} +\index{options.h@{options.h}!SERIAL\_BAUD@{SERIAL\_BAUD}} +\index{SERIAL\_BAUD@{SERIAL\_BAUD}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{SERIAL\_BAUD}{SERIAL\_BAUD}} +{\footnotesize\ttfamily \#define S\+E\+R\+I\+A\+L\+\_\+\+B\+A\+UD~115200} + +\mbox{\Hypertarget{options_8h_a2ea96e90902d4db4f9db6d5f5e3298dd}\label{options_8h_a2ea96e90902d4db4f9db6d5f5e3298dd}} +\index{options.h@{options.h}!SYSLOG\_LOCAL\_SOCKET@{SYSLOG\_LOCAL\_SOCKET}} +\index{SYSLOG\_LOCAL\_SOCKET@{SYSLOG\_LOCAL\_SOCKET}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{SYSLOG\_LOCAL\_SOCKET}{SYSLOG\_LOCAL\_SOCKET}} +{\footnotesize\ttfamily \#define S\+Y\+S\+L\+O\+G\+\_\+\+L\+O\+C\+A\+L\+\_\+\+S\+O\+C\+K\+ET~514} + +\mbox{\Hypertarget{options_8h_a6a65f02746daae5d420afda0cada7b78}\label{options_8h_a6a65f02746daae5d420afda0cada7b78}} +\index{options.h@{options.h}!T\_ATTEMPTS@{T\_ATTEMPTS}} +\index{T\_ATTEMPTS@{T\_ATTEMPTS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{T\_ATTEMPTS}{T\_ATTEMPTS}} +{\footnotesize\ttfamily \#define T\+\_\+\+A\+T\+T\+E\+M\+P\+TS~200} + +\mbox{\Hypertarget{options_8h_af589ab4b091beec656a4529510d63937}\label{options_8h_af589ab4b091beec656a4529510d63937}} +\index{options.h@{options.h}!THERMO\_GIST\_CELSIUS@{THERMO\_GIST\_CELSIUS}} +\index{THERMO\_GIST\_CELSIUS@{THERMO\_GIST\_CELSIUS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{THERMO\_GIST\_CELSIUS}{THERMO\_GIST\_CELSIUS}} +{\footnotesize\ttfamily \#define T\+H\+E\+R\+M\+O\+\_\+\+G\+I\+S\+T\+\_\+\+C\+E\+L\+S\+I\+US~1.} + +\mbox{\Hypertarget{options_8h_af512e1ccc2f2a4fd372d0816603e961c}\label{options_8h_af512e1ccc2f2a4fd372d0816603e961c}} +\index{options.h@{options.h}!THERMO\_OVERHEAT\_CELSIUS@{THERMO\_OVERHEAT\_CELSIUS}} +\index{THERMO\_OVERHEAT\_CELSIUS@{THERMO\_OVERHEAT\_CELSIUS}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{THERMO\_OVERHEAT\_CELSIUS}{THERMO\_OVERHEAT\_CELSIUS}} +{\footnotesize\ttfamily \#define T\+H\+E\+R\+M\+O\+\_\+\+O\+V\+E\+R\+H\+E\+A\+T\+\_\+\+C\+E\+L\+S\+I\+US~38.} + +\mbox{\Hypertarget{options_8h_a265b8a391d46da3dd31693f510d02ad6}\label{options_8h_a265b8a391d46da3dd31693f510d02ad6}} +\index{options.h@{options.h}!THERMOSTAT\_CHECK\_PERIOD@{THERMOSTAT\_CHECK\_PERIOD}} +\index{THERMOSTAT\_CHECK\_PERIOD@{THERMOSTAT\_CHECK\_PERIOD}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{THERMOSTAT\_CHECK\_PERIOD}{THERMOSTAT\_CHECK\_PERIOD}} +{\footnotesize\ttfamily \#define T\+H\+E\+R\+M\+O\+S\+T\+A\+T\+\_\+\+C\+H\+E\+C\+K\+\_\+\+P\+E\+R\+I\+OD~30000} + +\mbox{\Hypertarget{options_8h_ab992e9e25bfa08a3572b6a2c4826a0dc}\label{options_8h_ab992e9e25bfa08a3572b6a2c4826a0dc}} +\index{options.h@{options.h}!TXEnablePin@{TXEnablePin}} +\index{TXEnablePin@{TXEnablePin}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{TXEnablePin}{TXEnablePin}} +{\footnotesize\ttfamily \#define T\+X\+Enable\+Pin~13} + +\mbox{\Hypertarget{options_8h_a9377a9603fb9295926b3292cd0506209}\label{options_8h_a9377a9603fb9295926b3292cd0506209}} +\index{options.h@{options.h}!UPTIME\_POLL\_DELAY\_DEFAULT@{UPTIME\_POLL\_DELAY\_DEFAULT}} +\index{UPTIME\_POLL\_DELAY\_DEFAULT@{UPTIME\_POLL\_DELAY\_DEFAULT}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{UPTIME\_POLL\_DELAY\_DEFAULT}{UPTIME\_POLL\_DELAY\_DEFAULT}} +{\footnotesize\ttfamily \#define U\+P\+T\+I\+M\+E\+\_\+\+P\+O\+L\+L\+\_\+\+D\+E\+L\+A\+Y\+\_\+\+D\+E\+F\+A\+U\+LT~30000} + +\mbox{\Hypertarget{options_8h_a7658e9cd3f6887dd4e5cf06b3d865b52}\label{options_8h_a7658e9cd3f6887dd4e5cf06b3d865b52}} +\index{options.h@{options.h}!W5100\_ETHERNET\_SHIELD@{W5100\_ETHERNET\_SHIELD}} +\index{W5100\_ETHERNET\_SHIELD@{W5100\_ETHERNET\_SHIELD}!options.h@{options.h}} +\doxysubsubsection{\texorpdfstring{W5100\_ETHERNET\_SHIELD}{W5100\_ETHERNET\_SHIELD}} +{\footnotesize\ttfamily \#define W5100\+\_\+\+E\+T\+H\+E\+R\+N\+E\+T\+\_\+\+S\+H\+I\+E\+LD} + diff --git a/docs/latex/out__ac_8cpp.tex b/docs/latex/out__ac_8cpp.tex new file mode 100644 index 0000000..ed13676 --- /dev/null +++ b/docs/latex/out__ac_8cpp.tex @@ -0,0 +1,131 @@ +\hypertarget{out__ac_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+ac.cpp File Reference} +\label{out__ac_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_ac.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_ac.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+ac.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}textconst.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{out__ac_8cpp_a4c67a3c95b053662ba0e195ff4611ca2}{A\+C\+\_\+\+Serial}}~Serial3 +\item +\#define \mbox{\hyperlink{out__ac_8cpp_a4862ba1039c5c7ce3b51609c733cc091}{I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+A\+C\+\_\+\+P\+O\+L\+L\+I\+NG}}~5000L +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +byte \mbox{\hyperlink{out__ac_8cpp_afe1602b340d5fab3a7047498810fed25}{get\+C\+RC}} (byte req\mbox{[}$\,$\mbox{]}, size\+\_\+t size) +\item +void \mbox{\hyperlink{out__ac_8cpp_a59d76c8166fd1a36485f4bdf3323e272}{Send\+Data}} (byte req\mbox{[}$\,$\mbox{]}, size\+\_\+t size) +\item +unsigned char \mbox{\hyperlink{out__ac_8cpp_a609d8aade61dfe61ef1100ddca6c3799}{to\+Hex}} (char ch) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +long \mbox{\hyperlink{out__ac_8cpp_a4155acb94ab76d403c080731ac75dda9}{prev\+Polling}} = 0 +\item +byte \mbox{\hyperlink{out__ac_8cpp_a82e58a1f3257f9121902c3edfc841445}{in\+Check}} = 0 +\item +byte \mbox{\hyperlink{out__ac_8cpp_ab239dd88a94012660135822f7c629acd}{qstn}} \mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,1,90\} +\item +byte \mbox{\hyperlink{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}{data}} \mbox{[}37\mbox{]} = \{\} +\item +byte \mbox{\hyperlink{out__ac_8cpp_a1fa5a75e467ea8c74cca76051f03a1d4}{on}} \mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,2,91\} +\item +byte \mbox{\hyperlink{out__ac_8cpp_a92ecc0652f4769feb490ae0cf20093b5}{off}} \mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,3,92\} +\item +byte \mbox{\hyperlink{out__ac_8cpp_a8348487a31a8c5d8e2f94ea77c5e70a7}{lock}} \mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,3,0,0,14\} +\item +const char L\+O\+C\+K\+\_\+P\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{out__ac_8cpp_a98bd41348071f8af054dad33e25cb935}{P\+R\+O\+G\+M\+EM}} = \char`\"{}lock\char`\"{} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{out__ac_8cpp_a4c67a3c95b053662ba0e195ff4611ca2}\label{out__ac_8cpp_a4c67a3c95b053662ba0e195ff4611ca2}} +\index{out\_ac.cpp@{out\_ac.cpp}!AC\_Serial@{AC\_Serial}} +\index{AC\_Serial@{AC\_Serial}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{AC\_Serial}{AC\_Serial}} +{\footnotesize\ttfamily \#define A\+C\+\_\+\+Serial~Serial3} + +\mbox{\Hypertarget{out__ac_8cpp_a4862ba1039c5c7ce3b51609c733cc091}\label{out__ac_8cpp_a4862ba1039c5c7ce3b51609c733cc091}} +\index{out\_ac.cpp@{out\_ac.cpp}!INTERVAL\_AC\_POLLING@{INTERVAL\_AC\_POLLING}} +\index{INTERVAL\_AC\_POLLING@{INTERVAL\_AC\_POLLING}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{INTERVAL\_AC\_POLLING}{INTERVAL\_AC\_POLLING}} +{\footnotesize\ttfamily \#define I\+N\+T\+E\+R\+V\+A\+L\+\_\+\+A\+C\+\_\+\+P\+O\+L\+L\+I\+NG~5000L} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{out__ac_8cpp_afe1602b340d5fab3a7047498810fed25}\label{out__ac_8cpp_afe1602b340d5fab3a7047498810fed25}} +\index{out\_ac.cpp@{out\_ac.cpp}!getCRC@{getCRC}} +\index{getCRC@{getCRC}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{getCRC()}{getCRC()}} +{\footnotesize\ttfamily byte get\+C\+RC (\begin{DoxyParamCaption}\item[{byte}]{req\mbox{[}$\,$\mbox{]}, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{out__ac_8cpp_a59d76c8166fd1a36485f4bdf3323e272}\label{out__ac_8cpp_a59d76c8166fd1a36485f4bdf3323e272}} +\index{out\_ac.cpp@{out\_ac.cpp}!SendData@{SendData}} +\index{SendData@{SendData}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{SendData()}{SendData()}} +{\footnotesize\ttfamily void Send\+Data (\begin{DoxyParamCaption}\item[{byte}]{req\mbox{[}$\,$\mbox{]}, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{out__ac_8cpp_a609d8aade61dfe61ef1100ddca6c3799}\label{out__ac_8cpp_a609d8aade61dfe61ef1100ddca6c3799}} +\index{out\_ac.cpp@{out\_ac.cpp}!toHex@{toHex}} +\index{toHex@{toHex}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{toHex()}{toHex()}} +{\footnotesize\ttfamily unsigned char to\+Hex (\begin{DoxyParamCaption}\item[{char}]{ch }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}\label{out__ac_8cpp_a336725b3b566264f2223495f6294c3c7}} +\index{out\_ac.cpp@{out\_ac.cpp}!data@{data}} +\index{data@{data}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{data}{data}} +{\footnotesize\ttfamily byte data\mbox{[}37\mbox{]} = \{\}} + +\mbox{\Hypertarget{out__ac_8cpp_a82e58a1f3257f9121902c3edfc841445}\label{out__ac_8cpp_a82e58a1f3257f9121902c3edfc841445}} +\index{out\_ac.cpp@{out\_ac.cpp}!inCheck@{inCheck}} +\index{inCheck@{inCheck}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{inCheck}{inCheck}} +{\footnotesize\ttfamily byte in\+Check = 0} + +\mbox{\Hypertarget{out__ac_8cpp_a8348487a31a8c5d8e2f94ea77c5e70a7}\label{out__ac_8cpp_a8348487a31a8c5d8e2f94ea77c5e70a7}} +\index{out\_ac.cpp@{out\_ac.cpp}!lock@{lock}} +\index{lock@{lock}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{lock}{lock}} +{\footnotesize\ttfamily byte lock\mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,3,0,0,14\}} + +\mbox{\Hypertarget{out__ac_8cpp_a92ecc0652f4769feb490ae0cf20093b5}\label{out__ac_8cpp_a92ecc0652f4769feb490ae0cf20093b5}} +\index{out\_ac.cpp@{out\_ac.cpp}!off@{off}} +\index{off@{off}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{off}{off}} +{\footnotesize\ttfamily byte off\mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,3,92\}} + +\mbox{\Hypertarget{out__ac_8cpp_a1fa5a75e467ea8c74cca76051f03a1d4}\label{out__ac_8cpp_a1fa5a75e467ea8c74cca76051f03a1d4}} +\index{out\_ac.cpp@{out\_ac.cpp}!on@{on}} +\index{on@{on}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{on}{on}} +{\footnotesize\ttfamily byte on\mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,2,91\}} + +\mbox{\Hypertarget{out__ac_8cpp_a4155acb94ab76d403c080731ac75dda9}\label{out__ac_8cpp_a4155acb94ab76d403c080731ac75dda9}} +\index{out\_ac.cpp@{out\_ac.cpp}!prevPolling@{prevPolling}} +\index{prevPolling@{prevPolling}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{prevPolling}{prevPolling}} +{\footnotesize\ttfamily long prev\+Polling = 0} + +\mbox{\Hypertarget{out__ac_8cpp_a98bd41348071f8af054dad33e25cb935}\label{out__ac_8cpp_a98bd41348071f8af054dad33e25cb935}} +\index{out\_ac.cpp@{out\_ac.cpp}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const char R\+A\+W\+\_\+P \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM = \char`\"{}lock\char`\"{}} + +\mbox{\Hypertarget{out__ac_8cpp_ab239dd88a94012660135822f7c629acd}\label{out__ac_8cpp_ab239dd88a94012660135822f7c629acd}} +\index{out\_ac.cpp@{out\_ac.cpp}!qstn@{qstn}} +\index{qstn@{qstn}!out\_ac.cpp@{out\_ac.cpp}} +\doxysubsubsection{\texorpdfstring{qstn}{qstn}} +{\footnotesize\ttfamily byte qstn\mbox{[}$\,$\mbox{]} = \{255,255,10,0,0,0,0,0,1,1,77,1,90\}} + diff --git a/docs/latex/out__ac_8h.tex b/docs/latex/out__ac_8h.tex new file mode 100644 index 0000000..0f00aa5 --- /dev/null +++ b/docs/latex/out__ac_8h.tex @@ -0,0 +1,140 @@ +\hypertarget{out__ac_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+ac.h File Reference} +\label{out__ac_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_ac.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_ac.h}} +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classout___a_c}{out\+\_\+\+AC}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{out__ac_8h_ad19ce971fd0a801e62b47ccc237e7adc}{L\+E\+N\+\_\+B}}~37 +\item +\#define \mbox{\hyperlink{out__ac_8h_aea839ca3c1b73e5d265a574085f7b353}{B\+\_\+\+C\+U\+R\+\_\+\+T\+MP}}~13 +\item +\#define \mbox{\hyperlink{out__ac_8h_a54c3b17281609e2073adc5d9c3577d9e}{B\+\_\+\+C\+MD}}~17 +\item +\#define \mbox{\hyperlink{out__ac_8h_a64129c01f67098002dfc15bcf2e81345}{B\+\_\+\+M\+O\+DE}}~23 +\item +\#define \mbox{\hyperlink{out__ac_8h_a16e64054ce7537a58828f7ff0fdd5dd6}{B\+\_\+\+F\+A\+N\+\_\+\+S\+PD}}~25 +\item +\#define \mbox{\hyperlink{out__ac_8h_a8291ee313ea42010c029dcdecd9b922a}{B\+\_\+\+S\+W\+I\+NG}}~27 +\item +\#define \mbox{\hyperlink{out__ac_8h_ae059f75818a612a4c40cfb9a9cfed1cd}{B\+\_\+\+L\+O\+C\+K\+\_\+\+R\+EM}}~28 +\item +\#define \mbox{\hyperlink{out__ac_8h_a810646cae39c2f8b13cd389aa91388cb}{B\+\_\+\+P\+O\+W\+ER}}~29 +\item +\#define \mbox{\hyperlink{out__ac_8h_a5170cf3a84e8662e32341dc99bd379ea}{B\+\_\+\+F\+R\+E\+SH}}~31 +\item +\#define \mbox{\hyperlink{out__ac_8h_a99d1516f267d0714663ac3ba3497e03f}{B\+\_\+\+S\+E\+T\+\_\+\+T\+MP}}~35 +\item +\#define \mbox{\hyperlink{out__ac_8h_af48855306ef6f18c2de9e01f107e1cad}{S\+\_\+\+L\+O\+CK}}~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+1 +\item +\#define \mbox{\hyperlink{out__ac_8h_ac0d28426799e4da770644952ec858461}{S\+\_\+\+Q\+U\+I\+ET}}~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+2 +\item +\#define \mbox{\hyperlink{out__ac_8h_ad4502e82e76e09f450e19153afa0234b}{S\+\_\+\+S\+W\+I\+NG}}~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+3 +\item +\#define \mbox{\hyperlink{out__ac_8h_ab7b18454392c93599b25faad65d6a370}{S\+\_\+\+R\+AW}}~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+4 +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{out__ac_8h_aa557ba1fef085fb9865ffd399c738dbf}{modbus\+Idle}} (void) +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{out__ac_8h_a54c3b17281609e2073adc5d9c3577d9e}\label{out__ac_8h_a54c3b17281609e2073adc5d9c3577d9e}} +\index{out\_ac.h@{out\_ac.h}!B\_CMD@{B\_CMD}} +\index{B\_CMD@{B\_CMD}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_CMD}{B\_CMD}} +{\footnotesize\ttfamily \#define B\+\_\+\+C\+MD~17} + +\mbox{\Hypertarget{out__ac_8h_aea839ca3c1b73e5d265a574085f7b353}\label{out__ac_8h_aea839ca3c1b73e5d265a574085f7b353}} +\index{out\_ac.h@{out\_ac.h}!B\_CUR\_TMP@{B\_CUR\_TMP}} +\index{B\_CUR\_TMP@{B\_CUR\_TMP}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_CUR\_TMP}{B\_CUR\_TMP}} +{\footnotesize\ttfamily \#define B\+\_\+\+C\+U\+R\+\_\+\+T\+MP~13} + +\mbox{\Hypertarget{out__ac_8h_a16e64054ce7537a58828f7ff0fdd5dd6}\label{out__ac_8h_a16e64054ce7537a58828f7ff0fdd5dd6}} +\index{out\_ac.h@{out\_ac.h}!B\_FAN\_SPD@{B\_FAN\_SPD}} +\index{B\_FAN\_SPD@{B\_FAN\_SPD}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_FAN\_SPD}{B\_FAN\_SPD}} +{\footnotesize\ttfamily \#define B\+\_\+\+F\+A\+N\+\_\+\+S\+PD~25} + +\mbox{\Hypertarget{out__ac_8h_a5170cf3a84e8662e32341dc99bd379ea}\label{out__ac_8h_a5170cf3a84e8662e32341dc99bd379ea}} +\index{out\_ac.h@{out\_ac.h}!B\_FRESH@{B\_FRESH}} +\index{B\_FRESH@{B\_FRESH}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_FRESH}{B\_FRESH}} +{\footnotesize\ttfamily \#define B\+\_\+\+F\+R\+E\+SH~31} + +\mbox{\Hypertarget{out__ac_8h_ae059f75818a612a4c40cfb9a9cfed1cd}\label{out__ac_8h_ae059f75818a612a4c40cfb9a9cfed1cd}} +\index{out\_ac.h@{out\_ac.h}!B\_LOCK\_REM@{B\_LOCK\_REM}} +\index{B\_LOCK\_REM@{B\_LOCK\_REM}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_LOCK\_REM}{B\_LOCK\_REM}} +{\footnotesize\ttfamily \#define B\+\_\+\+L\+O\+C\+K\+\_\+\+R\+EM~28} + +\mbox{\Hypertarget{out__ac_8h_a64129c01f67098002dfc15bcf2e81345}\label{out__ac_8h_a64129c01f67098002dfc15bcf2e81345}} +\index{out\_ac.h@{out\_ac.h}!B\_MODE@{B\_MODE}} +\index{B\_MODE@{B\_MODE}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_MODE}{B\_MODE}} +{\footnotesize\ttfamily \#define B\+\_\+\+M\+O\+DE~23} + +\mbox{\Hypertarget{out__ac_8h_a810646cae39c2f8b13cd389aa91388cb}\label{out__ac_8h_a810646cae39c2f8b13cd389aa91388cb}} +\index{out\_ac.h@{out\_ac.h}!B\_POWER@{B\_POWER}} +\index{B\_POWER@{B\_POWER}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_POWER}{B\_POWER}} +{\footnotesize\ttfamily \#define B\+\_\+\+P\+O\+W\+ER~29} + +\mbox{\Hypertarget{out__ac_8h_a99d1516f267d0714663ac3ba3497e03f}\label{out__ac_8h_a99d1516f267d0714663ac3ba3497e03f}} +\index{out\_ac.h@{out\_ac.h}!B\_SET\_TMP@{B\_SET\_TMP}} +\index{B\_SET\_TMP@{B\_SET\_TMP}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_SET\_TMP}{B\_SET\_TMP}} +{\footnotesize\ttfamily \#define B\+\_\+\+S\+E\+T\+\_\+\+T\+MP~35} + +\mbox{\Hypertarget{out__ac_8h_a8291ee313ea42010c029dcdecd9b922a}\label{out__ac_8h_a8291ee313ea42010c029dcdecd9b922a}} +\index{out\_ac.h@{out\_ac.h}!B\_SWING@{B\_SWING}} +\index{B\_SWING@{B\_SWING}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{B\_SWING}{B\_SWING}} +{\footnotesize\ttfamily \#define B\+\_\+\+S\+W\+I\+NG~27} + +\mbox{\Hypertarget{out__ac_8h_ad19ce971fd0a801e62b47ccc237e7adc}\label{out__ac_8h_ad19ce971fd0a801e62b47ccc237e7adc}} +\index{out\_ac.h@{out\_ac.h}!LEN\_B@{LEN\_B}} +\index{LEN\_B@{LEN\_B}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{LEN\_B}{LEN\_B}} +{\footnotesize\ttfamily \#define L\+E\+N\+\_\+B~37} + +\mbox{\Hypertarget{out__ac_8h_af48855306ef6f18c2de9e01f107e1cad}\label{out__ac_8h_af48855306ef6f18c2de9e01f107e1cad}} +\index{out\_ac.h@{out\_ac.h}!S\_LOCK@{S\_LOCK}} +\index{S\_LOCK@{S\_LOCK}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{S\_LOCK}{S\_LOCK}} +{\footnotesize\ttfamily \#define S\+\_\+\+L\+O\+CK~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+1} + +\mbox{\Hypertarget{out__ac_8h_ac0d28426799e4da770644952ec858461}\label{out__ac_8h_ac0d28426799e4da770644952ec858461}} +\index{out\_ac.h@{out\_ac.h}!S\_QUIET@{S\_QUIET}} +\index{S\_QUIET@{S\_QUIET}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{S\_QUIET}{S\_QUIET}} +{\footnotesize\ttfamily \#define S\+\_\+\+Q\+U\+I\+ET~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+2} + +\mbox{\Hypertarget{out__ac_8h_ab7b18454392c93599b25faad65d6a370}\label{out__ac_8h_ab7b18454392c93599b25faad65d6a370}} +\index{out\_ac.h@{out\_ac.h}!S\_RAW@{S\_RAW}} +\index{S\_RAW@{S\_RAW}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{S\_RAW}{S\_RAW}} +{\footnotesize\ttfamily \#define S\+\_\+\+R\+AW~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+4} + +\mbox{\Hypertarget{out__ac_8h_ad4502e82e76e09f450e19153afa0234b}\label{out__ac_8h_ad4502e82e76e09f450e19153afa0234b}} +\index{out\_ac.h@{out\_ac.h}!S\_SWING@{S\_SWING}} +\index{S\_SWING@{S\_SWING}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{S\_SWING}{S\_SWING}} +{\footnotesize\ttfamily \#define S\+\_\+\+S\+W\+I\+NG~\mbox{\hyperlink{item_8h_a52a219c38e8fb816c139cbd252e3c3d5}{S\+\_\+\+A\+D\+D\+I\+T\+I\+O\+N\+AL}}+3} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{out__ac_8h_aa557ba1fef085fb9865ffd399c738dbf}\label{out__ac_8h_aa557ba1fef085fb9865ffd399c738dbf}} +\index{out\_ac.h@{out\_ac.h}!modbusIdle@{modbusIdle}} +\index{modbusIdle@{modbusIdle}!out\_ac.h@{out\_ac.h}} +\doxysubsubsection{\texorpdfstring{modbusIdle()}{modbusIdle()}} +{\footnotesize\ttfamily void modbus\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + diff --git a/docs/latex/out__dmx_8cpp.tex b/docs/latex/out__dmx_8cpp.tex new file mode 100644 index 0000000..c4df838 --- /dev/null +++ b/docs/latex/out__dmx_8cpp.tex @@ -0,0 +1,9 @@ +\hypertarget{out__dmx_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+dmx.cpp File Reference} +\label{out__dmx_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_dmx.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_dmx.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+dmx.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}dmx.\+h\char`\"{}}\newline diff --git a/docs/latex/out__dmx_8h.tex b/docs/latex/out__dmx_8h.tex new file mode 100644 index 0000000..7301ef7 --- /dev/null +++ b/docs/latex/out__dmx_8h.tex @@ -0,0 +1,11 @@ +\hypertarget{out__dmx_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+dmx.h File Reference} +\label{out__dmx_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_dmx.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_dmx.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +{\ttfamily \#include \char`\"{}colorchannel.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classout__dmx}{out\+\_\+dmx}} +\end{DoxyCompactItemize} diff --git a/docs/latex/out__modbus_8cpp.tex b/docs/latex/out__modbus_8cpp.tex new file mode 100644 index 0000000..c08daa2 --- /dev/null +++ b/docs/latex/out__modbus_8cpp.tex @@ -0,0 +1,195 @@ +\hypertarget{out__modbus_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+modbus.cpp File Reference} +\label{out__modbus_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_modbus.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_modbus.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+modbus.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Modbus\+Master.\+h$>$}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Hardware\+Serial.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +struct \mbox{\hyperlink{structreg__t}{reg\+\_\+t}} +\item +struct \mbox{\hyperlink{structserial__t}{serial\+\_\+t}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_a25bf73813d09c58baa5af48637e16bc7}{P\+A\+R\+\_\+\+I16}}~1 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_acd59b982a0f2dcf18dd2356d6e98eefb}{P\+A\+R\+\_\+\+I32}}~2 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_ad2b89b560cb53fc21c8ee35087910b2e}{P\+A\+R\+\_\+\+U16}}~3 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_a005c325557d6699e0510c86fb64ed697}{P\+A\+R\+\_\+\+U32}}~4 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_af19859d150babbb4691f7d1859f89813}{P\+A\+R\+\_\+\+I8H}}~5 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_ab0bcf5a51d08a4543375cefe31c00cc5}{P\+A\+R\+\_\+\+I8L}}~6 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_abd90249102cbda3365d3e86df523fc2d}{P\+A\+R\+\_\+\+U8H}}~7 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_a7c348cd2c30505b0afb1f00d47a3a804}{P\+A\+R\+\_\+\+U8L}}~8 +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_a49c9c8a2424dd60fa4fefb6ee0188db6}{reg\+Size\+Num}}~sizeof(reg\+Size\+\_\+P)/sizeof(\mbox{\hyperlink{structreg__t}{reg\+\_\+t}}) +\item +\#define \mbox{\hyperlink{out__modbus_8cpp_a4d3d61e309ead27e6e008e455d75ceb5}{serial\+Modes\+Num}}~sizeof(serial\+Modes\+\_\+P)/sizeof(\mbox{\hyperlink{structserial__t}{serial\+\_\+t}}) +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{out__modbus_8cpp_aa557ba1fef085fb9865ffd399c738dbf}{modbus\+Idle}} (void) +\item +uint16\+\_\+t \mbox{\hyperlink{out__modbus_8cpp_ae62352d2766976d85ca20006e681f254}{str2\+Serial\+Param}} (char $\ast$str) +\item +int \mbox{\hyperlink{out__modbus_8cpp_a6b595bdd94e3d76226b079ba5d7d7239}{str2reg\+Size}} (char $\ast$str) +\item +bool \mbox{\hyperlink{out__modbus_8cpp_ada41a67a60f6db43d5af00c5de696db0}{read\+Modbus}} (uint16\+\_\+t reg, int reg\+Type, int count) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{out__modbus_8cpp_aabc7159a42d55e7c474862449404d65c}{modbus\+Obj}} +\item +Modbus\+Master \mbox{\hyperlink{out__modbus_8cpp_aed3ca48125de3e138d26fa4884c35c93}{node}} +\item +short \mbox{\hyperlink{out__modbus_8cpp_a02d3e5fb154e56cf7fc169649e232078}{modbus\+Busy}} +\item +const \mbox{\hyperlink{structreg__t}{reg\+\_\+t}} reg\+Size\+\_\+P\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{out__modbus_8cpp_a6c1a731dafc190e4be43884f9b8807ad}{P\+R\+O\+G\+M\+EM}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{out__modbus_8cpp_a25bf73813d09c58baa5af48637e16bc7}\label{out__modbus_8cpp_a25bf73813d09c58baa5af48637e16bc7}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_I16@{PAR\_I16}} +\index{PAR\_I16@{PAR\_I16}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_I16}{PAR\_I16}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+I16~1} + +\mbox{\Hypertarget{out__modbus_8cpp_acd59b982a0f2dcf18dd2356d6e98eefb}\label{out__modbus_8cpp_acd59b982a0f2dcf18dd2356d6e98eefb}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_I32@{PAR\_I32}} +\index{PAR\_I32@{PAR\_I32}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_I32}{PAR\_I32}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+I32~2} + +\mbox{\Hypertarget{out__modbus_8cpp_af19859d150babbb4691f7d1859f89813}\label{out__modbus_8cpp_af19859d150babbb4691f7d1859f89813}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_I8H@{PAR\_I8H}} +\index{PAR\_I8H@{PAR\_I8H}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_I8H}{PAR\_I8H}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+I8H~5} + +\mbox{\Hypertarget{out__modbus_8cpp_ab0bcf5a51d08a4543375cefe31c00cc5}\label{out__modbus_8cpp_ab0bcf5a51d08a4543375cefe31c00cc5}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_I8L@{PAR\_I8L}} +\index{PAR\_I8L@{PAR\_I8L}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_I8L}{PAR\_I8L}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+I8L~6} + +\mbox{\Hypertarget{out__modbus_8cpp_ad2b89b560cb53fc21c8ee35087910b2e}\label{out__modbus_8cpp_ad2b89b560cb53fc21c8ee35087910b2e}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_U16@{PAR\_U16}} +\index{PAR\_U16@{PAR\_U16}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_U16}{PAR\_U16}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+U16~3} + +\mbox{\Hypertarget{out__modbus_8cpp_a005c325557d6699e0510c86fb64ed697}\label{out__modbus_8cpp_a005c325557d6699e0510c86fb64ed697}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_U32@{PAR\_U32}} +\index{PAR\_U32@{PAR\_U32}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_U32}{PAR\_U32}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+U32~4} + +\mbox{\Hypertarget{out__modbus_8cpp_abd90249102cbda3365d3e86df523fc2d}\label{out__modbus_8cpp_abd90249102cbda3365d3e86df523fc2d}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_U8H@{PAR\_U8H}} +\index{PAR\_U8H@{PAR\_U8H}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_U8H}{PAR\_U8H}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+U8H~7} + +\mbox{\Hypertarget{out__modbus_8cpp_a7c348cd2c30505b0afb1f00d47a3a804}\label{out__modbus_8cpp_a7c348cd2c30505b0afb1f00d47a3a804}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PAR\_U8L@{PAR\_U8L}} +\index{PAR\_U8L@{PAR\_U8L}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PAR\_U8L}{PAR\_U8L}} +{\footnotesize\ttfamily \#define P\+A\+R\+\_\+\+U8L~8} + +\mbox{\Hypertarget{out__modbus_8cpp_a49c9c8a2424dd60fa4fefb6ee0188db6}\label{out__modbus_8cpp_a49c9c8a2424dd60fa4fefb6ee0188db6}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!regSizeNum@{regSizeNum}} +\index{regSizeNum@{regSizeNum}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{regSizeNum}{regSizeNum}} +{\footnotesize\ttfamily \#define reg\+Size\+Num~sizeof(reg\+Size\+\_\+P)/sizeof(\mbox{\hyperlink{structreg__t}{reg\+\_\+t}})} + +\mbox{\Hypertarget{out__modbus_8cpp_a4d3d61e309ead27e6e008e455d75ceb5}\label{out__modbus_8cpp_a4d3d61e309ead27e6e008e455d75ceb5}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!serialModesNum@{serialModesNum}} +\index{serialModesNum@{serialModesNum}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{serialModesNum}{serialModesNum}} +{\footnotesize\ttfamily \#define serial\+Modes\+Num~sizeof(serial\+Modes\+\_\+P)/sizeof(\mbox{\hyperlink{structserial__t}{serial\+\_\+t}})} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{out__modbus_8cpp_aa557ba1fef085fb9865ffd399c738dbf}\label{out__modbus_8cpp_aa557ba1fef085fb9865ffd399c738dbf}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!modbusIdle@{modbusIdle}} +\index{modbusIdle@{modbusIdle}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{modbusIdle()}{modbusIdle()}} +{\footnotesize\ttfamily void modbus\+Idle (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{out__modbus_8cpp_ada41a67a60f6db43d5af00c5de696db0}\label{out__modbus_8cpp_ada41a67a60f6db43d5af00c5de696db0}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!readModbus@{readModbus}} +\index{readModbus@{readModbus}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{readModbus()}{readModbus()}} +{\footnotesize\ttfamily bool read\+Modbus (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{reg, }\item[{int}]{reg\+Type, }\item[{int}]{count }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{out__modbus_8cpp_a6b595bdd94e3d76226b079ba5d7d7239}\label{out__modbus_8cpp_a6b595bdd94e3d76226b079ba5d7d7239}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!str2regSize@{str2regSize}} +\index{str2regSize@{str2regSize}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{str2regSize()}{str2regSize()}} +{\footnotesize\ttfamily int str2reg\+Size (\begin{DoxyParamCaption}\item[{char $\ast$}]{str }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{out__modbus_8cpp_ae62352d2766976d85ca20006e681f254}\label{out__modbus_8cpp_ae62352d2766976d85ca20006e681f254}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!str2SerialParam@{str2SerialParam}} +\index{str2SerialParam@{str2SerialParam}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{str2SerialParam()}{str2SerialParam()}} +{\footnotesize\ttfamily uint16\+\_\+t str2\+Serial\+Param (\begin{DoxyParamCaption}\item[{char $\ast$}]{str }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{out__modbus_8cpp_a02d3e5fb154e56cf7fc169649e232078}\label{out__modbus_8cpp_a02d3e5fb154e56cf7fc169649e232078}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!modbusBusy@{modbusBusy}} +\index{modbusBusy@{modbusBusy}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{modbusBusy}{modbusBusy}} +{\footnotesize\ttfamily short modbus\+Busy\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{out__modbus_8cpp_aabc7159a42d55e7c474862449404d65c}\label{out__modbus_8cpp_aabc7159a42d55e7c474862449404d65c}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!modbusObj@{modbusObj}} +\index{modbusObj@{modbusObj}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{modbusObj}{modbusObj}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ modbus\+Obj\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{out__modbus_8cpp_aed3ca48125de3e138d26fa4884c35c93}\label{out__modbus_8cpp_aed3ca48125de3e138d26fa4884c35c93}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!node@{node}} +\index{node@{node}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{node}{node}} +{\footnotesize\ttfamily Modbus\+Master node\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{out__modbus_8cpp_a6c1a731dafc190e4be43884f9b8807ad}\label{out__modbus_8cpp_a6c1a731dafc190e4be43884f9b8807ad}} +\index{out\_modbus.cpp@{out\_modbus.cpp}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!out\_modbus.cpp@{out\_modbus.cpp}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const \mbox{\hyperlink{structserial__t}{serial\+\_\+t}} serial\+Modes\+\_\+P \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM} + +{\bfseries Initial value\+:} +\begin{DoxyCode}{0} +\DoxyCodeLine{=} +\DoxyCodeLine{\{} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}i16"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_a25bf73813d09c58baa5af48637e16bc7}{PAR\_I16}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}i32"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_acd59b982a0f2dcf18dd2356d6e98eefb}{PAR\_I32}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}u16"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_ad2b89b560cb53fc21c8ee35087910b2e}{PAR\_U16}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}u32"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_a005c325557d6699e0510c86fb64ed697}{PAR\_U32}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}i8h"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_af19859d150babbb4691f7d1859f89813}{PAR\_I8H}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}i8l"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_ab0bcf5a51d08a4543375cefe31c00cc5}{PAR\_I8L}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}u8h"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_abd90249102cbda3365d3e86df523fc2d}{PAR\_U8H}} \},} +\DoxyCodeLine{ \{ \textcolor{stringliteral}{"{}u8l"{}}, (uint8\_t) \mbox{\hyperlink{out__modbus_8cpp_a7c348cd2c30505b0afb1f00d47a3a804}{PAR\_U8L}} \}} +\DoxyCodeLine{\}} + +\end{DoxyCode} diff --git a/docs/latex/out__modbus_8h.tex b/docs/latex/out__modbus_8h.tex new file mode 100644 index 0000000..f81c166 --- /dev/null +++ b/docs/latex/out__modbus_8h.tex @@ -0,0 +1,12 @@ +\hypertarget{out__modbus_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+modbus.h File Reference} +\label{out__modbus_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_modbus.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_modbus.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classmb_persistent}{mb\+Persistent}} +\item +class \mbox{\hyperlink{classout___modbus}{out\+\_\+\+Modbus}} +\end{DoxyCompactItemize} diff --git a/docs/latex/out__motor_8cpp.tex b/docs/latex/out__motor_8cpp.tex new file mode 100644 index 0000000..bf61cb9 --- /dev/null +++ b/docs/latex/out__motor_8cpp.tex @@ -0,0 +1,8 @@ +\hypertarget{out__motor_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+motor.cpp File Reference} +\label{out__motor_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_motor.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_motor.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+motor.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline diff --git a/docs/latex/out__motor_8h.tex b/docs/latex/out__motor_8h.tex new file mode 100644 index 0000000..c1cc2dd --- /dev/null +++ b/docs/latex/out__motor_8h.tex @@ -0,0 +1,32 @@ +\hypertarget{out__motor_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+motor.h File Reference} +\label{out__motor_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_motor.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_motor.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classout___motor}{out\+\_\+\+Motor}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{out__motor_8h_abf9aa60d6eb4e068e3f5907f04371dc2}{P\+O\+S\+\_\+\+E\+RR}}~2 +\item +\#define \mbox{\hyperlink{out__motor_8h_a1ae2d51e9799d2a525499bd722676e3c}{M\+O\+T\+O\+R\+\_\+\+Q\+U\+O\+TE}}~2 +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{out__motor_8h_a1ae2d51e9799d2a525499bd722676e3c}\label{out__motor_8h_a1ae2d51e9799d2a525499bd722676e3c}} +\index{out\_motor.h@{out\_motor.h}!MOTOR\_QUOTE@{MOTOR\_QUOTE}} +\index{MOTOR\_QUOTE@{MOTOR\_QUOTE}!out\_motor.h@{out\_motor.h}} +\doxysubsubsection{\texorpdfstring{MOTOR\_QUOTE}{MOTOR\_QUOTE}} +{\footnotesize\ttfamily \#define M\+O\+T\+O\+R\+\_\+\+Q\+U\+O\+TE~2} + +\mbox{\Hypertarget{out__motor_8h_abf9aa60d6eb4e068e3f5907f04371dc2}\label{out__motor_8h_abf9aa60d6eb4e068e3f5907f04371dc2}} +\index{out\_motor.h@{out\_motor.h}!POS\_ERR@{POS\_ERR}} +\index{POS\_ERR@{POS\_ERR}!out\_motor.h@{out\_motor.h}} +\doxysubsubsection{\texorpdfstring{POS\_ERR}{POS\_ERR}} +{\footnotesize\ttfamily \#define P\+O\+S\+\_\+\+E\+RR~2} + diff --git a/docs/latex/out__pwm_8cpp.tex b/docs/latex/out__pwm_8cpp.tex new file mode 100644 index 0000000..f52d3c4 --- /dev/null +++ b/docs/latex/out__pwm_8cpp.tex @@ -0,0 +1,9 @@ +\hypertarget{out__pwm_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+pwm.cpp File Reference} +\label{out__pwm_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_pwm.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_pwm.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+pwm.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}dmx.\+h\char`\"{}}\newline diff --git a/docs/latex/out__pwm_8h.tex b/docs/latex/out__pwm_8h.tex new file mode 100644 index 0000000..7314ea7 --- /dev/null +++ b/docs/latex/out__pwm_8h.tex @@ -0,0 +1,11 @@ +\hypertarget{out__pwm_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+pwm.h File Reference} +\label{out__pwm_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_pwm.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_pwm.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +{\ttfamily \#include \char`\"{}colorchannel.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classout__pwm}{out\+\_\+pwm}} +\end{DoxyCompactItemize} diff --git a/docs/latex/out__spiled_8cpp.tex b/docs/latex/out__spiled_8cpp.tex new file mode 100644 index 0000000..4cd78af --- /dev/null +++ b/docs/latex/out__spiled_8cpp.tex @@ -0,0 +1,23 @@ +\hypertarget{out__spiled_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+spiled.cpp File Reference} +\label{out__spiled_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_spiled.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_spiled.cpp}} +{\ttfamily \#include \char`\"{}modules/out\+\_\+spiled.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arduino.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Fast\+L\+E\+D.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{out__spiled_8cpp_a4c4ae9a4146ce8d6a5debc90300d9abd}{N\+U\+M\+\_\+\+L\+E\+DS}}~43 +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{out__spiled_8cpp_a4c4ae9a4146ce8d6a5debc90300d9abd}\label{out__spiled_8cpp_a4c4ae9a4146ce8d6a5debc90300d9abd}} +\index{out\_spiled.cpp@{out\_spiled.cpp}!NUM\_LEDS@{NUM\_LEDS}} +\index{NUM\_LEDS@{NUM\_LEDS}!out\_spiled.cpp@{out\_spiled.cpp}} +\doxysubsubsection{\texorpdfstring{NUM\_LEDS}{NUM\_LEDS}} +{\footnotesize\ttfamily \#define N\+U\+M\+\_\+\+L\+E\+DS~43} + diff --git a/docs/latex/out__spiled_8h.tex b/docs/latex/out__spiled_8h.tex new file mode 100644 index 0000000..2c852e3 --- /dev/null +++ b/docs/latex/out__spiled_8h.tex @@ -0,0 +1,12 @@ +\hypertarget{out__spiled_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/out\+\_\+spiled.h File Reference} +\label{out__spiled_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_spiled.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/modules/out\_spiled.h}} +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}colorchannel.\+h\char`\"{}}\newline +{\ttfamily \#include $<$abstractout.\+h$>$}\newline +{\ttfamily \#include $<$item.\+h$>$}\newline +{\ttfamily \#include \char`\"{}Fast\+L\+E\+D.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classout___s_p_i_led}{out\+\_\+\+S\+P\+I\+Led}} +\end{DoxyCompactItemize} diff --git a/docs/latex/ow_term_8cpp.tex b/docs/latex/ow_term_8cpp.tex new file mode 100644 index 0000000..78bb99c --- /dev/null +++ b/docs/latex/ow_term_8cpp.tex @@ -0,0 +1,139 @@ +\hypertarget{ow_term_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/ow\+Term.cpp File Reference} +\label{ow_term_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.cpp}} +{\ttfamily \#include \char`\"{}ow\+Term.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{ow_term_8cpp_aff3811570b1dd6182d7f45bd573afcfd}{ow\+Update}} () +\item +int \mbox{\hyperlink{ow_term_8cpp_ac78e14aeb04a12acf45919b64fe0d280}{ow\+Setup}} (\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} ow\+Ch) +\item +int \mbox{\hyperlink{ow_term_8cpp_a3c7848115ede4d67192d7964e5157591}{sensors\+\_\+loop}} (void) +\item +void \mbox{\hyperlink{ow_term_8cpp_a3d8b76952ce1af677267e10c981e6dd5}{ow\+Loop}} () +\item +int \mbox{\hyperlink{ow_term_8cpp_a38798dcd7c98c38975db6e3f19de63a3}{ow\+Find}} (Device\+Address addr) +\item +void \mbox{\hyperlink{ow_term_8cpp_ac9fd793efbaca8922408effe06e71650}{ow\+Add}} (Device\+Address addr) +\item +void \mbox{\hyperlink{ow_term_8cpp_aaa733da2383859748e802f38409546da}{setup\+Ow\+Idle}} (void($\ast$ptr)()) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +One\+Wire $\ast$ \mbox{\hyperlink{ow_term_8cpp_a385b7fa9c4553fcb57ee60a03932b60c}{one\+Wire}} = N\+U\+LL +\item +Device\+Address $\ast$ \mbox{\hyperlink{ow_term_8cpp_ac8f950395764bcd345b63d2887dae1a0}{term}} = N\+U\+LL +\item +uint16\+\_\+t $\ast$ \mbox{\hyperlink{ow_term_8cpp_a31e8c0d5ba0869a2bfbf32fd8caaac57}{wstat}} = N\+U\+LL +\item +Dallas\+Temperature $\ast$ \mbox{\hyperlink{ow_term_8cpp_ab5e031d55a57a0dd79468e5a7cbb5e64}{sensors}} = N\+U\+LL +\item +short \mbox{\hyperlink{ow_term_8cpp_ac37ce0c409c53b6a18aefbfc3ad46b4a}{si}} = 0 +\item +int \mbox{\hyperlink{ow_term_8cpp_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}} = 0 +\item +unsigned long \mbox{\hyperlink{ow_term_8cpp_a72d7dd39e835325dedcc977f3b23adb8}{ow\+Timer}} = 0 +\item +\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} \mbox{\hyperlink{ow_term_8cpp_ac7999c9efd1309081d54939dc27687ba}{ow\+Changed}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{ow_term_8cpp_ac9fd793efbaca8922408effe06e71650}\label{ow_term_8cpp_ac9fd793efbaca8922408effe06e71650}} +\index{owTerm.cpp@{owTerm.cpp}!owAdd@{owAdd}} +\index{owAdd@{owAdd}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owAdd()}{owAdd()}} +{\footnotesize\ttfamily void ow\+Add (\begin{DoxyParamCaption}\item[{Device\+Address}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_a38798dcd7c98c38975db6e3f19de63a3}\label{ow_term_8cpp_a38798dcd7c98c38975db6e3f19de63a3}} +\index{owTerm.cpp@{owTerm.cpp}!owFind@{owFind}} +\index{owFind@{owFind}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owFind()}{owFind()}} +{\footnotesize\ttfamily int ow\+Find (\begin{DoxyParamCaption}\item[{Device\+Address}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_a3d8b76952ce1af677267e10c981e6dd5}\label{ow_term_8cpp_a3d8b76952ce1af677267e10c981e6dd5}} +\index{owTerm.cpp@{owTerm.cpp}!owLoop@{owLoop}} +\index{owLoop@{owLoop}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owLoop()}{owLoop()}} +{\footnotesize\ttfamily void ow\+Loop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_ac78e14aeb04a12acf45919b64fe0d280}\label{ow_term_8cpp_ac78e14aeb04a12acf45919b64fe0d280}} +\index{owTerm.cpp@{owTerm.cpp}!owSetup@{owSetup}} +\index{owSetup@{owSetup}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owSetup()}{owSetup()}} +{\footnotesize\ttfamily int ow\+Setup (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}}}]{ow\+Ch }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_aff3811570b1dd6182d7f45bd573afcfd}\label{ow_term_8cpp_aff3811570b1dd6182d7f45bd573afcfd}} +\index{owTerm.cpp@{owTerm.cpp}!owUpdate@{owUpdate}} +\index{owUpdate@{owUpdate}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owUpdate()}{owUpdate()}} +{\footnotesize\ttfamily int ow\+Update (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_a3c7848115ede4d67192d7964e5157591}\label{ow_term_8cpp_a3c7848115ede4d67192d7964e5157591}} +\index{owTerm.cpp@{owTerm.cpp}!sensors\_loop@{sensors\_loop}} +\index{sensors\_loop@{sensors\_loop}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{sensors\_loop()}{sensors\_loop()}} +{\footnotesize\ttfamily int sensors\+\_\+loop (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8cpp_aaa733da2383859748e802f38409546da}\label{ow_term_8cpp_aaa733da2383859748e802f38409546da}} +\index{owTerm.cpp@{owTerm.cpp}!setupOwIdle@{setupOwIdle}} +\index{setupOwIdle@{setupOwIdle}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{setupOwIdle()}{setupOwIdle()}} +{\footnotesize\ttfamily void setup\+Ow\+Idle (\begin{DoxyParamCaption}\item[{void($\ast$)()}]{ptr }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{ow_term_8cpp_a385b7fa9c4553fcb57ee60a03932b60c}\label{ow_term_8cpp_a385b7fa9c4553fcb57ee60a03932b60c}} +\index{owTerm.cpp@{owTerm.cpp}!oneWire@{oneWire}} +\index{oneWire@{oneWire}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{oneWire}{oneWire}} +{\footnotesize\ttfamily One\+Wire$\ast$ one\+Wire = N\+U\+LL} + +\mbox{\Hypertarget{ow_term_8cpp_ac7999c9efd1309081d54939dc27687ba}\label{ow_term_8cpp_ac7999c9efd1309081d54939dc27687ba}} +\index{owTerm.cpp@{owTerm.cpp}!owChanged@{owChanged}} +\index{owChanged@{owChanged}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owChanged}{owChanged}} +{\footnotesize\ttfamily \mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} ow\+Changed} + +\mbox{\Hypertarget{ow_term_8cpp_a72d7dd39e835325dedcc977f3b23adb8}\label{ow_term_8cpp_a72d7dd39e835325dedcc977f3b23adb8}} +\index{owTerm.cpp@{owTerm.cpp}!owTimer@{owTimer}} +\index{owTimer@{owTimer}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{owTimer}{owTimer}} +{\footnotesize\ttfamily unsigned long ow\+Timer = 0} + +\mbox{\Hypertarget{ow_term_8cpp_ab5e031d55a57a0dd79468e5a7cbb5e64}\label{ow_term_8cpp_ab5e031d55a57a0dd79468e5a7cbb5e64}} +\index{owTerm.cpp@{owTerm.cpp}!sensors@{sensors}} +\index{sensors@{sensors}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{sensors}{sensors}} +{\footnotesize\ttfamily Dallas\+Temperature$\ast$ sensors = N\+U\+LL} + +\mbox{\Hypertarget{ow_term_8cpp_ac37ce0c409c53b6a18aefbfc3ad46b4a}\label{ow_term_8cpp_ac37ce0c409c53b6a18aefbfc3ad46b4a}} +\index{owTerm.cpp@{owTerm.cpp}!si@{si}} +\index{si@{si}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{si}{si}} +{\footnotesize\ttfamily short si = 0} + +\mbox{\Hypertarget{ow_term_8cpp_a4e9707ca4dbcd2ddd6d14657f2e12700}\label{ow_term_8cpp_a4e9707ca4dbcd2ddd6d14657f2e12700}} +\index{owTerm.cpp@{owTerm.cpp}!t\_count@{t\_count}} +\index{t\_count@{t\_count}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{t\_count}{t\_count}} +{\footnotesize\ttfamily int t\+\_\+count = 0} + +\mbox{\Hypertarget{ow_term_8cpp_ac8f950395764bcd345b63d2887dae1a0}\label{ow_term_8cpp_ac8f950395764bcd345b63d2887dae1a0}} +\index{owTerm.cpp@{owTerm.cpp}!term@{term}} +\index{term@{term}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{term}{term}} +{\footnotesize\ttfamily Device\+Address$\ast$ term = N\+U\+LL} + +\mbox{\Hypertarget{ow_term_8cpp_a31e8c0d5ba0869a2bfbf32fd8caaac57}\label{ow_term_8cpp_a31e8c0d5ba0869a2bfbf32fd8caaac57}} +\index{owTerm.cpp@{owTerm.cpp}!wstat@{wstat}} +\index{wstat@{wstat}!owTerm.cpp@{owTerm.cpp}} +\doxysubsubsection{\texorpdfstring{wstat}{wstat}} +{\footnotesize\ttfamily uint16\+\_\+t$\ast$ wstat = N\+U\+LL} + diff --git a/docs/latex/ow_term_8h.tex b/docs/latex/ow_term_8h.tex new file mode 100644 index 0000000..1deb6d7 --- /dev/null +++ b/docs/latex/ow_term_8h.tex @@ -0,0 +1,358 @@ +\hypertarget{ow_term_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/ow\+Term.h File Reference} +\label{ow_term_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/owTerm.h}} +{\ttfamily \#include $<$Dallas\+Temperature.\+h$>$}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Wire.\+h$>$}\newline +{\ttfamily \#include $<$D\+S2482\+\_\+\+One\+Wire.\+h$>$}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{ow_term_8h_a9842f177c8e00b6c38daf3aca290e300}{S\+W\+\_\+\+A\+U\+X0}}~0x40 +\item +\#define \mbox{\hyperlink{ow_term_8h_ac0309c49990b7232afdf7d27f30f42b4}{S\+W\+\_\+\+A\+U\+X1}}~0x80 +\item +\#define \mbox{\hyperlink{ow_term_8h_a2a8205edd6a8a56bd3dcc301b5e89522}{S\+W\+\_\+\+S\+T\+A\+T0}}~0x4 +\item +\#define \mbox{\hyperlink{ow_term_8h_a00243602c461da89cd31481290e64459}{S\+W\+\_\+\+S\+T\+A\+T1}}~0x8 +\item +\#define \mbox{\hyperlink{ow_term_8h_a1db8ee4f7494dbd6852b582086bf8618}{S\+W\+\_\+\+O\+U\+T0}}~0x20 +\item +\#define \mbox{\hyperlink{ow_term_8h_a2b4445eee4ea221bc240c0db281e14d8}{S\+W\+\_\+\+O\+U\+T1}}~0x10 +\item +\#define \mbox{\hyperlink{ow_term_8h_a240dee0900895c9dc452fc3e94319116}{S\+W\+\_\+\+M\+A\+SK}}~0xF +\item +\#define \mbox{\hyperlink{ow_term_8h_a2566855e014080775e472bf2b959b510}{S\+W\+\_\+\+I\+N\+M\+A\+SK}}~0x\+FC +\item +\#define \mbox{\hyperlink{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}{recheck\+\_\+interval}}~5 +\item +\#define \mbox{\hyperlink{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}{check\+\_\+circle}}~2000/\mbox{\hyperlink{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}} +\item +\#define \mbox{\hyperlink{ow_term_8h_a2e409a3583ffd8bf522847aa2babcc65}{S\+W\+\_\+\+F\+I\+ND}}~1 +\item +\#define \mbox{\hyperlink{ow_term_8h_a04b690d8ae7ea22fc1cd850cb28d1a89}{S\+W\+\_\+\+D\+O\+U\+B\+L\+E\+C\+H\+E\+CK}}~2 +\item +\#define \mbox{\hyperlink{ow_term_8h_a3312fd9b274e02275c7e6e14812d8b77}{S\+W\+\_\+\+P\+U\+L\+S\+E0}}~4 +\item +\#define \mbox{\hyperlink{ow_term_8h_ac48f14c4bbb976160877b913707b0555}{S\+W\+\_\+\+P\+U\+L\+S\+E1}}~8 +\item +\#define \mbox{\hyperlink{ow_term_8h_a0ae32f8bd855e4f0d54f2efa7f749432}{S\+W\+\_\+\+P\+U\+L\+S\+E\+\_\+\+P0}}~0x10 +\item +\#define \mbox{\hyperlink{ow_term_8h_aea6e1f060eb378a3f5ac7b0fb75e3321}{S\+W\+\_\+\+P\+U\+L\+S\+E\+\_\+\+P1}}~0x20 +\item +\#define \mbox{\hyperlink{ow_term_8h_a89104025a8859791e89115fef5bc1d74}{S\+W\+\_\+\+C\+H\+A\+N\+G\+E\+D\+\_\+\+P0}}~0x40 +\item +\#define \mbox{\hyperlink{ow_term_8h_a78449cd6b324f70f052efa1c7684f939}{S\+W\+\_\+\+C\+H\+A\+N\+G\+E\+D\+\_\+\+P1}}~0x80 +\item +\#define \mbox{\hyperlink{ow_term_8h_a394220e3a4d07cd1c110c655332bbed1}{S\+W\+\_\+\+P\+U\+L\+S\+E0\+\_\+R}}~0x100 +\item +\#define \mbox{\hyperlink{ow_term_8h_aa5279ea909ec370f1ca60c619cea7b2f}{S\+W\+\_\+\+P\+U\+L\+S\+E1\+\_\+R}}~0x200 +\item +\#define \mbox{\hyperlink{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}{recheck\+\_\+interval}}~5 +\item +\#define \mbox{\hyperlink{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}{check\+\_\+circle}}~2000/\mbox{\hyperlink{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}} +\item +\#define \mbox{\hyperlink{ow_term_8h_a9382f08ab82ba07c710f5b2e9e6ec0f3}{t\+\_\+max}}~20 +\item +\#define \mbox{\hyperlink{ow_term_8h_a41a331314b46059bd942e76ffc60cf4a}{T\+E\+M\+P\+E\+R\+A\+T\+U\+R\+E\+\_\+\+P\+R\+E\+C\+I\+S\+I\+ON}}~12 +\item +\#define \mbox{\hyperlink{ow_term_8h_a92c17810a48118ba0c75809050dd6bbe}{D\+S2482\+\_\+100\+\_\+\+I2\+C\+\_\+\+T\+O\+\_\+1\+W\+\_\+\+B\+R\+I\+D\+GE}} +\end{DoxyCompactItemize} +\doxysubsection*{Typedefs} +\begin{DoxyCompactItemize} +\item +typedef void($\ast$ \mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}}) (int, Device\+Address, float) +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{ow_term_8h_aff3811570b1dd6182d7f45bd573afcfd}{ow\+Update}} () +\item +int \mbox{\hyperlink{ow_term_8h_ac78e14aeb04a12acf45919b64fe0d280}{ow\+Setup}} (\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} ow\+Ch) +\item +void \mbox{\hyperlink{ow_term_8h_a3d8b76952ce1af677267e10c981e6dd5}{ow\+Loop}} () +\item +void \mbox{\hyperlink{ow_term_8h_acbf132b42d0828077bbd21e2b205c5fc}{setup\+Ow\+Idle}} (void($\ast$)()) +\item +int \mbox{\hyperlink{ow_term_8h_a38798dcd7c98c38975db6e3f19de63a3}{ow\+Find}} (Device\+Address addr) +\item +void \mbox{\hyperlink{ow_term_8h_ac9fd793efbaca8922408effe06e71650}{ow\+Add}} (Device\+Address addr) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{ow_term_8h_a564a174b067eee3b33b1162935884d55}{ow\+Arr}} +\item +One\+Wire $\ast$ \mbox{\hyperlink{ow_term_8h_a385b7fa9c4553fcb57ee60a03932b60c}{one\+Wire}} +\item +Dallas\+Temperature $\ast$ \mbox{\hyperlink{ow_term_8h_ab5e031d55a57a0dd79468e5a7cbb5e64}{sensors}} +\item +Device\+Address $\ast$ \mbox{\hyperlink{ow_term_8h_ac8f950395764bcd345b63d2887dae1a0}{term}} +\item +int $\ast$ \mbox{\hyperlink{ow_term_8h_a51d8312908b2e5f09ac8e40879c2f1a9}{regs}} +\item +uint16\+\_\+t $\ast$ \mbox{\hyperlink{ow_term_8h_a31e8c0d5ba0869a2bfbf32fd8caaac57}{wstat}} +\item +int \mbox{\hyperlink{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}} +\item +short \mbox{\hyperlink{ow_term_8h_ac37ce0c409c53b6a18aefbfc3ad46b4a}{si}} +\item +\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} \mbox{\hyperlink{ow_term_8h_ac7999c9efd1309081d54939dc27687ba}{ow\+Changed}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}\label{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}} +\index{owTerm.h@{owTerm.h}!check\_circle@{check\_circle}} +\index{check\_circle@{check\_circle}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{check\_circle}{check\_circle}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily \#define check\+\_\+circle~2000/\mbox{\hyperlink{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}}} + +\mbox{\Hypertarget{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}\label{ow_term_8h_a9db1df6249649d3fca671805ace0ed82}} +\index{owTerm.h@{owTerm.h}!check\_circle@{check\_circle}} +\index{check\_circle@{check\_circle}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{check\_circle}{check\_circle}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily \#define check\+\_\+circle~2000/\mbox{\hyperlink{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}{t\+\_\+count}}} + +\mbox{\Hypertarget{ow_term_8h_a92c17810a48118ba0c75809050dd6bbe}\label{ow_term_8h_a92c17810a48118ba0c75809050dd6bbe}} +\index{owTerm.h@{owTerm.h}!DS2482\_100\_I2C\_TO\_1W\_BRIDGE@{DS2482\_100\_I2C\_TO\_1W\_BRIDGE}} +\index{DS2482\_100\_I2C\_TO\_1W\_BRIDGE@{DS2482\_100\_I2C\_TO\_1W\_BRIDGE}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{DS2482\_100\_I2C\_TO\_1W\_BRIDGE}{DS2482\_100\_I2C\_TO\_1W\_BRIDGE}} +{\footnotesize\ttfamily \#define D\+S2482\+\_\+100\+\_\+\+I2\+C\+\_\+\+T\+O\+\_\+1\+W\+\_\+\+B\+R\+I\+D\+GE} + +\mbox{\Hypertarget{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}\label{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}} +\index{owTerm.h@{owTerm.h}!recheck\_interval@{recheck\_interval}} +\index{recheck\_interval@{recheck\_interval}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{recheck\_interval}{recheck\_interval}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily \#define recheck\+\_\+interval~5} + +\mbox{\Hypertarget{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}\label{ow_term_8h_ab8f08116296551612d3ccdad9e14e23a}} +\index{owTerm.h@{owTerm.h}!recheck\_interval@{recheck\_interval}} +\index{recheck\_interval@{recheck\_interval}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{recheck\_interval}{recheck\_interval}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily \#define recheck\+\_\+interval~5} + +\mbox{\Hypertarget{ow_term_8h_a9842f177c8e00b6c38daf3aca290e300}\label{ow_term_8h_a9842f177c8e00b6c38daf3aca290e300}} +\index{owTerm.h@{owTerm.h}!SW\_AUX0@{SW\_AUX0}} +\index{SW\_AUX0@{SW\_AUX0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_AUX0}{SW\_AUX0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+A\+U\+X0~0x40} + +\mbox{\Hypertarget{ow_term_8h_ac0309c49990b7232afdf7d27f30f42b4}\label{ow_term_8h_ac0309c49990b7232afdf7d27f30f42b4}} +\index{owTerm.h@{owTerm.h}!SW\_AUX1@{SW\_AUX1}} +\index{SW\_AUX1@{SW\_AUX1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_AUX1}{SW\_AUX1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+A\+U\+X1~0x80} + +\mbox{\Hypertarget{ow_term_8h_a89104025a8859791e89115fef5bc1d74}\label{ow_term_8h_a89104025a8859791e89115fef5bc1d74}} +\index{owTerm.h@{owTerm.h}!SW\_CHANGED\_P0@{SW\_CHANGED\_P0}} +\index{SW\_CHANGED\_P0@{SW\_CHANGED\_P0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_CHANGED\_P0}{SW\_CHANGED\_P0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+C\+H\+A\+N\+G\+E\+D\+\_\+\+P0~0x40} + +\mbox{\Hypertarget{ow_term_8h_a78449cd6b324f70f052efa1c7684f939}\label{ow_term_8h_a78449cd6b324f70f052efa1c7684f939}} +\index{owTerm.h@{owTerm.h}!SW\_CHANGED\_P1@{SW\_CHANGED\_P1}} +\index{SW\_CHANGED\_P1@{SW\_CHANGED\_P1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_CHANGED\_P1}{SW\_CHANGED\_P1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+C\+H\+A\+N\+G\+E\+D\+\_\+\+P1~0x80} + +\mbox{\Hypertarget{ow_term_8h_a04b690d8ae7ea22fc1cd850cb28d1a89}\label{ow_term_8h_a04b690d8ae7ea22fc1cd850cb28d1a89}} +\index{owTerm.h@{owTerm.h}!SW\_DOUBLECHECK@{SW\_DOUBLECHECK}} +\index{SW\_DOUBLECHECK@{SW\_DOUBLECHECK}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_DOUBLECHECK}{SW\_DOUBLECHECK}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+D\+O\+U\+B\+L\+E\+C\+H\+E\+CK~2} + +\mbox{\Hypertarget{ow_term_8h_a2e409a3583ffd8bf522847aa2babcc65}\label{ow_term_8h_a2e409a3583ffd8bf522847aa2babcc65}} +\index{owTerm.h@{owTerm.h}!SW\_FIND@{SW\_FIND}} +\index{SW\_FIND@{SW\_FIND}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_FIND}{SW\_FIND}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+F\+I\+ND~1} + +\mbox{\Hypertarget{ow_term_8h_a2566855e014080775e472bf2b959b510}\label{ow_term_8h_a2566855e014080775e472bf2b959b510}} +\index{owTerm.h@{owTerm.h}!SW\_INMASK@{SW\_INMASK}} +\index{SW\_INMASK@{SW\_INMASK}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_INMASK}{SW\_INMASK}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+I\+N\+M\+A\+SK~0x\+FC} + +\mbox{\Hypertarget{ow_term_8h_a240dee0900895c9dc452fc3e94319116}\label{ow_term_8h_a240dee0900895c9dc452fc3e94319116}} +\index{owTerm.h@{owTerm.h}!SW\_MASK@{SW\_MASK}} +\index{SW\_MASK@{SW\_MASK}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_MASK}{SW\_MASK}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+M\+A\+SK~0xF} + +\mbox{\Hypertarget{ow_term_8h_a1db8ee4f7494dbd6852b582086bf8618}\label{ow_term_8h_a1db8ee4f7494dbd6852b582086bf8618}} +\index{owTerm.h@{owTerm.h}!SW\_OUT0@{SW\_OUT0}} +\index{SW\_OUT0@{SW\_OUT0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_OUT0}{SW\_OUT0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+O\+U\+T0~0x20} + +\mbox{\Hypertarget{ow_term_8h_a2b4445eee4ea221bc240c0db281e14d8}\label{ow_term_8h_a2b4445eee4ea221bc240c0db281e14d8}} +\index{owTerm.h@{owTerm.h}!SW\_OUT1@{SW\_OUT1}} +\index{SW\_OUT1@{SW\_OUT1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_OUT1}{SW\_OUT1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+O\+U\+T1~0x10} + +\mbox{\Hypertarget{ow_term_8h_a3312fd9b274e02275c7e6e14812d8b77}\label{ow_term_8h_a3312fd9b274e02275c7e6e14812d8b77}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE0@{SW\_PULSE0}} +\index{SW\_PULSE0@{SW\_PULSE0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE0}{SW\_PULSE0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E0~4} + +\mbox{\Hypertarget{ow_term_8h_a394220e3a4d07cd1c110c655332bbed1}\label{ow_term_8h_a394220e3a4d07cd1c110c655332bbed1}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE0\_R@{SW\_PULSE0\_R}} +\index{SW\_PULSE0\_R@{SW\_PULSE0\_R}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE0\_R}{SW\_PULSE0\_R}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E0\+\_\+R~0x100} + +\mbox{\Hypertarget{ow_term_8h_ac48f14c4bbb976160877b913707b0555}\label{ow_term_8h_ac48f14c4bbb976160877b913707b0555}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE1@{SW\_PULSE1}} +\index{SW\_PULSE1@{SW\_PULSE1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE1}{SW\_PULSE1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E1~8} + +\mbox{\Hypertarget{ow_term_8h_aa5279ea909ec370f1ca60c619cea7b2f}\label{ow_term_8h_aa5279ea909ec370f1ca60c619cea7b2f}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE1\_R@{SW\_PULSE1\_R}} +\index{SW\_PULSE1\_R@{SW\_PULSE1\_R}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE1\_R}{SW\_PULSE1\_R}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E1\+\_\+R~0x200} + +\mbox{\Hypertarget{ow_term_8h_a0ae32f8bd855e4f0d54f2efa7f749432}\label{ow_term_8h_a0ae32f8bd855e4f0d54f2efa7f749432}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE\_P0@{SW\_PULSE\_P0}} +\index{SW\_PULSE\_P0@{SW\_PULSE\_P0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE\_P0}{SW\_PULSE\_P0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E\+\_\+\+P0~0x10} + +\mbox{\Hypertarget{ow_term_8h_aea6e1f060eb378a3f5ac7b0fb75e3321}\label{ow_term_8h_aea6e1f060eb378a3f5ac7b0fb75e3321}} +\index{owTerm.h@{owTerm.h}!SW\_PULSE\_P1@{SW\_PULSE\_P1}} +\index{SW\_PULSE\_P1@{SW\_PULSE\_P1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_PULSE\_P1}{SW\_PULSE\_P1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+P\+U\+L\+S\+E\+\_\+\+P1~0x20} + +\mbox{\Hypertarget{ow_term_8h_a2a8205edd6a8a56bd3dcc301b5e89522}\label{ow_term_8h_a2a8205edd6a8a56bd3dcc301b5e89522}} +\index{owTerm.h@{owTerm.h}!SW\_STAT0@{SW\_STAT0}} +\index{SW\_STAT0@{SW\_STAT0}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_STAT0}{SW\_STAT0}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+T\+A\+T0~0x4} + +\mbox{\Hypertarget{ow_term_8h_a00243602c461da89cd31481290e64459}\label{ow_term_8h_a00243602c461da89cd31481290e64459}} +\index{owTerm.h@{owTerm.h}!SW\_STAT1@{SW\_STAT1}} +\index{SW\_STAT1@{SW\_STAT1}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{SW\_STAT1}{SW\_STAT1}} +{\footnotesize\ttfamily \#define S\+W\+\_\+\+S\+T\+A\+T1~0x8} + +\mbox{\Hypertarget{ow_term_8h_a9382f08ab82ba07c710f5b2e9e6ec0f3}\label{ow_term_8h_a9382f08ab82ba07c710f5b2e9e6ec0f3}} +\index{owTerm.h@{owTerm.h}!t\_max@{t\_max}} +\index{t\_max@{t\_max}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{t\_max}{t\_max}} +{\footnotesize\ttfamily \#define t\+\_\+max~20} + +\mbox{\Hypertarget{ow_term_8h_a41a331314b46059bd942e76ffc60cf4a}\label{ow_term_8h_a41a331314b46059bd942e76ffc60cf4a}} +\index{owTerm.h@{owTerm.h}!TEMPERATURE\_PRECISION@{TEMPERATURE\_PRECISION}} +\index{TEMPERATURE\_PRECISION@{TEMPERATURE\_PRECISION}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{TEMPERATURE\_PRECISION}{TEMPERATURE\_PRECISION}} +{\footnotesize\ttfamily \#define T\+E\+M\+P\+E\+R\+A\+T\+U\+R\+E\+\_\+\+P\+R\+E\+C\+I\+S\+I\+ON~12} + + + +\doxysubsection{Typedef Documentation} +\mbox{\Hypertarget{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}\label{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}} +\index{owTerm.h@{owTerm.h}!owChangedType@{owChangedType}} +\index{owChangedType@{owChangedType}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owChangedType}{owChangedType}} +{\footnotesize\ttfamily typedef void($\ast$ ow\+Changed\+Type) (int, Device\+Address, float)} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{ow_term_8h_ac9fd793efbaca8922408effe06e71650}\label{ow_term_8h_ac9fd793efbaca8922408effe06e71650}} +\index{owTerm.h@{owTerm.h}!owAdd@{owAdd}} +\index{owAdd@{owAdd}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owAdd()}{owAdd()}} +{\footnotesize\ttfamily void ow\+Add (\begin{DoxyParamCaption}\item[{Device\+Address}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8h_a38798dcd7c98c38975db6e3f19de63a3}\label{ow_term_8h_a38798dcd7c98c38975db6e3f19de63a3}} +\index{owTerm.h@{owTerm.h}!owFind@{owFind}} +\index{owFind@{owFind}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owFind()}{owFind()}} +{\footnotesize\ttfamily int ow\+Find (\begin{DoxyParamCaption}\item[{Device\+Address}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8h_a3d8b76952ce1af677267e10c981e6dd5}\label{ow_term_8h_a3d8b76952ce1af677267e10c981e6dd5}} +\index{owTerm.h@{owTerm.h}!owLoop@{owLoop}} +\index{owLoop@{owLoop}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owLoop()}{owLoop()}} +{\footnotesize\ttfamily void ow\+Loop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8h_ac78e14aeb04a12acf45919b64fe0d280}\label{ow_term_8h_ac78e14aeb04a12acf45919b64fe0d280}} +\index{owTerm.h@{owTerm.h}!owSetup@{owSetup}} +\index{owSetup@{owSetup}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owSetup()}{owSetup()}} +{\footnotesize\ttfamily int ow\+Setup (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}}}]{ow\+Ch }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8h_aff3811570b1dd6182d7f45bd573afcfd}\label{ow_term_8h_aff3811570b1dd6182d7f45bd573afcfd}} +\index{owTerm.h@{owTerm.h}!owUpdate@{owUpdate}} +\index{owUpdate@{owUpdate}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owUpdate()}{owUpdate()}} +{\footnotesize\ttfamily int ow\+Update (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{ow_term_8h_acbf132b42d0828077bbd21e2b205c5fc}\label{ow_term_8h_acbf132b42d0828077bbd21e2b205c5fc}} +\index{owTerm.h@{owTerm.h}!setupOwIdle@{setupOwIdle}} +\index{setupOwIdle@{setupOwIdle}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{setupOwIdle()}{setupOwIdle()}} +{\footnotesize\ttfamily void setup\+Ow\+Idle (\begin{DoxyParamCaption}\item[{void($\ast$)()}]{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{ow_term_8h_a385b7fa9c4553fcb57ee60a03932b60c}\label{ow_term_8h_a385b7fa9c4553fcb57ee60a03932b60c}} +\index{owTerm.h@{owTerm.h}!oneWire@{oneWire}} +\index{oneWire@{oneWire}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{oneWire}{oneWire}} +{\footnotesize\ttfamily One\+Wire$\ast$ one\+Wire\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_a564a174b067eee3b33b1162935884d55}\label{ow_term_8h_a564a174b067eee3b33b1162935884d55}} +\index{owTerm.h@{owTerm.h}!owArr@{owArr}} +\index{owArr@{owArr}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owArr}{owArr}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ ow\+Arr\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_ac7999c9efd1309081d54939dc27687ba}\label{ow_term_8h_ac7999c9efd1309081d54939dc27687ba}} +\index{owTerm.h@{owTerm.h}!owChanged@{owChanged}} +\index{owChanged@{owChanged}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{owChanged}{owChanged}} +{\footnotesize\ttfamily \mbox{\hyperlink{ow_term_8h_a9312b7daea28d63649c1548f056f75e6}{ow\+Changed\+Type}} ow\+Changed\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_a51d8312908b2e5f09ac8e40879c2f1a9}\label{ow_term_8h_a51d8312908b2e5f09ac8e40879c2f1a9}} +\index{owTerm.h@{owTerm.h}!regs@{regs}} +\index{regs@{regs}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{regs}{regs}} +{\footnotesize\ttfamily int$\ast$ regs\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_ab5e031d55a57a0dd79468e5a7cbb5e64}\label{ow_term_8h_ab5e031d55a57a0dd79468e5a7cbb5e64}} +\index{owTerm.h@{owTerm.h}!sensors@{sensors}} +\index{sensors@{sensors}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{sensors}{sensors}} +{\footnotesize\ttfamily Dallas\+Temperature$\ast$ sensors\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_ac37ce0c409c53b6a18aefbfc3ad46b4a}\label{ow_term_8h_ac37ce0c409c53b6a18aefbfc3ad46b4a}} +\index{owTerm.h@{owTerm.h}!si@{si}} +\index{si@{si}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{si}{si}} +{\footnotesize\ttfamily short si\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}\label{ow_term_8h_a4e9707ca4dbcd2ddd6d14657f2e12700}} +\index{owTerm.h@{owTerm.h}!t\_count@{t\_count}} +\index{t\_count@{t\_count}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{t\_count}{t\_count}} +{\footnotesize\ttfamily int t\+\_\+count\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_ac8f950395764bcd345b63d2887dae1a0}\label{ow_term_8h_ac8f950395764bcd345b63d2887dae1a0}} +\index{owTerm.h@{owTerm.h}!term@{term}} +\index{term@{term}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{term}{term}} +{\footnotesize\ttfamily Device\+Address$\ast$ term\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{ow_term_8h_a31e8c0d5ba0869a2bfbf32fd8caaac57}\label{ow_term_8h_a31e8c0d5ba0869a2bfbf32fd8caaac57}} +\index{owTerm.h@{owTerm.h}!wstat@{wstat}} +\index{wstat@{wstat}!owTerm.h@{owTerm.h}} +\doxysubsubsection{\texorpdfstring{wstat}{wstat}} +{\footnotesize\ttfamily uint16\+\_\+t$\ast$ wstat\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/refman.tex b/docs/latex/refman.tex new file mode 100644 index 0000000..d461e13 --- /dev/null +++ b/docs/latex/refman.tex @@ -0,0 +1,261 @@ +\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\documentclass[twoside]{book} + +%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package +\usepackage{ifthen} +\ifx\requestedLaTeXdate\undefined +\usepackage{array} +\else +\usepackage{array}[=2016-10-06] +\fi +%% +% Packages required by doxygen +\usepackage{fixltx2e} +\usepackage{calc} +\usepackage{doxygen} +\usepackage{graphicx} +\usepackage[utf8]{inputenc} +\usepackage{makeidx} +\usepackage{multicol} +\usepackage{multirow} +\PassOptionsToPackage{warn}{textcomp} +\usepackage{textcomp} +\usepackage[nointegrals]{wasysym} +\usepackage[table]{xcolor} +\usepackage{ifpdf,ifxetex} + +% Font selection +\usepackage[T1]{fontenc} +\usepackage[scaled=.90]{helvet} +\usepackage{courier} +\renewcommand{\familydefault}{\sfdefault} +\usepackage{amssymb} +\usepackage{sectsty} +\allsectionsfont{% + \fontseries{bc}\selectfont% + \color{darkgray}% +} +\renewcommand{\DoxyLabelFont}{% + \fontseries{bc}\selectfont% + \color{darkgray}% +} +\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}} + +% Arguments of doxygenemoji: +% 1) '::' form of the emoji, already "LaTeX"-escaped +% 2) file with the name of the emoji without the .png extension +% in case image exist use this otherwise use the '::' form +\newcommand{\doxygenemoji}[2]{% + \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}% +} +% Page & text layout +\usepackage{geometry} +\geometry{% + a4paper,% + top=2.5cm,% + bottom=2.5cm,% + left=2.5cm,% + right=2.5cm% +} +\tolerance=750 +\hfuzz=15pt +\hbadness=750 +\setlength{\emergencystretch}{15pt} +\setlength{\parindent}{0cm} +\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}} +\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}} +\doxynormalparskip +\makeatletter +\renewcommand{\paragraph}{% + \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{% + \normalfont\normalsize\bfseries\SS@parafont% + }% +} +\renewcommand{\subparagraph}{% + \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{% + \normalfont\normalsize\bfseries\SS@subparafont% + }% +} +\makeatother + +\makeatletter +\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@} +\makeatother + +% Headers & footers +\usepackage{fancyhdr} +\pagestyle{fancyplain} +\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}} +\fancyhead[CE]{\fancyplain{}{}} +\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}} +\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}} +\fancyhead[CO]{\fancyplain{}{}} +\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}} +\fancyfoot[LE]{\fancyplain{}{}} +\fancyfoot[CE]{\fancyplain{}{}} +\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} +\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} +\fancyfoot[CO]{\fancyplain{}{}} +\fancyfoot[RO]{\fancyplain{}{}} +\renewcommand{\footrulewidth}{0.4pt} +\renewcommand{\chaptermark}[1]{% + \markboth{#1}{}% +} +\renewcommand{\sectionmark}[1]{% + \markright{\thesection\ #1}% +} + +% Indices & bibliography +\usepackage{natbib} +\usepackage[titles]{tocloft} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{5} +\makeindex + +\usepackage{newunicodechar} + \newunicodechar{⁻}{${}^{-}$}% Superscript minus + \newunicodechar{²}{${}^{2}$}% Superscript two + \newunicodechar{³}{${}^{3}$}% Superscript three + +% Hyperlinks (required, but should be loaded last) +\ifpdf + \usepackage[pdftex,pagebackref=true]{hyperref} +\else + \ifxetex + \usepackage[pagebackref=true]{hyperref} + \else + \usepackage[ps2pdf,pagebackref=true]{hyperref} + \fi +\fi + +\hypersetup{% + colorlinks=true,% + linkcolor=blue,% + citecolor=blue,% + unicode% +} + +% Custom commands +\newcommand{\clearemptydoublepage}{% + \newpage{\pagestyle{empty}\cleardoublepage}% +} + +\usepackage{caption} +\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top} + +\usepackage{etoc} +\etocsettocstyle{\doxytocparskip}{\doxynormalparskip} +\renewcommand{\numberline}[1]{#1~} +%===== C O N T E N T S ===== + +\begin{document} + +% Titlepage & ToC +\hypersetup{pageanchor=false, + bookmarksnumbered=true, + pdfencoding=unicode + } +\pagenumbering{alph} +\begin{titlepage} +\vspace*{7cm} +\begin{center}% +{\Large Light\+Hub }\\ +\vspace*{1cm} +{\large Generated by Doxygen 1.8.20}\\ +\end{center} +\end{titlepage} +\clearemptydoublepage +\pagenumbering{roman} +\tableofcontents +\clearemptydoublepage +\pagenumbering{arabic} +\hypersetup{pageanchor=true} + +%--- Begin generated contents --- +\chapter{Hierarchical Index} +\input{hierarchy} +\chapter{Class Index} +\input{annotated} +\chapter{File Index} +\input{files} +\chapter{Class Documentation} +\input{classabstract_ch} +\input{classabstract_in} +\input{classabstract_out} +\input{classch_persistent} +\input{classcolor_channel} +\input{classin__ccs811} +\input{classin__hdc1080} +\input{class_input} +\input{unionin_store} +\input{class_item} +\input{unionitem_arg_store} +\input{classitem_cmd} +\input{unionitem_cmd_store} +\input{classmb_persistent} +\input{classout___a_c} +\input{classout__dmx} +\input{classout___modbus} +\input{classout___motor} +\input{classout__pwm} +\input{classout___s_p_i_led} +\input{classread_cache} +\input{structreg__t} +\input{structserial__t} +\input{classstatus_l_e_d} +\input{class_streamlog} +\input{union_u_i_d} +\chapter{File Documentation} +\input{abstractch_8cpp} +\input{abstractch_8h} +\input{abstractin_8cpp} +\input{abstractin_8h} +\input{abstractout_8h} +\input{bright_8cpp} +\input{bright_8h} +\input{colorchannel_8cpp} +\input{colorchannel_8h} +\input{dmx_8cpp} +\input{dmx_8h} +\input{inputs_8cpp} +\input{inputs_8h} +\input{item_8cpp} +\input{item_8h} +\input{item_cmd_8cpp} +\input{item_cmd_8h} +\input{main_8cpp} +\input{main_8h} +\input{in__ccs811__hdc1080_8cpp} +\input{in__ccs811__hdc1080_8h} +\input{out__ac_8cpp} +\input{out__ac_8h} +\input{out__dmx_8cpp} +\input{out__dmx_8h} +\input{out__modbus_8cpp} +\input{out__modbus_8h} +\input{out__motor_8cpp} +\input{out__motor_8h} +\input{out__pwm_8cpp} +\input{out__pwm_8h} +\input{out__spiled_8cpp} +\input{out__spiled_8h} +\input{options_8h} +\input{ow_term_8cpp} +\input{ow_term_8h} +\input{statusled_8cpp} +\input{statusled_8h} +\input{streamlog_8cpp} +\input{streamlog_8h} +\input{textconst_8h} +\input{utils_8cpp} +\input{utils_8h} +%--- End generated contents --- + +% Index +\backmatter +\newpage +\phantomsection +\clearemptydoublepage +\addcontentsline{toc}{chapter}{\indexname} +\printindex + +\end{document} diff --git a/docs/latex/statusled_8cpp.tex b/docs/latex/statusled_8cpp.tex new file mode 100644 index 0000000..f3cc801 --- /dev/null +++ b/docs/latex/statusled_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{statusled_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/statusled.cpp File Reference} +\label{statusled_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.cpp}} +{\ttfamily \#include \char`\"{}statusled.\+h\char`\"{}}\newline diff --git a/docs/latex/statusled_8h.tex b/docs/latex/statusled_8h.tex new file mode 100644 index 0000000..1c51805 --- /dev/null +++ b/docs/latex/statusled_8h.tex @@ -0,0 +1,118 @@ +\hypertarget{statusled_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/statusled.h File Reference} +\label{statusled_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/statusled.h}} +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{classstatus_l_e_d}{status\+L\+ED}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{statusled_8h_abfe826857256aa93aa762e7d98390743}{led\+R\+ED}}~1 +\item +\#define \mbox{\hyperlink{statusled_8h_a3ee296c79e4936c800e6730f733737c5}{led\+G\+R\+E\+EN}}~2 +\item +\#define \mbox{\hyperlink{statusled_8h_a54932b3e1a9e2111b9d6f1942c9502e2}{led\+B\+L\+UE}}~4 +\item +\#define \mbox{\hyperlink{statusled_8h_afde6ff647a44b9f2bbcc0804b3c9d950}{led\+B\+L\+I\+NK}}~8 +\item +\#define \mbox{\hyperlink{statusled_8h_ab9aeb6ac9ca5ac56497211a67cca7f8e}{led\+F\+A\+S\+T\+B\+L\+I\+NK}}~16 +\item +\#define \mbox{\hyperlink{statusled_8h_ade6c6ff9e05c884cf0eae053230d3bf2}{led\+Params}}~(\mbox{\hyperlink{statusled_8h_abfe826857256aa93aa762e7d98390743}{led\+R\+ED}} $\vert$ \mbox{\hyperlink{statusled_8h_a3ee296c79e4936c800e6730f733737c5}{led\+G\+R\+E\+EN}} $\vert$ \mbox{\hyperlink{statusled_8h_a54932b3e1a9e2111b9d6f1942c9502e2}{led\+B\+L\+UE}} $\vert$ \mbox{\hyperlink{statusled_8h_afde6ff647a44b9f2bbcc0804b3c9d950}{led\+B\+L\+I\+NK}} $\vert$ \mbox{\hyperlink{statusled_8h_ab9aeb6ac9ca5ac56497211a67cca7f8e}{led\+F\+A\+S\+T\+B\+L\+I\+NK}}) +\item +\#define \mbox{\hyperlink{statusled_8h_aa68d61961165bd42444cba4dcefb4726}{led\+Flash}}~32 +\item +\#define \mbox{\hyperlink{statusled_8h_a3e8259c89abd4a7013c4bc87274e09c7}{led\+Hidden}}~64 +\item +\#define \mbox{\hyperlink{statusled_8h_afd1828ca857e3e7e8216fb55eb761ca0}{pin\+R\+ED}}~50 +\item +\#define \mbox{\hyperlink{statusled_8h_a813708e0211b3df165cce073367b4935}{pin\+G\+R\+E\+EN}}~51 +\item +\#define \mbox{\hyperlink{statusled_8h_a2ad8c4dedfb08572b319c83ba9f42e90}{pin\+B\+L\+UE}}~52 +\item +\#define \mbox{\hyperlink{statusled_8h_aaf229718aeb968c22e9aa6f593817c99}{led\+Delayms}}~1000\+UL +\item +\#define \mbox{\hyperlink{statusled_8h_aff5146ea744dbe707098bdb5cdca32a6}{led\+Fast\+Delayms}}~300\+UL +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{statusled_8h_afde6ff647a44b9f2bbcc0804b3c9d950}\label{statusled_8h_afde6ff647a44b9f2bbcc0804b3c9d950}} +\index{statusled.h@{statusled.h}!ledBLINK@{ledBLINK}} +\index{ledBLINK@{ledBLINK}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledBLINK}{ledBLINK}} +{\footnotesize\ttfamily \#define led\+B\+L\+I\+NK~8} + +\mbox{\Hypertarget{statusled_8h_a54932b3e1a9e2111b9d6f1942c9502e2}\label{statusled_8h_a54932b3e1a9e2111b9d6f1942c9502e2}} +\index{statusled.h@{statusled.h}!ledBLUE@{ledBLUE}} +\index{ledBLUE@{ledBLUE}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledBLUE}{ledBLUE}} +{\footnotesize\ttfamily \#define led\+B\+L\+UE~4} + +\mbox{\Hypertarget{statusled_8h_aaf229718aeb968c22e9aa6f593817c99}\label{statusled_8h_aaf229718aeb968c22e9aa6f593817c99}} +\index{statusled.h@{statusled.h}!ledDelayms@{ledDelayms}} +\index{ledDelayms@{ledDelayms}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledDelayms}{ledDelayms}} +{\footnotesize\ttfamily \#define led\+Delayms~1000\+UL} + +\mbox{\Hypertarget{statusled_8h_ab9aeb6ac9ca5ac56497211a67cca7f8e}\label{statusled_8h_ab9aeb6ac9ca5ac56497211a67cca7f8e}} +\index{statusled.h@{statusled.h}!ledFASTBLINK@{ledFASTBLINK}} +\index{ledFASTBLINK@{ledFASTBLINK}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledFASTBLINK}{ledFASTBLINK}} +{\footnotesize\ttfamily \#define led\+F\+A\+S\+T\+B\+L\+I\+NK~16} + +\mbox{\Hypertarget{statusled_8h_aff5146ea744dbe707098bdb5cdca32a6}\label{statusled_8h_aff5146ea744dbe707098bdb5cdca32a6}} +\index{statusled.h@{statusled.h}!ledFastDelayms@{ledFastDelayms}} +\index{ledFastDelayms@{ledFastDelayms}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledFastDelayms}{ledFastDelayms}} +{\footnotesize\ttfamily \#define led\+Fast\+Delayms~300\+UL} + +\mbox{\Hypertarget{statusled_8h_aa68d61961165bd42444cba4dcefb4726}\label{statusled_8h_aa68d61961165bd42444cba4dcefb4726}} +\index{statusled.h@{statusled.h}!ledFlash@{ledFlash}} +\index{ledFlash@{ledFlash}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledFlash}{ledFlash}} +{\footnotesize\ttfamily \#define led\+Flash~32} + +\mbox{\Hypertarget{statusled_8h_a3ee296c79e4936c800e6730f733737c5}\label{statusled_8h_a3ee296c79e4936c800e6730f733737c5}} +\index{statusled.h@{statusled.h}!ledGREEN@{ledGREEN}} +\index{ledGREEN@{ledGREEN}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledGREEN}{ledGREEN}} +{\footnotesize\ttfamily \#define led\+G\+R\+E\+EN~2} + +\mbox{\Hypertarget{statusled_8h_a3e8259c89abd4a7013c4bc87274e09c7}\label{statusled_8h_a3e8259c89abd4a7013c4bc87274e09c7}} +\index{statusled.h@{statusled.h}!ledHidden@{ledHidden}} +\index{ledHidden@{ledHidden}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledHidden}{ledHidden}} +{\footnotesize\ttfamily \#define led\+Hidden~64} + +\mbox{\Hypertarget{statusled_8h_ade6c6ff9e05c884cf0eae053230d3bf2}\label{statusled_8h_ade6c6ff9e05c884cf0eae053230d3bf2}} +\index{statusled.h@{statusled.h}!ledParams@{ledParams}} +\index{ledParams@{ledParams}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledParams}{ledParams}} +{\footnotesize\ttfamily \#define led\+Params~(\mbox{\hyperlink{statusled_8h_abfe826857256aa93aa762e7d98390743}{led\+R\+ED}} $\vert$ \mbox{\hyperlink{statusled_8h_a3ee296c79e4936c800e6730f733737c5}{led\+G\+R\+E\+EN}} $\vert$ \mbox{\hyperlink{statusled_8h_a54932b3e1a9e2111b9d6f1942c9502e2}{led\+B\+L\+UE}} $\vert$ \mbox{\hyperlink{statusled_8h_afde6ff647a44b9f2bbcc0804b3c9d950}{led\+B\+L\+I\+NK}} $\vert$ \mbox{\hyperlink{statusled_8h_ab9aeb6ac9ca5ac56497211a67cca7f8e}{led\+F\+A\+S\+T\+B\+L\+I\+NK}})} + +\mbox{\Hypertarget{statusled_8h_abfe826857256aa93aa762e7d98390743}\label{statusled_8h_abfe826857256aa93aa762e7d98390743}} +\index{statusled.h@{statusled.h}!ledRED@{ledRED}} +\index{ledRED@{ledRED}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{ledRED}{ledRED}} +{\footnotesize\ttfamily \#define led\+R\+ED~1} + +\mbox{\Hypertarget{statusled_8h_a2ad8c4dedfb08572b319c83ba9f42e90}\label{statusled_8h_a2ad8c4dedfb08572b319c83ba9f42e90}} +\index{statusled.h@{statusled.h}!pinBLUE@{pinBLUE}} +\index{pinBLUE@{pinBLUE}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{pinBLUE}{pinBLUE}} +{\footnotesize\ttfamily \#define pin\+B\+L\+UE~52} + +\mbox{\Hypertarget{statusled_8h_a813708e0211b3df165cce073367b4935}\label{statusled_8h_a813708e0211b3df165cce073367b4935}} +\index{statusled.h@{statusled.h}!pinGREEN@{pinGREEN}} +\index{pinGREEN@{pinGREEN}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{pinGREEN}{pinGREEN}} +{\footnotesize\ttfamily \#define pin\+G\+R\+E\+EN~51} + +\mbox{\Hypertarget{statusled_8h_afd1828ca857e3e7e8216fb55eb761ca0}\label{statusled_8h_afd1828ca857e3e7e8216fb55eb761ca0}} +\index{statusled.h@{statusled.h}!pinRED@{pinRED}} +\index{pinRED@{pinRED}!statusled.h@{statusled.h}} +\doxysubsubsection{\texorpdfstring{pinRED}{pinRED}} +{\footnotesize\ttfamily \#define pin\+R\+ED~50} + diff --git a/docs/latex/streamlog_8cpp.tex b/docs/latex/streamlog_8cpp.tex new file mode 100644 index 0000000..1a7b2b8 --- /dev/null +++ b/docs/latex/streamlog_8cpp.tex @@ -0,0 +1,5 @@ +\hypertarget{streamlog_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/streamlog.cpp File Reference} +\label{streamlog_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.cpp}} +{\ttfamily \#include \char`\"{}streamlog.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +{\ttfamily \#include \char`\"{}statusled.\+h\char`\"{}}\newline diff --git a/docs/latex/streamlog_8h.tex b/docs/latex/streamlog_8h.tex new file mode 100644 index 0000000..f65e87c --- /dev/null +++ b/docs/latex/streamlog_8h.tex @@ -0,0 +1,48 @@ +\hypertarget{streamlog_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/streamlog.h File Reference} +\label{streamlog_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/streamlog.h}} +{\ttfamily \#include $<$Print.\+h$>$}\newline +{\ttfamily \#include $<$Hardware\+Serial.\+h$>$}\newline +{\ttfamily \#include $<$inttypes.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_streamlog}{Streamlog}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{streamlog_8h_a2e75de3d470df65326791691c3039c70}{L\+O\+G\+B\+U\+F\+F\+E\+R\+\_\+\+S\+I\+ZE}}~80 +\item +\#define \mbox{\hyperlink{streamlog_8h_a6ff63e8955665c4a58b1598f2b07c51a}{L\+O\+G\+\_\+\+D\+E\+B\+UG}}~7 +\item +\#define \mbox{\hyperlink{streamlog_8h_aeb4f36db01bd128c7afeac5889dac311}{L\+O\+G\+\_\+\+I\+N\+FO}}~6 +\item +\#define \mbox{\hyperlink{streamlog_8h_aced66975c154ea0e2a8ec3bc818b4e08}{L\+O\+G\+\_\+\+E\+R\+R\+OR}}~3 +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{streamlog_8h_a6ff63e8955665c4a58b1598f2b07c51a}\label{streamlog_8h_a6ff63e8955665c4a58b1598f2b07c51a}} +\index{streamlog.h@{streamlog.h}!LOG\_DEBUG@{LOG\_DEBUG}} +\index{LOG\_DEBUG@{LOG\_DEBUG}!streamlog.h@{streamlog.h}} +\doxysubsubsection{\texorpdfstring{LOG\_DEBUG}{LOG\_DEBUG}} +{\footnotesize\ttfamily \#define L\+O\+G\+\_\+\+D\+E\+B\+UG~7} + +\mbox{\Hypertarget{streamlog_8h_aced66975c154ea0e2a8ec3bc818b4e08}\label{streamlog_8h_aced66975c154ea0e2a8ec3bc818b4e08}} +\index{streamlog.h@{streamlog.h}!LOG\_ERROR@{LOG\_ERROR}} +\index{LOG\_ERROR@{LOG\_ERROR}!streamlog.h@{streamlog.h}} +\doxysubsubsection{\texorpdfstring{LOG\_ERROR}{LOG\_ERROR}} +{\footnotesize\ttfamily \#define L\+O\+G\+\_\+\+E\+R\+R\+OR~3} + +\mbox{\Hypertarget{streamlog_8h_aeb4f36db01bd128c7afeac5889dac311}\label{streamlog_8h_aeb4f36db01bd128c7afeac5889dac311}} +\index{streamlog.h@{streamlog.h}!LOG\_INFO@{LOG\_INFO}} +\index{LOG\_INFO@{LOG\_INFO}!streamlog.h@{streamlog.h}} +\doxysubsubsection{\texorpdfstring{LOG\_INFO}{LOG\_INFO}} +{\footnotesize\ttfamily \#define L\+O\+G\+\_\+\+I\+N\+FO~6} + +\mbox{\Hypertarget{streamlog_8h_a2e75de3d470df65326791691c3039c70}\label{streamlog_8h_a2e75de3d470df65326791691c3039c70}} +\index{streamlog.h@{streamlog.h}!LOGBUFFER\_SIZE@{LOGBUFFER\_SIZE}} +\index{LOGBUFFER\_SIZE@{LOGBUFFER\_SIZE}!streamlog.h@{streamlog.h}} +\doxysubsubsection{\texorpdfstring{LOGBUFFER\_SIZE}{LOGBUFFER\_SIZE}} +{\footnotesize\ttfamily \#define L\+O\+G\+B\+U\+F\+F\+E\+R\+\_\+\+S\+I\+ZE~80} + diff --git a/docs/latex/structreg__t.tex b/docs/latex/structreg__t.tex new file mode 100644 index 0000000..33c28db --- /dev/null +++ b/docs/latex/structreg__t.tex @@ -0,0 +1,29 @@ +\hypertarget{structreg__t}{}\doxysection{reg\+\_\+t Struct Reference} +\label{structreg__t}\index{reg\_t@{reg\_t}} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +const char \mbox{\hyperlink{structreg__t_a19c41c63cb0e2ae177246afda5b37711}{verb}} \mbox{[}4\mbox{]} +\item +const uint8\+\_\+t \mbox{\hyperlink{structreg__t_aa6f178d356ff8de15842a2070c46ff64}{id}} +\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{structreg__t_aa6f178d356ff8de15842a2070c46ff64}\label{structreg__t_aa6f178d356ff8de15842a2070c46ff64}} +\index{reg\_t@{reg\_t}!id@{id}} +\index{id@{id}!reg\_t@{reg\_t}} +\doxysubsubsection{\texorpdfstring{id}{id}} +{\footnotesize\ttfamily const uint8\+\_\+t reg\+\_\+t\+::id} + +\mbox{\Hypertarget{structreg__t_a19c41c63cb0e2ae177246afda5b37711}\label{structreg__t_a19c41c63cb0e2ae177246afda5b37711}} +\index{reg\_t@{reg\_t}!verb@{verb}} +\index{verb@{verb}!reg\_t@{reg\_t}} +\doxysubsubsection{\texorpdfstring{verb}{verb}} +{\footnotesize\ttfamily const char reg\+\_\+t\+::verb\mbox{[}4\mbox{]}} + + + +The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8cpp}{out\+\_\+modbus.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/structserial__t.tex b/docs/latex/structserial__t.tex new file mode 100644 index 0000000..e395bde --- /dev/null +++ b/docs/latex/structserial__t.tex @@ -0,0 +1,29 @@ +\hypertarget{structserial__t}{}\doxysection{serial\+\_\+t Struct Reference} +\label{structserial__t}\index{serial\_t@{serial\_t}} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +const char \mbox{\hyperlink{structserial__t_a8e4f99f18fbb7bf2282dc6f6d1d3eb51}{verb}} \mbox{[}4\mbox{]} +\item +const uint16\+\_\+t \mbox{\hyperlink{structserial__t_a71ff16c34a2531c91586d864c415f1e7}{mode}} +\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{structserial__t_a71ff16c34a2531c91586d864c415f1e7}\label{structserial__t_a71ff16c34a2531c91586d864c415f1e7}} +\index{serial\_t@{serial\_t}!mode@{mode}} +\index{mode@{mode}!serial\_t@{serial\_t}} +\doxysubsubsection{\texorpdfstring{mode}{mode}} +{\footnotesize\ttfamily const uint16\+\_\+t serial\+\_\+t\+::mode} + +\mbox{\Hypertarget{structserial__t_a8e4f99f18fbb7bf2282dc6f6d1d3eb51}\label{structserial__t_a8e4f99f18fbb7bf2282dc6f6d1d3eb51}} +\index{serial\_t@{serial\_t}!verb@{verb}} +\index{verb@{verb}!serial\_t@{serial\_t}} +\doxysubsubsection{\texorpdfstring{verb}{verb}} +{\footnotesize\ttfamily const char serial\+\_\+t\+::verb\mbox{[}4\mbox{]}} + + + +The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/modules/\mbox{\hyperlink{out__modbus_8cpp}{out\+\_\+modbus.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/tabu_doxygen.sty b/docs/latex/tabu_doxygen.sty new file mode 100644 index 0000000..60fd7e8 --- /dev/null +++ b/docs/latex/tabu_doxygen.sty @@ -0,0 +1,2557 @@ +%% +%% This is file `tabu.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% tabu.dtx (with options: `package') +%% +%% This is a generated file. +%% Copyright (FC) 2010-2011 - lppl +%% +%% tabu : 2011/02/26 v2.8 - tabu : Flexible LaTeX tabulars +%% +%% ********************************************************************************************** +%% \begin{tabu} { preamble } => default target: \linewidth or \linegoal +%% \begin{tabu} to { preamble } => target specified +%% \begin{tabu} spread { preamble } => target relative to the ``natural width'' +%% +%% tabu works in text and in math modes. +%% +%% X columns: automatic width adjustment + horizontal and vertical alignment +%% \begin{tabu} { X[4c] X[1c] X[-2ml] } +%% +%% Horizontal lines and / or leaders: +%% \hline\hline => double horizontal line +%% \firsthline\hline => for nested tabulars +%% \lasthline\hline => for nested tabulars +%% \tabucline[line spec]{column-column} => ``funny'' lines (dash/leader) +%% Automatic lines / leaders : +%% \everyrow{\hline\hline} +%% +%% Vertical lines and / or leaders: +%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt blue] } +%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt on 2pt off 4pt blue] } +%% +%% Fixed vertical spacing adjustment: +%% \extrarowheight= \extrarowdepth= +%% or: \extrarowsep= => may be prefixed by \global +%% +%% Dynamic vertical spacing adjustment: +%% \abovetabulinesep= \belowtabulinesep= +%% or: \tabulinesep= => may be prefixed by \global +%% +%% delarray.sty shortcuts: in math and text modes +%% \begin{tabu} .... \({ preamble }\) +%% +%% Algorithms reports: +%% \tracingtabu=1 \tracingtabu=2 +%% +%% ********************************************************************************************** +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% +%% This work consists of the main source file tabu.dtx +%% and the derived files +%% tabu.sty, tabu.pdf, tabu.ins +%% +%% tabu : Flexible LaTeX tabulars +%% lppl copyright 2010-2011 by FC +%% + +\NeedsTeXFormat{LaTeX2e}[2005/12/01] +\ProvidesPackage{tabu_doxygen}[2011/02/26 v2.8 - flexible LaTeX tabulars (FC), frozen version for doxygen] +\RequirePackage{array}[2008/09/09] +\RequirePackage{varwidth}[2009/03/30] +\AtEndOfPackage{\tabu@AtEnd \let\tabu@AtEnd \@undefined} +\let\tabu@AtEnd\@empty +\def\TMP@EnsureCode#1={% + \edef\tabu@AtEnd{\tabu@AtEnd + \catcode#1 \the\catcode#1}% + \catcode#1=% +}% \TMP@EnsureCode +\TMP@EnsureCode 33 = 12 % ! +\TMP@EnsureCode 58 = 12 % : (for siunitx) +\TMP@EnsureCode124 = 12 % | +\TMP@EnsureCode 36 = 3 % $ = math shift +\TMP@EnsureCode 38 = 4 % & = tab alignment character +\TMP@EnsureCode 32 = 10 % space +\TMP@EnsureCode 94 = 7 % ^ +\TMP@EnsureCode 95 = 8 % _ +%% Constants -------------------------------------------------------- +\newcount \c@taburow \def\thetaburow {\number\c@taburow} +\newcount \tabu@nbcols +\newcount \tabu@cnt +\newcount \tabu@Xcol +\let\tabu@start \@tempcnta +\let\tabu@stop \@tempcntb +\newcount \tabu@alloc \tabu@alloc=\m@ne +\newcount \tabu@nested +\def\tabu@alloc@{\global\advance\tabu@alloc \@ne \tabu@nested\tabu@alloc} +\newdimen \tabu@target +\newdimen \tabu@spreadtarget +\newdimen \tabu@naturalX +\newdimen \tabucolX +\let\tabu@DELTA \@tempdimc +\let\tabu@thick \@tempdima +\let\tabu@on \@tempdimb +\let\tabu@off \@tempdimc +\newdimen \tabu@Xsum +\newdimen \extrarowdepth +\newdimen \abovetabulinesep +\newdimen \belowtabulinesep +\newdimen \tabustrutrule \tabustrutrule \z@ +\newtoks \tabu@thebody +\newtoks \tabu@footnotes +\newsavebox \tabu@box +\newsavebox \tabu@arstrutbox +\newsavebox \tabu@hleads +\newsavebox \tabu@vleads +\newif \iftabu@colortbl +\newif \iftabu@siunitx +\newif \iftabu@measuring +\newif \iftabu@spread +\newif \iftabu@negcoef +\newif \iftabu@everyrow +\def\tabu@everyrowtrue {\global\let\iftabu@everyrow \iftrue} +\def\tabu@everyrowfalse{\global\let\iftabu@everyrow \iffalse} +\newif \iftabu@long +\newif \iftabuscantokens +\def\tabu@rescan {\tabu@verbatim \scantokens } +%% Utilities (for internal usage) ----------------------------------- +\def\tabu@gobblespace #1 {#1} +\def\tabu@gobbletoken #1#2{#1} +\def\tabu@gobbleX{\futurelet\@let@token \tabu@gobblex} +\def\tabu@gobblex{\if ^^J\noexpand\@let@token \expandafter\@gobble + \else\ifx \@sptoken\@let@token + \expandafter\tabu@gobblespace\expandafter\tabu@gobbleX + \fi\fi +}% \tabu@gobblex +\def\tabu@X{^^J} +{\obeyspaces +\global\let\tabu@spxiii= % saves an active space (for \ifx) +\gdef\tabu@@spxiii{ }} +\def\tabu@ifenvir {% only for \multicolumn + \expandafter\tabu@if@nvir\csname\@currenvir\endcsname +}% \tabu@ifenvir +\def\tabu@if@nvir #1{\csname @\ifx\tabu#1first\else + \ifx\longtabu#1first\else + second\fi\fi oftwo\endcsname +}% \tabu@ifenvir +\def\tabu@modulo #1#2{\numexpr\ifnum\numexpr#1=\z@ 0\else #1-(#1-(#2-1)/2)/(#2)*(#2)\fi} +{\catcode`\&=3 +\gdef\tabu@strtrim #1{% #1 = control sequence to trim + \ifodd 1\ifx #1\@empty \else \ifx #1\space \else 0\fi \fi + \let\tabu@c@l@r \@empty \let#1\@empty + \else \expandafter \tabu@trimspaces #1\@nnil + \fi +}% \tabu@strtrim +\gdef\tabu@trimspaces #1\@nnil{\let\tabu@c@l@r=#2\tabu@firstspace .#1& }% +\gdef\tabu@firstspace #1#2#3 &{\tabu@lastspace #2#3&} +\gdef\tabu@lastspace #1{\def #3{#1}% + \ifx #3\tabu@c@l@r \def\tabu@c@l@r{\protect\color{#1}}\expandafter\remove@to@nnil \fi + \tabu@trimspaces #1\@nnil} +}% \catcode +\def\tabu@sanitizearg #1#2{{% + \csname \ifcsname if@safe@actives\endcsname % + @safe@activestrue\else + relax\fi \endcsname + \edef#2{#1}\tabu@strtrim#2\@onelevel@sanitize#2% + \expandafter}\expandafter\def\expandafter#2\expandafter{#2}% +}% \tabu@sanitizearg +\def\tabu@textbar #1{\begingroup \endlinechar\m@ne \scantokens{\def\:{|}}% + \expandafter\endgroup \expandafter#1\:% !!! semi simple group !!! +}% \tabu@textbar +\def\tabu@everyrow@bgroup{\iftabu@everyrow \begingroup \else \noalign{\ifnum0=`}\fi \fi} +\def\tabu@everyrow@egroup{% + \iftabu@everyrow \expandafter \endgroup \the\toks@ + \else \ifnum0=`{\fi}% + \fi +}% \tabu@everyrow@egroup +\def\tabu@arstrut {\global\setbox\@arstrutbox \hbox{\vrule + height \arraystretch \dimexpr\ht\strutbox+\extrarowheight + depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth + width \z@}% +}% \tabu@arstrut +\def\tabu@rearstrut {% + \@tempdima \arraystretch\dimexpr\ht\strutbox+\extrarowheight \relax + \@tempdimb \arraystretch\dimexpr\dp\strutbox+\extrarowdepth \relax + \ifodd 1\ifdim \ht\@arstrutbox=\@tempdima + \ifdim \dp\@arstrutbox=\@tempdimb 0 \fi\fi + \tabu@mkarstrut + \fi +}% \tabu@rearstrut +\def\tabu@@DBG #1{\ifdim\tabustrutrule>\z@ \color{#1}\fi} +\def\tabu@DBG@arstrut {\global\setbox\@arstrutbox + \hbox to\z@{\hbox to\z@{\hss + {\tabu@DBG{cyan}\vrule + height \arraystretch \dimexpr\ht\strutbox+\extrarowheight + depth \z@ + width \tabustrutrule}\kern-\tabustrutrule + {\tabu@DBG{pink}\vrule + height \z@ + depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth + width \tabustrutrule}}}% +}% \tabu@DBG@arstrut +\def\tabu@save@decl{\toks\count@ \expandafter{\the\toks\expandafter\count@ + \@nextchar}}% +\def\tabu@savedecl{\ifcat$\d@llarend\else + \let\save@decl \tabu@save@decl \fi % no inversion of tokens in text mode +}% \tabu@savedecl +\def\tabu@finalstrut #1{\unskip\ifhmode\nobreak\fi\vrule height\z@ depth\z@ width\z@} +\newcommand*\tabuDisableCommands {\g@addto@macro\tabu@trialh@@k } +\let\tabu@trialh@@k \@empty +\def\tabu@nowrite #1#{{\afterassignment}\toks@} +\let\tabu@write\write +\let\tabu@immediate\immediate +\def\tabu@WRITE{\begingroup + \def\immediate\write{\aftergroup\endgroup + \tabu@immediate\tabu@write}% +}% \tabu@WRITE +\expandafter\def\expandafter\tabu@GenericError\expandafter{% + \expandafter\tabu@WRITE\GenericError} +\def\tabu@warn{\tabu@WRITE\PackageWarning{tabu}} +\def\tabu@noxfootnote [#1]{\@gobble} +\def\tabu@nocolor #1#{\@gobble} +\newcommand*\tabu@norowcolor[2][]{} +\def\tabu@maybesiunitx #1{\def\tabu@temp{#1}% + \futurelet\@let@token \tabu@m@ybesiunitx} +\def\tabu@m@ybesiunitx #1{\def\tabu@m@ybesiunitx {% + \ifx #1\@let@token \let\tabu@cellleft \@empty \let\tabu@cellright \@empty \fi + \tabu@temp}% \tabu@m@ybesiunitx +}\expandafter\tabu@m@ybesiunitx \csname siunitx_table_collect_begin:Nn\endcsname +\def\tabu@celllalign@def #1{\def\tabu@celllalign{\tabu@maybesiunitx{#1}}}% +%% Fixed vertical spacing adjustment: \extrarowsep ------------------ +\newcommand*\extrarowsep{\edef\tabu@C@extra{\the\numexpr\tabu@C@extra+1}% + \iftabu@everyrow \aftergroup\tabu@Gextra + \else \aftergroup\tabu@n@Gextra + \fi + \@ifnextchar={\tabu@gobbletoken\tabu@extra} \tabu@extra +}% \extrarowsep +\def\tabu@extra {\@ifnextchar_% + {\tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}} + {\ifx ^\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}}% + \else \let\tabu@temp \@empty + \afterassignment \tabu@setextrasep \extrarowdepth + \fi \tabu@temp}% +}% \tabu@extra +\def\tabu@setextra #1#2{\def\tabu@temp{\tabu@extr@#1#2}\afterassignment\tabu@temp#2} +\def\tabu@extr@ #1#2{\@ifnextchar^% + {\tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}} + {\ifx _\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}}% + \else \let\tabu@temp \@empty + \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth + \fi \tabu@temp}% +}% \tabu@extr@ +\def\tabu@setextrasep {\extrarowheight=\extrarowdepth + \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth +}% \tabu@setextrasep +\def\tabu@Gextra{\ifx \tabu@G@extra\@empty \else {\tabu@Rextra}\fi} +\def\tabu@n@Gextra{\ifx \tabu@G@extra\@empty \else \noalign{\tabu@Rextra}\fi} +\def\tabu@Rextra{\tabu@Grestore \tabu@G@extra \tabu@C@extra} +\let\tabu@C@extra \z@ +\let\tabu@G@extra \@empty +%% Dynamic vertical spacing adjustment: \tabulinesep ---------------- +\newcommand*\tabulinesep{\edef\tabu@C@linesep{\the\numexpr\tabu@C@linesep+1}% + \iftabu@everyrow \aftergroup\tabu@Glinesep + \else \aftergroup\tabu@n@Glinesep + \fi + \@ifnextchar={\tabu@gobbletoken\tabu@linesep} \tabu@linesep +}% \tabulinesep +\def\tabu@linesep {\@ifnextchar_% + {\tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}} + {\ifx ^\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}}% + \else \let\tabu@temp \@empty + \afterassignment \tabu@setlinesep \abovetabulinesep + \fi \tabu@temp}% +}% \tabu@linesep +\def\tabu@setsep #1#2{\def\tabu@temp{\tabu@sets@p#1#2}\afterassignment\tabu@temp#2} +\def\tabu@sets@p #1#2{\@ifnextchar^% + {\tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}} + {\ifx _\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}}% + \else \let\tabu@temp \@empty + \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep + \fi \tabu@temp}% +}% \tabu@sets@p +\def\tabu@setlinesep {\belowtabulinesep=\abovetabulinesep + \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep +}% \tabu@setlinesep +\def\tabu@Glinesep{\ifx \tabu@G@linesep\@empty \else {\tabu@Rlinesep}\fi} +\def\tabu@n@Glinesep{\ifx \tabu@G@linesep\@empty \else \noalign{\tabu@Rlinesep}\fi} +\def\tabu@Rlinesep{\tabu@Grestore \tabu@G@linesep \tabu@C@linesep} +\let\tabu@C@linesep \z@ +\let\tabu@G@linesep \@empty +%% \global\extrarowsep and \global\tabulinesep ------------------- +\def\tabu@Gsave #1#2#3#4{\xdef#1{#1% + \toks#2{\toks\the\currentgrouplevel{\global#3\the#3\global#4\the#4}}}% +}% \tabu@Gsave +\def\tabu@Grestore#1#2{% + \toks#2{}#1\toks\currentgrouplevel\expandafter{\expandafter}\the\toks#2\relax + \ifcat$\the\toks\currentgrouplevel$\else + \global\let#1\@empty \global\let#2\z@ + \the\toks\currentgrouplevel + \fi +}% \tabu@Grestore +%% Setting code for every row --------------------------------------- +\newcommand*\everyrow{\tabu@everyrow@bgroup + \tabu@start \z@ \tabu@stop \z@ \tabu@evrstartstop +}% \everyrow +\def\tabu@evrstartstop {\@ifnextchar^% + {\afterassignment \tabu@evrstartstop \tabu@stop=}% + {\ifx ^\@let@token + \afterassignment\tabu@evrstartstop \tabu@start=% + \else \afterassignment\tabu@everyr@w \toks@ + \fi}% +}% \tabu@evrstartstop +\def\tabu@everyr@w {% + \xdef\tabu@everyrow{% + \noexpand\tabu@everyrowfalse + \let\noalign \relax + \noexpand\tabu@rowfontreset + \iftabu@colortbl \noexpand\tabu@rc@ \fi % \taburowcolors + \let\noexpand\tabu@docline \noexpand\tabu@docline@evr + \the\toks@ + \noexpand\tabu@evrh@@k + \noexpand\tabu@rearstrut + \global\advance\c@taburow \@ne}% + \iftabu@everyrow \toks@\expandafter + {\expandafter\def\expandafter\tabu@evr@L\expandafter{\the\toks@}\ignorespaces}% + \else \xdef\tabu@evr@G{\the\toks@}% + \fi + \tabu@everyrow@egroup +}% \tabu@everyr@w +\def\tabu@evr {\def\tabu@evrh@@k} % for internal use only +\tabu@evr{} +%% line style and leaders ------------------------------------------- +\newcommand*\newtabulinestyle [1]{% + {\@for \@tempa :=#1\do{\expandafter\tabu@newlinestyle \@tempa==\@nil}}% +}% \newtabulinestyle +\def\tabu@newlinestyle #1=#2=#3\@nil{\tabu@getline {#2}% + \tabu@sanitizearg {#1}\@tempa + \ifodd 1\ifx \@tempa\@empty \ifdefined\tabu@linestyle@ 0 \fi\fi + \global\expandafter\let + \csname tabu@linestyle@\@tempa \endcsname =\tabu@thestyle \fi +}% \tabu@newlinestyle +\newcommand*\tabulinestyle [1]{\tabu@everyrow@bgroup \tabu@getline{#1}% + \iftabu@everyrow + \toks@\expandafter{\expandafter \def \expandafter + \tabu@ls@L\expandafter{\tabu@thestyle}\ignorespaces}% + \gdef\tabu@ls@{\tabu@ls@L}% + \else + \global\let\tabu@ls@G \tabu@thestyle + \gdef\tabu@ls@{\tabu@ls@G}% + \fi + \tabu@everyrow@egroup +}% \tabulinestyle +\newcommand*\taburulecolor{\tabu@everyrow@bgroup \tabu@textbar \tabu@rulecolor} +\def\tabu@rulecolor #1{\toks@{}% + \def\tabu@temp #1##1#1{\tabu@ruledrsc{##1}}\@ifnextchar #1% + \tabu@temp + \tabu@rulearc +}% \tabu@rulecolor +\def\tabu@ruledrsc #1{\edef\tabu@temp{#1}\tabu@strtrim\tabu@temp + \ifx \tabu@temp\@empty \def\tabu@temp{\tabu@rule@drsc@ {}{}}% + \else \edef\tabu@temp{\noexpand\tabu@rule@drsc@ {}{\tabu@temp}}% + \fi + \tabu@temp +}% \tabu@ruledrsc@ +\def\tabu@ruledrsc@ #1#{\tabu@rule@drsc@ {#1}} +\def\tabu@rule@drsc@ #1#2{% + \iftabu@everyrow + \ifx \\#1#2\\\toks@{\let\CT@drsc@ \relax}% + \else \toks@{\def\CT@drsc@{\color #1{#2}}}% + \fi + \else + \ifx \\#1#2\\\global\let\CT@drsc@ \relax + \else \gdef\CT@drsc@{\color #1{#2}}% + \fi + \fi + \tabu@rulearc +}% \tabu@rule@drsc@ +\def\tabu@rulearc #1#{\tabu@rule@arc@ {#1}} +\def\tabu@rule@arc@ #1#2{% + \iftabu@everyrow + \ifx \\#1#2\\\toks@\expandafter{\the\toks@ \def\CT@arc@{}}% + \else \toks@\expandafter{\the\toks@ \def\CT@arc@{\color #1{#2}}}% + \fi + \toks@\expandafter{\the\toks@ + \let\tabu@arc@L \CT@arc@ + \let\tabu@drsc@L \CT@drsc@ + \ignorespaces}% + \else + \ifx \\#1#2\\\gdef\CT@arc@{}% + \else \gdef\CT@arc@{\color #1{#2}}% + \fi + \global\let\tabu@arc@G \CT@arc@ + \global\let\tabu@drsc@G \CT@drsc@ + \fi + \tabu@everyrow@egroup +}% \tabu@rule@arc@ +\def\taburowcolors {\tabu@everyrow@bgroup \@testopt \tabu@rowcolors 1} +\def\tabu@rowcolors [#1]#2#{\tabu@rowc@lors{#1}{#2}} +\def\tabu@rowc@lors #1#2#3{% + \toks@{}\@defaultunits \count@ =\number0#2\relax \@nnil + \@defaultunits \tabu@start =\number0#1\relax \@nnil + \ifnum \count@<\tw@ \count@=\tw@ \fi + \advance\tabu@start \m@ne + \ifnum \tabu@start<\z@ \tabu@start \z@ \fi + \tabu@rowcolorseries #3\in@..\in@ \@nnil +}% \tabu@rowcolors +\def\tabu@rowcolorseries #1..#2\in@ #3\@nnil {% + \ifx \in@#1\relax + \iftabu@everyrow \toks@{\def\tabu@rc@{}\let\tabu@rc@L \tabu@rc@}% + \else \gdef\tabu@rc@{}\global\let\tabu@rc@G \tabu@rc@ + \fi + \else + \ifx \\#2\\\tabu@rowcolorserieserror \fi + \tabu@sanitizearg{#1}\tabu@temp + \tabu@sanitizearg{#2}\@tempa + \advance\count@ \m@ne + \iftabu@everyrow + \def\tabu@rc@ ##1##2##3##4{\def\tabu@rc@{% + \ifnum ##2=\c@taburow + \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{##3}{##4}\fi + \ifnum \c@taburow<##2 \else + \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\z@ + \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \rowcolor{tabu@rc@\the\tabu@nested}\fi}% + }\edef\x{\noexpand\tabu@rc@ {\the\count@} + {\the\tabu@start} + {\tabu@temp} + {\@tempa}% + }\x + \toks@\expandafter{\expandafter\def\expandafter\tabu@rc@\expandafter{\tabu@rc@}}% + \toks@\expandafter{\the\toks@ \let\tabu@rc@L \tabu@rc@ \ignorespaces}% + \else % inside \noalign + \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{\tabu@temp}{\@tempa}% + \expandafter\resetcolorseries\expandafter[\the\count@]{tabu@rcseries@\the\tabu@nested}% + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \let\noalign \relax \rowcolor{tabu@rc@\the\tabu@nested}% + \def\tabu@rc@ ##1##2{\gdef\tabu@rc@{% + \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\@ne + \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \rowcolor{tabu@rc@\the\tabu@nested}}% + }\edef\x{\noexpand\tabu@rc@{\the\count@}{\the\c@taburow}}\x + \global\let\tabu@rc@G \tabu@rc@ + \fi + \fi + \tabu@everyrow@egroup +}% \tabu@rowcolorseries +\tabuDisableCommands {\let\tabu@rc@ \@empty } +\def\tabu@rowcolorserieserror {\PackageError{tabu} + {Invalid syntax for \string\taburowcolors + \MessageBreak Please look at the documentation!}\@ehd +}% \tabu@rowcolorserieserror +\newcommand*\tabureset {% + \tabulinesep=\z@ \extrarowsep=\z@ \extratabsurround=\z@ + \tabulinestyle{}\everyrow{}\taburulecolor||{}\taburowcolors{}% +}% \tabureset +%% Parsing the line styles ------------------------------------------ +\def\tabu@getline #1{\begingroup + \csname \ifcsname if@safe@actives\endcsname % + @safe@activestrue\else + relax\fi \endcsname + \edef\tabu@temp{#1}\tabu@sanitizearg{#1}\@tempa + \let\tabu@thestyle \relax + \ifcsname tabu@linestyle@\@tempa \endcsname + \edef\tabu@thestyle{\endgroup + \def\tabu@thestyle{\expandafter\noexpand + \csname tabu@linestyle@\@tempa\endcsname}% + }\tabu@thestyle + \else \expandafter\tabu@definestyle \tabu@temp \@nil + \fi +}% \tabu@getline +\def\tabu@definestyle #1#2\@nil {\endlinechar \m@ne \makeatletter + \tabu@thick \maxdimen \tabu@on \maxdimen \tabu@off \maxdimen + \let\tabu@c@lon \@undefined \let\tabu@c@loff \@undefined + \ifodd 1\ifcat .#1\else\ifcat\relax #1\else 0\fi\fi % catcode 12 or non expandable cs + \def\tabu@temp{\tabu@getparam{thick}}% + \else \def\tabu@temp{\tabu@getparam{thick}\maxdimen}% + \fi + {% + \let\tabu@ \relax + \def\:{\obeyspaces \tabu@oXIII \tabu@commaXIII \edef\:}% (space active \: happy ;-)) + \scantokens{\:{\tabu@temp #1#2 \tabu@\tabu@}}% + \expandafter}\expandafter + \def\expandafter\:\expandafter{\:}% line spec rewritten now ;-) + \def\;{\def\:}% + \scantokens\expandafter{\expandafter\;\expandafter{\:}}% space is now inactive (catcode 10) + \let\tabu@ \tabu@getcolor \:% all arguments are ready now ;-) + \ifdefined\tabu@c@lon \else \let\tabu@c@lon\@empty \fi + \ifx \tabu@c@lon\@empty \def\tabu@c@lon{\CT@arc@}\fi + \ifdefined\tabu@c@loff \else \let\tabu@c@loff \@empty \fi + \ifdim \tabu@on=\maxdimen \ifdim \tabu@off<\maxdimen + \tabu@on \tabulineon \fi\fi + \ifdim \tabu@off=\maxdimen \ifdim \tabu@on<\maxdimen + \tabu@off \tabulineoff \fi\fi + \ifodd 1\ifdim \tabu@off=\maxdimen \ifdim \tabu@on=\maxdimen 0 \fi\fi + \in@true % + \else \in@false % + \fi + \ifdim\tabu@thick=\maxdimen \def\tabu@thick{\arrayrulewidth}% + \else \edef\tabu@thick{\the\tabu@thick}% + \fi + \edef \tabu@thestyle ##1##2{\endgroup + \def\tabu@thestyle{% + \ifin@ \noexpand\tabu@leadersstyle {\tabu@thick} + {\the\tabu@on}{##1} + {\the\tabu@off}{##2}% + \else \noexpand\tabu@rulesstyle + {##1\vrule width \tabu@thick}% + {##1\leaders \hrule height \tabu@thick \hfil}% + \fi}% + }\expandafter \expandafter + \expandafter \tabu@thestyle \expandafter + \expandafter \expandafter + {\expandafter\tabu@c@lon\expandafter}\expandafter{\tabu@c@loff}% +}% \tabu@definestyle +{\catcode`\O=\active \lccode`\O=`\o \catcode`\,=\active + \lowercase{\gdef\tabu@oXIII {\catcode`\o=\active \let O=\tabu@oxiii}} + \gdef\tabu@commaXIII {\catcode`\,=\active \let ,=\space} +}% \catcode +\def\tabu@oxiii #1{% + \ifcase \ifx n#1\z@ \else + \ifx f#1\@ne\else + \tw@ \fi\fi + \expandafter\tabu@onxiii + \or \expandafter\tabu@ofxiii + \else o% + \fi#1}% +\def\tabu@onxiii #1#2{% + \ifcase \ifx !#2\tw@ \else + \ifcat.\noexpand#2\z@ \else + \ifx \tabu@spxiii#2\@ne\else + \tw@ \fi\fi\fi + \tabu@getparam{on}#2\expandafter\@gobble + \or \expandafter\tabu@onxiii % (space is active) + \else o\expandafter\@firstofone + \fi{#1#2}}% +\def\tabu@ofxiii #1#2{% + \ifx #2f\expandafter\tabu@offxiii + \else o\expandafter\@firstofone + \fi{#1#2}} +\def\tabu@offxiii #1#2{% + \ifcase \ifx !#2\tw@ \else + \ifcat.\noexpand#2\z@ \else + \ifx\tabu@spxiii#2\@ne \else + \tw@ \fi\fi\fi + \tabu@getparam{off}#2\expandafter\@gobble + \or \expandafter\tabu@offxiii % (space is active) + \else o\expandafter\@firstofone + \fi{#1#2}} +\def\tabu@getparam #1{\tabu@ \csname tabu@#1\endcsname=} +\def\tabu@getcolor #1{% \tabu@ <- \tabu@getcolor after \edef + \ifx \tabu@#1\else % no more spec + \let\tabu@theparam=#1\afterassignment \tabu@getc@l@r #1\fi +}% \tabu@getcolor +\def\tabu@getc@l@r #1\tabu@ {% + \def\tabu@temp{#1}\tabu@strtrim \tabu@temp + \ifx \tabu@temp\@empty + \else%\ifcsname \string\color@\tabu@temp \endcsname % if the color exists + \ifx \tabu@theparam \tabu@off \let\tabu@c@loff \tabu@c@l@r + \else \let\tabu@c@lon \tabu@c@l@r + \fi + %\else \tabu@warncolour{\tabu@temp}% + \fi%\fi + \tabu@ % next spec +}% \tabu@getc@l@r +\def\tabu@warncolour #1{\PackageWarning{tabu} + {Color #1 is not defined. Default color used}% +}% \tabu@warncolour +\def\tabu@leadersstyle #1#2#3#4#5{\def\tabu@leaders{{#1}{#2}{#3}{#4}{#5}}% + \ifx \tabu@leaders\tabu@leaders@G \else + \tabu@LEADERS{#1}{#2}{#3}{#4}{#5}\fi +}% \tabu@leadersstyle +\def\tabu@rulesstyle #1#2{\let\tabu@leaders \@undefined + \gdef\tabu@thevrule{#1}\gdef\tabu@thehrule{#2}% +}% \tabu@rulesstyle +%% The leaders boxes ------------------------------------------------ +\def\tabu@LEADERS #1#2#3#4#5{%% width, dash, dash color, gap, gap color + {\let\color \tabu@color % => during trials -> \color = \tabu@nocolor + {% % but the leaders boxes should have colors ! + \def\@therule{\vrule}\def\@thick{height}\def\@length{width}% + \def\@box{\hbox}\def\@unbox{\unhbox}\def\@elt{\wd}% + \def\@skip{\hskip}\def\@ss{\hss}\def\tabu@leads{\tabu@hleads}% + \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% + \global\let\tabu@thehleaders \tabu@theleaders + }% + {% + \def\@therule{\hrule}\def\@thick{width}\def\@length{height}% + \def\@box{\vbox}\def\@unbox{\unvbox}\def\@elt{\ht}% + \def\@skip{\vskip}\def\@ss{\vss}\def\tabu@leads{\tabu@vleads}% + \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% + \global\let\tabu@thevleaders \tabu@theleaders + }% + \gdef\tabu@leaders@G{{#1}{#2}{#3}{#4}{#5}}% + }% +}% \tabu@LEADERS +\def\tabu@therule #1#2{\@therule \@thick#1\@length\dimexpr#2/2 \@depth\z@} +\def\tabu@l@@d@rs #1#2#3#4#5{%% width, dash, dash color, gap, gap color + \global\setbox \tabu@leads=\@box{% + {#3\tabu@therule{#1}{#2}}% + \ifx\\#5\\\@skip#4\else{#5\tabu@therule{#1}{#4*2}}\fi + {#3\tabu@therule{#1}{#2}}}% + \global\setbox\tabu@leads=\@box to\@elt\tabu@leads{\@ss + {#3\tabu@therule{#1}{#2}}\@unbox\tabu@leads}% + \edef\tabu@theleaders ##1{\def\noexpand\tabu@theleaders {% + {##1\tabu@therule{#1}{#2}}% + \xleaders \copy\tabu@leads \@ss + \tabu@therule{0pt}{-#2}{##1\tabu@therule{#1}{#2}}}% + }\tabu@theleaders{#3}% +}% \tabu@l@@d@rs +%% \tabu \endtabu \tabu* \longtabu \endlongtabu \longtabu* ---------- +\newcommand*\tabu {\tabu@longfalse + \ifmmode \def\tabu@ {\array}\def\endtabu {\endarray}% + \else \def\tabu@ {\tabu@tabular}\def\endtabu {\endtabular}\fi + \expandafter\let\csname tabu*\endcsname \tabu + \expandafter\def\csname endtabu*\endcsname{\endtabu}% + \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget +}% {tabu} +\let\tabu@tabular \tabular % +\expandafter\def\csname tabu*\endcsname{\tabuscantokenstrue \tabu} +\newcommand*\longtabu {\tabu@longtrue + \ifmmode\PackageError{tabu}{longtabu not allowed in math mode}\fi + \def\tabu@{\longtable}\def\endlongtabu{\endlongtable}% + \LTchunksize=\@M + \expandafter\let\csname tabu*\endcsname \tabu + \expandafter\def\csname endlongtabu*\endcsname{\endlongtabu}% + \let\LT@startpbox \tabu@LT@startpbox % \everypar{ array struts } + \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget +}% {longtabu} +\expandafter\def\csname longtabu*\endcsname{\tabuscantokenstrue \longtabu} +\def\tabu@nolongtabu{\PackageError{tabu} + {longtabu requires the longtable package}\@ehd} +%% Read the target and then : \tabular or \@array ------------------ +\def\tabu@settarget {\futurelet\@let@token \tabu@sett@rget } +\def\tabu@sett@rget {\tabu@target \z@ + \ifcase \ifx \bgroup\@let@token \z@ \else + \ifx \@sptoken\@let@token \@ne \else + \if t\@let@token \tw@ \else + \if s\@let@token \thr@@\else + \z@\fi\fi\fi\fi + \expandafter\tabu@begin + \or \expandafter\tabu@gobblespace\expandafter\tabu@settarget + \or \expandafter\tabu@to + \or \expandafter\tabu@spread + \fi +}% \tabu@sett@rget +\def\tabu@to to{\def\tabu@halignto{to}\tabu@gettarget} +\def\tabu@spread spread{\tabu@spreadtrue\def\tabu@halignto{spread}\tabu@gettarget} +\def\tabu@gettarget {\afterassignment\tabu@linegoaltarget \tabu@target } +\def\tabu@linegoaltarget {\futurelet\tabu@temp \tabu@linegoalt@rget } +\def\tabu@linegoalt@rget {% + \ifx \tabu@temp\LNGL@setlinegoal + \LNGL@setlinegoal \expandafter \@firstoftwo \fi % @gobbles \LNGL@setlinegoal + \tabu@begin +}% \tabu@linegoalt@rget +\def\tabu@begin #1#{% + \iftabu@measuring \expandafter\tabu@nestedmeasure \fi + \ifdim \tabu@target=\z@ \let\tabu@halignto \@empty + \else \edef\tabu@halignto{\tabu@halignto\the\tabu@target}% + \fi + \@testopt \tabu@tabu@ \tabu@aligndefault #1\@nil +}% \tabu@begin +\long\def\tabu@tabu@ [#1]#2\@nil #3{\tabu@setup + \def\tabu@align {#1}\def\tabu@savedpream{\NC@find #3}% + \tabu@ [\tabu@align ]#2{#3\tabu@rewritefirst }% +}% \tabu@tabu@ +\def\tabu@nestedmeasure {% + \ifodd 1\iftabu@spread \else \ifdim\tabu@target=\z@ \else 0 \fi\fi\relax + \tabu@spreadtrue + \else \begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}% + \expandafter\tabu@collectbody\expandafter\tabu@quickrule + \expandafter\endgroup + \fi +}% \tabu@nestedmeasure +\def\tabu@quickrule {\indent\vrule height\z@ depth\z@ width\tabu@target} +%% \tabu@setup \tabu@init \tabu@indent +\def\tabu@setup{\tabu@alloc@ + \ifcase \tabu@nested + \ifmmode \else \iftabu@spread\else \ifdim\tabu@target=\z@ + \let\tabu@afterendpar \par + \fi\fi\fi + \def\tabu@aligndefault{c}\tabu@init \tabu@indent + \else % + \def\tabu@aligndefault{t}\let\tabudefaulttarget \linewidth + \fi + \let\tabu@thetarget \tabudefaulttarget \let\tabu@restored \@undefined + \edef\tabu@NC@list{\the\NC@list}\NC@list{\NC@do \tabu@rewritefirst}% + \everycr{}\let\@startpbox \tabu@startpbox % for nested tabu inside longtabu... + \let\@endpbox \tabu@endpbox % idem " " " " " " + \let\@tabarray \tabu@tabarray % idem " " " " " " + \tabu@setcleanup \tabu@setreset +}% \tabu@setup +\def\tabu@init{\tabu@starttimer \tabu@measuringfalse + \edef\tabu@hfuzz {\the\dimexpr\hfuzz+1sp}\global\tabu@footnotes{}% + \let\firsthline \tabu@firsthline \let\lasthline \tabu@lasthline + \let\firstline \tabu@firstline \let\lastline \tabu@lastline + \let\hline \tabu@hline \let\@xhline \tabu@xhline + \let\color \tabu@color \let\@arstrutbox \tabu@arstrutbox + \iftabu@colortbl\else\let\LT@@hline \tabu@LT@@hline \fi + \tabu@trivlist % + \let\@footnotetext \tabu@footnotetext \let\@xfootnotetext \tabu@xfootnotetext + \let\@xfootnote \tabu@xfootnote \let\centering \tabu@centering + \let\raggedright \tabu@raggedright \let\raggedleft \tabu@raggedleft + \let\tabudecimal \tabu@tabudecimal \let\Centering \tabu@Centering + \let\RaggedRight \tabu@RaggedRight \let\RaggedLeft \tabu@RaggedLeft + \let\justifying \tabu@justifying \let\rowfont \tabu@rowfont + \let\fbox \tabu@fbox \let\color@b@x \tabu@color@b@x + \let\tabu@@everycr \everycr \let\tabu@@everypar \everypar + \let\tabu@prepnext@tokORI \prepnext@tok\let\prepnext@tok \tabu@prepnext@tok + \let\tabu@multicolumnORI\multicolumn \let\multicolumn \tabu@multicolumn + \let\tabu@startpbox \@startpbox % for nested tabu inside longtabu pfff !!! + \let\tabu@endpbox \@endpbox % idem " " " " " " " + \let\tabu@tabarray \@tabarray % idem " " " " " " " + \tabu@adl@fix \let\endarray \tabu@endarray % colortbl & arydshln (delarray) + \iftabu@colortbl\CT@everycr\expandafter{\expandafter\iftabu@everyrow \the\CT@everycr \fi}\fi +}% \tabu@init +\def\tabu@indent{% correction for indentation + \ifdim \parindent>\z@\ifx \linewidth\tabudefaulttarget + \everypar\expandafter{% + \the\everypar\everypar\expandafter{\the\everypar}% + \setbox\z@=\lastbox + \ifdim\wd\z@>\z@ \edef\tabu@thetarget + {\the\dimexpr -\wd\z@+\tabudefaulttarget}\fi + \box\z@}% + \fi\fi +}% \tabu@indent +\def\tabu@setcleanup {% saves last global assignments + \ifodd 1\ifmmode \else \iftabu@long \else 0\fi\fi\relax + \def\tabu@aftergroupcleanup{% + \def\tabu@aftergroupcleanup{\aftergroup\tabu@cleanup}}% + \else + \def\tabu@aftergroupcleanup{% + \aftergroup\aftergroup\aftergroup\tabu@cleanup + \let\tabu@aftergroupcleanup \relax}% + \fi + \let\tabu@arc@Gsave \tabu@arc@G + \let\tabu@arc@G \tabu@arc@L % + \let\tabu@drsc@Gsave \tabu@drsc@G + \let\tabu@drsc@G \tabu@drsc@L % + \let\tabu@ls@Gsave \tabu@ls@G + \let\tabu@ls@G \tabu@ls@L % + \let\tabu@rc@Gsave \tabu@rc@G + \let\tabu@rc@G \tabu@rc@L % + \let\tabu@evr@Gsave \tabu@evr@G + \let\tabu@evr@G \tabu@evr@L % + \let\tabu@celllalign@save \tabu@celllalign + \let\tabu@cellralign@save \tabu@cellralign + \let\tabu@cellleft@save \tabu@cellleft + \let\tabu@cellright@save \tabu@cellright + \let\tabu@@celllalign@save \tabu@@celllalign + \let\tabu@@cellralign@save \tabu@@cellralign + \let\tabu@@cellleft@save \tabu@@cellleft + \let\tabu@@cellright@save \tabu@@cellright + \let\tabu@rowfontreset@save \tabu@rowfontreset + \let\tabu@@rowfontreset@save\tabu@@rowfontreset + \let\tabu@rowfontreset \@empty + \edef\tabu@alloc@save {\the\tabu@alloc}% restore at \tabu@reset + \edef\c@taburow@save {\the\c@taburow}% + \edef\tabu@naturalX@save {\the\tabu@naturalX}% + \let\tabu@naturalXmin@save \tabu@naturalXmin + \let\tabu@naturalXmax@save \tabu@naturalXmax + \let\tabu@mkarstrut@save \tabu@mkarstrut + \edef\tabu@clarstrut{% + \extrarowheight \the\dimexpr \ht\@arstrutbox-\ht\strutbox \relax + \extrarowdepth \the\dimexpr \dp\@arstrutbox-\dp\strutbox \relax + \let\noexpand\@arraystretch \@ne \noexpand\tabu@rearstrut}% +}% \tabu@setcleanup +\def\tabu@cleanup {\begingroup + \globaldefs\@ne \tabu@everyrowtrue + \let\tabu@arc@G \tabu@arc@Gsave + \let\CT@arc@ \tabu@arc@G + \let\tabu@drsc@G \tabu@drsc@Gsave + \let\CT@drsc@ \tabu@drsc@G + \let\tabu@ls@G \tabu@ls@Gsave + \let\tabu@ls@ \tabu@ls@G + \let\tabu@rc@G \tabu@rc@Gsave + \let\tabu@rc@ \tabu@rc@G + \let\CT@do@color \relax + \let\tabu@evr@G \tabu@evr@Gsave + \let\tabu@celllalign \tabu@celllalign@save + \let\tabu@cellralign \tabu@cellralign@save + \let\tabu@cellleft \tabu@cellleft@save + \let\tabu@cellright \tabu@cellright@save + \let\tabu@@celllalign \tabu@@celllalign@save + \let\tabu@@cellralign \tabu@@cellralign@save + \let\tabu@@cellleft \tabu@@cellleft@save + \let\tabu@@cellright \tabu@@cellright@save + \let\tabu@rowfontreset \tabu@rowfontreset@save + \let\tabu@@rowfontreset \tabu@@rowfontreset@save + \tabu@naturalX =\tabu@naturalX@save + \let\tabu@naturalXmax \tabu@naturalXmax@save + \let\tabu@naturalXmin \tabu@naturalXmin@save + \let\tabu@mkarstrut \tabu@mkarstrut@save + \c@taburow =\c@taburow@save + \ifcase \tabu@nested \tabu@alloc \m@ne\fi + \endgroup % + \ifcase \tabu@nested + \the\tabu@footnotes \global\tabu@footnotes{}% + \tabu@afterendpar \tabu@elapsedtime + \fi + \tabu@clarstrut + \everyrow\expandafter {\tabu@evr@G}% +}% \tabu@cleanup +\let\tabu@afterendpar \relax +\def\tabu@setreset {% + \edef\tabu@savedparams {% \relax for \tabu@message@save + \ifmmode \col@sep \the\arraycolsep + \else \col@sep \the\tabcolsep \fi \relax + \arrayrulewidth \the\arrayrulewidth \relax + \doublerulesep \the\doublerulesep \relax + \extratabsurround \the\extratabsurround \relax + \extrarowheight \the\extrarowheight \relax + \extrarowdepth \the\extrarowdepth \relax + \abovetabulinesep \the\abovetabulinesep \relax + \belowtabulinesep \the\belowtabulinesep \relax + \def\noexpand\arraystretch{\arraystretch}% + \ifdefined\minrowclearance \minrowclearance\the\minrowclearance\relax\fi}% + \begingroup + \@temptokena\expandafter{\tabu@savedparams}% => only for \savetabu / \usetabu + \ifx \tabu@arc@L\relax \else \tabu@setsave \tabu@arc@L \fi + \ifx \tabu@drsc@L\relax \else \tabu@setsave \tabu@drsc@L \fi + \tabu@setsave \tabu@ls@L \tabu@setsave \tabu@evr@L + \expandafter \endgroup \expandafter + \def\expandafter\tabu@saved@ \expandafter{\the\@temptokena + \let\tabu@arc@G \tabu@arc@L + \let\tabu@drsc@G \tabu@drsc@L + \let\tabu@ls@G \tabu@ls@L + \let\tabu@rc@G \tabu@rc@L + \let\tabu@evr@G \tabu@evr@L}% + \def\tabu@reset{\tabu@savedparams + \tabu@everyrowtrue \c@taburow \z@ + \let\CT@arc@ \tabu@arc@L + \let\CT@drsc@ \tabu@drsc@L + \let\tabu@ls@ \tabu@ls@L + \let\tabu@rc@ \tabu@rc@L + \global\tabu@alloc \tabu@alloc@save + \everyrow\expandafter{\tabu@evr@L}}% +}% \tabu@reset +\def\tabu@setsave #1{\expandafter\tabu@sets@ve #1\@nil{#1}} +\long\def\tabu@sets@ve #1\@nil #2{\@temptokena\expandafter{\the\@temptokena \def#2{#1}}} +%% The Rewriting Process ------------------------------------------- +\def\tabu@newcolumntype #1{% + \expandafter\tabu@new@columntype + \csname NC@find@\string#1\expandafter\endcsname + \csname NC@rewrite@\string#1\endcsname + {#1}% +}% \tabu@newcolumntype +\def\tabu@new@columntype #1#2#3{% + \def#1##1#3{\NC@{##1}}% + \let#2\relax \newcommand*#2% +}% \tabu@new@columntype +\def\tabu@privatecolumntype #1{% + \expandafter\tabu@private@columntype + \csname NC@find@\string#1\expandafter\endcsname + \csname NC@rewrite@\string#1\expandafter\endcsname + \csname tabu@NC@find@\string#1\expandafter\endcsname + \csname tabu@NC@rewrite@\string#1\endcsname + {#1}% +}% \tabu@privatecolumntype +\def\tabu@private@columntype#1#2#3#4{% + \g@addto@macro\tabu@privatecolumns{\let#1#3\let#2#4}% + \tabu@new@columntype#3#4% +}% \tabu@private@columntype +\let\tabu@privatecolumns \@empty +\newcommand*\tabucolumn [1]{\expandafter \def \expandafter + \tabu@highprioritycolumns\expandafter{\tabu@highprioritycolumns + \NC@do #1}}% +\let\tabu@highprioritycolumns \@empty +%% The | ``column'' : rewriting process -------------------------- +\tabu@privatecolumntype |{\tabu@rewritevline} +\newcommand*\tabu@rewritevline[1][]{\tabu@vlinearg{#1}% + \expandafter \NC@find \tabu@rewritten} +\def\tabu@lines #1{% + \ifx|#1\else \tabu@privatecolumntype #1{\tabu@rewritevline}\fi + \NC@list\expandafter{\the\NC@list \NC@do #1}% +}% \tabu@lines@ +\def\tabu@vlinearg #1{% + \ifx\\#1\\\def\tabu@thestyle {\tabu@ls@}% + \else\tabu@getline {#1}% + \fi + \def\tabu@rewritten ##1{\def\tabu@rewritten{!{##1\tabu@thevline}}% + }\expandafter\tabu@rewritten\expandafter{\tabu@thestyle}% + \expandafter \tabu@keepls \tabu@thestyle \@nil +}% \tabu@vlinearg +\def\tabu@keepls #1\@nil{% + \ifcat $\@cdr #1\@nil $% + \ifx \relax#1\else + \ifx \tabu@ls@#1\else + \let#1\relax + \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer + \tabu@savels\noexpand#1}\fi\fi\fi +}% \tabu@keepls +\def\tabu@thevline {\begingroup + \ifdefined\tabu@leaders + \setbox\@tempboxa=\vtop to\dimexpr + \ht\@arstrutbox+\dp\@arstrutbox{{\tabu@thevleaders}}% + \ht\@tempboxa=\ht\@arstrutbox \dp\@tempboxa=\dp\@arstrutbox + \box\@tempboxa + \else + \tabu@thevrule + \fi \endgroup +}% \tabu@thevline +\def\tabu@savels #1{% + \expandafter\let\csname\string#1\endcsname #1% + \expandafter\def\expandafter\tabu@reset\expandafter{\tabu@reset + \tabu@resetls#1}}% +\def\tabu@resetls #1{\expandafter\let\expandafter#1\csname\string#1\endcsname}% +%% \multicolumn inside tabu environment ----------------------------- +\tabu@newcolumntype \tabu@rewritemulticolumn{% + \aftergroup \tabu@endrewritemulticolumn % after \@mkpream group + \NC@list{\NC@do *}\tabu@textbar \tabu@lines + \tabu@savedecl + \tabu@privatecolumns + \NC@list\expandafter{\the\expandafter\NC@list \tabu@NC@list}% + \let\tabu@savels \relax + \NC@find +}% \tabu@rewritemulticolumn +\def\tabu@endrewritemulticolumn{\gdef\tabu@mkpreambuffer{}\endgroup} +\def\tabu@multicolumn{\tabu@ifenvir \tabu@multic@lumn \tabu@multicolumnORI} +\long\def\tabu@multic@lumn #1#2#3{\multispan{#1}\begingroup + \tabu@everyrowtrue + \NC@list{\NC@do \tabu@rewritemulticolumn}% + \expandafter\@gobbletwo % gobbles \multispan{#1} + \tabu@multicolumnORI{#1}{\tabu@rewritemulticolumn #2}% + {\iftabuscantokens \tabu@rescan \else \expandafter\@firstofone \fi + {#3}}% +}% \tabu@multic@lumn +%% The X column(s): rewriting process ----------------------------- +\tabu@privatecolumntype X[1][]{\begingroup \tabu@siunitx{\endgroup \tabu@rewriteX {#1}}} +\def\tabu@nosiunitx #1{#1{}{}\expandafter \NC@find \tabu@rewritten } +\def\tabu@siunitx #1{\@ifnextchar \bgroup + {\tabu@rewriteX@Ss{#1}} + {\tabu@nosiunitx{#1}}} +\def\tabu@rewriteX@Ss #1#2{\@temptokena{}% + \@defaultunits \let\tabu@temp =#2\relax\@nnil + \ifodd 1\ifx S\tabu@temp \else \ifx s\tabu@temp \else 0 \fi\fi + \def\NC@find{\def\NC@find >####1####2<####3\relax{#1 {####1}{####3}% + }\expandafter\NC@find \the\@temptokena \relax + }\expandafter\NC@rewrite@S \@gobble #2\relax + \else \tabu@siunitxerror + \fi + \expandafter \NC@find \tabu@rewritten +}% \tabu@rewriteX@Ss +\def\tabu@siunitxerror {\PackageError{tabu}{Not a S nor s column ! + \MessageBreak X column can only embed siunitx S or s columns}\@ehd +}% \tabu@siunitxerror +\def\tabu@rewriteX #1#2#3{\tabu@Xarg {#1}{#2}{#3}% + \iftabu@measuring + \else \tabu@measuringtrue % first X column found in the preamble + \let\@halignto \relax \let\tabu@halignto \relax + \iftabu@spread \tabu@spreadtarget \tabu@target \tabu@target \z@ + \else \tabu@spreadtarget \z@ \fi + \ifdim \tabu@target=\z@ + \setlength\tabu@target \tabu@thetarget + \tabu@message{\tabu@message@defaulttarget}% + \else \tabu@message{\tabu@message@target}\fi + \fi +}% \tabu@rewriteX +\def\tabu@rewriteXrestore #1#2#3{\let\@halignto \relax + \def\tabu@rewritten{l}} +\def\tabu@Xarg #1#2#3{% + \advance\tabu@Xcol \@ne \let\tabu@Xlcr \@empty + \let\tabu@Xdisp \@empty \let\tabu@Xmath \@empty + \ifx\\#1\\% + \def\tabu@rewritten{p}\tabucolX \p@ % + \else + \let\tabu@rewritten \@empty \let\tabu@temp \@empty \tabucolX \z@ + \tabu@Xparse {}#1\relax + \fi + \tabu@Xrewritten{#2}{#3}% +}% \tabu@Xarg +\def\tabu@Xparse #1{\futurelet\@let@token \tabu@Xtest} +\expandafter\def\expandafter\tabu@Xparsespace\space{\tabu@Xparse{}} +\def\tabu@Xtest{% + \ifcase \ifx \relax\@let@token \z@ \else + \if ,\@let@token \m@ne\else + \if p\@let@token 1\else + \if m\@let@token 2\else + \if b\@let@token 3\else + \if l\@let@token 4\else + \if c\@let@token 5\else + \if r\@let@token 6\else + \if j\@let@token 7\else + \if L\@let@token 8\else + \if C\@let@token 9\else + \if R\@let@token 10\else + \if J\@let@token 11\else + \ifx \@sptoken\@let@token 12\else + \if .\@let@token 13\else + \if -\@let@token 13\else + \ifcat $\@let@token 14\else + 15\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax + \or \tabu@Xtype {p}% + \or \tabu@Xtype {m}% + \or \tabu@Xtype {b}% + \or \tabu@Xalign \raggedright\relax + \or \tabu@Xalign \centering\relax + \or \tabu@Xalign \raggedleft\relax + \or \tabu@Xalign \tabu@justify\relax + \or \tabu@Xalign \RaggedRight\raggedright + \or \tabu@Xalign \Centering\centering + \or \tabu@Xalign \RaggedLeft\raggedleft + \or \tabu@Xalign \justifying\tabu@justify + \or \expandafter \tabu@Xparsespace + \or \expandafter \tabu@Xcoef + \or \expandafter \tabu@Xm@th + \or \tabu@Xcoef{}% + \else\expandafter \tabu@Xparse + \fi +}% \tabu@Xtest +\def\tabu@Xalign #1#2{% + \ifx \tabu@Xlcr\@empty \else \PackageWarning{tabu} + {Duplicate horizontal alignment specification}\fi + \ifdefined#1\def\tabu@Xlcr{#1}\let#1\relax + \else \def\tabu@Xlcr{#2}\let#2\relax\fi + \expandafter\tabu@Xparse +}% \tabu@Xalign +\def\tabu@Xtype #1{% + \ifx \tabu@rewritten\@empty \else \PackageWarning{tabu} + {Duplicate vertical alignment specification}\fi + \def\tabu@rewritten{#1}\expandafter\tabu@Xparse +}% \tabu@Xtype +\def\tabu@Xcoef#1{\edef\tabu@temp{\tabu@temp#1}% + \afterassignment\tabu@Xc@ef \tabu@cnt\number\if-#10\fi +}% \tabu@Xcoef +\def\tabu@Xc@ef{\advance\tabucolX \tabu@temp\the\tabu@cnt\p@ + \tabu@Xparse{}% +}% \tabu@Xc@ef +\def\tabu@Xm@th #1{\futurelet \@let@token \tabu@Xd@sp} +\def\tabu@Xd@sp{\let\tabu@Xmath=$% + \ifx $\@let@token \def\tabu@Xdisp{\displaystyle}% + \expandafter\tabu@Xparse + \else \expandafter\tabu@Xparse\expandafter{\expandafter}% + \fi +}% \tabu@Xd@sp +\def\tabu@Xrewritten {% + \ifx \tabu@rewritten\@empty \def\tabu@rewritten{p}\fi + \ifdim \tabucolX<\z@ \tabu@negcoeftrue + \else\ifdim \tabucolX=\z@ \tabucolX \p@ + \fi\fi + \edef\tabu@temp{{\the\tabu@Xcol}{\tabu@strippt\tabucolX}}% + \edef\tabu@Xcoefs{\tabu@Xcoefs \tabu@ \tabu@temp}% + \edef\tabu@rewritten ##1##2{\def\noexpand\tabu@rewritten{% + >{\tabu@Xlcr \ifx$\tabu@Xmath$\tabu@Xdisp\fi ##1}% + \tabu@rewritten {\tabu@hsize \tabu@temp}% + <{##2\ifx$\tabu@Xmath$\fi}}% + }\tabu@rewritten +}% \tabu@Xrewritten +\def\tabu@hsize #1#2{% + \ifdim #2\p@<\z@ + \ifdim \tabucolX=\maxdimen \tabu@wd{#1}\else + \ifdim \tabu@wd{#1}<-#2\tabucolX \tabu@wd{#1}\else -#2\tabucolX\fi + \fi + \else #2\tabucolX + \fi +}% \tabu@hsize +%% \usetabu and \preamble: rewriting process --------------------- +\tabu@privatecolumntype \usetabu [1]{% + \ifx\\#1\\\tabu@saveerr{}\else + \@ifundefined{tabu@saved@\string#1} + {\tabu@saveerr{#1}} + {\let\tabu@rewriteX \tabu@rewriteXrestore + \csname tabu@saved@\string#1\expandafter\endcsname\expandafter\@ne}% + \fi +}% \NC@rewrite@\usetabu +\tabu@privatecolumntype \preamble [1]{% + \ifx\\#1\\\tabu@saveerr{}\else + \@ifundefined{tabu@saved@\string#1} + {\tabu@saveerr{#1}} + {\csname tabu@saved@\string#1\expandafter\endcsname\expandafter\z@}% + \fi +}% \NC@rewrite@\preamble +%% Controlling the rewriting process ------------------------------- +\tabu@newcolumntype \tabu@rewritefirst{% + \iftabu@long \aftergroup \tabu@longpream % + \else \aftergroup \tabu@pream + \fi + \let\tabu@ \relax \let\tabu@hsize \relax + \let\tabu@Xcoefs \@empty \let\tabu@savels \relax + \tabu@Xcol \z@ \tabu@cnt \tw@ + \gdef\tabu@mkpreambuffer{\tabu@{}}\tabu@measuringfalse + \global\setbox\@arstrutbox \box\@arstrutbox + \NC@list{\NC@do *}\tabu@textbar \tabu@lines + \NC@list\expandafter{\the\NC@list \NC@do X}% + \iftabu@siunitx % + \NC@list\expandafter{\the\NC@list \NC@do S\NC@do s}\fi + \NC@list\expandafter{\the\expandafter\NC@list \tabu@highprioritycolumns}% + \expandafter\def\expandafter\tabu@NC@list\expandafter{% + \the\expandafter\NC@list \tabu@NC@list}% % * | X S + \NC@list\expandafter{\expandafter \NC@do \expandafter\usetabu + \expandafter \NC@do \expandafter\preamble + \the\NC@list \NC@do \tabu@rewritemiddle + \NC@do \tabu@rewritelast}% + \tabu@savedecl + \tabu@privatecolumns + \edef\tabu@prev{\the\@temptokena}\NC@find \tabu@rewritemiddle +}% NC@rewrite@\tabu@rewritefirst +\tabu@newcolumntype \tabu@rewritemiddle{% + \edef\tabu@temp{\the\@temptokena}\NC@find \tabu@rewritelast +}% \NC@rewrite@\tabu@rewritemiddle +\tabu@newcolumntype \tabu@rewritelast{% + \ifx \tabu@temp\tabu@prev \advance\tabu@cnt \m@ne + \NC@list\expandafter{\tabu@NC@list \NC@do \tabu@rewritemiddle + \NC@do \tabu@rewritelast}% + \else \let\tabu@prev\tabu@temp + \fi + \ifcase \tabu@cnt \expandafter\tabu@endrewrite + \else \expandafter\NC@find \expandafter\tabu@rewritemiddle + \fi +}% \NC@rewrite@\tabu@rewritelast +%% Choosing the strategy -------------------------------------------- +\def\tabu@endrewrite {% + \let\tabu@temp \NC@find + \ifx \@arrayright\relax \let\@arrayright \@empty \fi + \count@=% + \ifx \@finalstrut\tabu@finalstrut \z@ % outer in mode 0 print + \iftabu@measuring + \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer + \tabu@target \csname tabu@\the\tabu@nested.T\endcsname + \tabucolX \csname tabu@\the\tabu@nested.X\endcsname + \edef\@halignto {\ifx\@arrayright\@empty to\tabu@target\fi}}% + \fi + \else\iftabu@measuring 4 % X columns + \xdef\tabu@mkpreambuffer{\tabu@{\tabu@mkpreambuffer + \tabu@target \the\tabu@target + \tabu@spreadtarget \the\tabu@spreadtarget}% + \def\noexpand\tabu@Xcoefs{\tabu@Xcoefs}% + \edef\tabu@halignto{\ifx \@arrayright\@empty to\tabu@target\fi}}% + \let\tabu@Xcoefs \relax + \else\ifcase\tabu@nested \thr@@ % outer, no X + \global\let\tabu@afterendpar \relax + \else \@ne % inner, no X, outer in mode 1 or 2 + \fi + \ifdefined\tabu@usetabu + \else \ifdim\tabu@target=\z@ + \else \let\tabu@temp \tabu@extracolsep + \fi\fi + \fi + \fi + \xdef\tabu@mkpreambuffer{\count@ \the\count@ \tabu@mkpreambuffer}% + \tabu@temp +}% \tabu@endrewrite +\def\tabu@extracolsep{\@defaultunits \expandafter\let + \expandafter\tabu@temp \expandafter=\the\@temptokena \relax\@nnil + \ifx \tabu@temp\@sptoken + \expandafter\tabu@gobblespace \expandafter\tabu@extracolsep + \else + \edef\tabu@temp{\noexpand\NC@find + \if |\noexpand\tabu@temp @% + \else\if !\noexpand\tabu@temp @% + \else !% + \fi\fi + {\noexpand\extracolsep\noexpand\@flushglue}}% + \fi + \tabu@temp +}% \tabu@extrac@lsep +%% Implementing the strategy ---------------------------------------- +\long\def\tabu@pream #1\@preamble {% + \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup + \NC@list\expandafter {\tabu@NC@list}% in case of nesting... + \ifdefined\tabu@usetabu \tabu@usetabu \tabu@target \z@ \fi + \let\tabu@savedpreamble \@preamble + \global\let\tabu@elapsedtime \relax + \tabu@thebody ={#1\tabu@aftergroupcleanup}% + \tabu@thebody =\expandafter{\the\expandafter\tabu@thebody + \@preamble}% + \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) + \tabu@select +}% \tabu@pream +\long\def\tabu@longpream #1\LT@bchunk #2\LT@bchunk{% + \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup + \NC@list\expandafter {\tabu@NC@list}% in case of nesting... + \let\tabu@savedpreamble \@preamble + \global\let\tabu@elapsedtime \relax + \tabu@thebody ={#1\LT@bchunk #2\tabu@aftergroupcleanup \LT@bchunk}% + \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) + \tabu@select +}% \tabu@longpream +\def\tabu@select {% + \ifnum\tabu@nested>\z@ \tabuscantokensfalse \fi + \ifnum \count@=\@ne \iftabu@measuring \count@=\tw@ \fi\fi + \ifcase \count@ + \global\let\tabu@elapsedtime \relax + \tabu@seteverycr + \expandafter \tabuthepreamble % vertical adjustment (inherited from outer) + \or % exit in vertical measure + struts per cell because no X and outer in mode 3 + \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \tabu@seteverycr + \expandafter \tabuthepreamble + \or % exit without measure because no X and outer in mode 4 + \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty + \tabu@seteverycr + \expandafter \tabuthepreamble + \else % needs trials + \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty + \tabu@savecounters + \expandafter \tabu@setstrategy + \fi +}% \tabu@select +\def\tabu@@ {\gdef\tabu@mkpreambuffer} +%% Protections to set up before trials ------------------------------ +\def\tabu@setstrategy {\begingroup % + \tabu@trialh@@k \tabu@cnt \z@ % number of trials + \hbadness \@M \let\hbadness \@tempcnta + \hfuzz \maxdimen \let\hfuzz \@tempdima + \let\write \tabu@nowrite\let\GenericError \tabu@GenericError + \let\savetabu \@gobble \let\tabudefaulttarget \linewidth + \let\@footnotetext \@gobble \let\@xfootnote \tabu@xfootnote + \let\color \tabu@nocolor\let\rowcolor \tabu@norowcolor + \let\tabu@aftergroupcleanup \relax % only after the last trial + \tabu@mkpreambuffer + \ifnum \count@>\thr@@ \let\@halignto \@empty \tabucolX@init + \def\tabu@lasttry{\m@ne\p@}\fi + \begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}\iftabuscantokens \endlinechar=10 \obeyspaces \fi % + \tabu@collectbody \tabu@strategy % +}% \tabu@setstrategy +\def\tabu@savecounters{% + \def\@elt ##1{\csname c@##1\endcsname\the\csname c@##1\endcsname}% + \edef\tabu@clckpt {\begingroup \globaldefs=\@ne \cl@@ckpt \endgroup}\let\@elt \relax +}% \tabu@savecounters +\def\tabucolX@init {% \tabucolX <= \tabu@target / (sum coefs > 0) + \dimen@ \z@ \tabu@Xsum \z@ \tabucolX \z@ \let\tabu@ \tabu@Xinit \tabu@Xcoefs + \ifdim \dimen@>\z@ + \@tempdima \dimexpr \tabu@target *\p@/\dimen@ + \tabu@hfuzz\relax + \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi + \fi +}% \tabucolX@init +\def\tabu@Xinit #1#2{\tabu@Xcol #1 \advance \tabu@Xsum + \ifdim #2\p@>\z@ #2\p@ \advance\dimen@ #2\p@ + \else -#2\p@ \tabu@negcoeftrue + \@tempdima \dimexpr \tabu@target*\p@/\dimexpr-#2\p@\relax \relax + \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi + \tabu@wddef{#1}{0pt}% + \fi +}% \tabu@Xinit +%% Collecting the environment body ---------------------------------- +\long\def\tabu@collectbody #1#2\end #3{% + \edef\tabu@stack{\tabu@pushbegins #2\begin\end\expandafter\@gobble\tabu@stack}% + \ifx \tabu@stack\@empty + \toks@\expandafter{\expandafter\tabu@thebody\expandafter{\the\toks@ #2}% + \def\tabu@end@envir{\end{#3}}% + \iftabuscantokens + \iftabu@long \def\tabu@endenvir {\end{#3}\tabu@gobbleX}% + \else \def\tabu@endenvir {\let\endarray \@empty + \end{#3}\tabu@gobbleX}% + \fi + \else \def\tabu@endenvir {\end{#3}}\fi}% + \let\tabu@collectbody \tabu@endofcollect + \else\def\tabu@temp{#3}% + \ifx \tabu@temp\@empty \toks@\expandafter{\the\toks@ #2\end }% + \else \ifx\tabu@temp\tabu@@spxiii \toks@\expandafter{\the\toks@ #2\end #3}% + \else \ifx\tabu@temp\tabu@X \toks@\expandafter{\the\toks@ #2\end #3}% + \else \toks@\expandafter{\the\toks@ #2\end{#3}}% + \fi\fi\fi + \fi + \tabu@collectbody{#1}% +}% \tabu@collectbody +\long\def\tabu@pushbegins#1\begin#2{\ifx\end#2\else b\expandafter\tabu@pushbegins\fi}% +\def\tabu@endofcollect #1{\ifnum0=`{}\fi + \expandafter\endgroup \the\toks@ #1% +}% \tabu@endofcollect +%% The trials: switching between strategies ------------------------- +\def\tabu@strategy {\relax % stops \count@ assignment ! + \ifcase\count@ % case 0 = print with vertical adjustment (outer is finished) + \expandafter \tabu@endoftrials + \or % case 1 = exit in vertical measure (outer in mode 3) + \expandafter\xdef\csname tabu@\the\tabu@nested.T\endcsname{\the\tabu@target}% + \expandafter\xdef\csname tabu@\the\tabu@nested.X\endcsname{\the\tabucolX}% + \expandafter \tabu@endoftrials + \or % case 2 = exit with a rule replacing the table (outer in mode 4) + \expandafter \tabu@quickend + \or % case 3 = outer is in mode 3 because of no X + \begingroup + \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \expandafter \tabu@measuring + \else % case 4 = horizontal measure + \begingroup + \global\let\tabu@elapsedtime \tabu@message@etime + \long\def\multicolumn##1##2##3{\multispan{##1}}% + \let\tabu@startpboxORI \@startpbox + \iftabu@spread + \def\tabu@naturalXmax {\z@}% + \let\tabu@naturalXmin \tabu@naturalXmax + \tabu@evr{\global\tabu@naturalX \z@}% + \let\@startpbox \tabu@startpboxmeasure + \else\iftabu@negcoef + \let\@startpbox \tabu@startpboxmeasure + \else \let\@startpbox \tabu@startpboxquick + \fi\fi + \expandafter \tabu@measuring + \fi +}% \tabu@strategy +\def\tabu@measuring{\expandafter \tabu@trial \expandafter + \count@ \the\count@ \tabu@endtrial +}% \tabu@measuring +\def\tabu@trial{\iftabu@long \tabu@longtrial \else \tabu@shorttrial \fi} +\def\tabu@shorttrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr + \ifx \tabu@savecounters\relax \else + \let\tabu@savecounters \relax \tabu@clckpt \fi + $\iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi + \expandafter{\expandafter \tabuthepreamble + \the\tabu@thebody + \csname tabu@adl@endtrial\endcsname + \endarray}$\egroup % got \tabu@box +}% \tabu@shorttrial +\def\tabu@longtrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr + \ifx \tabu@savecounters\relax \else + \let\tabu@savecounters \relax \tabu@clckpt \fi + \iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi + \expandafter{\expandafter \tabuthepreamble + \the\tabu@thebody + \tabuendlongtrial}\egroup % got \tabu@box +}% \tabu@longtrial +\def\tabuendlongtrial{% no @ allowed for \scantokens + \LT@echunk \global\setbox\@ne \hbox{\unhbox\@ne}\kern\wd\@ne + \LT@get@widths +}% \tabuendlongtrial +\def\tabu@adl@endtrial{% + \crcr \noalign{\global\adl@ncol \tabu@nbcols}}% anything global is crap, junky and fails ! +\def\tabu@seteverycr {\tabu@reset + \everycr \expandafter{\the\everycr \tabu@everycr}% + \let\everycr \tabu@noeverycr % +}% \tabu@seteverycr +\def\tabu@noeverycr{{\aftergroup\tabu@restoreeverycr \afterassignment}\toks@} +\def\tabu@restoreeverycr {\let\everycr \tabu@@everycr} +\def\tabu@everycr {\iftabu@everyrow \noalign{\tabu@everyrow}\fi} +\def\tabu@endoftrials {% + \iftabuscantokens \expandafter\@firstoftwo + \else \expandafter\@secondoftwo + \fi + {\expandafter \tabu@closetrialsgroup \expandafter + \tabu@rescan \expandafter{% + \expandafter\tabuthepreamble + \the\expandafter\tabu@thebody + \iftabu@long \else \endarray \fi}} + {\expandafter\tabu@closetrialsgroup \expandafter + \tabuthepreamble + \the\tabu@thebody}% + \tabu@endenvir % Finish ! +}% \tabu@endoftrials +\def\tabu@closetrialsgroup {% + \toks@\expandafter{\tabu@endenvir}% + \edef\tabu@bufferX{\endgroup + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target + \tabu@cnt \the\tabu@cnt + \def\noexpand\tabu@endenvir{\the\toks@}% + %Quid de \@halignto = \tabu@halignto ?? + }% \tabu@bufferX + \tabu@bufferX + \ifcase\tabu@nested % print out (outer in mode 0) + \global\tabu@cnt \tabu@cnt + \tabu@evr{\tabu@verticaldynamicadjustment}% + \tabu@celllalign@def{\everypar{}}\let\tabu@cellralign \@empty + \let\@finalstrut \tabu@finalstrut + \else % vertical measure of nested tabu + \tabu@evr{\tabu@verticalinit}% + \tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \fi + \tabu@clckpt \let\@halignto \tabu@halignto + \let\@halignto \@empty + \tabu@seteverycr + \ifdim \tabustrutrule>\z@ \ifnum\tabu@nested=\z@ + \setbox\@arstrutbox \box\voidb@x % force \@arstrutbox to be rebuilt (visible struts) + \fi\fi +}% \tabu@closetrialsgroup +\def\tabu@quickend {\expandafter \endgroup \expandafter + \tabu@target \the\tabu@target \tabu@quickrule + \let\endarray \relax \tabu@endenvir +}% \tabu@quickend +\def\tabu@endtrial {\relax % stops \count@ assignment ! + \ifcase \count@ \tabu@err % case 0 = impossible here + \or \tabu@err % case 1 = impossible here + \or \tabu@err % case 2 = impossible here + \or % case 3 = outer goes into mode 0 + \def\tabu@bufferX{\endgroup}\count@ \z@ + \else % case 4 = outer goes into mode 3 + \iftabu@spread \tabu@spreadarith % inner into mode 1 (outer in mode 3) + \else \tabu@arith % or 2 (outer in mode 4) + \fi + \count@=% + \ifcase\tabu@nested \thr@@ % outer goes into mode 3 + \else\iftabu@measuring \tw@ % outer is in mode 4 + \else \@ne % outer is in mode 3 + \fi\fi + \edef\tabu@bufferX{\endgroup + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target}% + \fi + \expandafter \tabu@bufferX \expandafter + \count@ \the\count@ \tabu@strategy +}% \tabu@endtrial +\def\tabu@err{\errmessage{(tabu) Internal impossible error! (\count@=\the\count@)}} +%% The algorithms: compute the widths / stop or go on --------------- +\def\tabu@arithnegcoef {% + \@tempdima \z@ \dimen@ \z@ \let\tabu@ \tabu@arith@negcoef \tabu@Xcoefs +}% \tabu@arithnegcoef +\def\tabu@arith@negcoef #1#2{% + \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ % saturated by definition + \advance\@tempdima #2\tabucolX + \else + \ifdim -#2\tabucolX <\tabu@wd{#1}% c_i X < natural width <= \tabu@target-> saturated + \advance\dimen@ -#2\p@ + \advance\@tempdima -#2\tabucolX + \else + \advance\@tempdima \tabu@wd{#1}% natural width <= c_i X => neutralised + \ifdim \tabu@wd{#1}<\tabu@target \else % neutralised + \advance\dimen@ -#2\p@ % saturated (natural width = tabu@target) + \fi + \fi + \fi +}% \tabu@arith@negcoef +\def\tabu@givespace #1#2{% here \tabu@DELTA < \z@ + \ifdim \@tempdima=\z@ + \tabu@wddef{#1}{\the\dimexpr -\tabu@DELTA*\p@/\tabu@Xsum}% + \else + \tabu@wddef{#1}{\the\dimexpr \tabu@hsize{#1}{#2} + *(\p@ -\tabu@DELTA*\p@/\@tempdima)/\p@\relax}% + \fi +}% \tabu@givespace +\def\tabu@arith {\advance\tabu@cnt \@ne + \ifnum \tabu@cnt=\@ne \tabu@message{\tabu@titles}\fi + \tabu@arithnegcoef + \@tempdimb \dimexpr \wd\tabu@box -\@tempdima \relax % + \tabu@DELTA = \dimexpr \wd\tabu@box - \tabu@target \relax + \tabu@message{\tabu@message@arith}% + \ifdim \tabu@DELTA <\tabu@hfuzz + \ifdim \tabu@DELTA<\z@ % wd (tabu)<\tabu@target ? + \let\tabu@ \tabu@givespace \tabu@Xcoefs + \advance\@tempdima \@tempdimb \advance\@tempdima -\tabu@DELTA % for message + \else % already converged: nothing to do but nearly impossible... + \fi + \tabucolX \maxdimen + \tabu@measuringfalse + \else % need for narrower X columns + \tabucolX =\dimexpr (\@tempdima -\tabu@DELTA) *\p@/\tabu@Xsum \relax + \tabu@measuringtrue + \@whilesw \iftabu@measuring\fi {% + \advance\tabu@cnt \@ne + \tabu@arithnegcoef + \tabu@DELTA =\dimexpr \@tempdima+\@tempdimb -\tabu@target \relax % always < 0 here + \tabu@message{\tabu@header + \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ + \tabu@msgalign \@tempdima+\@tempdimb { }{ }{ }{ }{ }\@@ + \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ + \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ + \ifdim -\tabu@DELTA<\tabu@hfuzz \tabu@spaces target ok\else + \tabu@msgalign \dimexpr -\tabu@DELTA *\p@/\dimen@ {}{}{}{}{}\@@ + \fi}% + \ifdim -\tabu@DELTA<\tabu@hfuzz + \advance\@tempdima \@tempdimb % for message + \tabu@measuringfalse + \else + \advance\tabucolX \dimexpr -\tabu@DELTA *\p@/\dimen@ \relax + \fi + }% + \fi + \tabu@message{\tabu@message@reached}% + \edef\tabu@bufferX{\endgroup \tabu@cnt \the\tabu@cnt + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target}% +}% \tabu@arith +\def\tabu@spreadarith {% + \dimen@ \z@ \@tempdima \tabu@naturalXmax \let\tabu@ \tabu@spread@arith \tabu@Xcoefs + \edef\tabu@naturalXmin {\the\dimexpr\tabu@naturalXmin*\dimen@/\p@}% + \@tempdimc =\dimexpr \wd\tabu@box -\tabu@naturalXmax+\tabu@naturalXmin \relax + \iftabu@measuring + \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax + \edef\tabu@bufferX{\endgroup \tabucolX \the\tabucolX \tabu@target\the\tabu@target}% + \else + \tabu@message{\tabu@message@spreadarith}% + \ifdim \dimexpr \@tempdimc+\tabu@spreadtarget >\tabu@target + \tabu@message{(tabu) spread + \ifdim \@tempdimc>\tabu@target useless here: default target used% + \else too large: reduced to fit default target\fi.}% + \else + \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax + \tabu@message{(tabu) spread: New target set to \the\tabu@target^^J}% + \fi + \begingroup \let\tabu@wddef \@gobbletwo + \@tempdimb \@tempdima + \tabucolX@init + \tabu@arithnegcoef + \wd\tabu@box =\dimexpr \wd\tabu@box +\@tempdima-\@tempdimb \relax + \expandafter\endgroup \expandafter\tabucolX \the\tabucolX + \tabu@arith + \fi +}% \tabu@spreadarith +\def\tabu@spread@arith #1#2{% + \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ + \else \advance\@tempdima \tabu@wd{#1}\relax + \fi +}% \tabu@spread@arith +%% Reporting in the .log file --------------------------------------- +\def\tabu@message@defaulttarget{% + \ifnum\tabu@nested=\z@^^J(tabu) Default target: + \ifx\tabudefaulttarget\linewidth \string\linewidth + \ifdim \tabu@thetarget=\linewidth \else + -\the\dimexpr\linewidth-\tabu@thetarget\fi = + \else\ifx\tabudefaulttarget\linegoal\string\linegoal= + \fi\fi + \else (tabu) Default target (nested): \fi + \the\tabu@target \on@line + \ifnum\tabu@nested=\z@ , page \the\c@page\fi} +\def\tabu@message@target {^^J(tabu) Target specified: + \the\tabu@target \on@line, page \the\c@page} +\def\tabu@message@arith {\tabu@header + \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ + \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{ }\@@ + \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ + \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ + \ifdim \tabu@DELTA<\tabu@hfuzz giving space\else + \tabu@msgalign \dimexpr (\@tempdima-\tabu@DELTA) *\p@/\tabu@Xsum -\tabucolX {}{}{}{}{}\@@ + \fi +}% \tabu@message@arith +\def\tabu@message@spreadarith {\tabu@spreadheader + \tabu@msgalign \tabu@spreadtarget { }{ }{ }{ }{}\@@ + \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{}\@@ + \tabu@msgalign -\tabu@naturalXmax { }{}{}{}{}\@@ + \tabu@msgalign \tabu@naturalXmin { }{ }{ }{ }{}\@@ + \tabu@msgalign \ifdim \dimexpr\@tempdimc>\tabu@target \tabu@target + \else \@tempdimc+\tabu@spreadtarget \fi + {}{}{}{}{}\@@} +\def\tabu@message@negcoef #1#2{ + \tabu@spaces\tabu@spaces\space * #1. X[\rem@pt#2]: + \space width = \tabu@wd {#1} + \expandafter\string\csname tabu@\the\tabu@nested.W\number#1\endcsname + \ifdim -\tabu@pt#2\tabucolX<\tabu@target + < \number-\rem@pt#2 X + = \the\dimexpr -\tabu@pt#2\tabucolX \relax + \else + <= \the\tabu@target\space < \number-\rem@pt#2 X\fi} +\def\tabu@message@reached{\tabu@header + ******* Reached Target: + hfuzz = \tabu@hfuzz\on@line\space *******} +\def\tabu@message@etime{\edef\tabu@stoptime{\the\pdfelapsedtime}% + \tabu@message{(tabu)\tabu@spaces Time elapsed during measure: + \the\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax sec + \the\numexpr\numexpr(\tabu@stoptime-\tabu@starttime) + -\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax*65536\relax + *1000/65536\relax ms \tabu@spaces(\the\tabu@cnt\space + cycle\ifnum\tabu@cnt>\@ne s\fi)^^J^^J}} +\def\tabu@message@verticalsp {% + \ifdim \@tempdima>\tabu@ht + \ifdim \@tempdimb>\tabu@dp + \expandafter\expandafter\expandafter\string\tabu@ht = + \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@ + \expandafter\expandafter\expandafter\string\tabu@dp = + \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J% + \else + \expandafter\expandafter\expandafter\string\tabu@ht = + \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@^^J% + \fi + \else\ifdim \@tempdimb>\tabu@dp + \tabu@spaces\tabu@spaces\tabu@spaces + \expandafter\expandafter\expandafter\string\tabu@dp = + \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J\fi + \fi +}% \tabu@message@verticalsp +\edef\tabu@spaces{\@spaces} +\def\tabu@strippt{\expandafter\tabu@pt\the} +{\@makeother\P \@makeother\T\lowercase{\gdef\tabu@pt #1PT{#1}}} +\def\tabu@msgalign{\expandafter\tabu@msg@align\the\dimexpr} +\def\tabu@msgalign@PT{\expandafter\tabu@msg@align\romannumeral-`\0\tabu@strippt} +\def\do #1{% + \def\tabu@msg@align##1.##2##3##4##5##6##7##8##9\@@{% + \ifnum##1<10 #1 #1\else + \ifnum##1<100 #1 \else + \ifnum##1<\@m #1\fi\fi\fi + ##1.##2##3##4##5##6##7##8#1}% + \def\tabu@header{(tabu) \ifnum\tabu@cnt<10 #1\fi\the\tabu@cnt) }% + \def\tabu@titles{\ifnum \tabu@nested=\z@ + (tabu) Try#1 #1 tabu X #1 #1 #1tabu Width #1 #1 Target + #1 #1 #1 Coefs #1 #1 #1 Update^^J\fi}% + \def\tabu@spreadheader{% + (tabu) Try#1 #1 Spread #1 #1 tabu Width #1 #1 #1 Nat. X #1 #1 #1 #1Nat. Min. + #1 New Target^^J% + (tabu) sprd} + \def\tabu@message@save {\begingroup + \def\x ####1{\tabu@msg@align ####1{ }{ }{ }{ }{}\@@} + \def\z ####1{\expandafter\x\expandafter{\romannumeral-`\0\tabu@strippt + \dimexpr####1\p@{ }{ }}}% + \let\color \relax \def\tabu@rulesstyle ####1####2{\detokenize{####1}}% + \let\CT@arc@ \relax \let\@preamble \@gobble + \let\tabu@savedpream \@firstofone + \let\tabu@savedparams \@firstofone + \def\tabu@target ####1\relax {(tabu) target #1 #1 #1 #1 #1 = \x{####1}^^J}% + \def\tabucolX ####1\relax {(tabu) X columns width#1 = \x{####1}^^J}% + \def\tabu@nbcols ####1\relax {(tabu) Number of columns: \z{####1}^^J}% + \def\tabu@aligndefault ####1{(tabu) Default alignment: #1 #1 ####1^^J}% + \def\col@sep ####1\relax {(tabu) column sep #1 #1 #1 = \x{####1}^^J}% + \def\arrayrulewidth ####1\relax{(tabu) arrayrulewidth #1 = \x{####1}}% + \def\doublerulesep ####1\relax { doublerulesep = \x{####1}^^J}% + \def\extratabsurround####1\relax{(tabu) extratabsurround = \x{####1}^^J}% + \def\extrarowheight ####1\relax{(tabu) extrarowheight #1 = \x{####1}}% + \def\extrarowdepth ####1\relax {extrarowdepth = \x{####1}^^J}% + \def\abovetabulinesep####1\relax{(tabu) abovetabulinesep=\x{####1} }% + \def\belowtabulinesep####1\relax{ belowtabulinesep=\x{####1}^^J}% + \def\arraystretch ####1{(tabu) arraystretch #1 #1 = \z{####1}^^J}% + \def\minrowclearance####1\relax{(tabu) minrowclearance #1 = \x{####1}^^J}% + \def\tabu@arc@L ####1{(tabu) taburulecolor #1 #1 = ####1^^J}% + \def\tabu@drsc@L ####1{(tabu) tabudoublerulecolor= ####1^^J}% + \def\tabu@evr@L ####1{(tabu) everyrow #1 #1 #1 #1 = \detokenize{####1}^^J}% + \def\tabu@ls@L ####1{(tabu) line style = \detokenize{####1}^^J}% + \def\NC@find ####1\@nil{(tabu) tabu preamble#1 #1 = \detokenize{####1}^^J}% + \def\tabu@wddef####1####2{(tabu) Natural width ####1 = \x{####2}^^J}% + \let\edef \@gobbletwo \let\def \@empty \let\let \@gobbletwo + \tabu@message{% + (tabu) \string\savetabu{\tabu@temp}: \on@line^^J% + \tabu@usetabu \@nil^^J}% + \endgroup} +}\do{ } +%% Measuring the natural width (varwidth) - store the results ------- +\def\tabu@startpboxmeasure #1{\bgroup % entering \vtop + \edef\tabu@temp{\expandafter\@secondoftwo \ifx\tabu@hsize #1\else\relax\fi}% + \ifodd 1\ifx \tabu@temp\@empty 0 \else % starts with \tabu@hsize ? + \iftabu@spread \else % if spread -> measure + \ifdim \tabu@temp\p@>\z@ 0 \fi\fi\fi% if coef>0 -> do not measure + \let\@startpbox \tabu@startpboxORI % restore immediately (nesting) + \tabu@measuringtrue % for the quick option... + \tabu@Xcol =\expandafter\@firstoftwo\ifx\tabu@hsize #1\fi + \ifdim \tabu@temp\p@>\z@ \ifdim \tabu@temp\tabucolX<\tabu@target + \tabu@target=\tabu@temp\tabucolX \fi\fi + \setbox\tabu@box \hbox \bgroup + \begin{varwidth}\tabu@target + \let\FV@ListProcessLine \tabu@FV@ListProcessLine % \hbox to natural width... + \narrowragged \arraybackslash \parfillskip \@flushglue + \ifdefined\pdfadjustspacing \pdfadjustspacing\z@ \fi + \bgroup \aftergroup\tabu@endpboxmeasure + \ifdefined \cellspacetoplimit \tabu@cellspacepatch \fi + \else \expandafter\@gobble + \tabu@startpboxquick{#1}% \@gobble \bgroup + \fi +}% \tabu@startpboxmeasure +\def\tabu@cellspacepatch{\def\bcolumn##1\@nil{}\let\ecolumn\@empty + \bgroup\color@begingroup} +\def\tabu@endpboxmeasure {% + \@finalstrut \@arstrutbox + \end{varwidth}\egroup % + \ifdim \tabu@temp\p@ <\z@ % neg coef + \ifdim \tabu@wd\tabu@Xcol <\wd\tabu@box + \tabu@wddef\tabu@Xcol {\the\wd\tabu@box}% + \tabu@debug{\tabu@message@endpboxmeasure}% + \fi + \else % spread coef>0 + \global\advance \tabu@naturalX \wd\tabu@box + \@tempdima =\dimexpr \wd\tabu@box *\p@/\dimexpr \tabu@temp\p@\relax \relax + \ifdim \tabu@naturalXmax <\tabu@naturalX + \xdef\tabu@naturalXmax {\the\tabu@naturalX}\fi + \ifdim \tabu@naturalXmin <\@tempdima + \xdef\tabu@naturalXmin {\the\@tempdima}\fi + \fi + \box\tabu@box \egroup % end of \vtop (measure) restore \tabu@target +}% \tabu@endpboxmeasure +\def\tabu@wddef #1{\expandafter\xdef + \csname tabu@\the\tabu@nested.W\number#1\endcsname} +\def\tabu@wd #1{\csname tabu@\the\tabu@nested.W\number#1\endcsname} +\def\tabu@message@endpboxmeasure{\tabu@spaces\tabu@spaces<-> % <-> save natural wd + \the\tabu@Xcol. X[\tabu@temp]: + target = \the\tabucolX \space + \expandafter\expandafter\expandafter\string\tabu@wd\tabu@Xcol + =\tabu@wd\tabu@Xcol +}% \tabu@message@endpboxmeasure +\def\tabu@startpboxquick {\bgroup + \let\@startpbox \tabu@startpboxORI % restore immediately + \let\tabu \tabu@quick % \begin is expanded before... + \expandafter\@gobble \@startpbox % gobbles \bgroup +}% \tabu@startpboxquick +\def\tabu@quick {\begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}\tabu@collectbody \tabu@endquick +}% \tabu@quick +\def\tabu@endquick {% + \ifodd 1\ifx\tabu@end@envir\tabu@endtabu \else + \ifx\tabu@end@envir\tabu@endtabus \else 0\fi\fi\relax + \endgroup + \else \let\endtabu \relax + \tabu@end@envir + \fi +}% \tabu@quick +\def\tabu@endtabu {\end{tabu}} +\def\tabu@endtabus {\end{tabu*}} +%% Measuring the heights and depths - store the results ------------- +\def\tabu@verticalmeasure{\everypar{}% + \ifnum \currentgrouptype>12 % 14=semi-simple, 15=math shift group + \setbox\tabu@box =\hbox\bgroup + \let\tabu@verticalspacing \tabu@verticalsp@lcr + \d@llarbegin % after \hbox ... + \else + \edef\tabu@temp{\ifnum\currentgrouptype=5\vtop + \else\ifnum\currentgrouptype=12\vcenter + \else\vbox\fi\fi}% + \setbox\tabu@box \hbox\bgroup$\tabu@temp \bgroup + \let\tabu@verticalspacing \tabu@verticalsp@pmb + \fi +}% \tabu@verticalmeasure +\def\tabu@verticalsp@lcr{% + \d@llarend \egroup % + \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep + \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax + \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi + \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi + \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi + \noindent\vrule height\@tempdima depth\@tempdimb +}% \tabu@verticalsp@lcr +\def\tabu@verticalsp@pmb{% inserts struts as needed + \par \expandafter\egroup + \expandafter$\expandafter + \egroup \expandafter + \@tempdimc \the\prevdepth + \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep + \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax + \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi + \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi + \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi + \let\@finalstrut \@gobble + \hrule height\@tempdima depth\@tempdimb width\hsize +%% \box\tabu@box +}% \tabu@verticalsp@pmb + +\def\tabu@verticalinit{% + \ifnum \c@taburow=\z@ \tabu@rearstrut \fi % after \tabu@reset ! + \advance\c@taburow \@ne + \tabu@htdef{\the\ht\@arstrutbox}\tabu@dpdef{\the\dp\@arstrutbox}% + \advance\c@taburow \m@ne +}% \tabu@verticalinit +\def\tabu@htdef {\expandafter\xdef \csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} +\def\tabu@ht {\csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} +\def\tabu@dpdef {\expandafter\xdef \csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} +\def\tabu@dp {\csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} +\def\tabu@verticaldynamicadjustment {% + \advance\c@taburow \@ne + \extrarowheight \dimexpr\tabu@ht - \ht\strutbox + \extrarowdepth \dimexpr\tabu@dp - \dp\strutbox + \let\arraystretch \@empty + \advance\c@taburow \m@ne +}% \tabu@verticaldynamicadjustment +\def\tabuphantomline{\crcr \noalign{% + {\globaldefs \@ne + \setbox\@arstrutbox \box\voidb@x + \let\tabu@@celllalign \tabu@celllalign + \let\tabu@@cellralign \tabu@cellralign + \let\tabu@@cellleft \tabu@cellleft + \let\tabu@@cellright \tabu@cellright + \let\tabu@@thevline \tabu@thevline + \let\tabu@celllalign \@empty + \let\tabu@cellralign \@empty + \let\tabu@cellright \@empty + \let\tabu@cellleft \@empty + \let\tabu@thevline \relax}% + \edef\tabu@temp{\tabu@multispan \tabu@nbcols{\noindent &}}% + \toks@\expandafter{\tabu@temp \noindent\tabu@everyrowfalse \cr + \noalign{\tabu@rearstrut + {\globaldefs\@ne + \let\tabu@celllalign \tabu@@celllalign + \let\tabu@cellralign \tabu@@cellralign + \let\tabu@cellleft \tabu@@cellleft + \let\tabu@cellright \tabu@@cellright + \let\tabu@thevline \tabu@@thevline}}}% + \expandafter}\the\toks@ +}% \tabuphantomline +%% \firsthline and \lasthline corrections --------------------------- +\def\tabu@firstline {\tabu@hlineAZ \tabu@firsthlinecorrection {}} +\def\tabu@firsthline{\tabu@hlineAZ \tabu@firsthlinecorrection \hline} +\def\tabu@lastline {\tabu@hlineAZ \tabu@lasthlinecorrection {}} +\def\tabu@lasthline {\tabu@hlineAZ \tabu@lasthlinecorrection \hline} +\def\tabu@hline {% replaces \hline if no colortbl (see \AtBeginDocument) + \noalign{\ifnum0=`}\fi + {\CT@arc@\hrule height\arrayrulewidth}% + \futurelet \tabu@temp \tabu@xhline +}% \tabu@hline +\def\tabu@xhline{% + \ifx \tabu@temp \hline + {\ifx \CT@drsc@\relax \vskip + \else\ifx \CT@drsc@\@empty \vskip + \else \CT@drsc@\hrule height + \fi\fi + \doublerulesep}% + \fi + \ifnum0=`{\fi}% +}% \tabu@xhline +\def\tabu@hlineAZ #1#2{\noalign{\ifnum0=`}\fi \dimen@ \z@ \count@ \z@ + \toks@{}\def\tabu@hlinecorrection{#1}\def\tabu@temp{#2}% + \tabu@hlineAZsurround +}% \tabu@hlineAZ +\newcommand*\tabu@hlineAZsurround[1][\extratabsurround]{% + \extratabsurround #1\let\tabucline \tabucline@scan + \let\hline \tabu@hlinescan \let\firsthline \hline + \let\cline \tabu@clinescan \let\lasthline \hline + \expandafter \futurelet \expandafter \tabu@temp + \expandafter \tabu@nexthlineAZ \tabu@temp +}% \tabu@hlineAZsurround +\def\tabu@hlinescan {\tabu@thick \arrayrulewidth \tabu@xhlineAZ \hline} +\def\tabu@clinescan #1{\tabu@thick \arrayrulewidth \tabu@xhlineAZ {\cline{#1}}} +\def\tabucline@scan{\@testopt \tabucline@sc@n {}} +\def\tabucline@sc@n #1[#2]{\tabu@xhlineAZ {\tabucline[{#1}]{#2}}} +\def\tabu@nexthlineAZ{% + \ifx \tabu@temp\hline \else + \ifx \tabu@temp\cline \else + \ifx \tabu@temp\tabucline \else + \tabu@hlinecorrection + \fi\fi\fi +}% \tabu@nexthlineAZ +\def\tabu@xhlineAZ #1{% + \toks@\expandafter{\the\toks@ #1}% + \@tempdimc \tabu@thick % The last line width + \ifcase\count@ \@tempdimb \tabu@thick % The first line width + \else \advance\dimen@ \dimexpr \tabu@thick+\doublerulesep \relax + \fi + \advance\count@ \@ne \futurelet \tabu@temp \tabu@nexthlineAZ +}% \tabu@xhlineAZ +\def\tabu@firsthlinecorrection{% \count@ = number of \hline -1 + \@tempdima \dimexpr \ht\@arstrutbox+\dimen@ + \edef\firsthline{% + \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule + height \the\dimexpr\@tempdima+\extratabsurround + depth \dp\@arstrutbox + width \tabustrutrule}\hss}\cr + \noalign{\vskip -\the\dimexpr \@tempdima+\@tempdimb + +\dp\@arstrutbox \relax}% + \the\toks@ + }\ifnum0=`{\fi + \expandafter}\firsthline % we are then ! +}% \tabu@firsthlinecorrection +\def\tabu@lasthlinecorrection{% + \@tempdima \dimexpr \dp\@arstrutbox+\dimen@+\@tempdimb+\@tempdimc + \edef\lasthline{% + \the\toks@ + \noalign{\vskip -\the\dimexpr\dimen@+\@tempdimb+\dp\@arstrutbox}% + \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule + depth \the\dimexpr \dp\@arstrutbox+\@tempdimb+\dimen@ + +\extratabsurround-\@tempdimc + height \z@ + width \tabustrutrule}\hss}\cr + }\ifnum0=`{\fi + \expandafter}\lasthline % we are then ! +}% \tabu@lasthlinecorrection +\def\tabu@LT@@hline{% + \ifx\LT@next\hline + \global\let\LT@next \@gobble + \ifx \CT@drsc@\relax + \gdef\CT@LT@sep{% + \noalign{\penalty-\@medpenalty\vskip\doublerulesep}}% + \else + \gdef\CT@LT@sep{% + \multispan\LT@cols{% + \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill}\cr}% + \fi + \else + \global\let\LT@next\empty + \gdef\CT@LT@sep{% + \noalign{\penalty-\@lowpenalty\vskip-\arrayrulewidth}}% + \fi + \ifnum0=`{\fi}% + \multispan\LT@cols + {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr + \CT@LT@sep + \multispan\LT@cols + {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr + \noalign{\penalty\@M}% + \LT@next +}% \tabu@LT@@hline +%% Horizontal lines : \tabucline ------------------------------------ +\let\tabu@start \@tempcnta +\let\tabu@stop \@tempcntb +\newcommand*\tabucline{\noalign{\ifnum0=`}\fi \tabu@cline} +\newcommand*\tabu@cline[2][]{\tabu@startstop{#2}% + \ifnum \tabu@stop<\z@ \toks@{}% + \else \tabu@clinearg{#1}\tabu@thestyle + \edef\tabucline{\toks@{% + \ifnum \tabu@start>\z@ \omit + \tabu@multispan\tabu@start {\span\omit}&\fi + \omit \tabu@multispan\tabu@stop {\span\omit}% + \tabu@thehline\cr + }}\tabucline + \tabu@tracinglines{(tabu:tabucline) Style: #1^^J\the\toks@^^J^^J}% + \fi + \futurelet \tabu@temp \tabu@xcline +}% \tabu@cline +\def\tabu@clinearg #1{% + \ifx\\#1\\\let\tabu@thestyle \tabu@ls@ + \else \@defaultunits \expandafter\let\expandafter\@tempa + \romannumeral-`\0#1\relax \@nnil + \ifx \hbox\@tempa \tabu@clinebox{#1}% + \else\ifx \box\@tempa \tabu@clinebox{#1}% + \else\ifx \vbox\@tempa \tabu@clinebox{#1}% + \else\ifx \vtop\@tempa \tabu@clinebox{#1}% + \else\ifx \copy\@tempa \tabu@clinebox{#1}% + \else\ifx \leaders\@tempa \tabu@clineleads{#1}% + \else\ifx \cleaders\@tempa \tabu@clineleads{#1}% + \else\ifx \xleaders\@tempa \tabu@clineleads{#1}% + \else\tabu@getline {#1}% + \fi\fi\fi\fi\fi\fi\fi\fi + \fi +}% \tabu@clinearg +\def\tabu@clinebox #1{\tabu@clineleads{\xleaders#1\hss}} +\def\tabu@clineleads #1{% + \let\tabu@thestyle \relax \let\tabu@leaders \@undefined + \gdef\tabu@thehrule{#1}} +\def\tabu@thehline{\begingroup + \ifdefined\tabu@leaders + \noexpand\tabu@thehleaders + \else \noexpand\tabu@thehrule + \fi \endgroup +}% \tabu@thehline +\def\tabu@xcline{% + \ifx \tabu@temp\tabucline + \toks@\expandafter{\the\toks@ \noalign + {\ifx\CT@drsc@\relax \vskip + \else \CT@drsc@\hrule height + \fi + \doublerulesep}}% + \fi + \tabu@docline +}% \tabu@xcline +\def\tabu@docline {\ifnum0=`{\fi \expandafter}\the\toks@} +\def\tabu@docline@evr {\xdef\tabu@doclineafter{\the\toks@}% + \ifnum0=`{\fi}\aftergroup\tabu@doclineafter} +\def\tabu@multispan #1#2{% + \ifnum\numexpr#1>\@ne #2\expandafter\tabu@multispan + \else \expandafter\@gobbletwo + \fi {#1-1}{#2}% +}% \tabu@multispan +\def\tabu@startstop #1{\tabu@start@stop #1\relax 1-\tabu@nbcols \@nnil} +\def\tabu@start@stop #1-#2\@nnil{% + \@defaultunits \tabu@start\number 0#1\relax \@nnil + \@defaultunits \tabu@stop \number 0#2\relax \@nnil + \tabu@stop \ifnum \tabu@start>\tabu@nbcols \m@ne + \else\ifnum \tabu@stop=\z@ \tabu@nbcols + \else\ifnum \tabu@stop>\tabu@nbcols \tabu@nbcols + \else \tabu@stop + \fi\fi\fi + \advance\tabu@start \m@ne + \ifnum \tabu@start>\z@ \advance\tabu@stop -\tabu@start \fi +}% \tabu@start@stop +%% Numbers: siunitx S columns (and \tabudecimal) ------------------- +\def\tabu@tabudecimal #1{% + \def\tabu@decimal{#1}\@temptokena{}% + \let\tabu@getdecimal@ \tabu@getdecimal@ignorespaces + \tabu@scandecimal +}% \tabu@tabudecimal +\def\tabu@scandecimal{\futurelet \tabu@temp \tabu@getdecimal@} +\def\tabu@skipdecimal#1{#1\tabu@scandecimal} +\def\tabu@getdecimal@ignorespaces{% + \ifcase 0\ifx\tabu@temp\ignorespaces\else + \ifx\tabu@temp\@sptoken1\else + 2\fi\fi\relax + \let\tabu@getdecimal@ \tabu@getdecimal + \expandafter\tabu@skipdecimal + \or \expandafter\tabu@gobblespace\expandafter\tabu@scandecimal + \else \expandafter\tabu@skipdecimal + \fi +}% \tabu@getdecimal@ignorespaces +\def\tabu@get@decimal#1{\@temptokena\expandafter{\the\@temptokena #1}% + \tabu@scandecimal} +\def\do#1{% + \def\tabu@get@decimalspace#1{% + \@temptokena\expandafter{\the\@temptokena #1}\tabu@scandecimal}% +}\do{ } +\let\tabu@@tabudecimal \tabu@tabudecimal +\def\tabu@getdecimal{% + \ifcase 0\ifx 0\tabu@temp\else + \ifx 1\tabu@temp\else + \ifx 2\tabu@temp\else + \ifx 3\tabu@temp\else + \ifx 4\tabu@temp\else + \ifx 5\tabu@temp\else + \ifx 6\tabu@temp\else + \ifx 7\tabu@temp\else + \ifx 8\tabu@temp\else + \ifx 9\tabu@temp\else + \ifx .\tabu@temp\else + \ifx ,\tabu@temp\else + \ifx -\tabu@temp\else + \ifx +\tabu@temp\else + \ifx e\tabu@temp\else + \ifx E\tabu@temp\else + \ifx\tabu@cellleft\tabu@temp1\else + \ifx\ignorespaces\tabu@temp1\else + \ifx\@sptoken\tabu@temp2\else + 3\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax + \expandafter\tabu@get@decimal + \or \expandafter\tabu@skipdecimal + \or \expandafter\tabu@get@decimalspace + \else\expandafter\tabu@printdecimal + \fi +}% \tabu@getdecimal +\def\tabu@printdecimal{% + \edef\tabu@temp{\the\@temptokena}% + \ifx\tabu@temp\@empty\else + \ifx\tabu@temp\space\else + \expandafter\tabu@decimal\expandafter{\the\@temptokena}% + \fi\fi +}% \tabu@printdecimal +%% Verbatim inside X columns ---------------------------------------- +\def\tabu@verbatim{% + \let\verb \tabu@verb + \let\FV@DefineCheckEnd \tabu@FV@DefineCheckEnd +}% \tabu@verbatim +\let\tabu@ltx@verb \verb +\def\tabu@verb{\@ifstar {\tabu@ltx@verb*} \tabu@ltx@verb} +\def\tabu@fancyvrb {% + \def\tabu@FV@DefineCheckEnd ##1{% + \def\tabu@FV@DefineCheckEnd{% + ##1% + \let\FV@CheckEnd \tabu@FV@CheckEnd + \let\FV@@CheckEnd \tabu@FV@@CheckEnd + \let\FV@@@CheckEnd \tabu@FV@@@CheckEnd + \edef\FV@EndScanning{% + \def\noexpand\next{\noexpand\end{\FV@EnvironName}}% + \global\let\noexpand\FV@EnvironName\relax + \noexpand\next}% + \xdef\FV@EnvironName{\detokenize\expandafter{\FV@EnvironName}}}% + }\expandafter\tabu@FV@DefineCheckEnd\expandafter{\FV@DefineCheckEnd} +}% \tabu@fancyvrb +\def\tabu@FV@CheckEnd #1{\expandafter\FV@@CheckEnd \detokenize{#1\end{}}\@nil} +\edef\tabu@FV@@@CheckEnd {\detokenize{\end{}}} +\begingroup +\catcode`\[1 \catcode`\]2 +\@makeother\{ \@makeother\} + \edef\x[\endgroup + \def\noexpand\tabu@FV@@CheckEnd ##1\detokenize[\end{]##2\detokenize[}]##3% + ]\x \@nil{\def\@tempa{#2}\def\@tempb{#3}} +\def\tabu@FV@ListProcessLine #1{% + \hbox {%to \hsize{% + \kern\leftmargin + \hbox {%to \linewidth{% + \FV@LeftListNumber + \FV@LeftListFrame + \FancyVerbFormatLine{#1}\hss +%% DG/SR modification begin - Jan. 28, 1998 (for numbers=right add-on) +%% \FV@RightListFrame}% + \FV@RightListFrame + \FV@RightListNumber}% +%% DG/SR modification end + \hss}} +%% \savetabu -------------------------------------------------------- +\newcommand*\savetabu[1]{\noalign{% + \tabu@sanitizearg{#1}\tabu@temp + \ifx \tabu@temp\@empty \tabu@savewarn{}{The tabu will not be saved}\else + \@ifundefined{tabu@saved@\tabu@temp}{}{\tabu@savewarn{#1}{Overwriting}}% + \ifdefined\tabu@restored \expandafter\let + \csname tabu@saved@\tabu@temp \endcsname \tabu@restored + \else {\tabu@save}% + \fi + \fi}% +}% \savetabu +\def\tabu@save {% + \toks0\expandafter{\tabu@saved@}% + \iftabu@negcoef + \let\tabu@wddef \relax \let\tabu@ \tabu@savewd \edef\tabu@savewd{\tabu@Xcoefs}% + \toks0\expandafter{\the\toks\expandafter0\tabu@savewd}\fi + \toks1\expandafter{\tabu@savedpream}% + \toks2\expandafter{\tabu@savedpreamble}% + \let\@preamble \relax + \let\tabu@savedpream \relax \let\tabu@savedparams \relax + \edef\tabu@preamble{% + \def\noexpand\tabu@aligndefault{\tabu@align}% + \def\tabu@savedparams {\noexpand\the\toks0}% + \def\tabu@savedpream {\noexpand\the\toks1}}% + \edef\tabu@usetabu{% + \def\@preamble {\noexpand\the\toks2}% + \tabu@target \the\tabu@target \relax + \tabucolX \the\tabucolX \relax + \tabu@nbcols \the\tabu@nbcols \relax + \def\noexpand\tabu@aligndefault{\tabu@align}% + \def\tabu@savedparams {\noexpand\the\toks0}% + \def\tabu@savedpream {\noexpand\the\toks1}}% + \let\tabu@aligndefault \relax \let\@sharp \relax + \edef\@tempa{\noexpand\tabu@s@ved + {\tabu@usetabu} + {\tabu@preamble} + {\the\toks1}}\@tempa + \tabu@message@save +}% \tabu@save +\long\def\tabu@s@ved #1#2#3{% + \def\tabu@usetabu{#1}% + \expandafter\gdef\csname tabu@saved@\tabu@temp\endcsname ##1{% + \ifodd ##1% \usetabu + \tabu@measuringfalse \tabu@spreadfalse % Just in case... + \gdef\tabu@usetabu {% + \ifdim \tabu@target>\z@ \tabu@warn@usetabu \fi + \global\let\tabu@usetabu \@undefined + \def\@halignto {to\tabu@target}% + #1% + \ifx \tabu@align\tabu@aligndefault@text + \ifnum \tabu@nested=\z@ + \let\tabu@align \tabu@aligndefault \fi\fi}% + \else % \preamble + \gdef\tabu@preamble {% + \global\let\tabu@preamble \@undefined + #2% + \ifx \tabu@align\tabu@aligndefault@text + \ifnum \tabu@nested=\z@ + \let\tabu@align \tabu@aligndefault \fi\fi}% + \fi + #3}% +}% \tabu@s@ved +\def\tabu@aligndefault@text {\tabu@aligndefault}% +\def\tabu@warn@usetabu {\PackageWarning{tabu} + {Specifying a target with \string\usetabu\space is useless + \MessageBreak The target cannot be changed!}} +\def\tabu@savewd #1#2{\ifdim #2\p@<\z@ \tabu@wddef{#1}{\tabu@wd{#1}}\fi} +\def\tabu@savewarn#1#2{\PackageInfo{tabu} + {User-name `#1' already used for \string\savetabu + \MessageBreak #2}}% +\def\tabu@saveerr#1{\PackageError{tabu} + {User-name `#1' is unknown for \string\usetabu + \MessageBreak I cannot restore an unknown preamble!}\@ehd} +%% \rowfont --------------------------------------------------------- +\newskip \tabu@cellskip +\def\tabu@rowfont{\ifdim \baselineskip=\z@\noalign\fi + {\ifnum0=`}\fi \tabu@row@font} +\newcommand*\tabu@row@font[2][]{% + \ifnum7=\currentgrouptype + \global\let\tabu@@cellleft \tabu@cellleft + \global\let\tabu@@cellright \tabu@cellright + \global\let\tabu@@celllalign \tabu@celllalign + \global\let\tabu@@cellralign \tabu@cellralign + \global\let\tabu@@rowfontreset\tabu@rowfontreset + \fi + \global\let\tabu@rowfontreset \tabu@rowfont@reset + \expandafter\gdef\expandafter\tabu@cellleft\expandafter{\tabu@cellleft #2}% + \ifcsname tabu@cell@#1\endcsname % row alignment + \csname tabu@cell@#1\endcsname \fi + \ifnum0=`{\fi}% end of group / noalign group +}% \rowfont +\def\tabu@ifcolorleavevmode #1{\let\color \tabu@leavevmodecolor #1\let\color\tabu@color}% +\def\tabu@rowfont@reset{% + \global\let\tabu@rowfontreset \tabu@@rowfontreset + \global\let\tabu@cellleft \tabu@@cellleft + \global\let\tabu@cellright \tabu@@cellright + \global\let\tabu@cellfont \@empty + \global\let\tabu@celllalign \tabu@@celllalign + \global\let\tabu@cellralign \tabu@@cellralign +}% \tabu@@rowfontreset +\let\tabu@rowfontreset \@empty % overwritten \AtBeginDocument if colortbl +%% \tabu@prepnext@tok ----------------------------------------------- +\newif \iftabu@cellright +\def\tabu@prepnext@tok{% + \ifnum \count@<\z@ % + \@tempcnta \@M % + \tabu@nbcols\z@ + \let\tabu@fornoopORI \@fornoop + \tabu@cellrightfalse + \else + \ifcase \numexpr \count@-\@tempcnta \relax % (case 0): prev. token is left + \advance \tabu@nbcols \@ne + \iftabu@cellright % before-previous token is right and is finished + \tabu@cellrightfalse % + \tabu@righttok + \fi + \tabu@lefttok + \or % (case 1) previous token is right + \tabu@cellrighttrue \let\@fornoop \tabu@lastnoop + \else % special column: do not change the token + \iftabu@cellright % before-previous token is right + \tabu@cellrightfalse + \tabu@righttok + \fi + \fi % \ifcase + \fi + \tabu@prepnext@tokORI +}% \tabu@prepnext@tok +\long\def\tabu@lastnoop#1\@@#2#3{\tabu@lastn@@p #2\@nextchar \in@\in@@} +\def\tabu@lastn@@p #1\@nextchar #2#3\in@@{% + \ifx \in@#2\else + \let\@fornoop \tabu@fornoopORI + \xdef\tabu@mkpreambuffer{\tabu@nbcols\the\tabu@nbcols \tabu@mkpreambuffer}% + \toks0\expandafter{\expandafter\tabu@everyrowtrue \the\toks0}% + \expandafter\prepnext@tok + \fi +}% \tabu@lastnoop +\def\tabu@righttok{% + \advance \count@ \m@ne + \toks\count@\expandafter {\the\toks\count@ \tabu@cellright \tabu@cellralign}% + \advance \count@ \@ne +}% \tabu@righttok +\def\tabu@lefttok{\toks\count@\expandafter{\expandafter\tabu@celllalign + \the\toks\count@ \tabu@cellleft}% after because of $ +}% \tabu@lefttok +%% Neutralisation of glues ------------------------------------------ +\let\tabu@cellleft \@empty +\let\tabu@cellright \@empty +\tabu@celllalign@def{\tabu@cellleft}% +\let\tabu@cellralign \@empty +\def\tabu@cell@align #1#2#3{% + \let\tabu@maybesiunitx \toks@ \tabu@celllalign + \global \expandafter \tabu@celllalign@def \expandafter {\the\toks@ #1}% + \toks@\expandafter{\tabu@cellralign #2}% + \xdef\tabu@cellralign{\the\toks@}% + \toks@\expandafter{\tabu@cellleft #3}% + \xdef\tabu@cellleft{\the\toks@}% +}% \tabu@cell@align +\def\tabu@cell@l{% force alignment to left + \tabu@cell@align + {\tabu@removehfil \raggedright \tabu@cellleft}% left + {\tabu@flush1\tabu@ignorehfil}% right + \raggedright +}% \tabu@cell@l +\def\tabu@cell@c{% force alignment to center + \tabu@cell@align + {\tabu@removehfil \centering \tabu@flush{.5}\tabu@cellleft} + {\tabu@flush{.5}\tabu@ignorehfil} + \centering +}% \tabu@cell@c +\def\tabu@cell@r{% force alignment to right + \tabu@cell@align + {\tabu@removehfil \raggedleft \tabu@flush1\tabu@cellleft} + \tabu@ignorehfil + \raggedleft +}% \tabu@cell@r +\def\tabu@cell@j{% force justification (for p, m, b columns) + \tabu@cell@align + {\tabu@justify\tabu@cellleft} + {} + \tabu@justify +}% \tabu@cell@j +\def\tabu@justify{% + \leftskip\z@skip \@rightskip\leftskip \rightskip\@rightskip + \parfillskip\@flushglue +}% \tabu@justify +%% ragged2e settings +\def\tabu@cell@L{% force alignment to left (ragged2e) + \tabu@cell@align + {\tabu@removehfil \RaggedRight \tabu@cellleft} + {\tabu@flush 1\tabu@ignorehfil} + \RaggedRight +}% \tabu@cell@L +\def\tabu@cell@C{% force alignment to center (ragged2e) + \tabu@cell@align + {\tabu@removehfil \Centering \tabu@flush{.5}\tabu@cellleft} + {\tabu@flush{.5}\tabu@ignorehfil} + \Centering +}% \tabu@cell@C +\def\tabu@cell@R{% force alignment to right (ragged2e) + \tabu@cell@align + {\tabu@removehfil \RaggedLeft \tabu@flush 1\tabu@cellleft} + \tabu@ignorehfil + \RaggedLeft +}% \tabu@cell@R +\def\tabu@cell@J{% force justification (ragged2e) + \tabu@cell@align + {\justifying \tabu@cellleft} + {} + \justifying +}% \tabu@cell@J +\def\tabu@flush#1{% + \iftabu@colortbl % colortbl uses \hfill rather than \hfil + \hskip \ifnum13<\currentgrouptype \stretch{#1}% + \else \ifdim#1pt<\p@ \tabu@cellskip + \else \stretch{#1} + \fi\fi \relax + \else % array.sty + \ifnum 13<\currentgrouptype + \hfil \hskip1sp \relax \fi + \fi +}% \tabu@flush +\let\tabu@hfil \hfil +\let\tabu@hfill \hfill +\let\tabu@hskip \hskip +\def\tabu@removehfil{% + \iftabu@colortbl + \unkern \tabu@cellskip =\lastskip + \ifnum\gluestretchorder\tabu@cellskip =\tw@ \hskip-\tabu@cellskip + \else \tabu@cellskip \z@skip + \fi + \else + \ifdim\lastskip=1sp\unskip\fi + \ifnum\gluestretchorder\lastskip =\@ne + \hfilneg % \hfilneg for array.sty but not for colortbl... + \fi + \fi +}% \tabu@removehfil +\def\tabu@ignorehfil{\aftergroup \tabu@nohfil} +\def\tabu@nohfil{% \hfil -> do nothing + restore original \hfil + \def\hfil{\let\hfil \tabu@hfil}% local to (alignment template) group +}% \tabu@nohfil +\def\tabu@colortblalignments {% if colortbl + \def\tabu@nohfil{% + \def\hfil {\let\hfil \tabu@hfil}% local to (alignment template) group + \def\hfill {\let\hfill \tabu@hfill}% (colortbl uses \hfill) pfff... + \def\hskip ####1\relax{\let\hskip \tabu@hskip}}% local +}% \tabu@colortblalignments +%% Taking care of footnotes and hyperfootnotes ---------------------- +\long\def\tabu@footnotetext #1{% + \edef\@tempa{\the\tabu@footnotes + \noexpand\footnotetext [\the\csname c@\@mpfn\endcsname]}% + \global\tabu@footnotes\expandafter{\@tempa {#1}}}% +\long\def\tabu@xfootnotetext [#1]#2{% + \global\tabu@footnotes\expandafter{\the\tabu@footnotes + \footnotetext [{#1}]{#2}}} +\let\tabu@xfootnote \@xfootnote +\long\def\tabu@Hy@ftntext{\tabu@Hy@ftntxt {\the \c@footnote }} +\long\def\tabu@Hy@xfootnote [#1]{% + \begingroup + \value\@mpfn #1\relax + \protected@xdef \@thefnmark {\thempfn}% + \endgroup + \@footnotemark \tabu@Hy@ftntxt {#1}% +}% \tabu@Hy@xfootnote +\long\def\tabu@Hy@ftntxt #1#2{% + \edef\@tempa{% + \the\tabu@footnotes + \begingroup + \value\@mpfn #1\relax + \noexpand\protected@xdef\noexpand\@thefnmark {\noexpand\thempfn}% + \expandafter \noexpand \expandafter + \tabu@Hy@footnotetext \expandafter{\Hy@footnote@currentHref}% + }% + \global\tabu@footnotes\expandafter{\@tempa {#2}% + \endgroup}% +}% \tabu@Hy@ftntxt +\long\def\tabu@Hy@footnotetext #1#2{% + \H@@footnotetext{% + \ifHy@nesting + \hyper@@anchor {#1}{#2}% + \else + \Hy@raisedlink{% + \hyper@@anchor {#1}{\relax}% + }% + \def\@currentHref {#1}% + \let\@currentlabelname \@empty + #2% + \fi + }% +}% \tabu@Hy@footnotetext +%% No need for \arraybackslash ! ------------------------------------ +\def\tabu@latextwoe {% +\def\tabu@temp##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} +\tabu@temp \tabu@centering \centering \arraybackslash +\tabu@temp \tabu@raggedleft \raggedleft \arraybackslash +\tabu@temp \tabu@raggedright \raggedright \arraybackslash +}% \tabu@latextwoe +\def\tabu@raggedtwoe {% +\def\tabu@temp ##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} +\tabu@temp \tabu@Centering \Centering \arraybackslash +\tabu@temp \tabu@RaggedLeft \RaggedLeft \arraybackslash +\tabu@temp \tabu@RaggedRight \RaggedRight \arraybackslash +\tabu@temp \tabu@justifying \justifying \arraybackslash +}% \tabu@raggedtwoe +\def\tabu@normalcrbackslash{\let\\\@normalcr} +\def\tabu@trivlist{\expandafter\def\expandafter\@trivlist\expandafter{% + \expandafter\tabu@normalcrbackslash \@trivlist}} +%% Utilities: \fbox \fcolorbox and \tabudecimal ------------------- +\def\tabu@fbox {\leavevmode\afterassignment\tabu@beginfbox \setbox\@tempboxa\hbox} +\def\tabu@beginfbox {\bgroup \kern\fboxsep + \bgroup\aftergroup\tabu@endfbox} +\def\tabu@endfbox {\kern\fboxsep\egroup\egroup + \@frameb@x\relax} +\def\tabu@color@b@x #1#2{\leavevmode \bgroup + \def\tabu@docolor@b@x{#1{#2\color@block{\wd\z@}{\ht\z@}{\dp\z@}\box\z@}}% + \afterassignment\tabu@begincolor@b@x \setbox\z@ \hbox +}% \tabu@color@b@x +\def\tabu@begincolor@b@x {\kern\fboxsep \bgroup + \aftergroup\tabu@endcolor@b@x \set@color} +\def\tabu@endcolor@b@x {\kern\fboxsep \egroup + \dimen@\ht\z@ \advance\dimen@ \fboxsep \ht\z@ \dimen@ + \dimen@\dp\z@ \advance\dimen@ \fboxsep \dp\z@ \dimen@ + \tabu@docolor@b@x \egroup +}% \tabu@endcolor@b@x +%% Corrections (arydshln, delarray, colortbl) ----------------------- +\def\tabu@fix@arrayright {%% \@arrayright is missing from \endarray + \iftabu@colortbl + \ifdefined\adl@array % + \def\tabu@endarray{% + \adl@endarray \egroup \adl@arrayrestore \CT@end \egroup % + \@arrayright % + \gdef\@preamble{}}% + \else % + \def\tabu@endarray{% + \crcr \egroup \egroup % + \@arrayright % + \gdef\@preamble{}\CT@end}% + \fi + \else + \ifdefined\adl@array % + \def\tabu@endarray{% + \adl@endarray \egroup \adl@arrayrestore \egroup % + \@arrayright % + \gdef\@preamble{}}% + \else % + \PackageWarning{tabu} + {\string\@arrayright\space is missing from the + \MessageBreak definition of \string\endarray. + \MessageBreak Compatibility with delarray.sty is broken.}% + \fi\fi +}% \tabu@fix@arrayright +\def\tabu@adl@xarraydashrule #1#2#3{% + \ifnum\@lastchclass=\adl@class@start\else + \ifnum\@lastchclass=\@ne\else + \ifnum\@lastchclass=5 \else % @-arg (class 5) and !-arg (class 1) + \adl@leftrulefalse \fi\fi % must be treated the same + \fi + \ifadl@zwvrule\else \ifadl@inactive\else + \@addtopreamble{\vrule\@width\arrayrulewidth + \@height\z@ \@depth\z@}\fi \fi + \ifadl@leftrule + \@addtopreamble{\adl@vlineL{\CT@arc@}{\adl@dashgapcolor}% + {\number#1}#3}% + \else \@addtopreamble{\adl@vlineR{\CT@arc@}{\adl@dashgapcolor}% + {\number#2}#3} + \fi +}% \tabu@adl@xarraydashrule +\def\tabu@adl@act@endpbox {% + \unskip \ifhmode \nobreak \fi \@finalstrut \@arstrutbox + \egroup \egroup + \adl@colhtdp \box\adl@box \hfil +}% \tabu@adl@act@endpbox +\def\tabu@adl@fix {% + \let\adl@xarraydashrule \tabu@adl@xarraydashrule % arydshln + \let\adl@act@endpbox \tabu@adl@act@endpbox % arydshln + \let\adl@act@@endpbox \tabu@adl@act@endpbox % arydshln + \let\@preamerror \@preamerr % arydshln +}% \tabu@adl@fix +%% Correction for longtable' \@startbox definition ------------------ +%% => \everypar is ``missing'' : TeX should be in vertical mode +\def\tabu@LT@startpbox #1{% + \bgroup + \let\@footnotetext\LT@p@ftntext + \setlength\hsize{#1}% + \@arrayparboxrestore + \everypar{% + \vrule \@height \ht\@arstrutbox \@width \z@ + \everypar{}}% +}% \tabu@LT@startpbox +%% \tracingtabu and the package options ------------------ +\DeclareOption{delarray}{\AtEndOfPackage{\RequirePackage{delarray}}} +\DeclareOption{linegoal}{% + \AtEndOfPackage{% + \RequirePackage{linegoal}[2010/12/07]% + \let\tabudefaulttarget \linegoal% \linegoal is \linewidth if not pdfTeX +}} +\DeclareOption{scantokens}{\tabuscantokenstrue} +\DeclareOption{debugshow}{\AtEndOfPackage{\tracingtabu=\tw@}} +\def\tracingtabu {\begingroup\@ifnextchar=% + {\afterassignment\tabu@tracing\count@} + {\afterassignment\tabu@tracing\count@1\relax}} +\def\tabu@tracing{\expandafter\endgroup + \expandafter\tabu@tr@cing \the\count@ \relax +}% \tabu@tracing +\def\tabu@tr@cing #1\relax {% + \ifnum#1>\thr@@ \let\tabu@tracinglines\message + \else \let\tabu@tracinglines\@gobble + \fi + \ifnum#1>\tw@ \let\tabu@DBG \tabu@@DBG + \def\tabu@mkarstrut {\tabu@DBG@arstrut}% + \tabustrutrule 1.5\p@ + \else \let\tabu@DBG \@gobble + \def\tabu@mkarstrut {\tabu@arstrut}% + \tabustrutrule \z@ + \fi + \ifnum#1>\@ne \let\tabu@debug \message + \else \let\tabu@debug \@gobble + \fi + \ifnum#1>\z@ + \let\tabu@message \message + \let\tabu@tracing@save \tabu@message@save + \let\tabu@starttimer \tabu@pdftimer + \else + \let\tabu@message \@gobble + \let\tabu@tracing@save \@gobble + \let\tabu@starttimer \relax + \fi +}% \tabu@tr@cing +%% Setup \AtBeginDocument +\AtBeginDocument{\tabu@AtBeginDocument} +\def\tabu@AtBeginDocument{\let\tabu@AtBeginDocument \@undefined + \ifdefined\arrayrulecolor \tabu@colortbltrue % + \tabu@colortblalignments % different glues are used + \else \tabu@colortblfalse \fi + \ifdefined\CT@arc@ \else \let\CT@arc@ \relax \fi + \ifdefined\CT@drsc@\else \let\CT@drsc@ \relax \fi + \let\tabu@arc@L \CT@arc@ \let\tabu@drsc@L \CT@drsc@ + \ifodd 1\ifcsname siunitx_table_collect_begin:Nn\endcsname % + \expandafter\ifx + \csname siunitx_table_collect_begin:Nn\endcsname\relax 0\fi\fi\relax + \tabu@siunitxtrue + \else \let\tabu@maybesiunitx \@firstofone % + \let\tabu@siunitx \tabu@nosiunitx + \tabu@siunitxfalse + \fi + \ifdefined\adl@array % + \else \let\tabu@adl@fix \relax + \let\tabu@adl@endtrial \@empty \fi + \ifdefined\longtable % + \else \let\longtabu \tabu@nolongtabu \fi + \ifdefined\cellspacetoplimit \tabu@warn@cellspace\fi + \csname\ifcsname ifHy@hyperfootnotes\endcsname % + ifHy@hyperfootnotes\else iffalse\fi\endcsname + \let\tabu@footnotetext \tabu@Hy@ftntext + \let\tabu@xfootnote \tabu@Hy@xfootnote \fi + \ifdefined\FV@DefineCheckEnd% + \tabu@fancyvrb \fi + \ifdefined\color % + \let\tabu@color \color + \def\tabu@leavevmodecolor ##1{% + \def\tabu@leavevmodecolor {\leavevmode ##1}% + }\expandafter\tabu@leavevmodecolor\expandafter{\color}% + \else + \let\tabu@color \tabu@nocolor + \let\tabu@leavevmodecolor \@firstofone \fi + \tabu@latextwoe + \ifdefined\@raggedtwoe@everyselectfont % + \tabu@raggedtwoe + \else + \let\tabu@cell@L \tabu@cell@l + \let\tabu@cell@R \tabu@cell@r + \let\tabu@cell@C \tabu@cell@c + \let\tabu@cell@J \tabu@cell@j \fi + \expandafter\in@ \expandafter\@arrayright \expandafter{\endarray}% + \ifin@ \let\tabu@endarray \endarray + \else \tabu@fix@arrayright \fi% + \everyrow{}% +}% \tabu@AtBeginDocument +\def\tabu@warn@cellspace{% + \PackageWarning{tabu}{% + Package cellspace has some limitations + \MessageBreak And redefines some macros of array.sty. + \MessageBreak Please use \string\tabulinesep\space to control + \MessageBreak vertical spacing of lines inside tabu environment}% +}% \tabu@warn@cellspace +%% tabu Package initialisation +\tabuscantokensfalse +\let\tabu@arc@G \relax +\let\tabu@drsc@G \relax +\let\tabu@evr@G \@empty +\let\tabu@rc@G \@empty +\def\tabu@ls@G {\tabu@linestyle@}% +\let\tabu@@rowfontreset \@empty % +\let\tabu@@celllalign \@empty +\let\tabu@@cellralign \@empty +\let\tabu@@cellleft \@empty +\let\tabu@@cellright \@empty +\def\tabu@naturalXmin {\z@} +\def\tabu@naturalXmax {\z@} +\let\tabu@rowfontreset \@empty +\def\tabulineon {4pt}\let\tabulineoff \tabulineon +\tabu@everyrowtrue +\ifdefined\pdfelapsedtime % + \def\tabu@pdftimer {\xdef\tabu@starttime{\the\pdfelapsedtime}}% +\else \let\tabu@pdftimer \relax \let\tabu@message@etime \relax +\fi +\tracingtabu=\z@ +\newtabulinestyle {=\maxdimen}% creates the 'factory' settings \tabu@linestyle@ +\tabulinestyle{} +\taburowcolors{} +\let\tabudefaulttarget \linewidth +\ProcessOptions* % \ProcessOptions* is quicker ! +\endinput +%% +%% End of file `tabu.sty'. diff --git a/docs/latex/textconst_8h.tex b/docs/latex/textconst_8h.tex new file mode 100644 index 0000000..943a562 --- /dev/null +++ b/docs/latex/textconst_8h.tex @@ -0,0 +1,24 @@ +\hypertarget{textconst_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/textconst.h File Reference} +\label{textconst_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/textconst.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/textconst.h}} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +const char state\+\_\+P\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{textconst_8h_a6cfd127aee797ba9080cec031590b508}{P\+R\+O\+G\+M\+EM}} = \char`\"{}\$state\char`\"{} +\item +const char \mbox{\hyperlink{textconst_8h_a2412d8e03a08775ec69a8d80fbcc2f53}{E\+E\+P\+R\+O\+M\+\_\+signature}} \mbox{[}$\,$\mbox{]} = \mbox{\hyperlink{options_8h_a084dba44a01332b67ab1ba8a599cde26}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}} +\end{DoxyCompactItemize} + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{textconst_8h_a2412d8e03a08775ec69a8d80fbcc2f53}\label{textconst_8h_a2412d8e03a08775ec69a8d80fbcc2f53}} +\index{textconst.h@{textconst.h}!EEPROM\_signature@{EEPROM\_signature}} +\index{EEPROM\_signature@{EEPROM\_signature}!textconst.h@{textconst.h}} +\doxysubsubsection{\texorpdfstring{EEPROM\_signature}{EEPROM\_signature}} +{\footnotesize\ttfamily const char E\+E\+P\+R\+O\+M\+\_\+signature\mbox{[}$\,$\mbox{]} = \mbox{\hyperlink{options_8h_a084dba44a01332b67ab1ba8a599cde26}{E\+E\+P\+R\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}} + +\mbox{\Hypertarget{textconst_8h_a6cfd127aee797ba9080cec031590b508}\label{textconst_8h_a6cfd127aee797ba9080cec031590b508}} +\index{textconst.h@{textconst.h}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!textconst.h@{textconst.h}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const char R\+G\+B\+\_\+P \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM = \char`\"{}\$state\char`\"{}} + diff --git a/docs/latex/union_u_i_d.tex b/docs/latex/union_u_i_d.tex new file mode 100644 index 0000000..a510bf1 --- /dev/null +++ b/docs/latex/union_u_i_d.tex @@ -0,0 +1,33 @@ +\hypertarget{union_u_i_d}{}\doxysection{U\+ID Union Reference} +\label{union_u_i_d}\index{UID@{UID}} + + +{\ttfamily \#include $<$main.\+h$>$} + +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +uint32\+\_\+t \mbox{\hyperlink{union_u_i_d_a478d21c78d3100c5e236adca2c571e1e}{U\+I\+D\+\_\+\+Long}} \mbox{[}5\mbox{]} +\item +uint8\+\_\+t \mbox{\hyperlink{union_u_i_d_a2a1db307f2be0b2bc8951105a99c83aa}{U\+I\+D\+\_\+\+Byte}} \mbox{[}20\mbox{]} +\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{union_u_i_d_a2a1db307f2be0b2bc8951105a99c83aa}\label{union_u_i_d_a2a1db307f2be0b2bc8951105a99c83aa}} +\index{UID@{UID}!UID\_Byte@{UID\_Byte}} +\index{UID\_Byte@{UID\_Byte}!UID@{UID}} +\doxysubsubsection{\texorpdfstring{UID\_Byte}{UID\_Byte}} +{\footnotesize\ttfamily uint8\+\_\+t U\+I\+D\+::\+U\+I\+D\+\_\+\+Byte\mbox{[}20\mbox{]}} + +\mbox{\Hypertarget{union_u_i_d_a478d21c78d3100c5e236adca2c571e1e}\label{union_u_i_d_a478d21c78d3100c5e236adca2c571e1e}} +\index{UID@{UID}!UID\_Long@{UID\_Long}} +\index{UID\_Long@{UID\_Long}!UID@{UID}} +\doxysubsubsection{\texorpdfstring{UID\_Long}{UID\_Long}} +{\footnotesize\ttfamily uint32\+\_\+t U\+I\+D\+::\+U\+I\+D\+\_\+\+Long\mbox{[}5\mbox{]}} + + + +The documentation for this union was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{main_8h}{main.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/unionin_store.tex b/docs/latex/unionin_store.tex new file mode 100644 index 0000000..82913a2 --- /dev/null +++ b/docs/latex/unionin_store.tex @@ -0,0 +1,137 @@ +\hypertarget{unionin_store}{}\doxysection{in\+Store Union Reference} +\label{unionin_store}\index{inStore@{inStore}} + + +{\ttfamily \#include $<$inputs.\+h$>$} + +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +long int \mbox{\hyperlink{unionin_store_a16a83a9f8fd433154711d7dbd5cdc98a}{aslong}} +\item +uint32\+\_\+t \mbox{\hyperlink{unionin_store_a4bddf64e5bea1ba4101346caf0df2852}{timestamp}} +\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a80c2c10e46083179d86fa7c4511d671d}{reserved}}\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a44af41c00bfa555c4a9f7c7d5e2cfbc7}{logicState}}\\ +\>int16\_t \mbox{\hyperlink{unionin_store_ab588498a30cd9248c4b98b939d6a3bd1}{currentValue}}\\ +\}; \\ + +\end{tabbing}\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a5e5cdaeda80c6eed6a55554a0780a128}{toggle1}}:1\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a8f5f08b35e330945b3b0df11eacdae72}{toggle2}}:1\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a4e4a1f17bcdd01c934df232175195a46}{toggle3}}:1\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_accec7f5bdcfc35e9cc86a66c301348e2}{lastValue}}:1\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a719ff985b81bbfbd4905735ea5cee1a9}{delayedState}}:1\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a0458b3c28da62ec08dfbe9c28546c939}{bounce}}:3\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a5db18504795773dee8dd1cca020994f7}{state}}:4\\ +\>uint8\_t \mbox{\hyperlink{unionin_store_a1c67a8ed876e1320206c1b1b9651fd10}{reqState}}:4\\ +\>uint16\_t \mbox{\hyperlink{unionin_store_a53f6cadfd77d4bd024d6e6c395ae5364}{timestamp16}}\\ +\}; \\ + +\end{tabbing}\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{unionin_store_a9094e569beac17295c1eab286e22b344}\label{unionin_store_a9094e569beac17295c1eab286e22b344}} +\doxysubsubsection{\texorpdfstring{"@1}{@1}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionin_store_a7d8bb1867b9b0479c96fda7b86a20ab3}\label{unionin_store_a7d8bb1867b9b0479c96fda7b86a20ab3}} +\doxysubsubsection{\texorpdfstring{"@3}{@3}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionin_store_a16a83a9f8fd433154711d7dbd5cdc98a}\label{unionin_store_a16a83a9f8fd433154711d7dbd5cdc98a}} +\index{inStore@{inStore}!aslong@{aslong}} +\index{aslong@{aslong}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{aslong}{aslong}} +{\footnotesize\ttfamily long int in\+Store\+::aslong} + +\mbox{\Hypertarget{unionin_store_a0458b3c28da62ec08dfbe9c28546c939}\label{unionin_store_a0458b3c28da62ec08dfbe9c28546c939}} +\index{inStore@{inStore}!bounce@{bounce}} +\index{bounce@{bounce}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{bounce}{bounce}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::bounce} + +\mbox{\Hypertarget{unionin_store_ab588498a30cd9248c4b98b939d6a3bd1}\label{unionin_store_ab588498a30cd9248c4b98b939d6a3bd1}} +\index{inStore@{inStore}!currentValue@{currentValue}} +\index{currentValue@{currentValue}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{currentValue}{currentValue}} +{\footnotesize\ttfamily int16\+\_\+t in\+Store\+::current\+Value} + +\mbox{\Hypertarget{unionin_store_a719ff985b81bbfbd4905735ea5cee1a9}\label{unionin_store_a719ff985b81bbfbd4905735ea5cee1a9}} +\index{inStore@{inStore}!delayedState@{delayedState}} +\index{delayedState@{delayedState}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{delayedState}{delayedState}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::delayed\+State} + +\mbox{\Hypertarget{unionin_store_accec7f5bdcfc35e9cc86a66c301348e2}\label{unionin_store_accec7f5bdcfc35e9cc86a66c301348e2}} +\index{inStore@{inStore}!lastValue@{lastValue}} +\index{lastValue@{lastValue}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{lastValue}{lastValue}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::last\+Value} + +\mbox{\Hypertarget{unionin_store_a44af41c00bfa555c4a9f7c7d5e2cfbc7}\label{unionin_store_a44af41c00bfa555c4a9f7c7d5e2cfbc7}} +\index{inStore@{inStore}!logicState@{logicState}} +\index{logicState@{logicState}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{logicState}{logicState}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::logic\+State} + +\mbox{\Hypertarget{unionin_store_a1c67a8ed876e1320206c1b1b9651fd10}\label{unionin_store_a1c67a8ed876e1320206c1b1b9651fd10}} +\index{inStore@{inStore}!reqState@{reqState}} +\index{reqState@{reqState}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{reqState}{reqState}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::req\+State} + +\mbox{\Hypertarget{unionin_store_a80c2c10e46083179d86fa7c4511d671d}\label{unionin_store_a80c2c10e46083179d86fa7c4511d671d}} +\index{inStore@{inStore}!reserved@{reserved}} +\index{reserved@{reserved}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{reserved}{reserved}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::reserved} + +\mbox{\Hypertarget{unionin_store_a5db18504795773dee8dd1cca020994f7}\label{unionin_store_a5db18504795773dee8dd1cca020994f7}} +\index{inStore@{inStore}!state@{state}} +\index{state@{state}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{state}{state}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::state} + +\mbox{\Hypertarget{unionin_store_a4bddf64e5bea1ba4101346caf0df2852}\label{unionin_store_a4bddf64e5bea1ba4101346caf0df2852}} +\index{inStore@{inStore}!timestamp@{timestamp}} +\index{timestamp@{timestamp}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{timestamp}{timestamp}} +{\footnotesize\ttfamily uint32\+\_\+t in\+Store\+::timestamp} + +\mbox{\Hypertarget{unionin_store_a53f6cadfd77d4bd024d6e6c395ae5364}\label{unionin_store_a53f6cadfd77d4bd024d6e6c395ae5364}} +\index{inStore@{inStore}!timestamp16@{timestamp16}} +\index{timestamp16@{timestamp16}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{timestamp16}{timestamp16}} +{\footnotesize\ttfamily uint16\+\_\+t in\+Store\+::timestamp16} + +\mbox{\Hypertarget{unionin_store_a5e5cdaeda80c6eed6a55554a0780a128}\label{unionin_store_a5e5cdaeda80c6eed6a55554a0780a128}} +\index{inStore@{inStore}!toggle1@{toggle1}} +\index{toggle1@{toggle1}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{toggle1}{toggle1}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::toggle1} + +\mbox{\Hypertarget{unionin_store_a8f5f08b35e330945b3b0df11eacdae72}\label{unionin_store_a8f5f08b35e330945b3b0df11eacdae72}} +\index{inStore@{inStore}!toggle2@{toggle2}} +\index{toggle2@{toggle2}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{toggle2}{toggle2}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::toggle2} + +\mbox{\Hypertarget{unionin_store_a4e4a1f17bcdd01c934df232175195a46}\label{unionin_store_a4e4a1f17bcdd01c934df232175195a46}} +\index{inStore@{inStore}!toggle3@{toggle3}} +\index{toggle3@{toggle3}!inStore@{inStore}} +\doxysubsubsection{\texorpdfstring{toggle3}{toggle3}} +{\footnotesize\ttfamily uint8\+\_\+t in\+Store\+::toggle3} + + + +The documentation for this union was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{inputs_8h}{inputs.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/unionitem_arg_store.tex b/docs/latex/unionitem_arg_store.tex new file mode 100644 index 0000000..c5c270c --- /dev/null +++ b/docs/latex/unionitem_arg_store.tex @@ -0,0 +1,171 @@ +\hypertarget{unionitem_arg_store}{}\doxysection{item\+Arg\+Store Union Reference} +\label{unionitem_arg_store}\index{itemArgStore@{itemArgStore}} + + +{\ttfamily \#include $<$item\+Cmd.\+h$>$} + +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +long int \mbox{\hyperlink{unionitem_arg_store_a5b049f7f12afd54b21e544e3d837a660}{aslong}} +\item +int32\+\_\+t \mbox{\hyperlink{unionitem_arg_store_ab92c8e89f341000942b58664ffb1f81f}{as\+Int32}} +\item +uint32\+\_\+t \mbox{\hyperlink{unionitem_arg_store_ab0057169d79517093337e298197429f5}{as\+Uint32}} +\item +char $\ast$ \mbox{\hyperlink{unionitem_arg_store_a74b64f04a772272879ec6269d87091f1}{as\+String}} +\item +float \mbox{\hyperlink{unionitem_arg_store_afc507c941b3df2187f0ce0f055ad53c1}{asfloat}} +\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_a8f1d8c23cb2bc96349dba77ebdc4409d}{v}}\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_ad2a54b2adf7e42caf0a022839b06d949}{s}}\\ +\>uint16\_t \mbox{\hyperlink{unionitem_arg_store_ab17b3df738c8f12a45efb2c96fa99f4d}{h}}:9\\ +\>uint16\_t \mbox{\hyperlink{unionitem_arg_store_a7fd4db655b58b154ac7852e1cba5aa18}{colorTemp}}:7\\ +\}; \\ + +\end{tabbing}\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>int8\_t \mbox{\hyperlink{unionitem_arg_store_a3d1cdc762efb0d385441d14e92d95829}{signed\_v}}\\ +\>int8\_t \mbox{\hyperlink{unionitem_arg_store_a20fde40d8b89eea89ffe4d8379c74fdc}{signed\_s}}\\ +\>int16\_t \mbox{\hyperlink{unionitem_arg_store_a137005bda50cdb8e76f6b6cb93958c9f}{signed\_h}}:9\\ +\>int16\_t \mbox{\hyperlink{unionitem_arg_store_a5b454ee59d0a9b5d4b2c52b3fa40d846}{signed\_colorTemp}}:7\\ +\}; \\ + +\end{tabbing}\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_a06c84d5f22df304ea2e4a530ed8f23f6}{r}}\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_a37e8d18c09633f02fe99f16d9b995822}{g}}\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_ab6e0d043707be121256740a7acb1f170}{b}}\\ +\>uint8\_t \mbox{\hyperlink{unionitem_arg_store_a8c6e262cae01ac0bb6d0070916989473}{w}}\\ +\}; \\ + +\end{tabbing}\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{unionitem_arg_store_a6db476310cebdc21e9f2896ceafa5d63}\label{unionitem_arg_store_a6db476310cebdc21e9f2896ceafa5d63}} +\doxysubsubsection{\texorpdfstring{"@11}{@11}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionitem_arg_store_a9d83355bb7d1cb30042f5942834f69d5}\label{unionitem_arg_store_a9d83355bb7d1cb30042f5942834f69d5}} +\doxysubsubsection{\texorpdfstring{"@7}{@7}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionitem_arg_store_abb956c28e8f9e9ee147cae0b4cf66b44}\label{unionitem_arg_store_abb956c28e8f9e9ee147cae0b4cf66b44}} +\doxysubsubsection{\texorpdfstring{"@9}{@9}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionitem_arg_store_afc507c941b3df2187f0ce0f055ad53c1}\label{unionitem_arg_store_afc507c941b3df2187f0ce0f055ad53c1}} +\index{itemArgStore@{itemArgStore}!asfloat@{asfloat}} +\index{asfloat@{asfloat}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{asfloat}{asfloat}} +{\footnotesize\ttfamily float item\+Arg\+Store\+::asfloat} + +\mbox{\Hypertarget{unionitem_arg_store_ab92c8e89f341000942b58664ffb1f81f}\label{unionitem_arg_store_ab92c8e89f341000942b58664ffb1f81f}} +\index{itemArgStore@{itemArgStore}!asInt32@{asInt32}} +\index{asInt32@{asInt32}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{asInt32}{asInt32}} +{\footnotesize\ttfamily int32\+\_\+t item\+Arg\+Store\+::as\+Int32} + +\mbox{\Hypertarget{unionitem_arg_store_a5b049f7f12afd54b21e544e3d837a660}\label{unionitem_arg_store_a5b049f7f12afd54b21e544e3d837a660}} +\index{itemArgStore@{itemArgStore}!aslong@{aslong}} +\index{aslong@{aslong}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{aslong}{aslong}} +{\footnotesize\ttfamily long int item\+Arg\+Store\+::aslong} + +\mbox{\Hypertarget{unionitem_arg_store_a74b64f04a772272879ec6269d87091f1}\label{unionitem_arg_store_a74b64f04a772272879ec6269d87091f1}} +\index{itemArgStore@{itemArgStore}!asString@{asString}} +\index{asString@{asString}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{asString}{asString}} +{\footnotesize\ttfamily char$\ast$ item\+Arg\+Store\+::as\+String} + +\mbox{\Hypertarget{unionitem_arg_store_ab0057169d79517093337e298197429f5}\label{unionitem_arg_store_ab0057169d79517093337e298197429f5}} +\index{itemArgStore@{itemArgStore}!asUint32@{asUint32}} +\index{asUint32@{asUint32}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{asUint32}{asUint32}} +{\footnotesize\ttfamily uint32\+\_\+t item\+Arg\+Store\+::as\+Uint32} + +\mbox{\Hypertarget{unionitem_arg_store_ab6e0d043707be121256740a7acb1f170}\label{unionitem_arg_store_ab6e0d043707be121256740a7acb1f170}} +\index{itemArgStore@{itemArgStore}!b@{b}} +\index{b@{b}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{b}{b}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::b} + +\mbox{\Hypertarget{unionitem_arg_store_a7fd4db655b58b154ac7852e1cba5aa18}\label{unionitem_arg_store_a7fd4db655b58b154ac7852e1cba5aa18}} +\index{itemArgStore@{itemArgStore}!colorTemp@{colorTemp}} +\index{colorTemp@{colorTemp}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{colorTemp}{colorTemp}} +{\footnotesize\ttfamily uint16\+\_\+t item\+Arg\+Store\+::color\+Temp} + +\mbox{\Hypertarget{unionitem_arg_store_a37e8d18c09633f02fe99f16d9b995822}\label{unionitem_arg_store_a37e8d18c09633f02fe99f16d9b995822}} +\index{itemArgStore@{itemArgStore}!g@{g}} +\index{g@{g}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{g}{g}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::g} + +\mbox{\Hypertarget{unionitem_arg_store_ab17b3df738c8f12a45efb2c96fa99f4d}\label{unionitem_arg_store_ab17b3df738c8f12a45efb2c96fa99f4d}} +\index{itemArgStore@{itemArgStore}!h@{h}} +\index{h@{h}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{h}{h}} +{\footnotesize\ttfamily uint16\+\_\+t item\+Arg\+Store\+::h} + +\mbox{\Hypertarget{unionitem_arg_store_a06c84d5f22df304ea2e4a530ed8f23f6}\label{unionitem_arg_store_a06c84d5f22df304ea2e4a530ed8f23f6}} +\index{itemArgStore@{itemArgStore}!r@{r}} +\index{r@{r}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{r}{r}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::r} + +\mbox{\Hypertarget{unionitem_arg_store_ad2a54b2adf7e42caf0a022839b06d949}\label{unionitem_arg_store_ad2a54b2adf7e42caf0a022839b06d949}} +\index{itemArgStore@{itemArgStore}!s@{s}} +\index{s@{s}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{s}{s}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::s} + +\mbox{\Hypertarget{unionitem_arg_store_a5b454ee59d0a9b5d4b2c52b3fa40d846}\label{unionitem_arg_store_a5b454ee59d0a9b5d4b2c52b3fa40d846}} +\index{itemArgStore@{itemArgStore}!signed\_colorTemp@{signed\_colorTemp}} +\index{signed\_colorTemp@{signed\_colorTemp}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{signed\_colorTemp}{signed\_colorTemp}} +{\footnotesize\ttfamily int16\+\_\+t item\+Arg\+Store\+::signed\+\_\+color\+Temp} + +\mbox{\Hypertarget{unionitem_arg_store_a137005bda50cdb8e76f6b6cb93958c9f}\label{unionitem_arg_store_a137005bda50cdb8e76f6b6cb93958c9f}} +\index{itemArgStore@{itemArgStore}!signed\_h@{signed\_h}} +\index{signed\_h@{signed\_h}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{signed\_h}{signed\_h}} +{\footnotesize\ttfamily int16\+\_\+t item\+Arg\+Store\+::signed\+\_\+h} + +\mbox{\Hypertarget{unionitem_arg_store_a20fde40d8b89eea89ffe4d8379c74fdc}\label{unionitem_arg_store_a20fde40d8b89eea89ffe4d8379c74fdc}} +\index{itemArgStore@{itemArgStore}!signed\_s@{signed\_s}} +\index{signed\_s@{signed\_s}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{signed\_s}{signed\_s}} +{\footnotesize\ttfamily int8\+\_\+t item\+Arg\+Store\+::signed\+\_\+s} + +\mbox{\Hypertarget{unionitem_arg_store_a3d1cdc762efb0d385441d14e92d95829}\label{unionitem_arg_store_a3d1cdc762efb0d385441d14e92d95829}} +\index{itemArgStore@{itemArgStore}!signed\_v@{signed\_v}} +\index{signed\_v@{signed\_v}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{signed\_v}{signed\_v}} +{\footnotesize\ttfamily int8\+\_\+t item\+Arg\+Store\+::signed\+\_\+v} + +\mbox{\Hypertarget{unionitem_arg_store_a8f1d8c23cb2bc96349dba77ebdc4409d}\label{unionitem_arg_store_a8f1d8c23cb2bc96349dba77ebdc4409d}} +\index{itemArgStore@{itemArgStore}!v@{v}} +\index{v@{v}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{v}{v}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::v} + +\mbox{\Hypertarget{unionitem_arg_store_a8c6e262cae01ac0bb6d0070916989473}\label{unionitem_arg_store_a8c6e262cae01ac0bb6d0070916989473}} +\index{itemArgStore@{itemArgStore}!w@{w}} +\index{w@{w}!itemArgStore@{itemArgStore}} +\doxysubsubsection{\texorpdfstring{w}{w}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Arg\+Store\+::w} + + + +The documentation for this union was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8h}{item\+Cmd.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/unionitem_cmd_store.tex b/docs/latex/unionitem_cmd_store.tex new file mode 100644 index 0000000..b0cca64 --- /dev/null +++ b/docs/latex/unionitem_cmd_store.tex @@ -0,0 +1,90 @@ +\hypertarget{unionitem_cmd_store}{}\doxysection{item\+Cmd\+Store Union Reference} +\label{unionitem_cmd_store}\index{itemCmdStore@{itemCmdStore}} + + +{\ttfamily \#include $<$item\+Cmd.\+h$>$} + +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +long int \mbox{\hyperlink{unionitem_cmd_store_a6d539a0bb202bf370351886a6e91f3df}{aslong}} +\item +int32\+\_\+t \mbox{\hyperlink{unionitem_cmd_store_a7e558d8a27f1df27f283c96e35798281}{as\+Int32}} +\item +uint32\+\_\+t \mbox{\hyperlink{unionitem_cmd_store_a1b35e73d4496147f882278f73cfe10fe}{as\+Uint32}} +\item +\begin{tabbing} +xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill +struct \{\\ +\>uint8\_t \mbox{\hyperlink{unionitem_cmd_store_a84ce7db09b0fbd48c7266caf48636a61}{cmdCode}}\\ +\>union \{\\ +\>\>uint8\_t \mbox{\hyperlink{unionitem_cmd_store_adc701d54e85ec503281a9ffcde0eabe2}{cmdFlag}}\\ +\>\} \\ +\>struct \{\\ +\>\>uint8\_t \mbox{\hyperlink{unionitem_cmd_store_a60ffaa3ef4ac448d5b31a519dd2d8ba9}{suffixCode}}:4\\ +\>\>uint8\_t \mbox{\hyperlink{unionitem_cmd_store_ad0bc30321304871f89b2ed223d739421}{itemArgType}}:4\\ +\>\} \\ +\>uint8\_t \mbox{\hyperlink{unionitem_cmd_store_a9177b4303781a900b2f6dace2e06980b}{cmdParam}}\\ +\}; \\ + +\end{tabbing}\end{DoxyCompactItemize} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{unionitem_cmd_store_a2814784ac752bfe5cd290ccb6a695813}\label{unionitem_cmd_store_a2814784ac752bfe5cd290ccb6a695813}} +\doxysubsubsection{\texorpdfstring{"@1}{@1}} +{\footnotesize\ttfamily struct \{ ... \} } + +\mbox{\Hypertarget{unionitem_cmd_store_a7e558d8a27f1df27f283c96e35798281}\label{unionitem_cmd_store_a7e558d8a27f1df27f283c96e35798281}} +\index{itemCmdStore@{itemCmdStore}!asInt32@{asInt32}} +\index{asInt32@{asInt32}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{asInt32}{asInt32}} +{\footnotesize\ttfamily int32\+\_\+t item\+Cmd\+Store\+::as\+Int32} + +\mbox{\Hypertarget{unionitem_cmd_store_a6d539a0bb202bf370351886a6e91f3df}\label{unionitem_cmd_store_a6d539a0bb202bf370351886a6e91f3df}} +\index{itemCmdStore@{itemCmdStore}!aslong@{aslong}} +\index{aslong@{aslong}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{aslong}{aslong}} +{\footnotesize\ttfamily long int item\+Cmd\+Store\+::aslong} + +\mbox{\Hypertarget{unionitem_cmd_store_a1b35e73d4496147f882278f73cfe10fe}\label{unionitem_cmd_store_a1b35e73d4496147f882278f73cfe10fe}} +\index{itemCmdStore@{itemCmdStore}!asUint32@{asUint32}} +\index{asUint32@{asUint32}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{asUint32}{asUint32}} +{\footnotesize\ttfamily uint32\+\_\+t item\+Cmd\+Store\+::as\+Uint32} + +\mbox{\Hypertarget{unionitem_cmd_store_a84ce7db09b0fbd48c7266caf48636a61}\label{unionitem_cmd_store_a84ce7db09b0fbd48c7266caf48636a61}} +\index{itemCmdStore@{itemCmdStore}!cmdCode@{cmdCode}} +\index{cmdCode@{cmdCode}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{cmdCode}{cmdCode}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+Store\+::cmd\+Code} + +\mbox{\Hypertarget{unionitem_cmd_store_adc701d54e85ec503281a9ffcde0eabe2}\label{unionitem_cmd_store_adc701d54e85ec503281a9ffcde0eabe2}} +\index{itemCmdStore@{itemCmdStore}!cmdFlag@{cmdFlag}} +\index{cmdFlag@{cmdFlag}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{cmdFlag}{cmdFlag}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+Store\+::cmd\+Flag} + +\mbox{\Hypertarget{unionitem_cmd_store_a9177b4303781a900b2f6dace2e06980b}\label{unionitem_cmd_store_a9177b4303781a900b2f6dace2e06980b}} +\index{itemCmdStore@{itemCmdStore}!cmdParam@{cmdParam}} +\index{cmdParam@{cmdParam}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{cmdParam}{cmdParam}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+Store\+::cmd\+Param} + +\mbox{\Hypertarget{unionitem_cmd_store_ad0bc30321304871f89b2ed223d739421}\label{unionitem_cmd_store_ad0bc30321304871f89b2ed223d739421}} +\index{itemCmdStore@{itemCmdStore}!itemArgType@{itemArgType}} +\index{itemArgType@{itemArgType}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{itemArgType}{itemArgType}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+Store\+::item\+Arg\+Type} + +\mbox{\Hypertarget{unionitem_cmd_store_a60ffaa3ef4ac448d5b31a519dd2d8ba9}\label{unionitem_cmd_store_a60ffaa3ef4ac448d5b31a519dd2d8ba9}} +\index{itemCmdStore@{itemCmdStore}!suffixCode@{suffixCode}} +\index{suffixCode@{suffixCode}!itemCmdStore@{itemCmdStore}} +\doxysubsubsection{\texorpdfstring{suffixCode}{suffixCode}} +{\footnotesize\ttfamily uint8\+\_\+t item\+Cmd\+Store\+::suffix\+Code} + + + +The documentation for this union was generated from the following file\+:\begin{DoxyCompactItemize} +\item +/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/\mbox{\hyperlink{item_cmd_8h}{item\+Cmd.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/utils_8cpp.tex b/docs/latex/utils_8cpp.tex new file mode 100644 index 0000000..a9a1f08 --- /dev/null +++ b/docs/latex/utils_8cpp.tex @@ -0,0 +1,257 @@ +\hypertarget{utils_8cpp}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/utils.cpp File Reference} +\label{utils_8cpp}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/utils.cpp@{/Users/andrey/Documents/Arduino/lighthub/lighthub/utils.cpp}} +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}stdarg.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Wire.\+h$>$}\newline +{\ttfamily \#include \char`\"{}main.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include $<$Pub\+Sub\+Client.\+h$>$}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{utils_8cpp_ab124609cb16e44db8bf5c1ac5932044f}{A\+R\+D\+B\+U\+F\+F\+ER}}~16 +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{utils_8cpp_ab5fb614b925280fc7c8d0e5314dd3b7a}{Print\+Bytes}} (uint8\+\_\+t $\ast$addr, uint8\+\_\+t count, bool newline) +\item +void \mbox{\hyperlink{utils_8cpp_a85a33f14fc0eefef02be4c6bacf5c8f0}{Set\+Bytes}} (uint8\+\_\+t $\ast$addr, uint8\+\_\+t count, char $\ast$out) +\item +byte \mbox{\hyperlink{utils_8cpp_a4cafbb82e446669dd50a2a386c1531fd}{H\+E\+X2\+D\+EC}} (char i) +\item +void \mbox{\hyperlink{utils_8cpp_a4dd6705cb24a3eab32d9abc8393844b3}{Set\+Addr}} (char $\ast$out, uint8\+\_\+t $\ast$addr) +\item +int \mbox{\hyperlink{utils_8cpp_a6037cfc7913c0856e93dbf8fc2133aac}{get\+Int}} (char $\ast$$\ast$chan) +\item +void \mbox{\hyperlink{utils_8cpp_a1938abf1ef99f35bd2578e3db1bcf7b8}{parse\+Bytes}} (const char $\ast$str, char separator, byte $\ast$bytes, int max\+Bytes, int base) +\item +void \mbox{\hyperlink{utils_8cpp_a6c16341dd45c4e557f951818d8d09810}{print\+Float\+Value\+To\+Str}} (float value, char $\ast$valstr) +\item +int \mbox{\hyperlink{utils_8cpp_aadf1050416e46077ad59157173438dad}{log}} (const char $\ast$str,...) +\item +\mbox{\hyperlink{utils_8cpp_abf2ee9f926c45315d1a91ae9d4bdba26}{\+\_\+\+\_\+attribute\+\_\+\+\_\+}} ((section(\char`\"{}.ramfunc\char`\"{}))) void \mbox{\hyperlink{utils_8h_a1380fbc9c2170180770dd1bdcc5ac647}{Read\+Unique\+ID}}(uint32\+\_\+t $\ast$pdw\+Unique\+ID) +\item +int \mbox{\hyperlink{utils_8cpp_a2abeec32a0c7fe0b4aa02a8807ed9cee}{inet\+\_\+aton}} (const char $\ast$a\+I\+P\+Addr\+String, I\+P\+Address \&a\+Result) +\item +char $\ast$ \mbox{\hyperlink{utils_8cpp_a5f3cdb518da692b8859ae48ed58196fc}{inet\+\_\+ntoa\+\_\+r}} (I\+P\+Address addr, char $\ast$buf, int buflen) +\item +void \mbox{\hyperlink{utils_8cpp_af0df006a5ae8d0d730134afdaf1c64dd}{print\+I\+P\+Address}} (I\+P\+Address ip\+Address) +\item +char $\ast$ \mbox{\hyperlink{utils_8cpp_ab33cdb70ba57128d05b7efe3317b5a82}{set\+Topic}} (char $\ast$buf, int8\+\_\+t buflen, \mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}} tt, const char $\ast$suffix) +\item +void \mbox{\hyperlink{utils_8cpp_afb183532261be04b86e9e535010db6a9}{print\+Ulong\+Value\+To\+Str}} (char $\ast$valstr, unsigned long value) +\item +void \mbox{\hyperlink{utils_8cpp_af585ed9b15b9980b72fbec6d9c9dba67}{scan\+\_\+i2c\+\_\+bus}} () +\item +bool \mbox{\hyperlink{utils_8cpp_a1c013af2ccb8a6dd130f0ab706b1abc4}{is\+Time\+Over}} (uint32\+\_\+t timestamp, uint32\+\_\+t curr\+Time, uint32\+\_\+t time, uint32\+\_\+t modulo) +\item +bool \mbox{\hyperlink{utils_8cpp_a132faa838403a6db82d1e7e65d4c4ff2}{execute\+Command}} (a\+Json\+Object $\ast$cmd, int8\+\_\+t toggle) +\item +bool \mbox{\hyperlink{utils_8cpp_a2cd15a22b2799d0378a27850c96c6300}{execute\+Command}} (a\+Json\+Object $\ast$cmd, int8\+\_\+t toggle, \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \+\_\+item\+Cmd) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{utils_8cpp_ace8fa23ff29c3feb89c5d500ef87b914}{map\+Int}} (int32\+\_\+t arg, a\+Json\+Object $\ast$map) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +int8\+\_\+t \mbox{\hyperlink{utils_8cpp_a58655351bd1d5333e5eb92d4c29f4263}{config\+Locked}} +\item +int8\+\_\+t \mbox{\hyperlink{utils_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}{ethernet\+Idle\+Count}} +\item +Pub\+Sub\+Client \mbox{\hyperlink{utils_8cpp_a86d63f481644da70f063c2593fcafe19}{mqtt\+Client}} +\item +const char out\+Topic\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{utils_8cpp_a3ec4211471d85792b3cb9f0fc8082b4c}{P\+R\+O\+G\+M\+EM}} = \mbox{\hyperlink{options_8h_ad41dc04ab9a3863ee0d70153e844c92a}{O\+U\+T\+T\+O\+P\+IC}} +\item +char $\ast$ \mbox{\hyperlink{utils_8cpp_a5da66826e811349c98b2daf2bafb78c2}{device\+Name}} +\item +a\+Json\+Object $\ast$ \mbox{\hyperlink{utils_8cpp_addabf1c5a7be47e4e89beb38a435cb51}{topics}} +\item +const char \mbox{\hyperlink{utils_8cpp_a0317be66119cccdb71b5276f914cef50}{H\+E\+X\+S\+TR}} \mbox{[}$\,$\mbox{]} = \char`\"{}0123456789A\+B\+C\+D\+EF\char`\"{} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{utils_8cpp_ab124609cb16e44db8bf5c1ac5932044f}\label{utils_8cpp_ab124609cb16e44db8bf5c1ac5932044f}} +\index{utils.cpp@{utils.cpp}!ARDBUFFER@{ARDBUFFER}} +\index{ARDBUFFER@{ARDBUFFER}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{ARDBUFFER}{ARDBUFFER}} +{\footnotesize\ttfamily \#define A\+R\+D\+B\+U\+F\+F\+ER~16} + + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{utils_8cpp_abf2ee9f926c45315d1a91ae9d4bdba26}\label{utils_8cpp_abf2ee9f926c45315d1a91ae9d4bdba26}} +\index{utils.cpp@{utils.cpp}!\_\_attribute\_\_@{\_\_attribute\_\_}} +\index{\_\_attribute\_\_@{\_\_attribute\_\_}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{\_\_attribute\_\_()}{\_\_attribute\_\_()}} +{\footnotesize\ttfamily \+\_\+\+\_\+attribute\+\_\+\+\_\+ (\begin{DoxyParamCaption}\item[{(section(\char`\"{}.ramfunc\char`\"{}))}]{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a132faa838403a6db82d1e7e65d4c4ff2}\label{utils_8cpp_a132faa838403a6db82d1e7e65d4c4ff2}} +\index{utils.cpp@{utils.cpp}!executeCommand@{executeCommand}} +\index{executeCommand@{executeCommand}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{executeCommand()}{executeCommand()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily bool execute\+Command (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{cmd, }\item[{int8\+\_\+t}]{toggle }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a2cd15a22b2799d0378a27850c96c6300}\label{utils_8cpp_a2cd15a22b2799d0378a27850c96c6300}} +\index{utils.cpp@{utils.cpp}!executeCommand@{executeCommand}} +\index{executeCommand@{executeCommand}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{executeCommand()}{executeCommand()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily bool execute\+Command (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{cmd, }\item[{int8\+\_\+t}]{toggle, }\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{\+\_\+item\+Cmd }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a6037cfc7913c0856e93dbf8fc2133aac}\label{utils_8cpp_a6037cfc7913c0856e93dbf8fc2133aac}} +\index{utils.cpp@{utils.cpp}!getInt@{getInt}} +\index{getInt@{getInt}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{getInt()}{getInt()}} +{\footnotesize\ttfamily int get\+Int (\begin{DoxyParamCaption}\item[{char $\ast$$\ast$}]{chan }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a4cafbb82e446669dd50a2a386c1531fd}\label{utils_8cpp_a4cafbb82e446669dd50a2a386c1531fd}} +\index{utils.cpp@{utils.cpp}!HEX2DEC@{HEX2DEC}} +\index{HEX2DEC@{HEX2DEC}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{HEX2DEC()}{HEX2DEC()}} +{\footnotesize\ttfamily byte H\+E\+X2\+D\+EC (\begin{DoxyParamCaption}\item[{char}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a2abeec32a0c7fe0b4aa02a8807ed9cee}\label{utils_8cpp_a2abeec32a0c7fe0b4aa02a8807ed9cee}} +\index{utils.cpp@{utils.cpp}!inet\_aton@{inet\_aton}} +\index{inet\_aton@{inet\_aton}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{inet\_aton()}{inet\_aton()}} +{\footnotesize\ttfamily int inet\+\_\+aton (\begin{DoxyParamCaption}\item[{const char $\ast$}]{a\+I\+P\+Addr\+String, }\item[{I\+P\+Address \&}]{a\+Result }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a5f3cdb518da692b8859ae48ed58196fc}\label{utils_8cpp_a5f3cdb518da692b8859ae48ed58196fc}} +\index{utils.cpp@{utils.cpp}!inet\_ntoa\_r@{inet\_ntoa\_r}} +\index{inet\_ntoa\_r@{inet\_ntoa\_r}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{inet\_ntoa\_r()}{inet\_ntoa\_r()}} +{\footnotesize\ttfamily char$\ast$ inet\+\_\+ntoa\+\_\+r (\begin{DoxyParamCaption}\item[{I\+P\+Address}]{addr, }\item[{char $\ast$}]{buf, }\item[{int}]{buflen }\end{DoxyParamCaption})} + +Same as ipaddr\+\_\+ntoa, but reentrant since a user-\/supplied buffer is used. + + +\begin{DoxyParams}{Parameters} +{\em addr} & ip address in network order to convert \\ +\hline +{\em buf} & target buffer where the string is stored \\ +\hline +{\em buflen} & length of buf \\ +\hline +\end{DoxyParams} +\begin{DoxyReturn}{Returns} +either pointer to buf which now holds the A\+S\+C\+II representation of addr or N\+U\+LL if buf was too small +\end{DoxyReturn} +\mbox{\Hypertarget{utils_8cpp_a1c013af2ccb8a6dd130f0ab706b1abc4}\label{utils_8cpp_a1c013af2ccb8a6dd130f0ab706b1abc4}} +\index{utils.cpp@{utils.cpp}!isTimeOver@{isTimeOver}} +\index{isTimeOver@{isTimeOver}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{isTimeOver()}{isTimeOver()}} +{\footnotesize\ttfamily bool is\+Time\+Over (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{timestamp, }\item[{uint32\+\_\+t}]{curr\+Time, }\item[{uint32\+\_\+t}]{time, }\item[{uint32\+\_\+t}]{modulo }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_aadf1050416e46077ad59157173438dad}\label{utils_8cpp_aadf1050416e46077ad59157173438dad}} +\index{utils.cpp@{utils.cpp}!log@{log}} +\index{log@{log}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{log()}{log()}} +{\footnotesize\ttfamily int log (\begin{DoxyParamCaption}\item[{const char $\ast$}]{str, }\item[{}]{... }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_ace8fa23ff29c3feb89c5d500ef87b914}\label{utils_8cpp_ace8fa23ff29c3feb89c5d500ef87b914}} +\index{utils.cpp@{utils.cpp}!mapInt@{mapInt}} +\index{mapInt@{mapInt}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{mapInt()}{mapInt()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} map\+Int (\begin{DoxyParamCaption}\item[{int32\+\_\+t}]{arg, }\item[{a\+Json\+Object $\ast$}]{map }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a1938abf1ef99f35bd2578e3db1bcf7b8}\label{utils_8cpp_a1938abf1ef99f35bd2578e3db1bcf7b8}} +\index{utils.cpp@{utils.cpp}!parseBytes@{parseBytes}} +\index{parseBytes@{parseBytes}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{parseBytes()}{parseBytes()}} +{\footnotesize\ttfamily void parse\+Bytes (\begin{DoxyParamCaption}\item[{const char $\ast$}]{str, }\item[{char}]{separator, }\item[{byte $\ast$}]{bytes, }\item[{int}]{max\+Bytes, }\item[{int}]{base }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_ab5fb614b925280fc7c8d0e5314dd3b7a}\label{utils_8cpp_ab5fb614b925280fc7c8d0e5314dd3b7a}} +\index{utils.cpp@{utils.cpp}!PrintBytes@{PrintBytes}} +\index{PrintBytes@{PrintBytes}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{PrintBytes()}{PrintBytes()}} +{\footnotesize\ttfamily void Print\+Bytes (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{addr, }\item[{uint8\+\_\+t}]{count, }\item[{bool}]{newline }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a6c16341dd45c4e557f951818d8d09810}\label{utils_8cpp_a6c16341dd45c4e557f951818d8d09810}} +\index{utils.cpp@{utils.cpp}!printFloatValueToStr@{printFloatValueToStr}} +\index{printFloatValueToStr@{printFloatValueToStr}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{printFloatValueToStr()}{printFloatValueToStr()}} +{\footnotesize\ttfamily void print\+Float\+Value\+To\+Str (\begin{DoxyParamCaption}\item[{float}]{value, }\item[{char $\ast$}]{valstr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_af0df006a5ae8d0d730134afdaf1c64dd}\label{utils_8cpp_af0df006a5ae8d0d730134afdaf1c64dd}} +\index{utils.cpp@{utils.cpp}!printIPAddress@{printIPAddress}} +\index{printIPAddress@{printIPAddress}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{printIPAddress()}{printIPAddress()}} +{\footnotesize\ttfamily void print\+I\+P\+Address (\begin{DoxyParamCaption}\item[{I\+P\+Address}]{ip\+Address }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_afb183532261be04b86e9e535010db6a9}\label{utils_8cpp_afb183532261be04b86e9e535010db6a9}} +\index{utils.cpp@{utils.cpp}!printUlongValueToStr@{printUlongValueToStr}} +\index{printUlongValueToStr@{printUlongValueToStr}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{printUlongValueToStr()}{printUlongValueToStr()}} +{\footnotesize\ttfamily void print\+Ulong\+Value\+To\+Str (\begin{DoxyParamCaption}\item[{char $\ast$}]{valstr, }\item[{unsigned long}]{value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_af585ed9b15b9980b72fbec6d9c9dba67}\label{utils_8cpp_af585ed9b15b9980b72fbec6d9c9dba67}} +\index{utils.cpp@{utils.cpp}!scan\_i2c\_bus@{scan\_i2c\_bus}} +\index{scan\_i2c\_bus@{scan\_i2c\_bus}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{scan\_i2c\_bus()}{scan\_i2c\_bus()}} +{\footnotesize\ttfamily void scan\+\_\+i2c\+\_\+bus (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a4dd6705cb24a3eab32d9abc8393844b3}\label{utils_8cpp_a4dd6705cb24a3eab32d9abc8393844b3}} +\index{utils.cpp@{utils.cpp}!SetAddr@{SetAddr}} +\index{SetAddr@{SetAddr}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{SetAddr()}{SetAddr()}} +{\footnotesize\ttfamily void Set\+Addr (\begin{DoxyParamCaption}\item[{char $\ast$}]{out, }\item[{uint8\+\_\+t $\ast$}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a85a33f14fc0eefef02be4c6bacf5c8f0}\label{utils_8cpp_a85a33f14fc0eefef02be4c6bacf5c8f0}} +\index{utils.cpp@{utils.cpp}!SetBytes@{SetBytes}} +\index{SetBytes@{SetBytes}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{SetBytes()}{SetBytes()}} +{\footnotesize\ttfamily void Set\+Bytes (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{addr, }\item[{uint8\+\_\+t}]{count, }\item[{char $\ast$}]{out }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_ab33cdb70ba57128d05b7efe3317b5a82}\label{utils_8cpp_ab33cdb70ba57128d05b7efe3317b5a82}} +\index{utils.cpp@{utils.cpp}!setTopic@{setTopic}} +\index{setTopic@{setTopic}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{setTopic()}{setTopic()}} +{\footnotesize\ttfamily char$\ast$ set\+Topic (\begin{DoxyParamCaption}\item[{char $\ast$}]{buf, }\item[{int8\+\_\+t}]{buflen, }\item[{\mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}}}]{tt, }\item[{const char $\ast$}]{suffix }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{utils_8cpp_a58655351bd1d5333e5eb92d4c29f4263}\label{utils_8cpp_a58655351bd1d5333e5eb92d4c29f4263}} +\index{utils.cpp@{utils.cpp}!configLocked@{configLocked}} +\index{configLocked@{configLocked}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{configLocked}{configLocked}} +{\footnotesize\ttfamily int8\+\_\+t config\+Locked\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{utils_8cpp_a5da66826e811349c98b2daf2bafb78c2}\label{utils_8cpp_a5da66826e811349c98b2daf2bafb78c2}} +\index{utils.cpp@{utils.cpp}!deviceName@{deviceName}} +\index{deviceName@{deviceName}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{deviceName}{deviceName}} +{\footnotesize\ttfamily char$\ast$ device\+Name\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{utils_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}\label{utils_8cpp_a525d99b2753ef2f4055ea4475dbc10d7}} +\index{utils.cpp@{utils.cpp}!ethernetIdleCount@{ethernetIdleCount}} +\index{ethernetIdleCount@{ethernetIdleCount}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{ethernetIdleCount}{ethernetIdleCount}} +{\footnotesize\ttfamily int8\+\_\+t ethernet\+Idle\+Count\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{utils_8cpp_a0317be66119cccdb71b5276f914cef50}\label{utils_8cpp_a0317be66119cccdb71b5276f914cef50}} +\index{utils.cpp@{utils.cpp}!HEXSTR@{HEXSTR}} +\index{HEXSTR@{HEXSTR}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{HEXSTR}{HEXSTR}} +{\footnotesize\ttfamily const char H\+E\+X\+S\+TR\mbox{[}$\,$\mbox{]} = \char`\"{}0123456789A\+B\+C\+D\+EF\char`\"{}} + +\mbox{\Hypertarget{utils_8cpp_a86d63f481644da70f063c2593fcafe19}\label{utils_8cpp_a86d63f481644da70f063c2593fcafe19}} +\index{utils.cpp@{utils.cpp}!mqttClient@{mqttClient}} +\index{mqttClient@{mqttClient}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{mqttClient}{mqttClient}} +{\footnotesize\ttfamily Pub\+Sub\+Client mqtt\+Client\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{utils_8cpp_a3ec4211471d85792b3cb9f0fc8082b4c}\label{utils_8cpp_a3ec4211471d85792b3cb9f0fc8082b4c}} +\index{utils.cpp@{utils.cpp}!PROGMEM@{PROGMEM}} +\index{PROGMEM@{PROGMEM}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{PROGMEM}{PROGMEM}} +{\footnotesize\ttfamily const char home\+Topic \mbox{[}$\,$\mbox{]} P\+R\+O\+G\+M\+EM = \mbox{\hyperlink{options_8h_ad41dc04ab9a3863ee0d70153e844c92a}{O\+U\+T\+T\+O\+P\+IC}}} + +\mbox{\Hypertarget{utils_8cpp_addabf1c5a7be47e4e89beb38a435cb51}\label{utils_8cpp_addabf1c5a7be47e4e89beb38a435cb51}} +\index{utils.cpp@{utils.cpp}!topics@{topics}} +\index{topics@{topics}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{topics}{topics}} +{\footnotesize\ttfamily a\+Json\+Object$\ast$ topics\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/utils_8h.tex b/docs/latex/utils_8h.tex new file mode 100644 index 0000000..5c646e7 --- /dev/null +++ b/docs/latex/utils_8h.tex @@ -0,0 +1,273 @@ +\hypertarget{utils_8h}{}\doxysection{/\+Users/andrey/\+Documents/\+Arduino/lighthub/lighthub/utils.h File Reference} +\label{utils_8h}\index{/Users/andrey/Documents/Arduino/lighthub/lighthub/utils.h@{/Users/andrey/Documents/Arduino/lighthub/lighthub/utils.h}} +{\ttfamily \#include $<$Arduino.\+h$>$}\newline +{\ttfamily \#include $<$I\+P\+Address.\+h$>$}\newline +{\ttfamily \#include \char`\"{}a\+J\+S\+O\+N.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}options.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}item.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Streaming.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{utils_8h_a2a280bfe12bc6e732a7c4d3d62443a14}{Q}}(x)~\#x +\item +\#define \mbox{\hyperlink{utils_8h_a2117b58e19182dff91ad3558e650541d}{Q\+U\+O\+TE}}(x)~\mbox{\hyperlink{utils_8h_a2a280bfe12bc6e732a7c4d3d62443a14}{Q}}(x) +\item +\#define \mbox{\hyperlink{utils_8h_ad15c9a08925b1c0365fb1bd9ac826670}{V\+A\+L\+U\+E\+\_\+\+T\+O\+\_\+\+S\+T\+R\+I\+NG}}(x)~\#x +\item +\#define \mbox{\hyperlink{utils_8h_ad705dc78222473228fa826e42eca95f1}{V\+A\+L\+UE}}(x)~\mbox{\hyperlink{utils_8h_ad15c9a08925b1c0365fb1bd9ac826670}{V\+A\+L\+U\+E\+\_\+\+T\+O\+\_\+\+S\+T\+R\+I\+NG}}(x) +\item +\#define \mbox{\hyperlink{utils_8h_a9a89328d94ddd2cdd4b39db22da01f79}{V\+A\+R\+\_\+\+N\+A\+M\+E\+\_\+\+V\+A\+L\+UE}}(var)~\#var \char`\"{}=\char`\"{} \mbox{\hyperlink{utils_8h_ad705dc78222473228fa826e42eca95f1}{V\+A\+L\+UE}}(var) +\end{DoxyCompactItemize} +\doxysubsection*{Enumerations} +\begin{DoxyCompactItemize} +\item +enum \mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}} \{ \mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca3fa22e2ae357981afc104dc67d764c85}{T\+\_\+\+D\+EV}} = 1, +\mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca26fa2da957fe6c55420ed0e1a7dd7a15}{T\+\_\+\+B\+C\+ST}} = 2, +\mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca27b2310c69298d62ed18dd416476a44d}{T\+\_\+\+O\+UT}} = 3 + \} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{utils_8h_ab5fb614b925280fc7c8d0e5314dd3b7a}{Print\+Bytes}} (uint8\+\_\+t $\ast$addr, uint8\+\_\+t count, bool newline) +\item +void \mbox{\hyperlink{utils_8h_a85a33f14fc0eefef02be4c6bacf5c8f0}{Set\+Bytes}} (uint8\+\_\+t $\ast$addr, uint8\+\_\+t count, char $\ast$out) +\item +void \mbox{\hyperlink{utils_8h_a4dd6705cb24a3eab32d9abc8393844b3}{Set\+Addr}} (char $\ast$out, uint8\+\_\+t $\ast$addr) +\item +uint8\+\_\+t \mbox{\hyperlink{utils_8h_a215fd13be95cb1c21fe50b3693b85557}{H\+E\+X2\+D\+EC}} (char i) +\item +int \mbox{\hyperlink{utils_8h_a6037cfc7913c0856e93dbf8fc2133aac}{get\+Int}} (char $\ast$$\ast$chan) +\item +unsigned long \mbox{\hyperlink{utils_8h_a3c97971726a07a7d14fb701f4a4638f0}{free\+Ram}} () +\item +void \mbox{\hyperlink{utils_8h_a1938abf1ef99f35bd2578e3db1bcf7b8}{parse\+Bytes}} (const char $\ast$str, char separator, byte $\ast$bytes, int max\+Bytes, int base) +\item +int \mbox{\hyperlink{utils_8h_aadf1050416e46077ad59157173438dad}{log}} (const char $\ast$str,...) +\item +void \mbox{\hyperlink{utils_8h_a6c16341dd45c4e557f951818d8d09810}{print\+Float\+Value\+To\+Str}} (float value, char $\ast$valstr) +\item +void \mbox{\hyperlink{utils_8h_a1380fbc9c2170180770dd1bdcc5ac647}{Read\+Unique\+ID}} (uint32\+\_\+t $\ast$pdw\+Unique\+ID) +\item +int \mbox{\hyperlink{utils_8h_a2abeec32a0c7fe0b4aa02a8807ed9cee}{inet\+\_\+aton}} (const char $\ast$a\+I\+P\+Addr\+String, I\+P\+Address \&a\+Result) +\item +char $\ast$ \mbox{\hyperlink{utils_8h_a5f3cdb518da692b8859ae48ed58196fc}{inet\+\_\+ntoa\+\_\+r}} (I\+P\+Address addr, char $\ast$buf, int buflen) +\item +void \mbox{\hyperlink{utils_8h_af0df006a5ae8d0d730134afdaf1c64dd}{print\+I\+P\+Address}} (I\+P\+Address ip\+Address) +\item +char $\ast$ \mbox{\hyperlink{utils_8h_aa0045f41bb76629662ed1ee7952f856e}{set\+Topic}} (char $\ast$buf, int8\+\_\+t buflen, \mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}} tt, const char $\ast$suffix=N\+U\+LL) +\item +void \mbox{\hyperlink{utils_8h_afb183532261be04b86e9e535010db6a9}{print\+Ulong\+Value\+To\+Str}} (char $\ast$valstr, unsigned long value) +\item +void \mbox{\hyperlink{utils_8h_af585ed9b15b9980b72fbec6d9c9dba67}{scan\+\_\+i2c\+\_\+bus}} () +\item +void \mbox{\hyperlink{utils_8h_a7facb8f2c84692ab65024785eb64b541}{soft\+Reboot\+Func}} () +\item +bool \mbox{\hyperlink{utils_8h_acd6072104e482c3f61e5bfad35a58ac0}{is\+Time\+Over}} (uint32\+\_\+t timestamp, uint32\+\_\+t curr\+Time, uint32\+\_\+t time, uint32\+\_\+t modulo=0x\+F\+F\+F\+F\+F\+F\+FF) +\item +bool \mbox{\hyperlink{utils_8h_a9843f57c765644bc93e675922da82beb}{execute\+Command}} (a\+Json\+Object $\ast$cmd, int8\+\_\+t toggle=-\/1) +\item +bool \mbox{\hyperlink{utils_8h_a2cd15a22b2799d0378a27850c96c6300}{execute\+Command}} (a\+Json\+Object $\ast$cmd, int8\+\_\+t toggle, \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \+\_\+item\+Cmd) +\item +\mbox{\hyperlink{classitem_cmd}{item\+Cmd}} \mbox{\hyperlink{utils_8h_ace8fa23ff29c3feb89c5d500ef87b914}{map\+Int}} (int32\+\_\+t arg, a\+Json\+Object $\ast$map) +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{utils_8h_a2a280bfe12bc6e732a7c4d3d62443a14}\label{utils_8h_a2a280bfe12bc6e732a7c4d3d62443a14}} +\index{utils.h@{utils.h}!Q@{Q}} +\index{Q@{Q}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{Q}{Q}} +{\footnotesize\ttfamily \#define Q(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\#x} + +\mbox{\Hypertarget{utils_8h_a2117b58e19182dff91ad3558e650541d}\label{utils_8h_a2117b58e19182dff91ad3558e650541d}} +\index{utils.h@{utils.h}!QUOTE@{QUOTE}} +\index{QUOTE@{QUOTE}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{QUOTE}{QUOTE}} +{\footnotesize\ttfamily \#define Q\+U\+O\+TE(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\mbox{\hyperlink{utils_8h_a2a280bfe12bc6e732a7c4d3d62443a14}{Q}}(x)} + +\mbox{\Hypertarget{utils_8h_ad705dc78222473228fa826e42eca95f1}\label{utils_8h_ad705dc78222473228fa826e42eca95f1}} +\index{utils.h@{utils.h}!VALUE@{VALUE}} +\index{VALUE@{VALUE}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{VALUE}{VALUE}} +{\footnotesize\ttfamily \#define V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\mbox{\hyperlink{utils_8h_ad15c9a08925b1c0365fb1bd9ac826670}{V\+A\+L\+U\+E\+\_\+\+T\+O\+\_\+\+S\+T\+R\+I\+NG}}(x)} + +\mbox{\Hypertarget{utils_8h_ad15c9a08925b1c0365fb1bd9ac826670}\label{utils_8h_ad15c9a08925b1c0365fb1bd9ac826670}} +\index{utils.h@{utils.h}!VALUE\_TO\_STRING@{VALUE\_TO\_STRING}} +\index{VALUE\_TO\_STRING@{VALUE\_TO\_STRING}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{VALUE\_TO\_STRING}{VALUE\_TO\_STRING}} +{\footnotesize\ttfamily \#define V\+A\+L\+U\+E\+\_\+\+T\+O\+\_\+\+S\+T\+R\+I\+NG(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~\#x} + +\mbox{\Hypertarget{utils_8h_a9a89328d94ddd2cdd4b39db22da01f79}\label{utils_8h_a9a89328d94ddd2cdd4b39db22da01f79}} +\index{utils.h@{utils.h}!VAR\_NAME\_VALUE@{VAR\_NAME\_VALUE}} +\index{VAR\_NAME\_VALUE@{VAR\_NAME\_VALUE}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{VAR\_NAME\_VALUE}{VAR\_NAME\_VALUE}} +{\footnotesize\ttfamily \#define V\+A\+R\+\_\+\+N\+A\+M\+E\+\_\+\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{var }\end{DoxyParamCaption})~\#var \char`\"{}=\char`\"{} \mbox{\hyperlink{utils_8h_ad705dc78222473228fa826e42eca95f1}{V\+A\+L\+UE}}(var)} + + + +\doxysubsection{Enumeration Type Documentation} +\mbox{\Hypertarget{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}\label{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}} +\index{utils.h@{utils.h}!topicType@{topicType}} +\index{topicType@{topicType}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{topicType}{topicType}} +{\footnotesize\ttfamily enum \mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}}} + +\begin{DoxyEnumFields}{Enumerator} +\raisebox{\heightof{T}}[0pt][0pt]{\index{T\_DEV@{T\_DEV}!utils.h@{utils.h}}\index{utils.h@{utils.h}!T\_DEV@{T\_DEV}}}\mbox{\Hypertarget{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca3fa22e2ae357981afc104dc67d764c85}\label{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca3fa22e2ae357981afc104dc67d764c85}} +T\+\_\+\+D\+EV&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{T\_BCST@{T\_BCST}!utils.h@{utils.h}}\index{utils.h@{utils.h}!T\_BCST@{T\_BCST}}}\mbox{\Hypertarget{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca26fa2da957fe6c55420ed0e1a7dd7a15}\label{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca26fa2da957fe6c55420ed0e1a7dd7a15}} +T\+\_\+\+B\+C\+ST&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{T\_OUT@{T\_OUT}!utils.h@{utils.h}}\index{utils.h@{utils.h}!T\_OUT@{T\_OUT}}}\mbox{\Hypertarget{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca27b2310c69298d62ed18dd416476a44d}\label{utils_8h_a2598bacb04e8f77e8b41cee61ef359fca27b2310c69298d62ed18dd416476a44d}} +T\+\_\+\+O\+UT&\\ +\hline + +\end{DoxyEnumFields} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{utils_8h_a2cd15a22b2799d0378a27850c96c6300}\label{utils_8h_a2cd15a22b2799d0378a27850c96c6300}} +\index{utils.h@{utils.h}!executeCommand@{executeCommand}} +\index{executeCommand@{executeCommand}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{executeCommand()}{executeCommand()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily bool execute\+Command (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{cmd, }\item[{int8\+\_\+t}]{toggle, }\item[{\mbox{\hyperlink{classitem_cmd}{item\+Cmd}}}]{\+\_\+item\+Cmd }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a9843f57c765644bc93e675922da82beb}\label{utils_8h_a9843f57c765644bc93e675922da82beb}} +\index{utils.h@{utils.h}!executeCommand@{executeCommand}} +\index{executeCommand@{executeCommand}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{executeCommand()}{executeCommand()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily bool execute\+Command (\begin{DoxyParamCaption}\item[{a\+Json\+Object $\ast$}]{cmd, }\item[{int8\+\_\+t}]{toggle = {\ttfamily -\/1} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a3c97971726a07a7d14fb701f4a4638f0}\label{utils_8h_a3c97971726a07a7d14fb701f4a4638f0}} +\index{utils.h@{utils.h}!freeRam@{freeRam}} +\index{freeRam@{freeRam}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{freeRam()}{freeRam()}} +{\footnotesize\ttfamily unsigned long free\+Ram (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a6037cfc7913c0856e93dbf8fc2133aac}\label{utils_8h_a6037cfc7913c0856e93dbf8fc2133aac}} +\index{utils.h@{utils.h}!getInt@{getInt}} +\index{getInt@{getInt}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{getInt()}{getInt()}} +{\footnotesize\ttfamily int get\+Int (\begin{DoxyParamCaption}\item[{char $\ast$$\ast$}]{chan }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a215fd13be95cb1c21fe50b3693b85557}\label{utils_8h_a215fd13be95cb1c21fe50b3693b85557}} +\index{utils.h@{utils.h}!HEX2DEC@{HEX2DEC}} +\index{HEX2DEC@{HEX2DEC}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{HEX2DEC()}{HEX2DEC()}} +{\footnotesize\ttfamily uint8\+\_\+t H\+E\+X2\+D\+EC (\begin{DoxyParamCaption}\item[{char}]{i }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a2abeec32a0c7fe0b4aa02a8807ed9cee}\label{utils_8h_a2abeec32a0c7fe0b4aa02a8807ed9cee}} +\index{utils.h@{utils.h}!inet\_aton@{inet\_aton}} +\index{inet\_aton@{inet\_aton}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{inet\_aton()}{inet\_aton()}} +{\footnotesize\ttfamily int inet\+\_\+aton (\begin{DoxyParamCaption}\item[{const char $\ast$}]{a\+I\+P\+Addr\+String, }\item[{I\+P\+Address \&}]{a\+Result }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a5f3cdb518da692b8859ae48ed58196fc}\label{utils_8h_a5f3cdb518da692b8859ae48ed58196fc}} +\index{utils.h@{utils.h}!inet\_ntoa\_r@{inet\_ntoa\_r}} +\index{inet\_ntoa\_r@{inet\_ntoa\_r}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{inet\_ntoa\_r()}{inet\_ntoa\_r()}} +{\footnotesize\ttfamily char$\ast$ inet\+\_\+ntoa\+\_\+r (\begin{DoxyParamCaption}\item[{I\+P\+Address}]{addr, }\item[{char $\ast$}]{buf, }\item[{int}]{buflen }\end{DoxyParamCaption})} + +Same as ipaddr\+\_\+ntoa, but reentrant since a user-\/supplied buffer is used. + + +\begin{DoxyParams}{Parameters} +{\em addr} & ip address in network order to convert \\ +\hline +{\em buf} & target buffer where the string is stored \\ +\hline +{\em buflen} & length of buf \\ +\hline +\end{DoxyParams} +\begin{DoxyReturn}{Returns} +either pointer to buf which now holds the A\+S\+C\+II representation of addr or N\+U\+LL if buf was too small +\end{DoxyReturn} +\mbox{\Hypertarget{utils_8h_acd6072104e482c3f61e5bfad35a58ac0}\label{utils_8h_acd6072104e482c3f61e5bfad35a58ac0}} +\index{utils.h@{utils.h}!isTimeOver@{isTimeOver}} +\index{isTimeOver@{isTimeOver}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{isTimeOver()}{isTimeOver()}} +{\footnotesize\ttfamily bool is\+Time\+Over (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{timestamp, }\item[{uint32\+\_\+t}]{curr\+Time, }\item[{uint32\+\_\+t}]{time, }\item[{uint32\+\_\+t}]{modulo = {\ttfamily 0xFFFFFFFF} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_aadf1050416e46077ad59157173438dad}\label{utils_8h_aadf1050416e46077ad59157173438dad}} +\index{utils.h@{utils.h}!log@{log}} +\index{log@{log}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{log()}{log()}} +{\footnotesize\ttfamily int log (\begin{DoxyParamCaption}\item[{const char $\ast$}]{str, }\item[{}]{... }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_ace8fa23ff29c3feb89c5d500ef87b914}\label{utils_8h_ace8fa23ff29c3feb89c5d500ef87b914}} +\index{utils.h@{utils.h}!mapInt@{mapInt}} +\index{mapInt@{mapInt}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{mapInt()}{mapInt()}} +{\footnotesize\ttfamily \mbox{\hyperlink{classitem_cmd}{item\+Cmd}} map\+Int (\begin{DoxyParamCaption}\item[{int32\+\_\+t}]{arg, }\item[{a\+Json\+Object $\ast$}]{map }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a1938abf1ef99f35bd2578e3db1bcf7b8}\label{utils_8h_a1938abf1ef99f35bd2578e3db1bcf7b8}} +\index{utils.h@{utils.h}!parseBytes@{parseBytes}} +\index{parseBytes@{parseBytes}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{parseBytes()}{parseBytes()}} +{\footnotesize\ttfamily void parse\+Bytes (\begin{DoxyParamCaption}\item[{const char $\ast$}]{str, }\item[{char}]{separator, }\item[{byte $\ast$}]{bytes, }\item[{int}]{max\+Bytes, }\item[{int}]{base }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_ab5fb614b925280fc7c8d0e5314dd3b7a}\label{utils_8h_ab5fb614b925280fc7c8d0e5314dd3b7a}} +\index{utils.h@{utils.h}!PrintBytes@{PrintBytes}} +\index{PrintBytes@{PrintBytes}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{PrintBytes()}{PrintBytes()}} +{\footnotesize\ttfamily void Print\+Bytes (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{addr, }\item[{uint8\+\_\+t}]{count, }\item[{bool}]{newline }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a6c16341dd45c4e557f951818d8d09810}\label{utils_8h_a6c16341dd45c4e557f951818d8d09810}} +\index{utils.h@{utils.h}!printFloatValueToStr@{printFloatValueToStr}} +\index{printFloatValueToStr@{printFloatValueToStr}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{printFloatValueToStr()}{printFloatValueToStr()}} +{\footnotesize\ttfamily void print\+Float\+Value\+To\+Str (\begin{DoxyParamCaption}\item[{float}]{value, }\item[{char $\ast$}]{valstr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_af0df006a5ae8d0d730134afdaf1c64dd}\label{utils_8h_af0df006a5ae8d0d730134afdaf1c64dd}} +\index{utils.h@{utils.h}!printIPAddress@{printIPAddress}} +\index{printIPAddress@{printIPAddress}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{printIPAddress()}{printIPAddress()}} +{\footnotesize\ttfamily void print\+I\+P\+Address (\begin{DoxyParamCaption}\item[{I\+P\+Address}]{ip\+Address }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_afb183532261be04b86e9e535010db6a9}\label{utils_8h_afb183532261be04b86e9e535010db6a9}} +\index{utils.h@{utils.h}!printUlongValueToStr@{printUlongValueToStr}} +\index{printUlongValueToStr@{printUlongValueToStr}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{printUlongValueToStr()}{printUlongValueToStr()}} +{\footnotesize\ttfamily void print\+Ulong\+Value\+To\+Str (\begin{DoxyParamCaption}\item[{char $\ast$}]{valstr, }\item[{unsigned long}]{value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a1380fbc9c2170180770dd1bdcc5ac647}\label{utils_8h_a1380fbc9c2170180770dd1bdcc5ac647}} +\index{utils.h@{utils.h}!ReadUniqueID@{ReadUniqueID}} +\index{ReadUniqueID@{ReadUniqueID}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{ReadUniqueID()}{ReadUniqueID()}} +{\footnotesize\ttfamily void Read\+Unique\+ID (\begin{DoxyParamCaption}\item[{uint32\+\_\+t $\ast$}]{pdw\+Unique\+ID }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_af585ed9b15b9980b72fbec6d9c9dba67}\label{utils_8h_af585ed9b15b9980b72fbec6d9c9dba67}} +\index{utils.h@{utils.h}!scan\_i2c\_bus@{scan\_i2c\_bus}} +\index{scan\_i2c\_bus@{scan\_i2c\_bus}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{scan\_i2c\_bus()}{scan\_i2c\_bus()}} +{\footnotesize\ttfamily void scan\+\_\+i2c\+\_\+bus (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a4dd6705cb24a3eab32d9abc8393844b3}\label{utils_8h_a4dd6705cb24a3eab32d9abc8393844b3}} +\index{utils.h@{utils.h}!SetAddr@{SetAddr}} +\index{SetAddr@{SetAddr}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{SetAddr()}{SetAddr()}} +{\footnotesize\ttfamily void Set\+Addr (\begin{DoxyParamCaption}\item[{char $\ast$}]{out, }\item[{uint8\+\_\+t $\ast$}]{addr }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a85a33f14fc0eefef02be4c6bacf5c8f0}\label{utils_8h_a85a33f14fc0eefef02be4c6bacf5c8f0}} +\index{utils.h@{utils.h}!SetBytes@{SetBytes}} +\index{SetBytes@{SetBytes}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{SetBytes()}{SetBytes()}} +{\footnotesize\ttfamily void Set\+Bytes (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{addr, }\item[{uint8\+\_\+t}]{count, }\item[{char $\ast$}]{out }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_aa0045f41bb76629662ed1ee7952f856e}\label{utils_8h_aa0045f41bb76629662ed1ee7952f856e}} +\index{utils.h@{utils.h}!setTopic@{setTopic}} +\index{setTopic@{setTopic}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{setTopic()}{setTopic()}} +{\footnotesize\ttfamily char$\ast$ set\+Topic (\begin{DoxyParamCaption}\item[{char $\ast$}]{buf, }\item[{int8\+\_\+t}]{buflen, }\item[{\mbox{\hyperlink{utils_8h_a2598bacb04e8f77e8b41cee61ef359fc}{topic\+Type}}}]{tt, }\item[{const char $\ast$}]{suffix = {\ttfamily NULL} }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a7facb8f2c84692ab65024785eb64b541}\label{utils_8h_a7facb8f2c84692ab65024785eb64b541}} +\index{utils.h@{utils.h}!softRebootFunc@{softRebootFunc}} +\index{softRebootFunc@{softRebootFunc}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{softRebootFunc()}{softRebootFunc()}} +{\footnotesize\ttfamily void soft\+Reboot\+Func (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + diff --git a/lighthub/colorchannel.cpp b/lighthub/colorchannel.cpp index 6ef5278..fa3329c 100644 --- a/lighthub/colorchannel.cpp +++ b/lighthub/colorchannel.cpp @@ -20,26 +20,7 @@ int colorChannel::Ctrl(itemCmd cmd, char* subItem, bool toExecute) { debugSerial<isActive(); -//bool toExecute = (chActive>0); // execute if channel is active now int suffixCode = cmd.getSuffix(); -/* -// Since this driver working both, for single-dimmed or PWM channel and color - define storage type -uint8_t storageType; -switch (getChanType()) -{ - case CH_RGB: - case CH_RGBW: - storageType=ST_HSV; - break; - default: - storageType=ST_PERCENTS; -} -itemCmd st(storageType,CMD_VOID); - -if (!suffixCode) toExecute=true; //forced execute if no suffix -if (cmd.isCommand() && !suffixCode) suffixCode=S_CMD; //if some known command recognized , but w/o correct cmd suffix - threat it as command -*/ switch(suffixCode) { @@ -56,13 +37,12 @@ case S_CMD: { case CMD_ON: PixelCtrl(cmd,subItem, true); - item->SendStatus(SEND_COMMAND | SEND_PARAMETERS ); + // item->SendStatus(SEND_COMMAND | SEND_PARAMETERS ); return 1; case CMD_OFF: - cmd.Percents(0); PixelCtrl(cmd, subItem, true); - item->SendStatus(SEND_COMMAND); + // item->SendStatus(SEND_COMMAND); return 1; default: diff --git a/lighthub/item.cpp b/lighthub/item.cpp index 0de8219..60f0d21 100644 --- a/lighthub/item.cpp +++ b/lighthub/item.cpp @@ -346,7 +346,7 @@ void Item::setVal(short n, int par) // Only store if VAL is array defined in c void Item::setVal(long int par) // Only store if VAL is int (autogenerated or config-defined) { if (!itemVal || itemVal->type != aJson_Int) return; - debugSerial<")<255) rgbValue = 255; } else @@ -342,6 +349,7 @@ itemCmd itemCmd::assignFrom(itemCmd from) rgbSaturation = map(rgbSaturation, 128, 255, 100, 255); param.w=0; } + debugSerial<getArg()<0); short cType = getChanType(); +switch (cmd.getCmd()){ + case CMD_OFF: + cmd.Percents(0); + break; +} + if (cType=CH_PWM) { short k; analogWrite(iaddr, k=cmd.getPercents255(inverse)); diff --git a/platformio.ini b/platformio.ini index ebfb9b6..4ba86f2 100644 --- a/platformio.ini +++ b/platformio.ini @@ -23,13 +23,13 @@ default_envs = ; mega2560-5500 ; LightHub controller HW revision 2.1 and above (Wiznet 5500 CS on pin 53) - lighthub21 +; lighthub21 ; Arduino DUE + Ethernet shield Wiznet 5100 ; due-5100 ; Generic DUE -; due + due ; Arduino DUE + Ethernet shield Wiznet 5500 ; due-5500