From 02fdf8b415031f1d43a83cec81d300f36d83d51d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D1=8B=D1=87=D0=BA=D0=BE=D0=B2=20=D0=90=D0=BD=D0=B4?= =?UTF-8?q?=D1=80=D0=B5=D0=B9?= Date: Sat, 28 Feb 2015 18:36:54 +0000 Subject: [PATCH] with docs git-svn-id: svn://db.shs.com.ru/pip@5 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5 --- doc/html/annotated.html | 168 + doc/html/annotated.js | 36 + doc/html/bc_s.png | Bin 0 -> 674 bytes doc/html/bdwn.png | Bin 0 -> 146 bytes doc/html/class_p_i_binary_log-members.html | 221 + doc/html/class_p_i_binary_log.html | 526 ++ doc/html/class_p_i_binary_log.js | 8 + .../class_p_i_binary_log__inherit__graph.map | 5 + .../class_p_i_binary_log__inherit__graph.md5 | 1 + .../class_p_i_binary_log__inherit__graph.svg | 57 + doc/html/class_p_i_byte_array-members.html | 184 + doc/html/class_p_i_byte_array.html | 448 ++ doc/html/class_p_i_byte_array.js | 61 + doc/html/class_p_i_c_l_i-members.html | 194 + doc/html/class_p_i_c_l_i.html | 445 ++ doc/html/class_p_i_c_l_i.js | 12 + doc/html/class_p_i_c_l_i__inherit__graph.map | 3 + doc/html/class_p_i_c_l_i__inherit__graph.md5 | 1 + doc/html/class_p_i_c_l_i__inherit__graph.svg | 31 + doc/html/class_p_i_char-members.html | 156 + doc/html/class_p_i_char.html | 258 + doc/html/class_p_i_char.js | 32 + doc/html/class_p_i_collection-members.html | 131 + doc/html/class_p_i_collection.html | 281 + doc/html/class_p_i_collection.js | 5 + doc/html/class_p_i_config-members.html | 259 + doc/html/class_p_i_config.html | 700 ++ doc/html/class_p_i_config.js | 43 + .../class_p_i_config_1_1_branch-members.html | 155 + doc/html/class_p_i_config_1_1_branch.html | 140 + ..._p_i_config_1_1_branch__inherit__graph.map | 3 + ..._p_i_config_1_1_branch__inherit__graph.md5 | 1 + ..._p_i_config_1_1_branch__inherit__graph.svg | 31 + .../class_p_i_config_1_1_entry-members.html | 184 + doc/html/class_p_i_config_1_1_entry.html | 451 ++ doc/html/class_p_i_config_1_1_entry.js | 60 + doc/html/class_p_i_config__inherit__graph.map | 6 + doc/html/class_p_i_config__inherit__graph.md5 | 1 + doc/html/class_p_i_config__inherit__graph.svg | 70 + doc/html/class_p_i_connection-members.html | 254 + doc/html/class_p_i_connection.html | 1004 +++ doc/html/class_p_i_connection.js | 70 + .../class_p_i_connection__inherit__graph.map | 3 + .../class_p_i_connection__inherit__graph.md5 | 1 + .../class_p_i_connection__inherit__graph.svg | 31 + doc/html/class_p_i_console-members.html | 292 + doc/html/class_p_i_console.html | 966 +++ doc/html/class_p_i_console.js | 84 + .../class_p_i_console__inherit__graph.map | 4 + .../class_p_i_console__inherit__graph.md5 | 1 + .../class_p_i_console__inherit__graph.svg | 44 + doc/html/class_p_i_cout-members.html | 158 + doc/html/class_p_i_cout.html | 426 ++ doc/html/class_p_i_cout.js | 34 + doc/html/class_p_i_diagnostics-members.html | 246 + doc/html/class_p_i_diagnostics.html | 497 ++ doc/html/class_p_i_diagnostics.js | 42 + .../class_p_i_diagnostics__inherit__graph.map | 4 + .../class_p_i_diagnostics__inherit__graph.md5 | 1 + .../class_p_i_diagnostics__inherit__graph.svg | 44 + doc/html/class_p_i_ethernet-members.html | 289 + doc/html/class_p_i_ethernet.html | 880 +++ doc/html/class_p_i_ethernet.js | 81 + ...i_ethernet_1_1_interface_list-members.html | 159 + ...class_p_i_ethernet_1_1_interface_list.html | 161 + .../class_p_i_ethernet_1_1_interface_list.js | 7 + ...net_1_1_interface_list__inherit__graph.map | 3 + ...net_1_1_interface_list__inherit__graph.md5 | 1 + ...net_1_1_interface_list__inherit__graph.svg | 32 + .../class_p_i_ethernet__inherit__graph.map | 5 + .../class_p_i_ethernet__inherit__graph.md5 | 1 + .../class_p_i_ethernet__inherit__graph.svg | 57 + doc/html/class_p_i_evaluator-members.html | 142 + doc/html/class_p_i_evaluator.html | 299 + doc/html/class_p_i_evaluator.js | 18 + doc/html/class_p_i_file-members.html | 221 + doc/html/class_p_i_file.html | 526 ++ doc/html/class_p_i_file.js | 7 + doc/html/class_p_i_file__inherit__graph.map | 6 + doc/html/class_p_i_file__inherit__graph.md5 | 1 + doc/html/class_p_i_file__inherit__graph.svg | 70 + doc/html/class_p_i_flags-members.html | 175 + doc/html/class_p_i_flags.html | 338 + doc/html/class_p_i_flags.js | 51 + doc/html/class_p_i_i_o_device-members.html | 221 + doc/html/class_p_i_i_o_device.html | 678 ++ doc/html/class_p_i_i_o_device.js | 13 + .../class_p_i_i_o_device__inherit__graph.map | 10 + .../class_p_i_i_o_device__inherit__graph.md5 | 1 + .../class_p_i_i_o_device__inherit__graph.svg | 122 + doc/html/class_p_i_kbd_listener-members.html | 232 + doc/html/class_p_i_kbd_listener.html | 601 ++ doc/html/class_p_i_kbd_listener.js | 24 + ...class_p_i_kbd_listener__inherit__graph.map | 4 + ...class_p_i_kbd_listener__inherit__graph.md5 | 1 + ...class_p_i_kbd_listener__inherit__graph.svg | 44 + doc/html/class_p_i_mutex-members.html | 131 + doc/html/class_p_i_mutex.html | 238 + doc/html/class_p_i_mutex.js | 7 + doc/html/class_p_i_object-members.html | 185 + doc/html/class_p_i_object.html | 432 ++ doc/html/class_p_i_object.js | 58 + doc/html/class_p_i_object__inherit__graph.map | 19 + doc/html/class_p_i_object__inherit__graph.md5 | 1 + doc/html/class_p_i_object__inherit__graph.svg | 327 + .../class_p_i_object__inherit__graph_org.svg | 239 + .../class_p_i_packet_extractor-members.html | 250 + doc/html/class_p_i_packet_extractor.html | 854 +++ doc/html/class_p_i_packet_extractor.js | 37 + ...s_p_i_packet_extractor__inherit__graph.map | 5 + ...s_p_i_packet_extractor__inherit__graph.md5 | 1 + ...s_p_i_packet_extractor__inherit__graph.svg | 57 + doc/html/class_p_i_process-members.html | 213 + doc/html/class_p_i_process.html | 307 + .../class_p_i_process__inherit__graph.map | 4 + .../class_p_i_process__inherit__graph.md5 | 1 + .../class_p_i_process__inherit__graph.svg | 44 + doc/html/class_p_i_protocol-members.html | 191 + doc/html/class_p_i_protocol.html | 440 ++ doc/html/class_p_i_protocol.js | 12 + .../class_p_i_protocol__inherit__graph.map | 3 + .../class_p_i_protocol__inherit__graph.md5 | 1 + .../class_p_i_protocol__inherit__graph.svg | 31 + doc/html/class_p_i_serial-members.html | 223 + doc/html/class_p_i_serial.html | 531 ++ doc/html/class_p_i_serial.js | 10 + doc/html/class_p_i_serial__inherit__graph.map | 5 + doc/html/class_p_i_serial__inherit__graph.md5 | 1 + doc/html/class_p_i_serial__inherit__graph.svg | 57 + doc/html/class_p_i_set-members.html | 135 + doc/html/class_p_i_set.html | 175 + doc/html/class_p_i_set.js | 11 + doc/html/class_p_i_state_machine-members.html | 209 + doc/html/class_p_i_state_machine.html | 626 ++ doc/html/class_p_i_state_machine.js | 29 + ...lass_p_i_state_machine__inherit__graph.map | 3 + ...lass_p_i_state_machine__inherit__graph.md5 | 1 + ...lass_p_i_state_machine__inherit__graph.svg | 31 + doc/html/class_p_i_string-members.html | 275 + doc/html/class_p_i_string.html | 3942 +++++++++++ doc/html/class_p_i_string.js | 138 + doc/html/class_p_i_string_list-members.html | 140 + doc/html/class_p_i_string_list.html | 300 + doc/html/class_p_i_string_list.js | 16 + doc/html/class_p_i_system_time-members.html | 161 + doc/html/class_p_i_system_time.html | 322 + doc/html/class_p_i_system_time.js | 32 + doc/html/class_p_i_thread-members.html | 216 + doc/html/class_p_i_thread.html | 746 ++ doc/html/class_p_i_thread.js | 35 + doc/html/class_p_i_thread__inherit__graph.map | 13 + doc/html/class_p_i_thread__inherit__graph.md5 | 1 + doc/html/class_p_i_thread__inherit__graph.svg | 161 + doc/html/class_p_i_time_measurer-members.html | 139 + doc/html/class_p_i_time_measurer.html | 218 + doc/html/class_p_i_time_measurer.js | 10 + doc/html/class_p_i_timer-members.html | 212 + doc/html/class_p_i_timer.html | 718 ++ doc/html/class_p_i_timer.js | 31 + doc/html/class_p_i_timer__inherit__graph.map | 4 + doc/html/class_p_i_timer__inherit__graph.md5 | 1 + doc/html/class_p_i_timer__inherit__graph.svg | 44 + doc/html/class_p_i_variant-members.html | 256 + doc/html/class_p_i_variant.html | 1073 +++ doc/html/class_p_i_variant.js | 130 + doc/html/class_p_i_vector-members.html | 155 + doc/html/class_p_i_vector.html | 530 ++ doc/html/class_p_i_vector.js | 30 + doc/html/classes.html | 149 + doc/html/closed.png | Bin 0 -> 132 bytes doc/html/deprecated.html | 124 + doc/html/dir_000001_000006.html | 113 + doc/html/dir_000002_000004.html | 113 + doc/html/dir_000002_000005.html | 113 + doc/html/dir_000002_000006.html | 113 + doc/html/dir_000003_000004.html | 113 + doc/html/dir_000004_000003.html | 113 + doc/html/dir_000004_000005.html | 113 + doc/html/dir_000004_000006.html | 113 + doc/html/dir_000004_000007.html | 113 + doc/html/dir_000004_000008.html | 113 + doc/html/dir_000005_000004.html | 113 + doc/html/dir_000005_000007.html | 113 + doc/html/dir_000005_000008.html | 113 + doc/html/dir_000006_000004.html | 113 + doc/html/dir_000007_000003.html | 113 + doc/html/dir_000007_000005.html | 113 + doc/html/dir_000007_000008.html | 113 + doc/html/dir_000008_000004.html | 113 + .../dir_0b61c55142250c0cc363383afd8075a4.html | 151 + .../dir_0b61c55142250c0cc363383afd8075a4.js | 11 + ...r_0b61c55142250c0cc363383afd8075a4_dep.map | 7 + ...r_0b61c55142250c0cc363383afd8075a4_dep.md5 | 1 + ...r_0b61c55142250c0cc363383afd8075a4_dep.svg | 54 + .../dir_3edb929655fe9d5ef5f6ec0f70ce278e.html | 131 + ...r_3edb929655fe9d5ef5f6ec0f70ce278e_dep.map | 6 + ...r_3edb929655fe9d5ef5f6ec0f70ce278e_dep.md5 | 1 + ...r_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg | 45 + .../dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html | 139 + .../dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.js | 5 + ...r_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.map | 14 + ...r_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.md5 | 1 + ...r_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg | 115 + .../dir_68267d1309a1af8e8297ef4c3efbcdba.html | 156 + .../dir_68267d1309a1af8e8297ef4c3efbcdba.js | 10 + ...r_68267d1309a1af8e8297ef4c3efbcdba_dep.map | 29 + ...r_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 | 1 + ...r_68267d1309a1af8e8297ef4c3efbcdba_dep.svg | 249 + .../dir_ae9a93452e2a84339148a16bcf2eb561.html | 142 + .../dir_ae9a93452e2a84339148a16bcf2eb561.js | 6 + ...r_ae9a93452e2a84339148a16bcf2eb561_dep.map | 7 + ...r_ae9a93452e2a84339148a16bcf2eb561_dep.md5 | 1 + ...r_ae9a93452e2a84339148a16bcf2eb561_dep.svg | 54 + .../dir_aebb8dcc11953d78e620bbef0b9e2183.html | 182 + .../dir_aebb8dcc11953d78e620bbef0b9e2183.js | 20 + ...r_aebb8dcc11953d78e620bbef0b9e2183_dep.map | 23 + ...r_aebb8dcc11953d78e620bbef0b9e2183_dep.md5 | 1 + ...r_aebb8dcc11953d78e620bbef0b9e2183_dep.svg | 194 + .../dir_bfedb72b9d87795234454f6223b9ab1e.html | 144 + .../dir_bfedb72b9d87795234454f6223b9ab1e.js | 8 + ...r_bfedb72b9d87795234454f6223b9ab1e_dep.map | 7 + ...r_bfedb72b9d87795234454f6223b9ab1e_dep.md5 | 1 + ...r_bfedb72b9d87795234454f6223b9ab1e_dep.svg | 54 + .../dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html | 197 + .../dir_c184e51c84f2c3f0345bbc8a0d75d3e1.js | 19 + ...r_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.map | 16 + ...r_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.md5 | 1 + ...r_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg | 133 + .../dir_d501334aeb1b78ad67cd3c72c37b1e87.html | 165 + .../dir_d501334aeb1b78ad67cd3c72c37b1e87.js | 9 + ...r_d501334aeb1b78ad67cd3c72c37b1e87_dep.map | 12 + ...r_d501334aeb1b78ad67cd3c72c37b1e87_dep.md5 | 1 + ...r_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg | 97 + doc/html/doxygen.css | 1440 ++++ doc/html/doxygen.png | Bin 0 -> 3839 bytes doc/html/dynsections.js | 97 + doc/html/events_handlers.png | Bin 0 -> 28786 bytes doc/html/files.html | 175 + doc/html/files.js | 4 + doc/html/ftv2blank.png | Bin 0 -> 86 bytes doc/html/ftv2doc.png | Bin 0 -> 756 bytes doc/html/ftv2folderclosed.png | Bin 0 -> 579 bytes doc/html/ftv2folderopen.png | Bin 0 -> 590 bytes doc/html/ftv2lastnode.png | Bin 0 -> 86 bytes doc/html/ftv2link.png | Bin 0 -> 756 bytes doc/html/ftv2mlastnode.png | Bin 0 -> 242 bytes doc/html/ftv2mnode.png | Bin 0 -> 242 bytes doc/html/ftv2node.png | Bin 0 -> 86 bytes doc/html/ftv2plastnode.png | Bin 0 -> 232 bytes doc/html/ftv2pnode.png | Bin 0 -> 232 bytes doc/html/ftv2splitbar.png | Bin 0 -> 314 bytes doc/html/ftv2vertline.png | Bin 0 -> 86 bytes doc/html/functions.html | 261 + doc/html/functions_b.html | 236 + doc/html/functions_c.html | 340 + doc/html/functions_d.html | 235 + doc/html/functions_dup.js | 27 + doc/html/functions_e.html | 295 + doc/html/functions_enum.html | 165 + doc/html/functions_eval.html | 520 ++ doc/html/functions_f.html | 264 + doc/html/functions_func.html | 241 + doc/html/functions_func.js | 26 + doc/html/functions_func_b.html | 174 + doc/html/functions_func_c.html | 285 + doc/html/functions_func_d.html | 201 + doc/html/functions_func_e.html | 240 + doc/html/functions_func_f.html | 244 + doc/html/functions_func_g.html | 188 + doc/html/functions_func_h.html | 165 + doc/html/functions_func_i.html | 271 + doc/html/functions_func_j.html | 168 + doc/html/functions_func_k.html | 166 + doc/html/functions_func_l.html | 184 + doc/html/functions_func_m.html | 180 + doc/html/functions_func_n.html | 175 + doc/html/functions_func_o.html | 323 + doc/html/functions_func_p.html | 299 + doc/html/functions_func_q.html | 174 + doc/html/functions_func_r.html | 336 + doc/html/functions_func_s.html | 435 ++ doc/html/functions_func_t.html | 351 + doc/html/functions_func_u.html | 169 + doc/html/functions_func_v.html | 177 + doc/html/functions_func_w.html | 187 + doc/html/functions_g.html | 196 + doc/html/functions_h.html | 182 + doc/html/functions_i.html | 311 + doc/html/functions_j.html | 169 + doc/html/functions_k.html | 167 + doc/html/functions_l.html | 200 + doc/html/functions_m.html | 187 + doc/html/functions_n.html | 193 + doc/html/functions_o.html | 331 + doc/html/functions_p.html | 342 + doc/html/functions_q.html | 181 + doc/html/functions_r.html | 358 + doc/html/functions_rela.html | 323 + doc/html/functions_s.html | 469 ++ doc/html/functions_t.html | 384 + doc/html/functions_type.html | 139 + doc/html/functions_u.html | 198 + doc/html/functions_v.html | 179 + doc/html/functions_vars.html | 196 + doc/html/functions_w.html | 209 + doc/html/functions_y.html | 166 + doc/html/globals.html | 405 ++ doc/html/globals_defs.html | 265 + doc/html/globals_func.html | 282 + doc/html/globals_vars.html | 131 + doc/html/graph_legend.html | 176 + doc/html/graph_legend.md5 | 1 + doc/html/graph_legend.svg | 121 + doc/html/hierarchy.html | 240 + doc/html/hierarchy.js | 120 + doc/html/index.html | 150 + doc/html/index.qhp | 6202 +++++++++++++++++ doc/html/inherit_graph_0.map | 3 + doc/html/inherit_graph_0.md5 | 1 + doc/html/inherit_graph_0.svg | 21 + doc/html/inherit_graph_1.map | 3 + doc/html/inherit_graph_1.md5 | 1 + doc/html/inherit_graph_1.svg | 21 + doc/html/inherit_graph_10.map | 3 + doc/html/inherit_graph_10.md5 | 1 + doc/html/inherit_graph_10.svg | 21 + doc/html/inherit_graph_11.map | 3 + doc/html/inherit_graph_11.md5 | 1 + doc/html/inherit_graph_11.svg | 22 + doc/html/inherit_graph_12.map | 3 + doc/html/inherit_graph_12.md5 | 1 + doc/html/inherit_graph_12.svg | 22 + doc/html/inherit_graph_13.map | 3 + doc/html/inherit_graph_13.md5 | 1 + doc/html/inherit_graph_13.svg | 21 + doc/html/inherit_graph_14.map | 3 + doc/html/inherit_graph_14.md5 | 1 + doc/html/inherit_graph_14.svg | 21 + doc/html/inherit_graph_15.map | 20 + doc/html/inherit_graph_15.md5 | 1 + doc/html/inherit_graph_15.svg | 242 + doc/html/inherit_graph_16.map | 3 + doc/html/inherit_graph_16.md5 | 1 + doc/html/inherit_graph_16.svg | 21 + doc/html/inherit_graph_17.map | 3 + doc/html/inherit_graph_17.md5 | 1 + doc/html/inherit_graph_17.svg | 21 + doc/html/inherit_graph_18.map | 3 + doc/html/inherit_graph_18.md5 | 1 + doc/html/inherit_graph_18.svg | 21 + doc/html/inherit_graph_19.map | 3 + doc/html/inherit_graph_19.md5 | 1 + doc/html/inherit_graph_19.svg | 21 + doc/html/inherit_graph_2.map | 3 + doc/html/inherit_graph_2.md5 | 1 + doc/html/inherit_graph_2.svg | 21 + doc/html/inherit_graph_20.map | 3 + doc/html/inherit_graph_20.md5 | 1 + doc/html/inherit_graph_20.svg | 22 + doc/html/inherit_graph_21.map | 3 + doc/html/inherit_graph_21.md5 | 1 + doc/html/inherit_graph_21.svg | 22 + doc/html/inherit_graph_22.map | 3 + doc/html/inherit_graph_22.md5 | 1 + doc/html/inherit_graph_22.svg | 21 + doc/html/inherit_graph_23.map | 3 + doc/html/inherit_graph_23.md5 | 1 + doc/html/inherit_graph_23.svg | 21 + doc/html/inherit_graph_24.map | 3 + doc/html/inherit_graph_24.md5 | 1 + doc/html/inherit_graph_24.svg | 21 + doc/html/inherit_graph_25.map | 3 + doc/html/inherit_graph_25.md5 | 1 + doc/html/inherit_graph_25.svg | 21 + doc/html/inherit_graph_26.map | 3 + doc/html/inherit_graph_26.md5 | 1 + doc/html/inherit_graph_26.svg | 21 + doc/html/inherit_graph_27.map | 3 + doc/html/inherit_graph_27.md5 | 1 + doc/html/inherit_graph_27.svg | 21 + doc/html/inherit_graph_28.map | 3 + doc/html/inherit_graph_28.md5 | 1 + doc/html/inherit_graph_28.svg | 21 + doc/html/inherit_graph_29.map | 3 + doc/html/inherit_graph_29.md5 | 1 + doc/html/inherit_graph_29.svg | 22 + doc/html/inherit_graph_3.map | 3 + doc/html/inherit_graph_3.md5 | 1 + doc/html/inherit_graph_3.svg | 21 + doc/html/inherit_graph_30.map | 3 + doc/html/inherit_graph_30.md5 | 1 + doc/html/inherit_graph_30.svg | 21 + doc/html/inherit_graph_31.map | 3 + doc/html/inherit_graph_31.md5 | 1 + doc/html/inherit_graph_31.svg | 21 + doc/html/inherit_graph_32.map | 3 + doc/html/inherit_graph_32.md5 | 1 + doc/html/inherit_graph_32.svg | 21 + doc/html/inherit_graph_33.map | 3 + doc/html/inherit_graph_33.md5 | 1 + doc/html/inherit_graph_33.svg | 21 + doc/html/inherit_graph_34.map | 3 + doc/html/inherit_graph_34.md5 | 1 + doc/html/inherit_graph_34.svg | 21 + doc/html/inherit_graph_35.map | 3 + doc/html/inherit_graph_35.md5 | 1 + doc/html/inherit_graph_35.svg | 21 + doc/html/inherit_graph_36.map | 3 + doc/html/inherit_graph_36.md5 | 1 + doc/html/inherit_graph_36.svg | 21 + doc/html/inherit_graph_37.map | 3 + doc/html/inherit_graph_37.md5 | 1 + doc/html/inherit_graph_37.svg | 21 + doc/html/inherit_graph_38.map | 3 + doc/html/inherit_graph_38.md5 | 1 + doc/html/inherit_graph_38.svg | 21 + doc/html/inherit_graph_39.map | 3 + doc/html/inherit_graph_39.md5 | 1 + doc/html/inherit_graph_39.svg | 21 + doc/html/inherit_graph_4.map | 3 + doc/html/inherit_graph_4.md5 | 1 + doc/html/inherit_graph_4.svg | 21 + doc/html/inherit_graph_40.map | 3 + doc/html/inherit_graph_40.md5 | 1 + doc/html/inherit_graph_40.svg | 21 + doc/html/inherit_graph_41.map | 4 + doc/html/inherit_graph_41.md5 | 1 + doc/html/inherit_graph_41.svg | 34 + doc/html/inherit_graph_42.map | 3 + doc/html/inherit_graph_42.md5 | 1 + doc/html/inherit_graph_42.svg | 21 + doc/html/inherit_graph_43.map | 3 + doc/html/inherit_graph_43.md5 | 1 + doc/html/inherit_graph_43.svg | 21 + doc/html/inherit_graph_44.map | 3 + doc/html/inherit_graph_44.md5 | 1 + doc/html/inherit_graph_44.svg | 21 + doc/html/inherit_graph_45.map | 3 + doc/html/inherit_graph_45.md5 | 1 + doc/html/inherit_graph_45.svg | 21 + doc/html/inherit_graph_46.map | 3 + doc/html/inherit_graph_46.md5 | 1 + doc/html/inherit_graph_46.svg | 21 + doc/html/inherit_graph_47.map | 3 + doc/html/inherit_graph_47.md5 | 1 + doc/html/inherit_graph_47.svg | 21 + doc/html/inherit_graph_48.map | 3 + doc/html/inherit_graph_48.md5 | 1 + doc/html/inherit_graph_48.svg | 21 + doc/html/inherit_graph_49.map | 3 + doc/html/inherit_graph_49.md5 | 1 + doc/html/inherit_graph_49.svg | 21 + doc/html/inherit_graph_5.map | 3 + doc/html/inherit_graph_5.md5 | 1 + doc/html/inherit_graph_5.svg | 21 + doc/html/inherit_graph_50.map | 3 + doc/html/inherit_graph_50.md5 | 1 + doc/html/inherit_graph_50.svg | 21 + doc/html/inherit_graph_51.map | 3 + doc/html/inherit_graph_51.md5 | 1 + doc/html/inherit_graph_51.svg | 21 + doc/html/inherit_graph_52.map | 3 + doc/html/inherit_graph_52.md5 | 1 + doc/html/inherit_graph_52.svg | 22 + doc/html/inherit_graph_53.map | 3 + doc/html/inherit_graph_53.md5 | 1 + doc/html/inherit_graph_53.svg | 22 + doc/html/inherit_graph_54.map | 3 + doc/html/inherit_graph_54.md5 | 1 + doc/html/inherit_graph_54.svg | 22 + doc/html/inherit_graph_55.map | 3 + doc/html/inherit_graph_55.md5 | 1 + doc/html/inherit_graph_55.svg | 21 + doc/html/inherit_graph_56.map | 3 + doc/html/inherit_graph_56.md5 | 1 + doc/html/inherit_graph_56.svg | 21 + doc/html/inherit_graph_57.map | 3 + doc/html/inherit_graph_57.md5 | 1 + doc/html/inherit_graph_57.svg | 21 + doc/html/inherit_graph_58.map | 4 + doc/html/inherit_graph_58.md5 | 1 + doc/html/inherit_graph_58.svg | 35 + doc/html/inherit_graph_59.map | 3 + doc/html/inherit_graph_59.md5 | 1 + doc/html/inherit_graph_59.svg | 22 + doc/html/inherit_graph_6.map | 3 + doc/html/inherit_graph_6.md5 | 1 + doc/html/inherit_graph_6.svg | 21 + doc/html/inherit_graph_60.map | 3 + doc/html/inherit_graph_60.md5 | 1 + doc/html/inherit_graph_60.svg | 22 + doc/html/inherit_graph_61.map | 3 + doc/html/inherit_graph_61.md5 | 1 + doc/html/inherit_graph_61.svg | 22 + doc/html/inherit_graph_62.map | 3 + doc/html/inherit_graph_62.md5 | 1 + doc/html/inherit_graph_62.svg | 22 + doc/html/inherit_graph_63.map | 3 + doc/html/inherit_graph_63.md5 | 1 + doc/html/inherit_graph_63.svg | 21 + doc/html/inherit_graph_64.map | 3 + doc/html/inherit_graph_64.md5 | 1 + doc/html/inherit_graph_64.svg | 22 + doc/html/inherit_graph_65.map | 3 + doc/html/inherit_graph_65.md5 | 1 + doc/html/inherit_graph_65.svg | 21 + doc/html/inherit_graph_66.map | 3 + doc/html/inherit_graph_66.md5 | 1 + doc/html/inherit_graph_66.svg | 21 + doc/html/inherit_graph_67.map | 3 + doc/html/inherit_graph_67.md5 | 1 + doc/html/inherit_graph_67.svg | 22 + doc/html/inherit_graph_68.map | 3 + doc/html/inherit_graph_68.md5 | 1 + doc/html/inherit_graph_68.svg | 21 + doc/html/inherit_graph_69.map | 3 + doc/html/inherit_graph_69.md5 | 1 + doc/html/inherit_graph_69.svg | 22 + doc/html/inherit_graph_7.map | 3 + doc/html/inherit_graph_7.md5 | 1 + doc/html/inherit_graph_7.svg | 21 + doc/html/inherit_graph_70.map | 3 + doc/html/inherit_graph_70.md5 | 1 + doc/html/inherit_graph_70.svg | 22 + doc/html/inherit_graph_71.map | 3 + doc/html/inherit_graph_71.md5 | 1 + doc/html/inherit_graph_71.svg | 21 + doc/html/inherit_graph_72.map | 3 + doc/html/inherit_graph_72.md5 | 1 + doc/html/inherit_graph_72.svg | 21 + doc/html/inherit_graph_73.map | 3 + doc/html/inherit_graph_73.md5 | 1 + doc/html/inherit_graph_73.svg | 21 + doc/html/inherit_graph_74.map | 3 + doc/html/inherit_graph_74.md5 | 1 + doc/html/inherit_graph_74.svg | 21 + doc/html/inherit_graph_75.map | 3 + doc/html/inherit_graph_75.md5 | 1 + doc/html/inherit_graph_75.svg | 21 + doc/html/inherit_graph_76.map | 3 + doc/html/inherit_graph_76.md5 | 1 + doc/html/inherit_graph_76.svg | 22 + doc/html/inherit_graph_77.map | 3 + doc/html/inherit_graph_77.md5 | 1 + doc/html/inherit_graph_77.svg | 22 + doc/html/inherit_graph_78.map | 3 + doc/html/inherit_graph_78.md5 | 1 + doc/html/inherit_graph_78.svg | 22 + doc/html/inherit_graph_79.map | 3 + doc/html/inherit_graph_79.md5 | 1 + doc/html/inherit_graph_79.svg | 22 + doc/html/inherit_graph_8.map | 3 + doc/html/inherit_graph_8.md5 | 1 + doc/html/inherit_graph_8.svg | 21 + doc/html/inherit_graph_80.map | 3 + doc/html/inherit_graph_80.md5 | 1 + doc/html/inherit_graph_80.svg | 22 + doc/html/inherit_graph_81.map | 3 + doc/html/inherit_graph_81.md5 | 1 + doc/html/inherit_graph_81.svg | 21 + doc/html/inherit_graph_82.map | 3 + doc/html/inherit_graph_82.md5 | 1 + doc/html/inherit_graph_82.svg | 21 + doc/html/inherit_graph_83.map | 3 + doc/html/inherit_graph_83.md5 | 1 + doc/html/inherit_graph_83.svg | 21 + doc/html/inherit_graph_84.map | 3 + doc/html/inherit_graph_84.md5 | 1 + doc/html/inherit_graph_84.svg | 21 + doc/html/inherit_graph_85.map | 3 + doc/html/inherit_graph_85.md5 | 1 + doc/html/inherit_graph_85.svg | 21 + doc/html/inherit_graph_86.map | 3 + doc/html/inherit_graph_86.md5 | 1 + doc/html/inherit_graph_86.svg | 21 + doc/html/inherit_graph_87.map | 3 + doc/html/inherit_graph_87.md5 | 1 + doc/html/inherit_graph_87.svg | 21 + doc/html/inherit_graph_88.map | 3 + doc/html/inherit_graph_88.md5 | 1 + doc/html/inherit_graph_88.svg | 21 + doc/html/inherit_graph_89.map | 3 + doc/html/inherit_graph_89.md5 | 1 + doc/html/inherit_graph_89.svg | 21 + doc/html/inherit_graph_9.map | 3 + doc/html/inherit_graph_9.md5 | 1 + doc/html/inherit_graph_9.svg | 21 + doc/html/inherit_graph_90.map | 3 + doc/html/inherit_graph_90.md5 | 1 + doc/html/inherit_graph_90.svg | 21 + doc/html/inherits.html | 310 + doc/html/jquery.js | 72 + doc/html/namespace_p_i_cout_manipulators.html | 391 ++ doc/html/namespacemembers.html | 359 + doc/html/namespacemembers_enum.html | 139 + doc/html/namespacemembers_eval.html | 342 + doc/html/namespaces.html | 127 + doc/html/namespaces.js | 4 + doc/html/nav_f.png | Bin 0 -> 150 bytes doc/html/nav_g.png | Bin 0 -> 94 bytes doc/html/nav_h.png | Bin 0 -> 90 bytes doc/html/navtree.css | 143 + doc/html/navtree.js | 581 ++ doc/html/navtreeindex0.js | 253 + doc/html/navtreeindex1.js | 253 + doc/html/navtreeindex2.js | 253 + doc/html/navtreeindex3.js | 253 + doc/html/navtreeindex4.js | 253 + doc/html/navtreeindex5.js | 253 + doc/html/navtreeindex6.js | 43 + doc/html/open.png | Bin 0 -> 122 bytes doc/html/packet_detection.png | Bin 0 -> 28193 bytes doc/html/pages.html | 123 + doc/html/pibinarylog_8h.html | 137 + doc/html/pibinarylog_8h.js | 4 + doc/html/pibytearray_8h.html | 312 + doc/html/pibytearray_8h.js | 44 + doc/html/pichar_8h.html | 217 + doc/html/pichar_8h.js | 23 + doc/html/picli_8h.html | 137 + doc/html/picodeinfo_8h.html | 128 + doc/html/picodeparser_8h.html | 128 + doc/html/picollection_8h.html | 137 + doc/html/picollection_8h.js | 6 + doc/html/piconfig.png | Bin 0 -> 37880 bytes doc/html/piconfig_8h.html | 196 + doc/html/piconfig_8h.js | 7 + doc/html/piconnection.png | Bin 0 -> 98609 bytes doc/html/piconnection_8h.html | 137 + doc/html/piconnection_8h.js | 4 + doc/html/piconnection_conf.png | Bin 0 -> 88687 bytes doc/html/piconnection_filters.png | Bin 0 -> 26030 bytes doc/html/piconnection_senders.png | Bin 0 -> 33612 bytes doc/html/piconsole_8h.html | 137 + doc/html/piconsole_8h.js | 4 + doc/html/piconsole_layout.png | Bin 0 -> 23307 bytes doc/html/picontainers_8h.html | 318 + doc/html/picontainers_8h.js | 8 + doc/html/picrc_8h.html | 128 + doc/html/pideque_8h.html | 129 + doc/html/pidiagnostics_8h.html | 137 + doc/html/piethernet_8h.html | 143 + doc/html/piethernet_8h.js | 6 + doc/html/pievaluator_8h.html | 137 + doc/html/pievaluator_8h.js | 4 + doc/html/pifile_8h.html | 137 + doc/html/piincludes_8h.html | 960 +++ doc/html/piincludes_8h.js | 97 + doc/html/piinit_8h.html | 128 + doc/html/piiodevice_8h.html | 137 + doc/html/piiodevice_8h.js | 6 + doc/html/pikbdlistener_8h.html | 137 + doc/html/pikbdlistener_8h.js | 4 + doc/html/pimap_8h.html | 129 + doc/html/pimath_8h.html | 294 + doc/html/pimath_8h.js | 12 + doc/html/pimutex_8h.html | 137 + doc/html/piobject_8h.html | 138 + doc/html/piobject_8h.js | 44 + doc/html/pip.qhp | Bin 0 -> 1995776 bytes doc/html/pipacketextractor_8h.html | 137 + doc/html/pipacketextractor_8h.js | 4 + doc/html/pipeer_8h.html | 128 + doc/html/piprocess_8h.html | 136 + doc/html/piprotocol_8h.html | 136 + doc/html/piprotocol_8h.js | 4 + doc/html/piserial_8h.html | 137 + doc/html/piserial_8h.js | 4 + doc/html/piset_8h.html | 138 + doc/html/pisignals_8h.html | 128 + doc/html/pistack_8h.html | 129 + doc/html/pistatemachine_8h.html | 143 + doc/html/pistring_8h.html | 201 + doc/html/pistring_8h.js | 19 + doc/html/pithread_8h.html | 138 + doc/html/pithread_8h.js | 4 + doc/html/pitime_8h.html | 272 + doc/html/pitime_8h.js | 13 + doc/html/pitimer_8h.html | 137 + doc/html/pitimer_8h.js | 4 + doc/html/piusb_8h.html | 128 + doc/html/pivariant_8h.html | 138 + doc/html/pivariant_8h.js | 4 + doc/html/pivector_8h.html | 138 + doc/html/pivector_8h.js | 4 + doc/html/resize.js | 97 + ...t_p_i_byte_array_1_1_raw_data-members.html | 131 + .../struct_p_i_byte_array_1_1_raw_data.html | 157 + .../struct_p_i_byte_array_1_1_raw_data.js | 7 + ...ct_p_i_ethernet_1_1_interface-members.html | 141 + .../struct_p_i_ethernet_1_1_interface.html | 197 + doc/html/struct_p_i_ethernet_1_1_interface.js | 17 + ...ct_p_i_state_machine_1_1_rule-members.html | 136 + .../struct_p_i_state_machine_1_1_rule.html | 180 + doc/html/struct_p_i_state_machine_1_1_rule.js | 12 + ...t_p_i_state_machine_1_1_state-members.html | 132 + .../struct_p_i_state_machine_1_1_state.html | 164 + .../struct_p_i_state_machine_1_1_state.js | 8 + .../struct_transfer_function-members.html | 127 + doc/html/struct_transfer_function.html | 132 + doc/html/svgpan.js | 319 + doc/html/sync_off.png | Bin 0 -> 863 bytes doc/html/sync_on.png | Bin 0 -> 857 bytes doc/html/tab_a.png | Bin 0 -> 142 bytes doc/html/tab_b.png | Bin 0 -> 165 bytes doc/html/tab_h.png | Bin 0 -> 174 bytes doc/html/tab_s.png | Bin 0 -> 183 bytes doc/html/tabs.css | 60 + doc/html/using_advanced.html | 117 + doc/html/using_basic.html | 208 + doc/images/events_handlers.png | Bin 0 -> 28786 bytes doc/images/packet_detection.png | Bin 0 -> 28193 bytes doc/images/piconfig.png | Bin 0 -> 37880 bytes doc/images/piconnection.png | Bin 0 -> 98609 bytes doc/images/piconnection_conf.png | Bin 0 -> 88687 bytes doc/images/piconnection_filters.png | Bin 0 -> 26030 bytes doc/images/piconnection_senders.png | Bin 0 -> 33612 bytes doc/images/piconsole_layout.png | Bin 0 -> 23307 bytes .../CMakeDirectoryInformation.cmake | 16 + .../CMakeFiles/progress.marks | 1 + .../CMakeDirectoryInformation.cmake | 16 + .../remote_console/CMakeFiles/progress.marks | 1 + .../CMakeDirectoryInformation.cmake | 16 + utils/system_daemon/CMakeFiles/progress.marks | 1 + .../CMakeDirectoryInformation.cmake | 16 + utils/system_test/CMakeFiles/progress.marks | 1 + 726 files changed, 75434 insertions(+) create mode 100644 doc/html/annotated.html create mode 100644 doc/html/annotated.js create mode 100644 doc/html/bc_s.png create mode 100644 doc/html/bdwn.png create mode 100644 doc/html/class_p_i_binary_log-members.html create mode 100644 doc/html/class_p_i_binary_log.html create mode 100644 doc/html/class_p_i_binary_log.js create mode 100644 doc/html/class_p_i_binary_log__inherit__graph.map create mode 100644 doc/html/class_p_i_binary_log__inherit__graph.md5 create mode 100644 doc/html/class_p_i_binary_log__inherit__graph.svg create mode 100644 doc/html/class_p_i_byte_array-members.html create mode 100644 doc/html/class_p_i_byte_array.html create mode 100644 doc/html/class_p_i_byte_array.js create mode 100644 doc/html/class_p_i_c_l_i-members.html create mode 100644 doc/html/class_p_i_c_l_i.html create mode 100644 doc/html/class_p_i_c_l_i.js create mode 100644 doc/html/class_p_i_c_l_i__inherit__graph.map create mode 100644 doc/html/class_p_i_c_l_i__inherit__graph.md5 create mode 100644 doc/html/class_p_i_c_l_i__inherit__graph.svg create mode 100644 doc/html/class_p_i_char-members.html create mode 100644 doc/html/class_p_i_char.html create mode 100644 doc/html/class_p_i_char.js create mode 100644 doc/html/class_p_i_collection-members.html create mode 100644 doc/html/class_p_i_collection.html create mode 100644 doc/html/class_p_i_collection.js create mode 100644 doc/html/class_p_i_config-members.html create mode 100644 doc/html/class_p_i_config.html create mode 100644 doc/html/class_p_i_config.js create mode 100644 doc/html/class_p_i_config_1_1_branch-members.html create mode 100644 doc/html/class_p_i_config_1_1_branch.html create mode 100644 doc/html/class_p_i_config_1_1_branch__inherit__graph.map create mode 100644 doc/html/class_p_i_config_1_1_branch__inherit__graph.md5 create mode 100644 doc/html/class_p_i_config_1_1_branch__inherit__graph.svg create mode 100644 doc/html/class_p_i_config_1_1_entry-members.html create mode 100644 doc/html/class_p_i_config_1_1_entry.html create mode 100644 doc/html/class_p_i_config_1_1_entry.js create mode 100644 doc/html/class_p_i_config__inherit__graph.map create mode 100644 doc/html/class_p_i_config__inherit__graph.md5 create mode 100644 doc/html/class_p_i_config__inherit__graph.svg create mode 100644 doc/html/class_p_i_connection-members.html create mode 100644 doc/html/class_p_i_connection.html create mode 100644 doc/html/class_p_i_connection.js create mode 100644 doc/html/class_p_i_connection__inherit__graph.map create mode 100644 doc/html/class_p_i_connection__inherit__graph.md5 create mode 100644 doc/html/class_p_i_connection__inherit__graph.svg create mode 100644 doc/html/class_p_i_console-members.html create mode 100644 doc/html/class_p_i_console.html create mode 100644 doc/html/class_p_i_console.js create mode 100644 doc/html/class_p_i_console__inherit__graph.map create mode 100644 doc/html/class_p_i_console__inherit__graph.md5 create mode 100644 doc/html/class_p_i_console__inherit__graph.svg create mode 100644 doc/html/class_p_i_cout-members.html create mode 100644 doc/html/class_p_i_cout.html create mode 100644 doc/html/class_p_i_cout.js create mode 100644 doc/html/class_p_i_diagnostics-members.html create mode 100644 doc/html/class_p_i_diagnostics.html create mode 100644 doc/html/class_p_i_diagnostics.js create mode 100644 doc/html/class_p_i_diagnostics__inherit__graph.map create mode 100644 doc/html/class_p_i_diagnostics__inherit__graph.md5 create mode 100644 doc/html/class_p_i_diagnostics__inherit__graph.svg create mode 100644 doc/html/class_p_i_ethernet-members.html create mode 100644 doc/html/class_p_i_ethernet.html create mode 100644 doc/html/class_p_i_ethernet.js create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list-members.html create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list.html create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list.js create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.map create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.md5 create mode 100644 doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.svg create mode 100644 doc/html/class_p_i_ethernet__inherit__graph.map create mode 100644 doc/html/class_p_i_ethernet__inherit__graph.md5 create mode 100644 doc/html/class_p_i_ethernet__inherit__graph.svg create mode 100644 doc/html/class_p_i_evaluator-members.html create mode 100644 doc/html/class_p_i_evaluator.html create mode 100644 doc/html/class_p_i_evaluator.js create mode 100644 doc/html/class_p_i_file-members.html create mode 100644 doc/html/class_p_i_file.html create mode 100644 doc/html/class_p_i_file.js create mode 100644 doc/html/class_p_i_file__inherit__graph.map create mode 100644 doc/html/class_p_i_file__inherit__graph.md5 create mode 100644 doc/html/class_p_i_file__inherit__graph.svg create mode 100644 doc/html/class_p_i_flags-members.html create mode 100644 doc/html/class_p_i_flags.html create mode 100644 doc/html/class_p_i_flags.js create mode 100644 doc/html/class_p_i_i_o_device-members.html create mode 100644 doc/html/class_p_i_i_o_device.html create mode 100644 doc/html/class_p_i_i_o_device.js create mode 100644 doc/html/class_p_i_i_o_device__inherit__graph.map create mode 100644 doc/html/class_p_i_i_o_device__inherit__graph.md5 create mode 100644 doc/html/class_p_i_i_o_device__inherit__graph.svg create mode 100644 doc/html/class_p_i_kbd_listener-members.html create mode 100644 doc/html/class_p_i_kbd_listener.html create mode 100644 doc/html/class_p_i_kbd_listener.js create mode 100644 doc/html/class_p_i_kbd_listener__inherit__graph.map create mode 100644 doc/html/class_p_i_kbd_listener__inherit__graph.md5 create mode 100644 doc/html/class_p_i_kbd_listener__inherit__graph.svg create mode 100644 doc/html/class_p_i_mutex-members.html create mode 100644 doc/html/class_p_i_mutex.html create mode 100644 doc/html/class_p_i_mutex.js create mode 100644 doc/html/class_p_i_object-members.html create mode 100644 doc/html/class_p_i_object.html create mode 100644 doc/html/class_p_i_object.js create mode 100644 doc/html/class_p_i_object__inherit__graph.map create mode 100644 doc/html/class_p_i_object__inherit__graph.md5 create mode 100644 doc/html/class_p_i_object__inherit__graph.svg create mode 100644 doc/html/class_p_i_object__inherit__graph_org.svg create mode 100644 doc/html/class_p_i_packet_extractor-members.html create mode 100644 doc/html/class_p_i_packet_extractor.html create mode 100644 doc/html/class_p_i_packet_extractor.js create mode 100644 doc/html/class_p_i_packet_extractor__inherit__graph.map create mode 100644 doc/html/class_p_i_packet_extractor__inherit__graph.md5 create mode 100644 doc/html/class_p_i_packet_extractor__inherit__graph.svg create mode 100644 doc/html/class_p_i_process-members.html create mode 100644 doc/html/class_p_i_process.html create mode 100644 doc/html/class_p_i_process__inherit__graph.map create mode 100644 doc/html/class_p_i_process__inherit__graph.md5 create mode 100644 doc/html/class_p_i_process__inherit__graph.svg create mode 100644 doc/html/class_p_i_protocol-members.html create mode 100644 doc/html/class_p_i_protocol.html create mode 100644 doc/html/class_p_i_protocol.js create mode 100644 doc/html/class_p_i_protocol__inherit__graph.map create mode 100644 doc/html/class_p_i_protocol__inherit__graph.md5 create mode 100644 doc/html/class_p_i_protocol__inherit__graph.svg create mode 100644 doc/html/class_p_i_serial-members.html create mode 100644 doc/html/class_p_i_serial.html create mode 100644 doc/html/class_p_i_serial.js create mode 100644 doc/html/class_p_i_serial__inherit__graph.map create mode 100644 doc/html/class_p_i_serial__inherit__graph.md5 create mode 100644 doc/html/class_p_i_serial__inherit__graph.svg create mode 100644 doc/html/class_p_i_set-members.html create mode 100644 doc/html/class_p_i_set.html create mode 100644 doc/html/class_p_i_set.js create mode 100644 doc/html/class_p_i_state_machine-members.html create mode 100644 doc/html/class_p_i_state_machine.html create mode 100644 doc/html/class_p_i_state_machine.js create mode 100644 doc/html/class_p_i_state_machine__inherit__graph.map create mode 100644 doc/html/class_p_i_state_machine__inherit__graph.md5 create mode 100644 doc/html/class_p_i_state_machine__inherit__graph.svg create mode 100644 doc/html/class_p_i_string-members.html create mode 100644 doc/html/class_p_i_string.html create mode 100644 doc/html/class_p_i_string.js create mode 100644 doc/html/class_p_i_string_list-members.html create mode 100644 doc/html/class_p_i_string_list.html create mode 100644 doc/html/class_p_i_string_list.js create mode 100644 doc/html/class_p_i_system_time-members.html create mode 100644 doc/html/class_p_i_system_time.html create mode 100644 doc/html/class_p_i_system_time.js create mode 100644 doc/html/class_p_i_thread-members.html create mode 100644 doc/html/class_p_i_thread.html create mode 100644 doc/html/class_p_i_thread.js create mode 100644 doc/html/class_p_i_thread__inherit__graph.map create mode 100644 doc/html/class_p_i_thread__inherit__graph.md5 create mode 100644 doc/html/class_p_i_thread__inherit__graph.svg create mode 100644 doc/html/class_p_i_time_measurer-members.html create mode 100644 doc/html/class_p_i_time_measurer.html create mode 100644 doc/html/class_p_i_time_measurer.js create mode 100644 doc/html/class_p_i_timer-members.html create mode 100644 doc/html/class_p_i_timer.html create mode 100644 doc/html/class_p_i_timer.js create mode 100644 doc/html/class_p_i_timer__inherit__graph.map create mode 100644 doc/html/class_p_i_timer__inherit__graph.md5 create mode 100644 doc/html/class_p_i_timer__inherit__graph.svg create mode 100644 doc/html/class_p_i_variant-members.html create mode 100644 doc/html/class_p_i_variant.html create mode 100644 doc/html/class_p_i_variant.js create mode 100644 doc/html/class_p_i_vector-members.html create mode 100644 doc/html/class_p_i_vector.html create mode 100644 doc/html/class_p_i_vector.js create mode 100644 doc/html/classes.html create mode 100644 doc/html/closed.png create mode 100644 doc/html/deprecated.html create mode 100644 doc/html/dir_000001_000006.html create mode 100644 doc/html/dir_000002_000004.html create mode 100644 doc/html/dir_000002_000005.html create mode 100644 doc/html/dir_000002_000006.html create mode 100644 doc/html/dir_000003_000004.html create mode 100644 doc/html/dir_000004_000003.html create mode 100644 doc/html/dir_000004_000005.html create mode 100644 doc/html/dir_000004_000006.html create mode 100644 doc/html/dir_000004_000007.html create mode 100644 doc/html/dir_000004_000008.html create mode 100644 doc/html/dir_000005_000004.html create mode 100644 doc/html/dir_000005_000007.html create mode 100644 doc/html/dir_000005_000008.html create mode 100644 doc/html/dir_000006_000004.html create mode 100644 doc/html/dir_000007_000003.html create mode 100644 doc/html/dir_000007_000005.html create mode 100644 doc/html/dir_000007_000008.html create mode 100644 doc/html/dir_000008_000004.html create mode 100644 doc/html/dir_0b61c55142250c0cc363383afd8075a4.html create mode 100644 doc/html/dir_0b61c55142250c0cc363383afd8075a4.js create mode 100644 doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.map create mode 100644 doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.md5 create mode 100644 doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.svg create mode 100644 doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e.html create mode 100644 doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.map create mode 100644 doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.md5 create mode 100644 doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg create mode 100644 doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html create mode 100644 doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.js create mode 100644 doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.map create mode 100644 doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.md5 create mode 100644 doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg create mode 100644 doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html create mode 100644 doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js create mode 100644 doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map create mode 100644 doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 create mode 100644 doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.svg create mode 100644 doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.html create mode 100644 doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.js create mode 100644 doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.map create mode 100644 doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.md5 create mode 100644 doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.svg create mode 100644 doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html create mode 100644 doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.js create mode 100644 doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.map create mode 100644 doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.md5 create mode 100644 doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.svg create mode 100644 doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.html create mode 100644 doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.js create mode 100644 doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.map create mode 100644 doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.md5 create mode 100644 doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.svg create mode 100644 doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html create mode 100644 doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.js create mode 100644 doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.map create mode 100644 doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.md5 create mode 100644 doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg create mode 100644 doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.html create mode 100644 doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.js create mode 100644 doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.map create mode 100644 doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.md5 create mode 100644 doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg create mode 100644 doc/html/doxygen.css create mode 100644 doc/html/doxygen.png create mode 100644 doc/html/dynsections.js create mode 100644 doc/html/events_handlers.png create mode 100644 doc/html/files.html create mode 100644 doc/html/files.js create mode 100644 doc/html/ftv2blank.png create mode 100644 doc/html/ftv2doc.png create mode 100644 doc/html/ftv2folderclosed.png create mode 100644 doc/html/ftv2folderopen.png create mode 100644 doc/html/ftv2lastnode.png create mode 100644 doc/html/ftv2link.png create mode 100644 doc/html/ftv2mlastnode.png create mode 100644 doc/html/ftv2mnode.png create mode 100644 doc/html/ftv2node.png create mode 100644 doc/html/ftv2plastnode.png create mode 100644 doc/html/ftv2pnode.png create mode 100644 doc/html/ftv2splitbar.png create mode 100644 doc/html/ftv2vertline.png create mode 100644 doc/html/functions.html create mode 100644 doc/html/functions_b.html create mode 100644 doc/html/functions_c.html create mode 100644 doc/html/functions_d.html create mode 100644 doc/html/functions_dup.js create mode 100644 doc/html/functions_e.html create mode 100644 doc/html/functions_enum.html create mode 100644 doc/html/functions_eval.html create mode 100644 doc/html/functions_f.html create mode 100644 doc/html/functions_func.html create mode 100644 doc/html/functions_func.js create mode 100644 doc/html/functions_func_b.html create mode 100644 doc/html/functions_func_c.html create mode 100644 doc/html/functions_func_d.html create mode 100644 doc/html/functions_func_e.html create mode 100644 doc/html/functions_func_f.html create mode 100644 doc/html/functions_func_g.html create mode 100644 doc/html/functions_func_h.html create mode 100644 doc/html/functions_func_i.html create mode 100644 doc/html/functions_func_j.html create mode 100644 doc/html/functions_func_k.html create mode 100644 doc/html/functions_func_l.html create mode 100644 doc/html/functions_func_m.html create mode 100644 doc/html/functions_func_n.html create mode 100644 doc/html/functions_func_o.html create mode 100644 doc/html/functions_func_p.html create mode 100644 doc/html/functions_func_q.html create mode 100644 doc/html/functions_func_r.html create mode 100644 doc/html/functions_func_s.html create mode 100644 doc/html/functions_func_t.html create mode 100644 doc/html/functions_func_u.html create mode 100644 doc/html/functions_func_v.html create mode 100644 doc/html/functions_func_w.html create mode 100644 doc/html/functions_g.html create mode 100644 doc/html/functions_h.html create mode 100644 doc/html/functions_i.html create mode 100644 doc/html/functions_j.html create mode 100644 doc/html/functions_k.html create mode 100644 doc/html/functions_l.html create mode 100644 doc/html/functions_m.html create mode 100644 doc/html/functions_n.html create mode 100644 doc/html/functions_o.html create mode 100644 doc/html/functions_p.html create mode 100644 doc/html/functions_q.html create mode 100644 doc/html/functions_r.html create mode 100644 doc/html/functions_rela.html create mode 100644 doc/html/functions_s.html create mode 100644 doc/html/functions_t.html create mode 100644 doc/html/functions_type.html create mode 100644 doc/html/functions_u.html create mode 100644 doc/html/functions_v.html create mode 100644 doc/html/functions_vars.html create mode 100644 doc/html/functions_w.html create mode 100644 doc/html/functions_y.html create mode 100644 doc/html/globals.html create mode 100644 doc/html/globals_defs.html create mode 100644 doc/html/globals_func.html create mode 100644 doc/html/globals_vars.html create mode 100644 doc/html/graph_legend.html create mode 100644 doc/html/graph_legend.md5 create mode 100644 doc/html/graph_legend.svg create mode 100644 doc/html/hierarchy.html create mode 100644 doc/html/hierarchy.js create mode 100644 doc/html/index.html create mode 100644 doc/html/index.qhp create mode 100644 doc/html/inherit_graph_0.map create mode 100644 doc/html/inherit_graph_0.md5 create mode 100644 doc/html/inherit_graph_0.svg create mode 100644 doc/html/inherit_graph_1.map create mode 100644 doc/html/inherit_graph_1.md5 create mode 100644 doc/html/inherit_graph_1.svg create mode 100644 doc/html/inherit_graph_10.map create mode 100644 doc/html/inherit_graph_10.md5 create mode 100644 doc/html/inherit_graph_10.svg create mode 100644 doc/html/inherit_graph_11.map create mode 100644 doc/html/inherit_graph_11.md5 create mode 100644 doc/html/inherit_graph_11.svg create mode 100644 doc/html/inherit_graph_12.map create mode 100644 doc/html/inherit_graph_12.md5 create mode 100644 doc/html/inherit_graph_12.svg create mode 100644 doc/html/inherit_graph_13.map create mode 100644 doc/html/inherit_graph_13.md5 create mode 100644 doc/html/inherit_graph_13.svg create mode 100644 doc/html/inherit_graph_14.map create mode 100644 doc/html/inherit_graph_14.md5 create mode 100644 doc/html/inherit_graph_14.svg create mode 100644 doc/html/inherit_graph_15.map create mode 100644 doc/html/inherit_graph_15.md5 create mode 100644 doc/html/inherit_graph_15.svg create mode 100644 doc/html/inherit_graph_16.map create mode 100644 doc/html/inherit_graph_16.md5 create mode 100644 doc/html/inherit_graph_16.svg create mode 100644 doc/html/inherit_graph_17.map create mode 100644 doc/html/inherit_graph_17.md5 create mode 100644 doc/html/inherit_graph_17.svg create mode 100644 doc/html/inherit_graph_18.map create mode 100644 doc/html/inherit_graph_18.md5 create mode 100644 doc/html/inherit_graph_18.svg create mode 100644 doc/html/inherit_graph_19.map create mode 100644 doc/html/inherit_graph_19.md5 create mode 100644 doc/html/inherit_graph_19.svg create mode 100644 doc/html/inherit_graph_2.map create mode 100644 doc/html/inherit_graph_2.md5 create mode 100644 doc/html/inherit_graph_2.svg create mode 100644 doc/html/inherit_graph_20.map create mode 100644 doc/html/inherit_graph_20.md5 create mode 100644 doc/html/inherit_graph_20.svg create mode 100644 doc/html/inherit_graph_21.map create mode 100644 doc/html/inherit_graph_21.md5 create mode 100644 doc/html/inherit_graph_21.svg create mode 100644 doc/html/inherit_graph_22.map create mode 100644 doc/html/inherit_graph_22.md5 create mode 100644 doc/html/inherit_graph_22.svg create mode 100644 doc/html/inherit_graph_23.map create mode 100644 doc/html/inherit_graph_23.md5 create mode 100644 doc/html/inherit_graph_23.svg create mode 100644 doc/html/inherit_graph_24.map create mode 100644 doc/html/inherit_graph_24.md5 create mode 100644 doc/html/inherit_graph_24.svg create mode 100644 doc/html/inherit_graph_25.map create mode 100644 doc/html/inherit_graph_25.md5 create mode 100644 doc/html/inherit_graph_25.svg create mode 100644 doc/html/inherit_graph_26.map create mode 100644 doc/html/inherit_graph_26.md5 create mode 100644 doc/html/inherit_graph_26.svg create mode 100644 doc/html/inherit_graph_27.map create mode 100644 doc/html/inherit_graph_27.md5 create mode 100644 doc/html/inherit_graph_27.svg create mode 100644 doc/html/inherit_graph_28.map create mode 100644 doc/html/inherit_graph_28.md5 create mode 100644 doc/html/inherit_graph_28.svg create mode 100644 doc/html/inherit_graph_29.map create mode 100644 doc/html/inherit_graph_29.md5 create mode 100644 doc/html/inherit_graph_29.svg create mode 100644 doc/html/inherit_graph_3.map create mode 100644 doc/html/inherit_graph_3.md5 create mode 100644 doc/html/inherit_graph_3.svg create mode 100644 doc/html/inherit_graph_30.map create mode 100644 doc/html/inherit_graph_30.md5 create mode 100644 doc/html/inherit_graph_30.svg create mode 100644 doc/html/inherit_graph_31.map create mode 100644 doc/html/inherit_graph_31.md5 create mode 100644 doc/html/inherit_graph_31.svg create mode 100644 doc/html/inherit_graph_32.map create mode 100644 doc/html/inherit_graph_32.md5 create mode 100644 doc/html/inherit_graph_32.svg create mode 100644 doc/html/inherit_graph_33.map create mode 100644 doc/html/inherit_graph_33.md5 create mode 100644 doc/html/inherit_graph_33.svg create mode 100644 doc/html/inherit_graph_34.map create mode 100644 doc/html/inherit_graph_34.md5 create mode 100644 doc/html/inherit_graph_34.svg create mode 100644 doc/html/inherit_graph_35.map create mode 100644 doc/html/inherit_graph_35.md5 create mode 100644 doc/html/inherit_graph_35.svg create mode 100644 doc/html/inherit_graph_36.map create mode 100644 doc/html/inherit_graph_36.md5 create mode 100644 doc/html/inherit_graph_36.svg create mode 100644 doc/html/inherit_graph_37.map create mode 100644 doc/html/inherit_graph_37.md5 create mode 100644 doc/html/inherit_graph_37.svg create mode 100644 doc/html/inherit_graph_38.map create mode 100644 doc/html/inherit_graph_38.md5 create mode 100644 doc/html/inherit_graph_38.svg create mode 100644 doc/html/inherit_graph_39.map create mode 100644 doc/html/inherit_graph_39.md5 create mode 100644 doc/html/inherit_graph_39.svg create mode 100644 doc/html/inherit_graph_4.map create mode 100644 doc/html/inherit_graph_4.md5 create mode 100644 doc/html/inherit_graph_4.svg create mode 100644 doc/html/inherit_graph_40.map create mode 100644 doc/html/inherit_graph_40.md5 create mode 100644 doc/html/inherit_graph_40.svg create mode 100644 doc/html/inherit_graph_41.map create mode 100644 doc/html/inherit_graph_41.md5 create mode 100644 doc/html/inherit_graph_41.svg create mode 100644 doc/html/inherit_graph_42.map create mode 100644 doc/html/inherit_graph_42.md5 create mode 100644 doc/html/inherit_graph_42.svg create mode 100644 doc/html/inherit_graph_43.map create mode 100644 doc/html/inherit_graph_43.md5 create mode 100644 doc/html/inherit_graph_43.svg create mode 100644 doc/html/inherit_graph_44.map create mode 100644 doc/html/inherit_graph_44.md5 create mode 100644 doc/html/inherit_graph_44.svg create mode 100644 doc/html/inherit_graph_45.map create mode 100644 doc/html/inherit_graph_45.md5 create mode 100644 doc/html/inherit_graph_45.svg create mode 100644 doc/html/inherit_graph_46.map create mode 100644 doc/html/inherit_graph_46.md5 create mode 100644 doc/html/inherit_graph_46.svg create mode 100644 doc/html/inherit_graph_47.map create mode 100644 doc/html/inherit_graph_47.md5 create mode 100644 doc/html/inherit_graph_47.svg create mode 100644 doc/html/inherit_graph_48.map create mode 100644 doc/html/inherit_graph_48.md5 create mode 100644 doc/html/inherit_graph_48.svg create mode 100644 doc/html/inherit_graph_49.map create mode 100644 doc/html/inherit_graph_49.md5 create mode 100644 doc/html/inherit_graph_49.svg create mode 100644 doc/html/inherit_graph_5.map create mode 100644 doc/html/inherit_graph_5.md5 create mode 100644 doc/html/inherit_graph_5.svg create mode 100644 doc/html/inherit_graph_50.map create mode 100644 doc/html/inherit_graph_50.md5 create mode 100644 doc/html/inherit_graph_50.svg create mode 100644 doc/html/inherit_graph_51.map create mode 100644 doc/html/inherit_graph_51.md5 create mode 100644 doc/html/inherit_graph_51.svg create mode 100644 doc/html/inherit_graph_52.map create mode 100644 doc/html/inherit_graph_52.md5 create mode 100644 doc/html/inherit_graph_52.svg create mode 100644 doc/html/inherit_graph_53.map create mode 100644 doc/html/inherit_graph_53.md5 create mode 100644 doc/html/inherit_graph_53.svg create mode 100644 doc/html/inherit_graph_54.map create mode 100644 doc/html/inherit_graph_54.md5 create mode 100644 doc/html/inherit_graph_54.svg create mode 100644 doc/html/inherit_graph_55.map create mode 100644 doc/html/inherit_graph_55.md5 create mode 100644 doc/html/inherit_graph_55.svg create mode 100644 doc/html/inherit_graph_56.map create mode 100644 doc/html/inherit_graph_56.md5 create mode 100644 doc/html/inherit_graph_56.svg create mode 100644 doc/html/inherit_graph_57.map create mode 100644 doc/html/inherit_graph_57.md5 create mode 100644 doc/html/inherit_graph_57.svg create mode 100644 doc/html/inherit_graph_58.map create mode 100644 doc/html/inherit_graph_58.md5 create mode 100644 doc/html/inherit_graph_58.svg create mode 100644 doc/html/inherit_graph_59.map create mode 100644 doc/html/inherit_graph_59.md5 create mode 100644 doc/html/inherit_graph_59.svg create mode 100644 doc/html/inherit_graph_6.map create mode 100644 doc/html/inherit_graph_6.md5 create mode 100644 doc/html/inherit_graph_6.svg create mode 100644 doc/html/inherit_graph_60.map create mode 100644 doc/html/inherit_graph_60.md5 create mode 100644 doc/html/inherit_graph_60.svg create mode 100644 doc/html/inherit_graph_61.map create mode 100644 doc/html/inherit_graph_61.md5 create mode 100644 doc/html/inherit_graph_61.svg create mode 100644 doc/html/inherit_graph_62.map create mode 100644 doc/html/inherit_graph_62.md5 create mode 100644 doc/html/inherit_graph_62.svg create mode 100644 doc/html/inherit_graph_63.map create mode 100644 doc/html/inherit_graph_63.md5 create mode 100644 doc/html/inherit_graph_63.svg create mode 100644 doc/html/inherit_graph_64.map create mode 100644 doc/html/inherit_graph_64.md5 create mode 100644 doc/html/inherit_graph_64.svg create mode 100644 doc/html/inherit_graph_65.map create mode 100644 doc/html/inherit_graph_65.md5 create mode 100644 doc/html/inherit_graph_65.svg create mode 100644 doc/html/inherit_graph_66.map create mode 100644 doc/html/inherit_graph_66.md5 create mode 100644 doc/html/inherit_graph_66.svg create mode 100644 doc/html/inherit_graph_67.map create mode 100644 doc/html/inherit_graph_67.md5 create mode 100644 doc/html/inherit_graph_67.svg create mode 100644 doc/html/inherit_graph_68.map create mode 100644 doc/html/inherit_graph_68.md5 create mode 100644 doc/html/inherit_graph_68.svg create mode 100644 doc/html/inherit_graph_69.map create mode 100644 doc/html/inherit_graph_69.md5 create mode 100644 doc/html/inherit_graph_69.svg create mode 100644 doc/html/inherit_graph_7.map create mode 100644 doc/html/inherit_graph_7.md5 create mode 100644 doc/html/inherit_graph_7.svg create mode 100644 doc/html/inherit_graph_70.map create mode 100644 doc/html/inherit_graph_70.md5 create mode 100644 doc/html/inherit_graph_70.svg create mode 100644 doc/html/inherit_graph_71.map create mode 100644 doc/html/inherit_graph_71.md5 create mode 100644 doc/html/inherit_graph_71.svg create mode 100644 doc/html/inherit_graph_72.map create mode 100644 doc/html/inherit_graph_72.md5 create mode 100644 doc/html/inherit_graph_72.svg create mode 100644 doc/html/inherit_graph_73.map create mode 100644 doc/html/inherit_graph_73.md5 create mode 100644 doc/html/inherit_graph_73.svg create mode 100644 doc/html/inherit_graph_74.map create mode 100644 doc/html/inherit_graph_74.md5 create mode 100644 doc/html/inherit_graph_74.svg create mode 100644 doc/html/inherit_graph_75.map create mode 100644 doc/html/inherit_graph_75.md5 create mode 100644 doc/html/inherit_graph_75.svg create mode 100644 doc/html/inherit_graph_76.map create mode 100644 doc/html/inherit_graph_76.md5 create mode 100644 doc/html/inherit_graph_76.svg create mode 100644 doc/html/inherit_graph_77.map create mode 100644 doc/html/inherit_graph_77.md5 create mode 100644 doc/html/inherit_graph_77.svg create mode 100644 doc/html/inherit_graph_78.map create mode 100644 doc/html/inherit_graph_78.md5 create mode 100644 doc/html/inherit_graph_78.svg create mode 100644 doc/html/inherit_graph_79.map create mode 100644 doc/html/inherit_graph_79.md5 create mode 100644 doc/html/inherit_graph_79.svg create mode 100644 doc/html/inherit_graph_8.map create mode 100644 doc/html/inherit_graph_8.md5 create mode 100644 doc/html/inherit_graph_8.svg create mode 100644 doc/html/inherit_graph_80.map create mode 100644 doc/html/inherit_graph_80.md5 create mode 100644 doc/html/inherit_graph_80.svg create mode 100644 doc/html/inherit_graph_81.map create mode 100644 doc/html/inherit_graph_81.md5 create mode 100644 doc/html/inherit_graph_81.svg create mode 100644 doc/html/inherit_graph_82.map create mode 100644 doc/html/inherit_graph_82.md5 create mode 100644 doc/html/inherit_graph_82.svg create mode 100644 doc/html/inherit_graph_83.map create mode 100644 doc/html/inherit_graph_83.md5 create mode 100644 doc/html/inherit_graph_83.svg create mode 100644 doc/html/inherit_graph_84.map create mode 100644 doc/html/inherit_graph_84.md5 create mode 100644 doc/html/inherit_graph_84.svg create mode 100644 doc/html/inherit_graph_85.map create mode 100644 doc/html/inherit_graph_85.md5 create mode 100644 doc/html/inherit_graph_85.svg create mode 100644 doc/html/inherit_graph_86.map create mode 100644 doc/html/inherit_graph_86.md5 create mode 100644 doc/html/inherit_graph_86.svg create mode 100644 doc/html/inherit_graph_87.map create mode 100644 doc/html/inherit_graph_87.md5 create mode 100644 doc/html/inherit_graph_87.svg create mode 100644 doc/html/inherit_graph_88.map create mode 100644 doc/html/inherit_graph_88.md5 create mode 100644 doc/html/inherit_graph_88.svg create mode 100644 doc/html/inherit_graph_89.map create mode 100644 doc/html/inherit_graph_89.md5 create mode 100644 doc/html/inherit_graph_89.svg create mode 100644 doc/html/inherit_graph_9.map create mode 100644 doc/html/inherit_graph_9.md5 create mode 100644 doc/html/inherit_graph_9.svg create mode 100644 doc/html/inherit_graph_90.map create mode 100644 doc/html/inherit_graph_90.md5 create mode 100644 doc/html/inherit_graph_90.svg create mode 100644 doc/html/inherits.html create mode 100644 doc/html/jquery.js create mode 100644 doc/html/namespace_p_i_cout_manipulators.html create mode 100644 doc/html/namespacemembers.html create mode 100644 doc/html/namespacemembers_enum.html create mode 100644 doc/html/namespacemembers_eval.html create mode 100644 doc/html/namespaces.html create mode 100644 doc/html/namespaces.js create mode 100644 doc/html/nav_f.png create mode 100644 doc/html/nav_g.png create mode 100644 doc/html/nav_h.png create mode 100644 doc/html/navtree.css create mode 100644 doc/html/navtree.js create mode 100644 doc/html/navtreeindex0.js create mode 100644 doc/html/navtreeindex1.js create mode 100644 doc/html/navtreeindex2.js create mode 100644 doc/html/navtreeindex3.js create mode 100644 doc/html/navtreeindex4.js create mode 100644 doc/html/navtreeindex5.js create mode 100644 doc/html/navtreeindex6.js create mode 100644 doc/html/open.png create mode 100644 doc/html/packet_detection.png create mode 100644 doc/html/pages.html create mode 100644 doc/html/pibinarylog_8h.html create mode 100644 doc/html/pibinarylog_8h.js create mode 100644 doc/html/pibytearray_8h.html create mode 100644 doc/html/pibytearray_8h.js create mode 100644 doc/html/pichar_8h.html create mode 100644 doc/html/pichar_8h.js create mode 100644 doc/html/picli_8h.html create mode 100644 doc/html/picodeinfo_8h.html create mode 100644 doc/html/picodeparser_8h.html create mode 100644 doc/html/picollection_8h.html create mode 100644 doc/html/picollection_8h.js create mode 100644 doc/html/piconfig.png create mode 100644 doc/html/piconfig_8h.html create mode 100644 doc/html/piconfig_8h.js create mode 100644 doc/html/piconnection.png create mode 100644 doc/html/piconnection_8h.html create mode 100644 doc/html/piconnection_8h.js create mode 100644 doc/html/piconnection_conf.png create mode 100644 doc/html/piconnection_filters.png create mode 100644 doc/html/piconnection_senders.png create mode 100644 doc/html/piconsole_8h.html create mode 100644 doc/html/piconsole_8h.js create mode 100644 doc/html/piconsole_layout.png create mode 100644 doc/html/picontainers_8h.html create mode 100644 doc/html/picontainers_8h.js create mode 100644 doc/html/picrc_8h.html create mode 100644 doc/html/pideque_8h.html create mode 100644 doc/html/pidiagnostics_8h.html create mode 100644 doc/html/piethernet_8h.html create mode 100644 doc/html/piethernet_8h.js create mode 100644 doc/html/pievaluator_8h.html create mode 100644 doc/html/pievaluator_8h.js create mode 100644 doc/html/pifile_8h.html create mode 100644 doc/html/piincludes_8h.html create mode 100644 doc/html/piincludes_8h.js create mode 100644 doc/html/piinit_8h.html create mode 100644 doc/html/piiodevice_8h.html create mode 100644 doc/html/piiodevice_8h.js create mode 100644 doc/html/pikbdlistener_8h.html create mode 100644 doc/html/pikbdlistener_8h.js create mode 100644 doc/html/pimap_8h.html create mode 100644 doc/html/pimath_8h.html create mode 100644 doc/html/pimath_8h.js create mode 100644 doc/html/pimutex_8h.html create mode 100644 doc/html/piobject_8h.html create mode 100644 doc/html/piobject_8h.js create mode 100644 doc/html/pip.qhp create mode 100644 doc/html/pipacketextractor_8h.html create mode 100644 doc/html/pipacketextractor_8h.js create mode 100644 doc/html/pipeer_8h.html create mode 100644 doc/html/piprocess_8h.html create mode 100644 doc/html/piprotocol_8h.html create mode 100644 doc/html/piprotocol_8h.js create mode 100644 doc/html/piserial_8h.html create mode 100644 doc/html/piserial_8h.js create mode 100644 doc/html/piset_8h.html create mode 100644 doc/html/pisignals_8h.html create mode 100644 doc/html/pistack_8h.html create mode 100644 doc/html/pistatemachine_8h.html create mode 100644 doc/html/pistring_8h.html create mode 100644 doc/html/pistring_8h.js create mode 100644 doc/html/pithread_8h.html create mode 100644 doc/html/pithread_8h.js create mode 100644 doc/html/pitime_8h.html create mode 100644 doc/html/pitime_8h.js create mode 100644 doc/html/pitimer_8h.html create mode 100644 doc/html/pitimer_8h.js create mode 100644 doc/html/piusb_8h.html create mode 100644 doc/html/pivariant_8h.html create mode 100644 doc/html/pivariant_8h.js create mode 100644 doc/html/pivector_8h.html create mode 100644 doc/html/pivector_8h.js create mode 100644 doc/html/resize.js create mode 100644 doc/html/struct_p_i_byte_array_1_1_raw_data-members.html create mode 100644 doc/html/struct_p_i_byte_array_1_1_raw_data.html create mode 100644 doc/html/struct_p_i_byte_array_1_1_raw_data.js create mode 100644 doc/html/struct_p_i_ethernet_1_1_interface-members.html create mode 100644 doc/html/struct_p_i_ethernet_1_1_interface.html create mode 100644 doc/html/struct_p_i_ethernet_1_1_interface.js create mode 100644 doc/html/struct_p_i_state_machine_1_1_rule-members.html create mode 100644 doc/html/struct_p_i_state_machine_1_1_rule.html create mode 100644 doc/html/struct_p_i_state_machine_1_1_rule.js create mode 100644 doc/html/struct_p_i_state_machine_1_1_state-members.html create mode 100644 doc/html/struct_p_i_state_machine_1_1_state.html create mode 100644 doc/html/struct_p_i_state_machine_1_1_state.js create mode 100644 doc/html/struct_transfer_function-members.html create mode 100644 doc/html/struct_transfer_function.html create mode 100644 doc/html/svgpan.js create mode 100644 doc/html/sync_off.png create mode 100644 doc/html/sync_on.png create mode 100644 doc/html/tab_a.png create mode 100644 doc/html/tab_b.png create mode 100644 doc/html/tab_h.png create mode 100644 doc/html/tab_s.png create mode 100644 doc/html/tabs.css create mode 100644 doc/html/using_advanced.html create mode 100644 doc/html/using_basic.html create mode 100644 doc/images/events_handlers.png create mode 100644 doc/images/packet_detection.png create mode 100644 doc/images/piconfig.png create mode 100644 doc/images/piconnection.png create mode 100644 doc/images/piconnection_conf.png create mode 100644 doc/images/piconnection_filters.png create mode 100644 doc/images/piconnection_senders.png create mode 100644 doc/images/piconsole_layout.png create mode 100644 utils/code_model_generator/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 utils/code_model_generator/CMakeFiles/progress.marks create mode 100644 utils/remote_console/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 utils/remote_console/CMakeFiles/progress.marks create mode 100644 utils/system_daemon/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 utils/system_daemon/CMakeFiles/progress.marks create mode 100644 utils/system_test/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 utils/system_test/CMakeFiles/progress.marks diff --git a/doc/html/annotated.html b/doc/html/annotated.html new file mode 100644 index 00000000..185aab61 --- /dev/null +++ b/doc/html/annotated.html @@ -0,0 +1,168 @@ + + + + + + +PIP: Class List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
[detail level 12]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CPIBinaryLogClass for read and write binary data to logfile, and playback this data in realtime
 CPIByteArrayByte array
 CRawDataHelp struct to store/restore custom blocks of data to/from PIByteArray
 CPICharUnicode char
 CPICLICommand-line arguments parser
 CPICollectionInterface to discover element groups
 CPIConfigConfiguration file
 CBranchBranch is a list of entries of configuration file
 CEntryEntry of configuration file
 CPIConnectionComplex Input/Output point
 CPIConsoleConsole output class
 CPICoutClass for formatted output similar std::cout
 CPIDiagnosticsConnection quality diagnostics
 CPIEthernetEthernet device
 CInterfaceNetwork interface descriptor
 CInterfaceListArray of Interface with some features
 CPIEvaluatorThis class provide mathematical evaluations of custom expression
 CPIFileLocal file
 CPIFlagsThis class used as container for bit flags
 CPIIODeviceBase class for input/output classes
 CPIKbdListenerKeyboard console input listener
 CPIMutexMutex
 CPIObjectThis is base class for any classes which use events -> handlers mechanism
 CPIPacketExtractorPackets extractor
 CPIProcess
 CPIProtocol
 CPISerialSerial device
 CPISetSet of any type
 CPIStateMachineBase class for custom state machine
 CRuleRule of transition between states of machine
 CStateState of machine
 CPIStringString class
 CPIStringListStrings array class
 CPISystemTimeSystem time
 CPIThreadThread class
 CPITimeMeasurerTime measurements
 CPITimerTimer
 CPIVariantVariant type
 CPIVectorDynamic array of any type
 CTransferFunctionDifferential evaluations
+
+
+
+ + + + diff --git a/doc/html/annotated.js b/doc/html/annotated.js new file mode 100644 index 00000000..e6d139d9 --- /dev/null +++ b/doc/html/annotated.js @@ -0,0 +1,36 @@ +var annotated = +[ + [ "PIBinaryLog", "class_p_i_binary_log.html", "class_p_i_binary_log" ], + [ "PIByteArray", "class_p_i_byte_array.html", "class_p_i_byte_array" ], + [ "PIChar", "class_p_i_char.html", "class_p_i_char" ], + [ "PICLI", "class_p_i_c_l_i.html", "class_p_i_c_l_i" ], + [ "PICollection", "class_p_i_collection.html", "class_p_i_collection" ], + [ "PIConfig", "class_p_i_config.html", "class_p_i_config" ], + [ "PIConnection", "class_p_i_connection.html", "class_p_i_connection" ], + [ "PIConsole", "class_p_i_console.html", "class_p_i_console" ], + [ "PICout", "class_p_i_cout.html", "class_p_i_cout" ], + [ "PIDiagnostics", "class_p_i_diagnostics.html", "class_p_i_diagnostics" ], + [ "PIEthernet", "class_p_i_ethernet.html", "class_p_i_ethernet" ], + [ "PIEvaluator", "class_p_i_evaluator.html", "class_p_i_evaluator" ], + [ "PIFile", "class_p_i_file.html", "class_p_i_file" ], + [ "PIFlags", "class_p_i_flags.html", "class_p_i_flags" ], + [ "PIIODevice", "class_p_i_i_o_device.html", "class_p_i_i_o_device" ], + [ "PIKbdListener", "class_p_i_kbd_listener.html", "class_p_i_kbd_listener" ], + [ "PIMutex", "class_p_i_mutex.html", "class_p_i_mutex" ], + [ "PIObject", "class_p_i_object.html", "class_p_i_object" ], + [ "PIPacketExtractor", "class_p_i_packet_extractor.html", "class_p_i_packet_extractor" ], + [ "PIProcess", "class_p_i_process.html", null ], + [ "PIProtocol", "class_p_i_protocol.html", "class_p_i_protocol" ], + [ "PISerial", "class_p_i_serial.html", "class_p_i_serial" ], + [ "PISet", "class_p_i_set.html", "class_p_i_set" ], + [ "PIStateMachine", "class_p_i_state_machine.html", "class_p_i_state_machine" ], + [ "PIString", "class_p_i_string.html", "class_p_i_string" ], + [ "PIStringList", "class_p_i_string_list.html", "class_p_i_string_list" ], + [ "PISystemTime", "class_p_i_system_time.html", "class_p_i_system_time" ], + [ "PIThread", "class_p_i_thread.html", "class_p_i_thread" ], + [ "PITimeMeasurer", "class_p_i_time_measurer.html", "class_p_i_time_measurer" ], + [ "PITimer", "class_p_i_timer.html", "class_p_i_timer" ], + [ "PIVariant", "class_p_i_variant.html", "class_p_i_variant" ], + [ "PIVector", "class_p_i_vector.html", "class_p_i_vector" ], + [ "TransferFunction", "struct_transfer_function.html", null ] +]; \ No newline at end of file diff --git a/doc/html/bc_s.png b/doc/html/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..6b2a7130334fda887507a6a2cae4dd8b63fa6726 GIT binary patch literal 674 zcmV;T0$u%yP)HiMVkku38ZV@j=C=wxE()v?wKLjV)Rg zT^20GAc|B)i;rrokM0DaY1&L0R9u)gfo^OOMDGkH%#HpFm+x}U&G~UN=gc>IbaVLK za^pHDkQGR$@{0gK30)tWy6y2<*RL@d66u-zWdNXrt_{9vHu8Af-(deq&h_b;@4qPE zYCNgN_w@n0Y%t;;0zA|M_;0*bEc}R8yUd*=rvP;2l6HduA@~vqIar2a!gHy7stgPb zye{Q2m&?4R%PXU0EMH_q2p?L(IIrRhpD0Rzr;h^0vW|a9tD>{ARF#u5dROh#uFvlEG z=9eZ>wEL01*dmDBo!YgQRZ`R@$!^`eR}aL +
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIBinaryLog Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
closeDevice()PIBinaryLogprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIIODeviceinlineprotectedvirtual
configureFromFullPath(const PIString &full_path)PIBinaryLogprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PIBinaryLoginlineprotectedvirtual
HANDLERPIObjectrelated
init()PIIODeviceinlineprotectedvirtual
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
openDevice()PIBinaryLogprotectedvirtual
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
priority() const PIThreadinline
Priority enum namePIThread
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
REGISTER_DEVICEPIIODevicerelated
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
threadedRead(uchar *readed, int size)PIBinaryLogprotectedvirtual
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_binary_log.html b/doc/html/class_p_i_binary_log.html new file mode 100644 index 00000000..86824a16 --- /dev/null +++ b/doc/html/class_p_i_binary_log.html @@ -0,0 +1,526 @@ + + + + + + +PIP: PIBinaryLog Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIBinaryLog Class Reference
+
+
+ +

Class for read and write binary data to logfile, and playback this data in realtime. + More...

+
+ + Inheritance diagram for PIBinaryLog:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
+bool openDevice ()
 Reimplement to open device, return value will be set to "opened_" variable.
 
+bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
+bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
- Protected Member Functions inherited from PIIODevice
+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Class for read and write binary data to logfile, and playback this data in realtime.

+

+Synopsis

+

Binary Log is a file with simle header, where you can read and write some binary data. Any written data include special header with ID, size and timestamp. This header provides separation different messages from the one file by choosing different IDs. With filterID or special functions, like readBinLog() you can choose IDs what you want to read. With function writeBinLog() or setDefaultID() you can choose ID that mark you data. By default ID = 1, and filterID is empty, that mean you read any ID without filtering. ThreadedRead provide you playback data, with delay that you write data. You can choose realtime playbak or variable speed play back by set PlayMode.

+

+Basic usage

+

This class provide all functions of PIIODevice, such open(), close(), read() ,write(), and threaded read/write. function setLogDir() need to set directory for BinLog files function createNewFile() need to create new binlog file function restart() need start from the begining of binlog file

+
+
+ + + + diff --git a/doc/html/class_p_i_binary_log.js b/doc/html/class_p_i_binary_log.js new file mode 100644 index 00000000..cacf92dc --- /dev/null +++ b/doc/html/class_p_i_binary_log.js @@ -0,0 +1,8 @@ +var class_p_i_binary_log = +[ + [ "fullPathPrefix", "class_p_i_binary_log.html#aeea31dead45c393c32a5a37e0e55af77", null ], + [ "configureFromFullPath", "class_p_i_binary_log.html#ae728df2cfb529e5d3bee2c2a327503cc", null ], + [ "openDevice", "class_p_i_binary_log.html#a8d43d7d13b16fd665d5f814cb5daddfe", null ], + [ "closeDevice", "class_p_i_binary_log.html#a3a3e8054f70c230c2d1b04b7ddead5d4", null ], + [ "threadedRead", "class_p_i_binary_log.html#a78ea56ff4489d441205ded106c63966e", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_binary_log__inherit__graph.map b/doc/html/class_p_i_binary_log__inherit__graph.map new file mode 100644 index 00000000..5df8be4b --- /dev/null +++ b/doc/html/class_p_i_binary_log__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/doc/html/class_p_i_binary_log__inherit__graph.md5 b/doc/html/class_p_i_binary_log__inherit__graph.md5 new file mode 100644 index 00000000..6580480a --- /dev/null +++ b/doc/html/class_p_i_binary_log__inherit__graph.md5 @@ -0,0 +1 @@ +90aa7c351ae1babe496b95d157951958 \ No newline at end of file diff --git a/doc/html/class_p_i_binary_log__inherit__graph.svg b/doc/html/class_p_i_binary_log__inherit__graph.svg new file mode 100644 index 00000000..943f9ae6 --- /dev/null +++ b/doc/html/class_p_i_binary_log__inherit__graph.svg @@ -0,0 +1,57 @@ + + + + + + +PIBinaryLog + + +Node1 + +PIBinaryLog + + +Node2 + + +PIIODevice + + + + +Node2->Node1 + + + + +Node3 + + +PIThread + + + + +Node3->Node2 + + + + +Node4 + + +PIObject + + + + +Node4->Node3 + + + + + diff --git a/doc/html/class_p_i_byte_array-members.html b/doc/html/class_p_i_byte_array-members.html new file mode 100644 index 00000000..0d194c5e --- /dev/null +++ b/doc/html/class_p_i_byte_array-members.html @@ -0,0 +1,184 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIByteArray Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
append(const void *data_, int size_)PIByteArrayinline
append(const PIByteArray &data_)PIByteArrayinline
checksumPlain32() const PIByteArray
checksumPlain8() const PIByteArray
convertFromBase64()PIByteArray
convertToBase64()PIByteArray
fromBase64() const PIByteArrayinline
operator!=(PIByteArray &f, PIByteArray &s)PIByteArrayrelated
operator<<(std::ostream &s, const PIByteArray &ba)PIByteArrayrelated
operator<<(PICout s, const PIByteArray &ba)PIByteArrayrelated
operator<<(PIByteArray &s, uchar v)PIByteArrayrelated
operator<<(PIByteArray &s, const short v)PIByteArrayrelated
operator<<(PIByteArray &s, const int v)PIByteArrayrelated
operator<<(PIByteArray &s, const long &v)PIByteArrayrelated
operator<<(PIByteArray &s, const llong &v)PIByteArrayrelated
operator<<(PIByteArray &s, const ushort v)PIByteArrayrelated
operator<<(PIByteArray &s, const uint v)PIByteArrayrelated
operator<<(PIByteArray &s, const ulong &v)PIByteArrayrelated
operator<<(PIByteArray &s, const ullong &v)PIByteArrayrelated
operator<<(PIByteArray &s, const float v)PIByteArrayrelated
operator<<(PIByteArray &s, const double &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIByteArray &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIByteArray::RawData &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIPair< Type0, Type1 > &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIVector< T > &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIList< T > &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIDeque< T > &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIString &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PIStringList &v)PIByteArrayrelated
operator<<(PICout s, const PISystemTime &v)PIByteArrayrelated
operator<<(PIByteArray &s, const PISystemTime &v)PIByteArrayrelated
operator==(PIByteArray &f, PIByteArray &s)PIByteArrayrelated
operator>>(PIByteArray &s, uchar &v)PIByteArrayrelated
operator>>(PIByteArray &s, short &v)PIByteArrayrelated
operator>>(PIByteArray &s, int &v)PIByteArrayrelated
operator>>(PIByteArray &s, long &v)PIByteArrayrelated
operator>>(PIByteArray &s, llong &v)PIByteArrayrelated
operator>>(PIByteArray &s, ushort &v)PIByteArrayrelated
operator>>(PIByteArray &s, uint &v)PIByteArrayrelated
operator>>(PIByteArray &s, ulong &v)PIByteArrayrelated
operator>>(PIByteArray &s, ullong &v)PIByteArrayrelated
operator>>(PIByteArray &s, float &v)PIByteArrayrelated
operator>>(PIByteArray &s, double &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIByteArray &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIByteArray::RawData v)PIByteArrayrelated
operator>>(PIByteArray &s, PIPair< Type0, Type1 > &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIVector< T > &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIList< T > &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIDeque< T > &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIString &v)PIByteArrayrelated
operator>>(PIByteArray &s, PIStringList &v)PIByteArrayrelated
operator>>(PIByteArray &s, PISystemTime &v)PIByteArrayrelated
PIByteArray()PIByteArrayinline
PIByteArray(const uint size)PIByteArrayinline
PIByteArray(const void *data, const uint size)PIByteArrayinline
resized(int new_size) const PIByteArrayinline
toBase64() const PIByteArrayinline
+
+ + + + diff --git a/doc/html/class_p_i_byte_array.html b/doc/html/class_p_i_byte_array.html new file mode 100644 index 00000000..7cc11f48 --- /dev/null +++ b/doc/html/class_p_i_byte_array.html @@ -0,0 +1,448 @@ + + + + + + +PIP: PIByteArray Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIByteArray Class Reference
+
+
+ +

Byte array. + More...

+ +

Inherits PIDeque< T >.

+ + + + + +

+Classes

struct  RawData
 Help struct to store/restore custom blocks of data to/from PIByteArray. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIByteArray ()
 Constructs an empty byte array.
 
PIByteArray (const uint size)
 Constructs 0-filled byte array with size "size".
 
PIByteArray (const void *data, const uint size)
 Constructs byte array from data "data" and size "size".
 
+PIByteArray resized (int new_size) const
 Return resized byte array.
 
+PIByteArrayconvertToBase64 ()
 Convert data to Base 64 and return this byte array.
 
+PIByteArrayconvertFromBase64 ()
 Convert data from Base 64 and return this byte array.
 
+PIByteArray toBase64 () const
 Return converted to Base 64 data.
 
+PIByteArray fromBase64 () const
 Return converted from Base 64 data.
 
+PIByteArrayappend (const void *data_, int size_)
 Add to the end data "data" with size "size".
 
+PIByteArrayappend (const PIByteArray &data_)
 Add to the end byte array "data".
 
+uchar checksumPlain8 () const
 Returns plain 8-bit checksum.
 
+uint checksumPlain32 () const
 Returns plain 32-bit checksum.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
+std::ostream & operator<< (std::ostream &s, const PIByteArray &ba)
 Output to std::ostream operator.
 
+PICout operator<< (PICout s, const PIByteArray &ba)
 Output to PICout operator.
 
+PIByteArrayoperator<< (PIByteArray &s, uchar v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const short v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const int v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const long &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const llong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ushort v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const uint v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ulong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ullong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const float v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const double &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIByteArray &v)
 Store operator, see Attention for details.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIByteArray::RawData &v)
 Store operator, see Attention for details.
 
+template<typename Type0 , typename Type1 >
PIByteArrayoperator<< (PIByteArray &s, const PIPair< Type0, Type1 > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIVector< T > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIList< T > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIDeque< T > &v)
 Store operator.
 
+PIByteArrayoperator>> (PIByteArray &s, uchar &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, short &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, int &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, long &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, llong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ushort &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, uint &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ulong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ullong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, float &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, double &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, PIByteArray &v)
 Restore operator, see Attention for details.
 
+PIByteArrayoperator>> (PIByteArray &s, PIByteArray::RawData v)
 Restore operator, see Attention for details.
 
+template<typename Type0 , typename Type1 >
PIByteArrayoperator>> (PIByteArray &s, PIPair< Type0, Type1 > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIVector< T > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIList< T > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIDeque< T > &v)
 Restore operator.
 
+bool operator== (PIByteArray &f, PIByteArray &s)
 Byte arrays compare operator.
 
+bool operator!= (PIByteArray &f, PIByteArray &s)
 Byte arrays compare operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIString &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIString &v)
 Input operator from PIByteArray.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIStringList &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIStringList &v)
 Input operator from PIByteArray.
 
+PICout operator<< (PICout s, const PISystemTime &v)
 Output operator to PICout.
 
+PIByteArrayoperator<< (PIByteArray &s, const PISystemTime &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PISystemTime &v)
 Input operator from PIByteArray.
 
+

Detailed Description

+

Byte array.

+

This class based on PIDeque<uchar> and provide some handle function to manipulate it.

+

+Usage

+

PIByteArray can be used to store custom data and manipulate it. There are many stream operators to store/restore common types to byte array. Store operators places data at the end of array, restore operators takes data from the beginning of array. In addition there are Base 64 convertions and checksums:

    +
  • plain 8-bit
  • +
  • plain 32-bit
  • +
+

One of the major usage of PIByteArray is stream functions. You can form binary packet from many types (also dynamic types, e.g. PIVector) with one line:

+
int i = -1, j = 2;
+
float f = 1.;
+
PIString text("123");
+
ba << i << j << f << text; // form binary data
+
piCout << "data =" << ba;
+
i = j = 0; // clear variables
+
f = 0; // clear variables
+
text.clear(); // clear variables
+
piCout << i << j << f << text; // show variables
+
ba >> i >> j >> f >> text; // restore data
+
piCout << i << j << f << text; // show variables
+
piCout << "data =" << ba;
+

Or you can descibe stream operator of your own type and store/restore vectors of your type:

struct MyType {
+
MyType(int i_ = 0, const PIString & t_ = PIString()) {
+
m_i = i_;
+
m_text = t_;
+
}
+
int m_i;
+
PIString m_text;
+
};
+
+
inline PIByteArray & operator <<(PIByteArray & s, const MyType & v) {s << v.m_i << v.m_text; return s;}
+
inline PIByteArray & operator >>(PIByteArray & s, MyType & v) {s >> v.m_i >> v.m_text; return s;}
+
+ + +
my_vec << MyType(1, "s1") << MyType(10, "s10"); // add to vector
+
ba << my_vec; // store to byte array
+
piCout << "data =" << ba;
+
my_vec.clear(); // clear vector
+
ba >> my_vec; // restore from byte array
+

For store/restore custom data blocks there is PIByteArray::RawData class. Stream operators of this class simply store/restore data block to/from byte array.

+
const char * chars = "8 bytes";
+
ba << PIByteArray::RawData(chars, 8); // form binary data
+
piCout << "data =" << ba;
+
char rchars[16];
+
memset(rchars, 0, 16); // clear data
+
ba >> PIByteArray::RawData(rchars, 8); // restore data
+
piCout << rchars;
+
piCout << "data =" << ba;
+

+Attention

+

Stream operator of PIByteArray store byte array as vector, not simply append content of byte array. This operators useful to transmit custom data as PIByteArray packed into parent byte array, e.g. to form packet from PIByteArray. To append one byte array to another use funtion append().

PIByteArray ba, sba;
+
uchar uc(127);
+
sba << uc; // byte array with one byte
+
ba << sba; // stream operator
+
piCout << ba; // result
+
// {1, 0, 0, 0, 127}
+
ba.clear();
+
ba.append(sba);
+
piCout << ba; // result
+
// {127}
+
+
+ + + + diff --git a/doc/html/class_p_i_byte_array.js b/doc/html/class_p_i_byte_array.js new file mode 100644 index 00000000..45d83517 --- /dev/null +++ b/doc/html/class_p_i_byte_array.js @@ -0,0 +1,61 @@ +var class_p_i_byte_array = +[ + [ "RawData", "struct_p_i_byte_array_1_1_raw_data.html", "struct_p_i_byte_array_1_1_raw_data" ], + [ "PIByteArray", "class_p_i_byte_array.html#aaff8154b09dfd8f6b42a2ffccf77a417", null ], + [ "PIByteArray", "class_p_i_byte_array.html#a77c41715c48c52ca6fde95e49c398bff", null ], + [ "PIByteArray", "class_p_i_byte_array.html#a53393736cdd642d3fb0f68cc762eaf10", null ], + [ "resized", "class_p_i_byte_array.html#a0c59a360cbc7e6a36f6ed13c041ee7f7", null ], + [ "convertToBase64", "class_p_i_byte_array.html#ae024450dbd082250560b168189a6f043", null ], + [ "convertFromBase64", "class_p_i_byte_array.html#a3dff2c2171ecbd1b12c0edc232648cf9", null ], + [ "toBase64", "class_p_i_byte_array.html#afa9bf40116570c11328f117849180f7f", null ], + [ "fromBase64", "class_p_i_byte_array.html#aa3b756ec5c724a649d90c13c0f104f6b", null ], + [ "append", "class_p_i_byte_array.html#a3f59d6f9e5aa117ebce88de767bdf6a0", null ], + [ "append", "class_p_i_byte_array.html#a42ccaa717c6341aaf47a3a811c8c6498", null ], + [ "checksumPlain8", "class_p_i_byte_array.html#aeec044f424697f902aa2903bc74a889c", null ], + [ "checksumPlain32", "class_p_i_byte_array.html#acbf4fa4d378627d648f6634bbf08349d", null ], + [ "operator<<", "class_p_i_byte_array.html#ab1e23cf01f90071f1239fcfc17c8ed3d", null ], + [ "operator<<", "class_p_i_byte_array.html#a32613363dcf56aac9f693c135fff6f89", null ], + [ "operator<<", "class_p_i_byte_array.html#ae4152fca25c857d502396fc477dd5b4e", null ], + [ "operator<<", "class_p_i_byte_array.html#a27cb4295a655c80c9223e2af2843ac14", null ], + [ "operator<<", "class_p_i_byte_array.html#ab8951385e7eda4d8d6925b2a519624ae", null ], + [ "operator<<", "class_p_i_byte_array.html#a750963c1940bf98afb59c6d5ee745f57", null ], + [ "operator<<", "class_p_i_byte_array.html#a34e8e853e5ed6beccd359e6cdbbd79ee", null ], + [ "operator<<", "class_p_i_byte_array.html#ab5772ffd8c729df606daef9af4bab33f", null ], + [ "operator<<", "class_p_i_byte_array.html#ad4fedc65364715baf41b635174c5fe8a", null ], + [ "operator<<", "class_p_i_byte_array.html#ac808ed51ef9536275a6133abfde4bb83", null ], + [ "operator<<", "class_p_i_byte_array.html#ab44ea6a59afa51508ff2901d41b627f0", null ], + [ "operator<<", "class_p_i_byte_array.html#a2a485f703e44ccea18c8638c7c4c5889", null ], + [ "operator<<", "class_p_i_byte_array.html#a499da27a6b5a3474fff8cda6c723886a", null ], + [ "operator<<", "class_p_i_byte_array.html#a959efd617590b844d4dccf73c3565f95", null ], + [ "operator<<", "class_p_i_byte_array.html#a65a8de355c00ee10f723c0c4a108adcd", null ], + [ "operator<<", "class_p_i_byte_array.html#a96190dee065ee5b78285ca129e2adb1d", null ], + [ "operator<<", "class_p_i_byte_array.html#adbbbcf8bf5e3b56e3a114df299fe7c7f", null ], + [ "operator<<", "class_p_i_byte_array.html#a068a0bcfbe5b9d2fa4b778ba968f44db", null ], + [ "operator<<", "class_p_i_byte_array.html#a9b9678e9c4c372565e933d2e3ea99407", null ], + [ "operator>>", "class_p_i_byte_array.html#ab13b3356e12200d943eca6fb5914fff3", null ], + [ "operator>>", "class_p_i_byte_array.html#ab169b593f262836b81ef0f1e85742bb5", null ], + [ "operator>>", "class_p_i_byte_array.html#a9193853f9065d13faa500d7402011e95", null ], + [ "operator>>", "class_p_i_byte_array.html#a2936831420330a89c932b9378bcb531a", null ], + [ "operator>>", "class_p_i_byte_array.html#ac2f7009be50024c741ba1e34e2520105", null ], + [ "operator>>", "class_p_i_byte_array.html#a6d7b09e8e0ae58e2a0660a95f5297d62", null ], + [ "operator>>", "class_p_i_byte_array.html#a6c4c55eac2a9c3f087e4f86ae8d76104", null ], + [ "operator>>", "class_p_i_byte_array.html#a562da0ccdeabb8269757e25955bb3da5", null ], + [ "operator>>", "class_p_i_byte_array.html#a51721eb920f53d0c919eec52cf10cd52", null ], + [ "operator>>", "class_p_i_byte_array.html#a908c8071a8eee9fb7a3752bee614333a", null ], + [ "operator>>", "class_p_i_byte_array.html#a4f8b92d20e45ebe4e3bac6e2ccedf9f0", null ], + [ "operator>>", "class_p_i_byte_array.html#aa77ecc852d4e3ba6e4fbe7a7258cfb87", null ], + [ "operator>>", "class_p_i_byte_array.html#afb2b51047b10d19aced414fec7744dd2", null ], + [ "operator>>", "class_p_i_byte_array.html#ab2b77a56ba810e64d937dc4f33438310", null ], + [ "operator>>", "class_p_i_byte_array.html#a3ad45b3c81b974189a6c9ab5193e24d5", null ], + [ "operator>>", "class_p_i_byte_array.html#a35c4ea115bdcb4627fd9fa635d1c681a", null ], + [ "operator>>", "class_p_i_byte_array.html#a6cee541d60566eef92585f50aa9ec436", null ], + [ "operator==", "class_p_i_byte_array.html#a30e1b305b0f9bdcfc1d1e9c970e82d5d", null ], + [ "operator!=", "class_p_i_byte_array.html#a9db13625502ec190fa40b4155ad136eb", null ], + [ "operator<<", "class_p_i_byte_array.html#adaf9cbdf9ef8f318a08ff773a54a3d6c", null ], + [ "operator>>", "class_p_i_byte_array.html#a6cd37806e2577611e4a22dc2031fc166", null ], + [ "operator<<", "class_p_i_byte_array.html#a08f09ee06ada0b3aab326f1c888daf4c", null ], + [ "operator>>", "class_p_i_byte_array.html#a410bed597b49992e265e0941feca5cb8", null ], + [ "operator<<", "class_p_i_byte_array.html#a6d0138248acb706f616018e64bbc64c6", null ], + [ "operator<<", "class_p_i_byte_array.html#a43f469a88331d5bf809f97f77a12e019", null ], + [ "operator>>", "class_p_i_byte_array.html#ad563e018cb30fbced03966997b2fc65a", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_c_l_i-members.html b/doc/html/class_p_i_c_l_i-members.html new file mode 100644 index 00000000..8433fda9 --- /dev/null +++ b/doc/html/class_p_i_c_l_i-members.html @@ -0,0 +1,194 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PICLI Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addArgument(const PIString &name, bool value=false)PICLIinline
addArgument(const PIString &name, const PIChar &shortKey, bool value=false)PICLIinline
addArgument(const PIString &name, const char *shortKey, bool value=false)PICLIinline
addArgument(const PIString &name, const PIChar &shortKey, const PIString &fullKey, bool value=false)PICLIinline
addArgument(const PIString &name, const char *shortKey, const PIString &fullKey, bool value=false)PICLIinline
className() const PIObjectinlinevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinline
name() const PIObjectinline
PICLI(int argc, char *argv[])PICLI
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
programCommand()PICLIinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
rawArgument(int index)PICLIinline
rawArguments()PICLIinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
superClassName() const PIObjectinlinevirtual
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_c_l_i.html b/doc/html/class_p_i_c_l_i.html new file mode 100644 index 00000000..bc4175d0 --- /dev/null +++ b/doc/html/class_p_i_c_l_i.html @@ -0,0 +1,445 @@ + + + + + + +PIP: PICLI Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PICLI Class Reference
+
+
+ +

Command-line arguments parser. + More...

+
+ + Inheritance diagram for PICLI:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PICLI (int argc, char *argv[])
 Constructor.
 
+void addArgument (const PIString &name, bool value=false)
 Add argument with name "name", short key = name first letter, full key = name.
 
+void addArgument (const PIString &name, const PIChar &shortKey, bool value=false)
 Add argument with name "name", short key = "shortKey", full key = name.
 
+void addArgument (const PIString &name, const char *shortKey, bool value=false)
 Add argument with name "name", short key = "shortKey", full key = name.
 
+void addArgument (const PIString &name, const PIChar &shortKey, const PIString &fullKey, bool value=false)
 Add argument with name "name", short key = "shortKey", full key = "fullKey".
 
+void addArgument (const PIString &name, const char *shortKey, const PIString &fullKey, bool value=false)
 Add argument with name "name", short key = "shortKey", full key = "fullKey".
 
+PIString rawArgument (int index)
 Returns unparsed command-line argument by index "index". Index 0 is program execute command.
 
+const PIStringListrawArguments ()
 Returns unparsed command-line arguments.
 
+PIString programCommand ()
 Returns program execute command without arguments.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+

Detailed Description

+

Command-line arguments parser.

+

+Synopsis

+

This class provide handy parsing of command-line arguments. First you should add arguments to PICLI with function addArgument(). Then you can check if there is some argument in application command-line with function hasArgument();

+

+Example

+
int main(int argc, char ** argv) {
+
PICLI cli(argc, argv);
+
cli.addArgument("console");
+
cli.addArgument("debug");
+
cli.addArgument("Value", "v", "value", true);
+
if (cli.hasArgument("console"))
+
piCout << "console active";
+
if (cli.hasArgument("debug"))
+
piCout << "debug active";
+
piCout << "Value =" << cli.argumentValue("Value");
+
return 0;
+
}
+
+
These executions are similar:
+
a.out -cd -v 10
+
a.out --value 10 -dc
+
a.out -c -v 10 -d
+
a.out --console -d -v 10
+
a.out --debug -c --value 10
+
+
+ + + + diff --git a/doc/html/class_p_i_c_l_i.js b/doc/html/class_p_i_c_l_i.js new file mode 100644 index 00000000..956c8b62 --- /dev/null +++ b/doc/html/class_p_i_c_l_i.js @@ -0,0 +1,12 @@ +var class_p_i_c_l_i = +[ + [ "PICLI", "class_p_i_c_l_i.html#abc57c0e1bb06e1af2087e1ff158039ac", null ], + [ "addArgument", "class_p_i_c_l_i.html#a6091825b4eb1e3e8e336ae9524fa8331", null ], + [ "addArgument", "class_p_i_c_l_i.html#ab378101cdb1517da4c430d3b58a3ed79", null ], + [ "addArgument", "class_p_i_c_l_i.html#a787fd46efaa3f64d57398782e7deb612", null ], + [ "addArgument", "class_p_i_c_l_i.html#a1335cd90d383e1cdeeb6e6b729d18244", null ], + [ "addArgument", "class_p_i_c_l_i.html#a9a69f3dd05852ebdbddb0543ca912faa", null ], + [ "rawArgument", "class_p_i_c_l_i.html#acfa1357e283fb2fceb69ff93e53cef6f", null ], + [ "rawArguments", "class_p_i_c_l_i.html#a48e694f023cd8a8606865b1704583613", null ], + [ "programCommand", "class_p_i_c_l_i.html#a31bf2b18e408514af453029ebc09f00d", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_c_l_i__inherit__graph.map b/doc/html/class_p_i_c_l_i__inherit__graph.map new file mode 100644 index 00000000..a35364c7 --- /dev/null +++ b/doc/html/class_p_i_c_l_i__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_c_l_i__inherit__graph.md5 b/doc/html/class_p_i_c_l_i__inherit__graph.md5 new file mode 100644 index 00000000..ba9996ff --- /dev/null +++ b/doc/html/class_p_i_c_l_i__inherit__graph.md5 @@ -0,0 +1 @@ +63bc62143fdf935156af34224b74aa68 \ No newline at end of file diff --git a/doc/html/class_p_i_c_l_i__inherit__graph.svg b/doc/html/class_p_i_c_l_i__inherit__graph.svg new file mode 100644 index 00000000..1c4cf4db --- /dev/null +++ b/doc/html/class_p_i_c_l_i__inherit__graph.svg @@ -0,0 +1,31 @@ + + + + + + +PICLI + + +Node1 + +PICLI + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_char-members.html b/doc/html/class_p_i_char-members.html new file mode 100644 index 00000000..24d69fcc --- /dev/null +++ b/doc/html/class_p_i_char-members.html @@ -0,0 +1,156 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIChar Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
isAlpha() const PICharinline
isAscii() const PICharinline
isControl() const PICharinline
isDigit() const PICharinline
isGraphical() const PICharinline
isHex() const PICharinline
isLower() const PICharinline
isPrint() const PICharinline
isSpace() const PICharinline
isUpper() const PICharinline
operator!=(const PIChar &o) const PICharinline
operator<(const PIChar &o) const PICharinline
operator<<(PIByteArray &s, const PIChar &v)PICharfriend
operator<=(const PIChar &o) const PICharinline
operator=(const char v)PICharinline
operator==(const PIChar &o) const PICharinline
operator>(const PIChar &o) const PICharinline
operator>=(const PIChar &o) const PICharinline
operator>>(PIByteArray &s, PIChar &v)PICharfriend
PIChar(const char c)PICharinline
PIChar(const short c)PICharinline
PIChar(const int c)PICharinline
PIChar(const uchar c)PICharinline
PIChar(const ushort c)PICharinline
PIChar(const uint c=0)PICharinline
PIChar(const char *c)PICharinline
toCharPtr() const PICharinline
toLower() const PICharinline
toUpper() const PICharinline
+
+ + + + diff --git a/doc/html/class_p_i_char.html b/doc/html/class_p_i_char.html new file mode 100644 index 00000000..56cdd265 --- /dev/null +++ b/doc/html/class_p_i_char.html @@ -0,0 +1,258 @@ + + + + + + +PIP: PIChar Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIChar Class Reference
+
+
+ +

Unicode char. + More...

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

+Public Member Functions

PIChar (const char c)
 Contructs ascii symbol.
 
PIChar (const short c)
 Contructs 2-bytes symbol.
 
PIChar (const int c)
 Contructs 4-bytes symbol.
 
PIChar (const uchar c)
 Contructs ascii symbol.
 
PIChar (const ushort c)
 Contructs 2-bytes symbol.
 
PIChar (const uint c=0)
 Default constructor. Contructs 4-bytes symbol.
 
PIChar (const char *c)
 Contructs symbol from no more than 4 bytes of string.
 
+PICharoperator= (const char v)
 Copy operator.
 
+bool operator== (const PIChar &o) const
 Compare operator.
 
+bool operator!= (const PIChar &o) const
 Compare operator.
 
+bool operator> (const PIChar &o) const
 Compare operator.
 
+bool operator< (const PIChar &o) const
 Compare operator.
 
+bool operator>= (const PIChar &o) const
 Compare operator.
 
+bool operator<= (const PIChar &o) const
 Compare operator.
 
+bool isDigit () const
 Return true if symbol is digit ('0' to '9')
 
+bool isHex () const
 Return true if symbol is HEX digit ('0' to '9', 'a' to 'f', 'A' to 'F')
 
+bool isGraphical () const
 Return true if symbol is drawable (without space)
 
+bool isControl () const
 Return true if symbol is control byte (< 32 or 127)
 
+bool isLower () const
 Return true if symbol is in lower case.
 
+bool isUpper () const
 Return true if symbol is in upper case.
 
+bool isPrint () const
 Return true if symbol is printable (with space)
 
+bool isSpace () const
 Return true if symbol is space or tab.
 
+bool isAlpha () const
 Return true if symbol is alphabetical letter.
 
+bool isAscii () const
 Return true if symbol is ascii (< 128)
 
+const char * toCharPtr () const
 Return as "char * " string.
 
+PIChar toUpper () const
 Return symbol in upper case.
 
+PIChar toLower () const
 Return symbol in lower case.
 
+ + + + + + + +

+Friends

+PIByteArrayoperator<< (PIByteArray &s, const PIChar &v)
 Write operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIChar &v)
 Read operator from PIByteArray.
 
+

Detailed Description

+

Unicode char.

+

This class is wrapper around "uint". There are many contructors and information functions

+
+
+ + + + diff --git a/doc/html/class_p_i_char.js b/doc/html/class_p_i_char.js new file mode 100644 index 00000000..40bedd7e --- /dev/null +++ b/doc/html/class_p_i_char.js @@ -0,0 +1,32 @@ +var class_p_i_char = +[ + [ "PIChar", "class_p_i_char.html#a9c13f6b3a242d13924b64dbd3deec204", null ], + [ "PIChar", "class_p_i_char.html#ac11bc7f521d447ef402a9cb9ef05707f", null ], + [ "PIChar", "class_p_i_char.html#a272e1665fe42d557cad91ed3dc416a29", null ], + [ "PIChar", "class_p_i_char.html#a610057fd1840516fce1c5fb0955535b9", null ], + [ "PIChar", "class_p_i_char.html#a2dcff5b1473cc887cff45cb31bb132f5", null ], + [ "PIChar", "class_p_i_char.html#ae684b56acf78dff045b74bfdd91b0540", null ], + [ "PIChar", "class_p_i_char.html#a5507bf7ad8fe1f80ace5f56e3e694ddd", null ], + [ "operator=", "class_p_i_char.html#a1ef5c3ed6b13e9dcf10f23f702dd600e", null ], + [ "operator==", "class_p_i_char.html#a394d08896adbc253e919fd662422228c", null ], + [ "operator!=", "class_p_i_char.html#a90f2d92ee153f08c7b850c99fcbc4eac", null ], + [ "operator>", "class_p_i_char.html#a4610045d91868b899c0065150fe7686d", null ], + [ "operator<", "class_p_i_char.html#a4939c02157bfbcb9a3a669ee738ddaa9", null ], + [ "operator>=", "class_p_i_char.html#ac68d8b501225795d53adf67b4d9ea2b2", null ], + [ "operator<=", "class_p_i_char.html#abf1f0ddb2ea78a58d20b880011c838b1", null ], + [ "isDigit", "class_p_i_char.html#a56d2cedeabb4c86d8b777d4e1411c25d", null ], + [ "isHex", "class_p_i_char.html#a2730d5567a93f19d6389be7ea07b1168", null ], + [ "isGraphical", "class_p_i_char.html#ac02e6ddd18b2cb837b772444ee17be2c", null ], + [ "isControl", "class_p_i_char.html#a683aebcd7e500fc96c6367dfe6932219", null ], + [ "isLower", "class_p_i_char.html#afcf054d8470c333c69f8b7df2c767ecf", null ], + [ "isUpper", "class_p_i_char.html#a9bf6075c65410d1ea24622024246dd42", null ], + [ "isPrint", "class_p_i_char.html#a55255ed564ce213a1abaf519bd28c1c6", null ], + [ "isSpace", "class_p_i_char.html#a08354995df8b6b1897c3c56fb61614f9", null ], + [ "isAlpha", "class_p_i_char.html#a60b68169d49d4d296b03c99d962f2fe0", null ], + [ "isAscii", "class_p_i_char.html#a201aaf6b6cf4406d84ad97879b0df42b", null ], + [ "toCharPtr", "class_p_i_char.html#a9baee39596206d0977ebfb5e3d12f810", null ], + [ "toUpper", "class_p_i_char.html#a48a9400b58447e7a492d346dd75ef09c", null ], + [ "toLower", "class_p_i_char.html#a0d4ae4c2e8e77e21762121f82be79a2e", null ], + [ "operator<<", "class_p_i_char.html#a43cad479313327c089e30ae490e01c24", null ], + [ "operator>>", "class_p_i_char.html#a697daa3db190238c3cad29b288821ae0", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_collection-members.html b/doc/html/class_p_i_collection-members.html new file mode 100644 index 00000000..ed780817 --- /dev/null +++ b/doc/html/class_p_i_collection-members.html @@ -0,0 +1,131 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PICollection Member List
+
+
+ +

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

+ + + + + +
ADD_NEW_TO_COLLECTIONPICollectionrelated
ADD_TO_COLLECTIONPICollectionrelated
groupElements(const PIString &group)PICollectionstatic
groups()PICollectionstatic
+
+ + + + diff --git a/doc/html/class_p_i_collection.html b/doc/html/class_p_i_collection.html new file mode 100644 index 00000000..bcb0ef8d --- /dev/null +++ b/doc/html/class_p_i_collection.html @@ -0,0 +1,281 @@ + + + + + + +PIP: PICollection Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PICollection Class Reference
+
+
+ +

Interface to discover element groups. + More...

+ + + + + + + + +

+Static Public Member Functions

+static PIStringList groups ()
 Returns all existing groups by their names.
 
+static PIVector< const PIObject * > groupElements (const PIString &group)
 Returns all elements of group "group".
 
+ + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
#define ADD_TO_COLLECTION(group, object)
 Add existing element "object" in group with name "group". More...
 
#define ADD_NEW_TO_COLLECTION(group, class)
 Add new element of class "class" in group with name "group". More...
 
+

Detailed Description

+

Interface to discover element groups.

+

+Synopsis

+

This class has only static functions so no need to create instance of the PICollection. This class provide macros to add some classes or existing objects to global collection and access to them from any place of the code.

class ElementA: public PIObject {
+
PIOBJECT(ElementA)
+
// ...
+
};
+
ADD_NEW_TO_COLLECTION(ab_group, ElementA)
+
+
class ElementB: public PIObject {
+
PIOBJECT(ElementB)
+
// ...
+
};
+
ADD_NEW_TO_COLLECTION(ab_group, ElementB)
+
+
class ElementC: public PIObject {
+
PIOBJECT(ElementC)
+
// ...
+
};
+
ADD_NEW_TO_COLLECTION(c_group, ElementC)
+
+
class ElementD: public PIObject {
+
PIOBJECT(ElementD)
+
// ...
+
};
+
+
int main() {
+
ElementD * el_d = new ElementD();
+
ADD_TO_COLLECTION(ab_group, el_d)
+
+ +
piCout << gl; // {"ab_group", "c_group"}
+
piForeachC (PIString g, gl) {
+ +
piCout << "group" << g << ":";
+
piForeachC (PIObject * o, go)
+
piCout << Tab << o->className();
+
}
+
+
/*
+
group ab_group :
+
ElementA
+
ElementB
+
ElementD
+
group c_group :
+
ElementC
+
*/
+
};
+

Friends And Related Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
#define ADD_TO_COLLECTION( group,
 object 
)
+
+related
+
+ +

Add existing element "object" in group with name "group".

+

If there is no group with name "group" it will be created. Only one element of the class "object" can be in group "group". If this is already exists nothing be happens.
+ "object" should to be pointer to object based on PIObject.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
#define ADD_NEW_TO_COLLECTION( group,
 class 
)
+
+related
+
+ +

Add new element of class "class" in group with name "group".

+

If there is no group with name "group" it will be created. Only one element of the class "class" can be in group "group". If this is already exists nothing be happens.
+ "class" should to be name of the any class based on PIObject.

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_collection.js b/doc/html/class_p_i_collection.js new file mode 100644 index 00000000..32e64911 --- /dev/null +++ b/doc/html/class_p_i_collection.js @@ -0,0 +1,5 @@ +var class_p_i_collection = +[ + [ "ADD_TO_COLLECTION", "class_p_i_collection.html#a450e8ac720c8b0f6223ad2bf42f83ae2", null ], + [ "ADD_NEW_TO_COLLECTION", "class_p_i_collection.html#a78cc4937360f5e286cdd8baf403edfec", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_config-members.html b/doc/html/class_p_i_config-members.html new file mode 100644 index 00000000..5cc5e111 --- /dev/null +++ b/doc/html/class_p_i_config-members.html @@ -0,0 +1,259 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIConfig Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
allLeaves()PIConfiginline
allTree()PIConfiginline
className() const PIObjectinlinevirtual
clear()PIConfiginline
closeDevice()PIFileprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIIODeviceinlineprotectedvirtual
configureFromFullPath(const PIString &full_path)PIFileprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
delimiter() const PIConfiginline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
entriesCount() const PIConfiginline
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PIFileinlineprotectedvirtual
getValue(const PIString &vname, const PIString &def=PIString(), bool *exists=0)PIConfig
getValue(const PIString &vname, const char *def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const PIStringList &def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const bool def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const short def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const int def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const long def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const uchar def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const ushort def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const uint def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const ulong def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const float def, bool *exists=0)PIConfiginline
getValue(const PIString &vname, const double def, bool *exists=0)PIConfiginline
getValues(const PIString &vname)PIConfig
HANDLERPIObjectrelated
init()PIIODeviceinlineprotectedvirtual
isEntryExists(const PIString &name) const PIConfiginline
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
openDevice()PIFileprotectedvirtual
PIConfig(const PIString &path, PIIODevice::DeviceMode mode=PIIODevice::ReadWrite)PIConfig
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
readAll()PIConfig
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
REGISTER_DEVICEPIIODevicerelated
rootEntry()PIConfiginline
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setDelimiter(const PIString &d)PIConfiginline
PIFile::setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
setValue(const PIString &name, const PIString &value, const PIString &type="s", bool write=true)PIConfig
setValue(const PIString &name, const PIStringList &value, bool write=true)PIConfiginline
setValue(const PIString &name, const char *value, bool write=true)PIConfiginline
setValue(const PIString &name, const bool value, bool write=true)PIConfiginline
setValue(const PIString &name, const short value, bool write=true)PIConfiginline
setValue(const PIString &name, const int value, bool write=true)PIConfiginline
setValue(const PIString &name, const long value, bool write=true)PIConfiginline
setValue(const PIString &name, const uchar value, bool write=true)PIConfiginline
setValue(const PIString &name, const ushort value, bool write=true)PIConfiginline
setValue(const PIString &name, const uint value, bool write=true)PIConfiginline
setValue(const PIString &name, const ulong value, bool write=true)PIConfiginline
setValue(const PIString &name, const float value, bool write=true)PIConfiginline
setValue(const PIString &name, const double value, bool write=true)PIConfiginline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
threadedRead(uchar *readed, int size)PIIODeviceinlineprotectedvirtual
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
writeAll()PIConfig
+
+ + + + diff --git a/doc/html/class_p_i_config.html b/doc/html/class_p_i_config.html new file mode 100644 index 00000000..53d55409 --- /dev/null +++ b/doc/html/class_p_i_config.html @@ -0,0 +1,700 @@ + + + + + + +PIP: PIConfig Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIConfig Class Reference
+
+
+ +

Configuration file. + More...

+
+ + Inheritance diagram for PIConfig:
+
+
+ + + + + + + + + +

+Classes

class  Branch
 Branch is a list of entries of configuration file More...
 
class  Entry
 Entry of configuration file More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIConfig (const PIString &path, PIIODevice::DeviceMode mode=PIIODevice::ReadWrite)
 Contructs and read configuration file at path "path" in mode "mode".
 
+EntrygetValue (const PIString &vname, const PIString &def=PIString(), bool *exists=0)
 Returns top-level entry with name "vname", if doesn`t exists return entry with value "def" and set *exist to false.
 
+EntrygetValue (const PIString &vname, const char *def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const PIStringList &def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const bool def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const short def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const int def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const long def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const uchar def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const ushort def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const uint def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const ulong def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const float def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const double def, bool *exists=0)
 Returns top-level entry with name "vname" and default value "def".
 
+Branch getValues (const PIString &vname)
 Returns top-level entries with names with substrings "vname".
 
+void setValue (const PIString &name, const PIString &value, const PIString &type="s", bool write=true)
 Set top-level entry with name "name" value to "value", type to "type" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const PIStringList &value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "l" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const char *value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "s" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const bool value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "b" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const short value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const int value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const long value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const uchar value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const ushort value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const uint value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const ulong value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "n" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const float value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "f" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+void setValue (const PIString &name, const double value, bool write=true)
 Set top-level entry with name "name" value to "value", type to "f" and if "write" immediate write to file. Add new entry if there is no suitable exists.
 
+EntryrootEntry ()
 Returns root entry.
 
+int entriesCount () const
 Returns top-level entries count.
 
+bool isEntryExists (const PIString &name) const
 Returns if top-level entry with name "name" exists.
 
+Branch allTree ()
 Returns all top-level entries.
 
+Branch allLeaves ()
 Returns all entries without children.
 
+void clear ()
 Remove all tree and file content.
 
+void readAll ()
 Parse file and build internal tree.
 
+void writeAll ()
 Write all internal tree to file.
 
+const PIStringdelimiter () const
 Returns current tree delimiter, default ".".
 
+void setDelimiter (const PIString &d)
 Set current tree delimiter.
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
- Protected Member Functions inherited from PIFile
+PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
+bool openDevice ()
 Reimplement to open device, return value will be set to "opened_" variable.
 
+bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
- Protected Member Functions inherited from PIIODevice
+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+virtual bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+

Detailed Description

+

Configuration file.

+

This class provide handle access to configuration file.

+

+Synopsis

+

PIConfig reads configuration file and create internal dendritic representation of all entries of this file. You can easily read some values and write new.

+piconfig.png +
+

PIConfig supports also INI-style files with sections "[section]". In this case line with section name interpret as prefix to the next lines. For example, these configs are equal:

ser.device = /dev/ttyS0
+
ser.speed = 115200
+
debug = true
+
[ser]
+
device = /dev/ttyS0
+
speed = 115200
+
[]
+
debug = true
+

+Concepts

+

Each node of internal tree has type PIConfig::Entry. PIConfig has one root element rootEntry(). Any entry of configuration file is a child of this element.

+
+
+ + + + diff --git a/doc/html/class_p_i_config.js b/doc/html/class_p_i_config.js new file mode 100644 index 00000000..4391a4fd --- /dev/null +++ b/doc/html/class_p_i_config.js @@ -0,0 +1,43 @@ +var class_p_i_config = +[ + [ "Branch", "class_p_i_config_1_1_branch.html", null ], + [ "Entry", "class_p_i_config_1_1_entry.html", "class_p_i_config_1_1_entry" ], + [ "PIConfig", "class_p_i_config.html#a283394a8822215eaf98a828df32ae72d", null ], + [ "getValue", "class_p_i_config.html#afa9ff95ee07a0426a06196cdb0674bb1", null ], + [ "getValue", "class_p_i_config.html#aa58ad8481d1f0280a3bd4c92f47f516f", null ], + [ "getValue", "class_p_i_config.html#a59ee8d190f4a82e2fbe4e0320877e0a7", null ], + [ "getValue", "class_p_i_config.html#a5f44b199f4679ee58df0b7e1db44b4f1", null ], + [ "getValue", "class_p_i_config.html#ac2fa98010be70e9d7fda3baa56804ad0", null ], + [ "getValue", "class_p_i_config.html#aa7750ea22e6d133d80070f9ff9328bd7", null ], + [ "getValue", "class_p_i_config.html#a073bd20b948c3f68b7eb846f4d080006", null ], + [ "getValue", "class_p_i_config.html#a04ff1fa7aea07e52f1f9b743a7236e0c", null ], + [ "getValue", "class_p_i_config.html#ae359d44525852377fe944f34f3a3aadf", null ], + [ "getValue", "class_p_i_config.html#ab37b341b3468d25beae61112ec0da134", null ], + [ "getValue", "class_p_i_config.html#a081565174316b60dc5a6f27ffb0c3118", null ], + [ "getValue", "class_p_i_config.html#a9fc2514ae2881bd0cace552b179e58f7", null ], + [ "getValue", "class_p_i_config.html#a81a5f8e644ef77db5b85b3d0a1169940", null ], + [ "getValues", "class_p_i_config.html#a56e9e758d994f2bd5bb0ddbf93b187e0", null ], + [ "setValue", "class_p_i_config.html#a21a16d4652c57e310f9e4eb4e40dea39", null ], + [ "setValue", "class_p_i_config.html#ab0fd0d0f7932d805655908447dddf4ea", null ], + [ "setValue", "class_p_i_config.html#ab321f10c0a70bb1e357a09879431b08c", null ], + [ "setValue", "class_p_i_config.html#a47fd7b93880a60ceabaa95401fc006c9", null ], + [ "setValue", "class_p_i_config.html#a05152c400b1bcc94154ce54050dfbdd8", null ], + [ "setValue", "class_p_i_config.html#a11affac002d95972f7023bb02a580d2c", null ], + [ "setValue", "class_p_i_config.html#acdac45e85e5a9e48301bb66f5e596237", null ], + [ "setValue", "class_p_i_config.html#aa92620b2af384471e86ed5095643d10a", null ], + [ "setValue", "class_p_i_config.html#a2252cdecef6f23dd22f68482ad2f3aa8", null ], + [ "setValue", "class_p_i_config.html#a727a3a4efbd6d4bd10592acb2e94b35c", null ], + [ "setValue", "class_p_i_config.html#ad94dcedcb0e7e08e68729cba293342ff", null ], + [ "setValue", "class_p_i_config.html#ac99bcbe1e6656c15481d2b4e7a6aacae", null ], + [ "setValue", "class_p_i_config.html#aa45477274950fc3b50f5e6ece6299c7a", null ], + [ "rootEntry", "class_p_i_config.html#ab3b501c744eec9526b06509e14e868ec", null ], + [ "entriesCount", "class_p_i_config.html#a8ec38c6e59b7d57677ae410ea74d6121", null ], + [ "isEntryExists", "class_p_i_config.html#acf088b2430b92387205df5d67b6ca83d", null ], + [ "allTree", "class_p_i_config.html#a16f81586debe78f0ad886aac2c5d20f0", null ], + [ "allLeaves", "class_p_i_config.html#a52ba17ebcb28248b1ec4fcedd9deba4b", null ], + [ "clear", "class_p_i_config.html#a5183a5859cd1006d4e93bf007b28fd2b", null ], + [ "readAll", "class_p_i_config.html#ab2bb45897ec17ef66c729dfe7d43a135", null ], + [ "writeAll", "class_p_i_config.html#a7d228b9feed1e5a301da526ea4cd4d01", null ], + [ "delimiter", "class_p_i_config.html#a3a2943350a0b2304ab8fee406ade16b9", null ], + [ "setDelimiter", "class_p_i_config.html#ae196cc6e271aa930c7c0849150df868c", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_config_1_1_branch-members.html b/doc/html/class_p_i_config_1_1_branch-members.html new file mode 100644 index 00000000..b33130cd --- /dev/null +++ b/doc/html/class_p_i_config_1_1_branch-members.html @@ -0,0 +1,155 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIConfig::Branch Member List
+
+
+ +

This is the complete list of members for PIConfig::Branch, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
back()PIVector< Entry * >inline
back() constPIVector< Entry * >inline
clear()PIVector< Entry * >inline
compare_func(const Entry **t0, const Entry **t1)PIVector< Entry * >inlinestatic
contains(const Entry *&v) constPIVector< Entry * >inline
enlarge(llong piv_size)PIVector< Entry * >inline
etries(const Entry *&v) constPIVector< Entry * >inline
fill(const Entry *&f=Entry *())PIVector< Entry * >inline
front()PIVector< Entry * >inline
front() constPIVector< Entry * >inline
isEmpty() constPIVector< Entry * >inline
operator!=(const PIVector< Entry * > &t) constPIVector< Entry * >inline
PIVector< Entry * >::operator<<(const PIVector< Entry * > &other)PIVector< Entry * >inline
operator==(const PIVector< Entry * > &t) constPIVector< Entry * >inline
PIVector()PIVector< Entry * >inline
pop_back()PIVector< Entry * >inline
pop_front()PIVector< Entry * >inline
push_back(const Entry *&v)PIVector< Entry * >inline
push_front(const Entry *&v)PIVector< Entry * >inline
remove(size_t index, size_t count=1)PIVector< Entry * >inline
removeAll(const Entry *&v)PIVector< Entry * >inline
removeOne(const Entry *&v)PIVector< Entry * >inline
resize(size_t new_size, const Entry *&f=Entry *())PIVector< Entry * >inline
size() constPIVector< Entry * >inline
size_s() constPIVector< Entry * >inline
sort(CompareFunc compare=compare_func)PIVector< Entry * >inline
take_back()PIVector< Entry * >inline
take_front()PIVector< Entry * >inline
+
+ + + + diff --git a/doc/html/class_p_i_config_1_1_branch.html b/doc/html/class_p_i_config_1_1_branch.html new file mode 100644 index 00000000..51f32d45 --- /dev/null +++ b/doc/html/class_p_i_config_1_1_branch.html @@ -0,0 +1,140 @@ + + + + + + +PIP: PIConfig::Branch Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIConfig::Branch Class Reference
+
+
+ +

Branch is a list of entries of configuration file + More...

+
+ + Inheritance diagram for PIConfig::Branch:
+
+
+ +

Detailed Description

+

Branch is a list of entries of configuration file

+

Branch provides some features to get entries lists.

+
+ + + + diff --git a/doc/html/class_p_i_config_1_1_branch__inherit__graph.map b/doc/html/class_p_i_config_1_1_branch__inherit__graph.map new file mode 100644 index 00000000..a56c7cdb --- /dev/null +++ b/doc/html/class_p_i_config_1_1_branch__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_config_1_1_branch__inherit__graph.md5 b/doc/html/class_p_i_config_1_1_branch__inherit__graph.md5 new file mode 100644 index 00000000..67d484e1 --- /dev/null +++ b/doc/html/class_p_i_config_1_1_branch__inherit__graph.md5 @@ -0,0 +1 @@ +f08133386b6806cfb7f82c456c9ab7f2 \ No newline at end of file diff --git a/doc/html/class_p_i_config_1_1_branch__inherit__graph.svg b/doc/html/class_p_i_config_1_1_branch__inherit__graph.svg new file mode 100644 index 00000000..0699925a --- /dev/null +++ b/doc/html/class_p_i_config_1_1_branch__inherit__graph.svg @@ -0,0 +1,31 @@ + + + + + + +PIConfig::Branch + + +Node1 + +PIConfig::Branch + + +Node2 + + +PIVector< Entry * > + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_config_1_1_entry-members.html b/doc/html/class_p_i_config_1_1_entry-members.html new file mode 100644 index 00000000..28d7be59 --- /dev/null +++ b/doc/html/class_p_i_config_1_1_entry-members.html @@ -0,0 +1,184 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIConfig::Entry Member List
+
+
+ +

This is the complete list of members for PIConfig::Entry, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
child(const int index) const PIConfig::Entryinline
childCount() const PIConfig::Entryinline
children() const PIConfig::Entryinline
comment() const PIConfig::Entryinline
findChild(const PIString &name)PIConfig::Entryinline
findChild(const PIString &name) const PIConfig::Entryinline
fullName() const PIConfig::Entryinline
getValue(const PIString &vname, const PIString &def=PIString(), bool *exists=0)PIConfig::Entry
getValue(const PIString &vname, const char *def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const PIStringList &def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const bool def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const short def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const int def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const long def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const uchar def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const ushort def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const uint def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const ulong def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const float def, bool *exists=0)PIConfig::Entryinline
getValue(const PIString &vname, const double def, bool *exists=0)PIConfig::Entryinline
getValues(const PIString &vname)PIConfig::Entry
isEntryExists(const PIString &name) const PIConfig::Entryinline
isLeaf() const PIConfig::Entryinline
name() const PIConfig::Entryinline
operator bool()PIConfig::Entryinline
operator char()PIConfig::Entryinline
operator double()PIConfig::Entryinline
operator float()PIConfig::Entryinline
operator int()PIConfig::Entryinline
operator long()PIConfig::Entryinline
operator PIString()PIConfig::Entryinline
operator PIStringList()PIConfig::Entryinline
operator short()PIConfig::Entryinline
operator uchar()PIConfig::Entryinline
operator uint()PIConfig::Entryinline
operator ulong()PIConfig::Entryinline
operator ushort()PIConfig::Entryinline
parent() const PIConfig::Entryinline
setComment(const PIString &value)PIConfig::Entryinline
setName(const PIString &value)PIConfig::Entryinline
setType(const PIString &value)PIConfig::Entryinline
setValue(const PIString &value)PIConfig::Entryinline
setValue(const PIStringList &value)PIConfig::Entryinline
setValue(const char *value)PIConfig::Entryinline
setValue(const bool value)PIConfig::Entryinline
setValue(const char value)PIConfig::Entryinline
setValue(const short value)PIConfig::Entryinline
setValue(const int value)PIConfig::Entryinline
setValue(const long value)PIConfig::Entryinline
setValue(const uchar value)PIConfig::Entryinline
setValue(const ushort value)PIConfig::Entryinline
setValue(const uint value)PIConfig::Entryinline
setValue(const ulong value)PIConfig::Entryinline
setValue(const float value)PIConfig::Entryinline
setValue(const double value)PIConfig::Entryinline
type() const PIConfig::Entryinline
value() const PIConfig::Entryinline
+
+ + + + diff --git a/doc/html/class_p_i_config_1_1_entry.html b/doc/html/class_p_i_config_1_1_entry.html new file mode 100644 index 00000000..02e664a8 --- /dev/null +++ b/doc/html/class_p_i_config_1_1_entry.html @@ -0,0 +1,451 @@ + + + + + + +PIP: PIConfig::Entry Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIConfig::Entry Class Reference
+
+
+ +

Entry of configuration file + More...

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

+Public Member Functions

+Entryparent () const
 Returns parent entry, or 0 if there is no parent (root of default value)
 
+int childCount () const
 Returns children count.
 
+Branchchildren () const
 Returns children as PIConfig::Branch.
 
+Entrychild (const int index) const
 Returns child at index "index".
 
+EntryfindChild (const PIString &name)
 Returns first child with name "name".
 
+const EntryfindChild (const PIString &name) const
 Returns first child with name "name".
 
+bool isLeaf () const
 Returns true if there is no children.
 
+const PIStringname () const
 Returns name.
 
+const PIStringvalue () const
 Returns value.
 
+const PIStringtype () const
 Returns type.
 
+const PIStringcomment () const
 Returns comment.
 
const PIStringfullName () const
 Returns full name, i.e. name as it looks in file. More...
 
+EntrysetName (const PIString &value)
 Set name to "value" and returns this.
 
+EntrysetType (const PIString &value)
 Set type to "value" and returns this.
 
+EntrysetComment (const PIString &value)
 Set comment to "value" and returns this.
 
+EntrysetValue (const PIString &value)
 Set value to "value" and returns this.
 
+EntrysetValue (const PIStringList &value)
 Set value to "value" and returns this. Type is set to "l".
 
+EntrysetValue (const char *value)
 Set value to "value" and returns this. Type is set to "s".
 
+EntrysetValue (const bool value)
 Set value to "value" and returns this. Type is set to "b".
 
+EntrysetValue (const char value)
 Set value to "value" and returns this. Type is set to "s".
 
+EntrysetValue (const short value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const int value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const long value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const uchar value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const ushort value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const uint value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const ulong value)
 Set value to "value" and returns this. Type is set to "n".
 
+EntrysetValue (const float value)
 Set value to "value" and returns this. Type is set to "f".
 
+EntrysetValue (const double value)
 Set value to "value" and returns this. Type is set to "f".
 
EntrygetValue (const PIString &vname, const PIString &def=PIString(), bool *exists=0)
 Returns entry with name "vname" and default value "def". More...
 
+EntrygetValue (const PIString &vname, const char *def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const PIStringList &def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const bool def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const short def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const int def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const long def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const uchar def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const ushort def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const uint def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const ulong def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const float def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+EntrygetValue (const PIString &vname, const double def, bool *exists=0)
 Returns entry with name "vname" and default value "def".
 
+Branch getValues (const PIString &vname)
 Find all entries with names with substrings "vname" and returns them as PIConfig::Branch.
 
+bool isEntryExists (const PIString &name) const
 If there is no children returns if name == "name". Else returns if any child has name == "name".
 
operator bool ()
 Convertion to boolean.
 
operator char ()
 Convertion to char.
 
operator short ()
 Convertion to short.
 
operator int ()
 Convertion to int.
 
operator long ()
 Convertion to long.
 
operator uchar ()
 Convertion to uchar.
 
operator ushort ()
 Convertion to ushort.
 
operator uint ()
 Convertion to uint.
 
operator ulong ()
 Convertion to ulong.
 
operator float ()
 Convertion to float.
 
operator double ()
 Convertion to double.
 
operator PIString ()
 Convertion to PIString.
 
operator PIStringList ()
 Convertion to PIStringList.
 
+

Detailed Description

+

Entry of configuration file

+

This class is node of internal PIConfig tree. Entry provide access to elements of PIConfig. Each entry has children or next properties:

    +
  • name
  • +
  • value
  • +
  • type
  • +
  • comment
  • +
+

Each property is a PIString. These properties forms from text line with format:

<name> = <value> #<type> <comment>
+

Type and comment are optional fields. Type is a single letter immediately after comment symbol "#".
+
+Entry has many implicit convertions to common types: boolean, integers, float, double, PIString, PIStringList.
+
+Generally there is no need to create instance of PIConfig::Entry manually, it returns by functions getValue() of PIConfig, PIConfig::Entry or PIConfig::Branch. If there is no suitable entry to return, reference to internal instance of PIConfig::Entry with "default" value will be returned.

/* "example.conf"
+
a = 1
+
s0.a = A
+
s0.b = B
+
*/
+
PIConfig conf("example.conf", PIIODevice::ReadOnly);
+
PIConfig::Entry ce = conf.getValue("a");
+
int a = ce; // a = 1
+
PIString A = ce; // A = "1"
+
ce = conf.getValue("s0");
+
piCout << ce.childCount(); // 2
+
A = ce.getValue("b"); // A = "B"
+
A = conf.getValue("s0.a"); // A = "A"
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
const PIString& PIConfig::Entry::fullName () const
+
+inline
+
+ +

Returns full name, i.e. name as it looks in file.

+

In case of default entry full name always is empty

PIConfig conf("example.conf", PIIODevice::ReadOnly);
+
piCout << conf.getValue("a.b.c").name(); // "c"
+
piCout << conf.getValue("a.b.c").fullName(); // "a.b.c"
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIConfig::Entry & PIConfig::Entry::getValue (const PIStringvname,
const PIStringdef = PIString(),
bool * exists = 0 
)
+
+ +

Returns entry with name "vname" and default value "def".

+

If there is no suitable entry found, reference to default internal entry with value = "def" will be returned, and if "exists" not null it will be set to false

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_config_1_1_entry.js b/doc/html/class_p_i_config_1_1_entry.js new file mode 100644 index 00000000..11058583 --- /dev/null +++ b/doc/html/class_p_i_config_1_1_entry.js @@ -0,0 +1,60 @@ +var class_p_i_config_1_1_entry = +[ + [ "parent", "class_p_i_config_1_1_entry.html#a4127afcde1fe791a46bbd31ec111b86d", null ], + [ "childCount", "class_p_i_config_1_1_entry.html#a153b89897dc1f13847f7c2932a68bf9d", null ], + [ "children", "class_p_i_config_1_1_entry.html#ab3009e4da745a3657a0e21f1b37b617d", null ], + [ "child", "class_p_i_config_1_1_entry.html#a873896bbb710a12d14f0164bb31abc56", null ], + [ "findChild", "class_p_i_config_1_1_entry.html#aa3b36dd3fbf8af0f7bc2cb0e683a0ef1", null ], + [ "findChild", "class_p_i_config_1_1_entry.html#a63c45328044a43fb9ab7269a08eb0df0", null ], + [ "isLeaf", "class_p_i_config_1_1_entry.html#ac5a30b29cfcdde2513719b954a935220", null ], + [ "name", "class_p_i_config_1_1_entry.html#a17018e3886c186689c50b5b1523cfe9e", null ], + [ "value", "class_p_i_config_1_1_entry.html#a247679755f333bfd4398088122940ba3", null ], + [ "type", "class_p_i_config_1_1_entry.html#af1fcf69cc6be42f06468f59aa2614fb8", null ], + [ "comment", "class_p_i_config_1_1_entry.html#ae80c7013f86ad0be64811faa74a88a67", null ], + [ "fullName", "class_p_i_config_1_1_entry.html#a07d301e63f496b64dd18ab697ab1ed8f", null ], + [ "setName", "class_p_i_config_1_1_entry.html#a46ddf99ee1a724a9fb28d0947a4baf84", null ], + [ "setType", "class_p_i_config_1_1_entry.html#a8d18745edbfecaf560ee5d7b65dd8aa8", null ], + [ "setComment", "class_p_i_config_1_1_entry.html#a18f083b2d0fdff86e717938718c8be2b", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#ab853f549061be73216c6cf9a3b35eb2e", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#aaa54ae0f45ed6a9a831859bc2f23d19b", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a6b61be4474ee644b3481c5990ef6f6a9", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a25ef9be02eebed805878cfa0e8e8d1f0", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#af7b9092abef7e1817620d87ab77990fc", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#aa40ae09f7d30dcc31233d0a9a8311fe7", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a163fe43914c955a72141519d4b7a456a", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a9c4b2139fbf28d9950781a52e1c97bc0", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a1fa1e3d6caff65808f19b9ee95950154", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a7258173c103a96454f171177692d8d28", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a37ae1f65fcf05808e1327b8ccba1ca38", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a34288a020a8a8eac9ec8d96be22d4456", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a4c2e5bcbae8fc94d6a02099019dea723", null ], + [ "setValue", "class_p_i_config_1_1_entry.html#a1fb68e7559ea156c0ad3a1477713d901", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#af2e42a391ca7eb215de51af19985de7a", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a05bbbeed3dadb60e6bea03c749bfd6e4", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#ae50da453abb433db637f727dc18fd2ea", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#aa0e0499b5fc68a1d12259da24c7a3c2a", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a5a6ac80cb3daf664987b8b07f29a85e3", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a819012c8ada9a1d829fa076eed212d07", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a513d067edac5971ac9cb5546cc8ed9b0", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#ad92d8722f1390a0d46b194f6557edf02", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#ae0560a9ee49304088c0192b26e4fbbf5", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#ab75c9b8261196d24f8eee1183251474f", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#aa373eef636c8a372366bab7ca968a6ae", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a7868346fb50b9dc21d950c69e6a96657", null ], + [ "getValue", "class_p_i_config_1_1_entry.html#a6fd5ddc7b21c3d0cca6a2e885e8c29bd", null ], + [ "getValues", "class_p_i_config_1_1_entry.html#a42a7e4e6ccf80f82b2e35de26fcc6274", null ], + [ "isEntryExists", "class_p_i_config_1_1_entry.html#a2a45332b92375f45af0466487d9f9480", null ], + [ "operator bool", "class_p_i_config_1_1_entry.html#aed73af24f8cde6f1b57234a9ce97a920", null ], + [ "operator char", "class_p_i_config_1_1_entry.html#a4b29ac07d6a8c0e67eb6e4b6c345d157", null ], + [ "operator short", "class_p_i_config_1_1_entry.html#abd30994ea9658c723bfe53ad27cdd612", null ], + [ "operator int", "class_p_i_config_1_1_entry.html#a325a3c6c64f72cc129d95b56f0d0e2b9", null ], + [ "operator long", "class_p_i_config_1_1_entry.html#a60c00d0029ca1ecc9fc8c709db1e7c7b", null ], + [ "operator uchar", "class_p_i_config_1_1_entry.html#aabe52ad80e9051d30b40ab30297165cb", null ], + [ "operator ushort", "class_p_i_config_1_1_entry.html#a80bfe47eb1cf861ea9655d1dc9be7052", null ], + [ "operator uint", "class_p_i_config_1_1_entry.html#aac49561de0e3e8c1a6207b7395aad13b", null ], + [ "operator ulong", "class_p_i_config_1_1_entry.html#aedd0654a624229b0a9eac9fc47ecd162", null ], + [ "operator float", "class_p_i_config_1_1_entry.html#a5b301d721e422fc57ebd73f2ecc17187", null ], + [ "operator double", "class_p_i_config_1_1_entry.html#a2cf9ea4e32c819b2b725560a9ca49171", null ], + [ "operator PIString", "class_p_i_config_1_1_entry.html#ae2e947832d8a7116cf304a2db130da38", null ], + [ "operator PIStringList", "class_p_i_config_1_1_entry.html#a1154d48f87cef1df3bd02cce06006215", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_config__inherit__graph.map b/doc/html/class_p_i_config__inherit__graph.map new file mode 100644 index 00000000..e7151165 --- /dev/null +++ b/doc/html/class_p_i_config__inherit__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/doc/html/class_p_i_config__inherit__graph.md5 b/doc/html/class_p_i_config__inherit__graph.md5 new file mode 100644 index 00000000..5a60714d --- /dev/null +++ b/doc/html/class_p_i_config__inherit__graph.md5 @@ -0,0 +1 @@ +75ecf2961ec623305d3ee2a6d8abf2ed \ No newline at end of file diff --git a/doc/html/class_p_i_config__inherit__graph.svg b/doc/html/class_p_i_config__inherit__graph.svg new file mode 100644 index 00000000..7eaf1252 --- /dev/null +++ b/doc/html/class_p_i_config__inherit__graph.svg @@ -0,0 +1,70 @@ + + + + + + +PIConfig + + +Node1 + +PIConfig + + +Node2 + + +PIFile + + + + +Node2->Node1 + + + + +Node3 + + +PIIODevice + + + + +Node3->Node2 + + + + +Node4 + + +PIThread + + + + +Node4->Node3 + + + + +Node5 + + +PIObject + + + + +Node5->Node4 + + + + + diff --git a/doc/html/class_p_i_connection-members.html b/doc/html/class_p_i_connection-members.html new file mode 100644 index 00000000..3eb6bb17 --- /dev/null +++ b/doc/html/class_p_i_connection-members.html @@ -0,0 +1,254 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIConnection Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addChannel(const PIString &name_from, const PIString &name_to)PIConnection
addChannel(const PIString &name_from, const PIIODevice *dev_to)PIConnectioninline
addChannel(const PIIODevice *dev_from, const PIString &name_to)PIConnectioninline
addChannel(const PIIODevice *dev_from, const PIIODevice *dev_to)PIConnectioninline
addDevice(const PIString &full_path, PIIODevice::DeviceMode mode=PIIODevice::ReadWrite, bool start=false)PIConnection
addFilter(const PIString &name, const PIString &full_path_name, PIPacketExtractor::SplitMode mode=PIPacketExtractor::None)PIConnection
addFilter(const PIString &name, const PIIODevice *dev, PIPacketExtractor::SplitMode mode=PIPacketExtractor::None)PIConnectioninline
addSender(const PIString &name, const PIString &full_path, float frequency, bool start=false)PIConnection
addSender(const PIString &name, const PIIODevice *dev, float frequency, bool start=false)PIConnectioninline
allConnections()PIConnectionstatic
allDevices()PIConnectionstatic
boundedDevices() const PIConnection
channels() const PIConnection
className() const PIObjectinlinevirtual
clearSenderFixedData(const PIString &name)PIConnection
configureFromConfig(const PIString &config, const PIString &name)PIConnection
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
dataReceived(const PIString &from, const PIByteArray &data)PIConnectioninlineprotectedvirtual
dataReceivedEvent(const PIString &from, const PIByteArray &data)PIConnection
debug() const PIObjectinline
device(const PIString &full_path) const PIConnection
diagnostic(const PIString &full_path_name) const PIConnection
diagnostic(const PIIODevice *dev) const PIConnectioninline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
filter(const PIString &name) const PIConnection
filterBoundedDevices(const PIString &name) const PIConnection
filterNames() const PIConnection
filters() const PIConnection
filterValidateFooter(const PIString &filter_name, uchar *src, uchar *rec, int size)PIConnectionprotectedvirtual
filterValidateHeader(const PIString &filter_name, uchar *src, uchar *rec, int size)PIConnectionprotectedvirtual
filterValidatePayload(const PIString &filter_name, uchar *rec, int size)PIConnectionprotectedvirtual
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isEmpty() const PIConnectioninline
isPropertyExists(const PIString &name) const PIObjectinline
makeConfig() const PIConnection
name() const PIObjectinline
packetReceived(const PIString &from, const PIByteArray &data)PIConnectioninlineprotectedvirtual
packetReceivedEvent(const PIString &from, const PIByteArray &data)PIConnection
PIConnection()PIConnection
PIConnection(const PIString &name)PIConnection
PIConnection(const PIString &config, const PIString &name)PIConnection
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
removeAllChannels()PIConnection
removeAllDevices()PIConnection
removeAllFilters()PIConnection
removeAllSenders()PIConnection
removeChannel(const PIString &name_from, const PIString &name_to)PIConnection
removeChannel(const PIString &name_from, const PIIODevice *dev_to)PIConnectioninline
removeChannel(const PIIODevice *dev_from, const PIString &name_to)PIConnectioninline
removeChannel(const PIIODevice *dev_from, const PIIODevice *dev_to)PIConnectioninline
removeChannel(const PIString &name_from)PIConnection
removeChannel(const PIIODevice *dev_from)PIConnectioninline
removeDevice(const PIString &full_path)PIConnection
removeFilter(const PIString &name, const PIString &full_path_name)PIConnection
removeFilter(const PIString &name, const PIIODevice *dev)PIConnection
removeFilter(const PIString &name)PIConnection
removeSender(const PIString &name, const PIString &full_path)PIConnection
removeSender(const PIString &name, const PIIODevice *dev)PIConnectioninline
removeSender(const PIString &name)PIConnection
senderData(const PIString &sender_name)PIConnectionprotectedvirtual
senderFixedData(const PIString &name) const PIConnection
senderFrequency(const PIString &name) const PIConnection
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSenderFixedData(const PIString &name, const PIByteArray &data)PIConnection
start()PIConnectioninline
startAllSenders()PIConnection
startAllThreadedReads()PIConnection
startSender(const PIString &name)PIConnection
startThreadedRead(const PIString &full_path)PIConnection
startThreadedRead(const PIIODevice *dev)PIConnectioninline
stop()PIConnectioninline
stopAllSenders()PIConnection
stopAllThreadedReads()PIConnection
stopSender(const PIString &name)PIConnection
stopThreadedRead(const PIString &full_path)PIConnection
stopThreadedRead(const PIIODevice *dev)PIConnectioninline
superClassName() const PIObjectinlinevirtual
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
write(const PIString &full_path, const PIByteArray &data)PIConnection
write(const PIIODevice *dev, const PIByteArray &data)PIConnectioninline
+
+ + + + diff --git a/doc/html/class_p_i_connection.html b/doc/html/class_p_i_connection.html new file mode 100644 index 00000000..60362ab2 --- /dev/null +++ b/doc/html/class_p_i_connection.html @@ -0,0 +1,1004 @@ + + + + + + +PIP: PIConnection Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Complex Input/Output point. + More...

+
+ + Inheritance diagram for PIConnection:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIConnection ()
 Constructs an empty connection.
 
PIConnection (const PIString &name)
 Constructs connection with name "name".
 
PIConnection (const PIString &config, const PIString &name)
 Constructs connection and configure it from config file "config" from section "name".
 
bool configureFromConfig (const PIString &config, const PIString &name)
 Configure connection from config file "config" from section "name". Returns if configuration was successful. More...
 
+PIString makeConfig () const
 Returns config file section of current connection configuration.
 
PIIODeviceaddDevice (const PIString &full_path, PIIODevice::DeviceMode mode=PIIODevice::ReadWrite, bool start=false)
 Add device with full path "full_path", open mode "mode" to Device pool and connection. More...
 
bool removeDevice (const PIString &full_path)
 Remove device with full path "full_path" from connection. More...
 
void removeAllDevices ()
 Remove all device from connection. More...
 
+PIIODevicedevice (const PIString &full_path) const
 Returns device with full path "full_path" or null if there is no such device.
 
+PIVector< PIIODevice * > boundedDevices () const
 Returns all devices bounded to this connection.
 
PIPacketExtractoraddFilter (const PIString &name, const PIString &full_path_name, PIPacketExtractor::SplitMode mode=PIPacketExtractor::None)
 Add filter with name "name" to device with full path "full_path_name" or filter "full_path_name". More...
 
+PIPacketExtractoraddFilter (const PIString &name, const PIIODevice *dev, PIPacketExtractor::SplitMode mode=PIPacketExtractor::None)
 Add filter with name "name" to device "dev".
 
bool removeFilter (const PIString &name, const PIString &full_path_name)
 Remove from filter with name "name" device with full path "full_path_name" or filter "full_path_name". More...
 
+bool removeFilter (const PIString &name, const PIIODevice *dev)
 Remove from filter with name "name" device or filter "dev".
 
+bool removeFilter (const PIString &name)
 Remove filter with name "name". Returns if filter was removed.
 
+void removeAllFilters ()
 Remove all filters from connection.
 
+PIVector< PIPacketExtractor * > filters () const
 Returns all filters of connection.
 
+PIStringList filterNames () const
 Returns all filter names of connection.
 
+PIPacketExtractorfilter (const PIString &name) const
 Returns PIPacketExtractor * assosiated with filter "name" or null if there is no such filter.
 
+PIVector< PIIODevice * > filterBoundedDevices (const PIString &name) const
 Returns all devices bounded to filter "name".
 
bool addChannel (const PIString &name_from, const PIString &name_to)
 Add to connection channel from "name_from" to "name_to". More...
 
+bool addChannel (const PIString &name_from, const PIIODevice *dev_to)
 Add to connection channel from "name_from" to "dev_to".
 
+bool addChannel (const PIIODevice *dev_from, const PIString &name_to)
 Add to connection channel from "dev_from" to "name_to".
 
+bool addChannel (const PIIODevice *dev_from, const PIIODevice *dev_to)
 Add to connection channel from "dev_from" to "dev_to".
 
bool removeChannel (const PIString &name_from, const PIString &name_to)
 Remove from connection channel from "name_from" to "name_to". More...
 
+bool removeChannel (const PIString &name_from, const PIIODevice *dev_to)
 Remove from connection channel from "name_from" to "dev_to".
 
+bool removeChannel (const PIIODevice *dev_from, const PIString &name_to)
 Remove from connection channel from "dev_from" to "name_to".
 
+bool removeChannel (const PIIODevice *dev_from, const PIIODevice *dev_to)
 Remove from connection channel from "dev_from" to "dev_to".
 
bool removeChannel (const PIString &name_from)
 Remove from connection all channels from "name_from". More...
 
+bool removeChannel (const PIIODevice *dev_from)
 Remove from connection all channels from "dev_from".
 
+void removeAllChannels ()
 Remove from connection all channels.
 
+PIVector< PIPair< PIString,
+PIString > > 
channels () const
 Returns all channels of this connection as full pathes or filter names pair array (from, to)
 
void addSender (const PIString &name, const PIString &full_path, float frequency, bool start=false)
 Add to connection sender with name "name" device with full path "full_path". More...
 
+void addSender (const PIString &name, const PIIODevice *dev, float frequency, bool start=false)
 Add to connection sender with name "name" device "dev".
 
bool removeSender (const PIString &name, const PIString &full_path)
 Remove from sender with name "name" device with full path "full_path_name". More...
 
+bool removeSender (const PIString &name, const PIIODevice *dev)
 Remove from sender with name "name" device "dev".
 
+bool removeSender (const PIString &name)
 Remove sender with name "name", returns if sender was removed.
 
+bool setSenderFixedData (const PIString &name, const PIByteArray &data)
 Set sender "name" fixed send data "data", returns if sender exists.
 
+bool clearSenderFixedData (const PIString &name)
 Remove sender "name" fixed send data, returns if sender exists.
 
+PIByteArray senderFixedData (const PIString &name) const
 Returns sender "name" fixed send data.
 
+float senderFrequency (const PIString &name) const
 Returns sender "name" timer frequency, -1 if there is no such sender, or 0 if sender is not started yet.
 
+void removeAllSenders ()
 Remove from connection all senders.
 
+void startThreadedRead (const PIString &full_path)
 Start read thread of device with full path "full_path".
 
+void startThreadedRead (const PIIODevice *dev)
 Start read thread of device "dev".
 
+void startAllThreadedReads ()
 Start read threads of all Device pool device.
 
+void startSender (const PIString &name)
 Start sender "name" timer.
 
+void startAllSenders ()
 Start all senders timers.
 
+void start ()
 Start all read threads and senders.
 
+void stopThreadedRead (const PIString &full_path)
 Stop read thread of device with full path "full_path".
 
+void stopThreadedRead (const PIIODevice *dev)
 Stop read thread of device "dev".
 
+void stopAllThreadedReads ()
 Stop read threads of all Device pool device.
 
+void stopSender (const PIString &name)
 Stop sender "name" timer.
 
+void stopAllSenders ()
 Stop all senders timers.
 
+void stop ()
 Stop all read threads and senders.
 
+bool isEmpty () const
 Returns if there are no devices in this connection.
 
+PIDiagnosticsdiagnostic (const PIString &full_path_name) const
 Returns PIDiagnostics * assosiated with device with full path "full_path_name" or filter "full_path_name".
 
+PIDiagnosticsdiagnostic (const PIIODevice *dev) const
 Returns PIDiagnostics * assosiated with device or filter "dev".
 
+int write (const PIString &full_path, const PIByteArray &data)
 Write data "data" to device with full path "full_path" and returns result of write() function of device.
 
+int write (const PIIODevice *dev, const PIByteArray &data)
 Write data "data" to device "dev" and returns result of write() function of device.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + +

+Static Public Member Functions

+static PIVector< PIConnection * > allConnections ()
 Returns all connections in application.
 
+static PIVector< PIIODevice * > allDevices ()
 Returns all devices in Device pool.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+virtual void dataReceived (const PIString &from, const PIByteArray &data)
 Executes on data received from device with full path "from".
 
+virtual void packetReceived (const PIString &from, const PIByteArray &data)
 Executes on packet received from filter with name "from".
 
+virtual bool filterValidateHeader (const PIString &filter_name, uchar *src, uchar *rec, int size)
 Validate header "rec" with source header "src" and size "size", executes from filter "filter_name".
 
+virtual bool filterValidateFooter (const PIString &filter_name, uchar *src, uchar *rec, int size)
 Validate footer "rec" with source footer "src" and size "size", executes from filter "filter_name".
 
+virtual bool filterValidatePayload (const PIString &filter_name, uchar *rec, int size)
 Validate payload "rec" with size "size", executes from filter "filter_name".
 
+virtual PIByteArray senderData (const PIString &sender_name)
 You should returns data for sender "sender_name".
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + +

+Events

+void dataReceivedEvent (const PIString &from, const PIByteArray &data)
 Raise on data received from device with full path "from".
 
+void packetReceivedEvent (const PIString &from, const PIByteArray &data)
 Raise on packet received from filter with name "from".
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

+

Detailed Description

+

Complex Input/Output point.

+

+Synopsis

+

PIConnection provides abstract layer over physical devices, filtering and connecting data streams. Each PIConnection works through Device Pool, so several PIConnections can read from single physical device. General scheme:

+piconnection.png +
+

+Device pool concept

+

Device pool is static object, single for each application, which contains unique devices. Each PIConnection works with real devices through Device pool. Each device has assosiated thread for read and it can be started or stopped with PIConnection functions startThreadedRead() and stopThreadedRead().

+

+Filters

+

PIConnection filter is a PIPacketExtractor and assosiated array of devices or other filters. When read thread is successfully read from device this data can be passed to one or more filters. Each filter has name and filter names should be unique. You can use this name for access to PIPacketExtractor* with function filter(), or get array of assosiated devices and filters with function filterBoundedDevices(). One filter can receive data from several sources, and can be bounded to several filters.

+piconnection_filters.png +
+

+Diagnostics

+

PIConnection create PIDiagnostics for each device or filter. You can access to these objects with functions diagnostic().

+

+Senders

+

PIConnection can send data to devices with named timers ("senders"). You can create sender or add device to sender with function addSender(). Each sender has internal timer and every tick execute virtual function senderData(). Returns value of this function sended to bounded devices. You can assign fixed send data to sender with function setSenderFixedData(). In this case sender will NOT execute senderData(), but send assigned data.

+piconnection_senders.png +
+

+Configuration

+

You can create PIConnection from config file section or configure it later with function configureFromConfig(). Devices describes with its full pathes, for details see Creating devices by unambiguous string. Example:

+piconnection_conf.png +
+

Also PIConnection can create PIString with its configuration with function makeConfig(). This string can be directly inserted into the config file.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool PIConnection::configureFromConfig (const PIStringconfig,
const PIStringname 
)
+
+ +

Configure connection from config file "config" from section "name". Returns if configuration was successful.

+

Warning: all devices, filters and channels removed before configure!

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIIODevice * PIConnection::addDevice (const PIStringfull_path,
PIIODevice::DeviceMode mode = PIIODevice::ReadWrite,
bool start = false 
)
+
+ +

Add device with full path "full_path", open mode "mode" to Device pool and connection.

+

Returns pointer to device or null if device can not be created. If "start" is true, read thread is started immediately. Else, you can start read thread with functions startThreadedRead() or startAllThreadedReads(). By default, read thread doesn`t start

+ +
+
+ +
+
+ + + + + + + + +
bool PIConnection::removeDevice (const PIStringfull_path)
+
+ +

Remove device with full path "full_path" from connection.

+

Returns if device was removed. If there is no connection bounded to this device, it will be removed from Device pool

+ +
+
+ +
+
+ + + + + + + +
void PIConnection::removeAllDevices ()
+
+ +

Remove all device from connection.

+

If there is no connection bounded to there devices, they removed from Device pool

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIPacketExtractor * PIConnection::addFilter (const PIStringname,
const PIStringfull_path_name,
PIPacketExtractor::SplitMode mode = PIPacketExtractor::None 
)
+
+ +

Add filter with name "name" to device with full path "full_path_name" or filter "full_path_name".

+

If there is no filter with name "name", connection create new with split mode "mode" and bound to it device "full_path_name" or filter "full_path_name". If filter with name "name" already exists, device "full_path_name" or filter "full_path_name" add to this filter. This function returns PIPacketExtractor * assosiated with this filter
+ Attention! "mode" is altual olny if new filter was created!

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool PIConnection::removeFilter (const PIStringname,
const PIStringfull_path_name 
)
+
+ +

Remove from filter with name "name" device with full path "full_path_name" or filter "full_path_name".

+

If there is no devices bounded to this filter, it will be removed. Returns if device was removed

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool PIConnection::addChannel (const PIStringname_from,
const PIStringname_to 
)
+
+ +

Add to connection channel from "name_from" to "name_to".

+

"name_from" and "name_to" can be full pathes of devices or filter names. Returns false if there if no such device or filter, else create channel and returns true

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool PIConnection::removeChannel (const PIStringname_from,
const PIStringname_to 
)
+
+ +

Remove from connection channel from "name_from" to "name_to".

+

"name_from" and "name_to" can be full pathes of devices or filter names. Returns false if there if no such device or filter, else remove channel and returns true

+ +
+
+ +
+
+ + + + + + + + +
bool PIConnection::removeChannel (const PIStringname_from)
+
+ +

Remove from connection all channels from "name_from".

+

"name_from" can be full path of device or filter name. Returns false if there if no such device or filter, else remove channels and returns true

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void PIConnection::addSender (const PIStringname,
const PIStringfull_path,
float frequency,
bool start = false 
)
+
+ +

Add to connection sender with name "name" device with full path "full_path".

+

If there is no sender with name "name", connection create new, bound to it device "full_path_name" and start sender timer with frequency "frequency". If sender with name "name" already exists, device "full_path_name" add to this sender If "start" is true, sender is started immediately. Else, you can start sender with functions startSender()
+ Attention! "frequency" is altual olny if new sender was created!

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool PIConnection::removeSender (const PIStringname,
const PIStringfull_path 
)
+
+ +

Remove from sender with name "name" device with full path "full_path_name".

+

If there is no devices bounded to this sender, it will be removed. Returns if sender was removed

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_connection.js b/doc/html/class_p_i_connection.js new file mode 100644 index 00000000..400db582 --- /dev/null +++ b/doc/html/class_p_i_connection.js @@ -0,0 +1,70 @@ +var class_p_i_connection = +[ + [ "PIConnection", "class_p_i_connection.html#a73a93e8330a2852cf1c76c0fa33b8eff", null ], + [ "PIConnection", "class_p_i_connection.html#ad9bf5c0c48488d2576b6545ecb75e22a", null ], + [ "PIConnection", "class_p_i_connection.html#a245a605ddceaf33c0b2a9e66378c0c98", null ], + [ "configureFromConfig", "class_p_i_connection.html#a78a788e328f8ec243c8cd6f93aca47bd", null ], + [ "makeConfig", "class_p_i_connection.html#aa7333225423095feac73e903dfef3e32", null ], + [ "addDevice", "class_p_i_connection.html#abef3fbce379e0f8cf01b3c12c1e6b297", null ], + [ "removeDevice", "class_p_i_connection.html#ab6579532c7de05b4ac379a9ca2ea8ec9", null ], + [ "removeAllDevices", "class_p_i_connection.html#a01600f5a22b49eb796fbf245a0853b6d", null ], + [ "device", "class_p_i_connection.html#a4bf1efff7318d598d0c47bb474869fe6", null ], + [ "boundedDevices", "class_p_i_connection.html#a6efb56a368a5498f63b5c6e15dfebcf9", null ], + [ "addFilter", "class_p_i_connection.html#a1105a544b2018fbee5ccf8bf026991c1", null ], + [ "addFilter", "class_p_i_connection.html#aee76c16fda7f9e6f09748caa1e512487", null ], + [ "removeFilter", "class_p_i_connection.html#a82a9d3c484bbc073ef7d9196343e1368", null ], + [ "removeFilter", "class_p_i_connection.html#a870f2081626fa2aa352069a19b1c52ff", null ], + [ "removeFilter", "class_p_i_connection.html#a1d486b41013a8cc455a5a07529d2eea3", null ], + [ "removeAllFilters", "class_p_i_connection.html#a762b4641d14843628d7af4af8212bbf9", null ], + [ "filters", "class_p_i_connection.html#a3960ea85b7a1fad838fa84772ecf9695", null ], + [ "filterNames", "class_p_i_connection.html#aa6a4ea015798acdb8b5c0fd52156cd7f", null ], + [ "filter", "class_p_i_connection.html#a556da00110cff970ed19d850b708cf29", null ], + [ "filterBoundedDevices", "class_p_i_connection.html#a7f1910e132f8e9991f89444d0c3ec764", null ], + [ "addChannel", "class_p_i_connection.html#ac633cbd86559b6c5f39c2de7d02d3c6f", null ], + [ "addChannel", "class_p_i_connection.html#a0345dc20954d0cde05504e23b5db9e94", null ], + [ "addChannel", "class_p_i_connection.html#aeee8312bb71cd0417e7079f67f2849e8", null ], + [ "addChannel", "class_p_i_connection.html#a72e9bed935739be4aff88c08df5af73e", null ], + [ "removeChannel", "class_p_i_connection.html#ab512962f328b702d416a13d577937524", null ], + [ "removeChannel", "class_p_i_connection.html#af4e276c0cf30890cb7e599ffdbe0b9e8", null ], + [ "removeChannel", "class_p_i_connection.html#acf9fb8b023f09c12b64809928951dfd1", null ], + [ "removeChannel", "class_p_i_connection.html#aa3d4e83032706f342f70f25928a87bfa", null ], + [ "removeChannel", "class_p_i_connection.html#a95bcc784d1436285666d141955468227", null ], + [ "removeChannel", "class_p_i_connection.html#ace1bad69c9498f390fd324f5ec11683c", null ], + [ "removeAllChannels", "class_p_i_connection.html#a2ef0febef147d0314b8ec312e81d535a", null ], + [ "channels", "class_p_i_connection.html#a9b6d693bd94c74a09b3374cbc9bbf65c", null ], + [ "addSender", "class_p_i_connection.html#a51c44629c4a2eb7194bfabf16e8c1f5a", null ], + [ "addSender", "class_p_i_connection.html#adbfdd3671eb66e4967312b411a757697", null ], + [ "removeSender", "class_p_i_connection.html#a0f502ebce46f41bf58975652bac7346c", null ], + [ "removeSender", "class_p_i_connection.html#a6e94e0174cecb9a57571be67ead71381", null ], + [ "removeSender", "class_p_i_connection.html#a34af1d09b375682bdcd25590153530d1", null ], + [ "setSenderFixedData", "class_p_i_connection.html#aa547b4a4e64e9adf0c7c45171160bded", null ], + [ "clearSenderFixedData", "class_p_i_connection.html#aea2898a9729c594ab7bd174425ae8dcf", null ], + [ "senderFixedData", "class_p_i_connection.html#a94acbae950358c2d47b6f71048d4ce4a", null ], + [ "senderFrequency", "class_p_i_connection.html#afc32d50f589771ab51d90df92960a9af", null ], + [ "removeAllSenders", "class_p_i_connection.html#a0c7c309e54c2c09a779c25843dd13efd", null ], + [ "startThreadedRead", "class_p_i_connection.html#a0172eca55562a296daa6e971d879443d", null ], + [ "startThreadedRead", "class_p_i_connection.html#acb0bfcc3c1e36d1d9881e31a331e2d59", null ], + [ "startAllThreadedReads", "class_p_i_connection.html#aa0319a04d2b0a72809347b556fbde478", null ], + [ "startSender", "class_p_i_connection.html#ae21103d16eb22cefe68cf5f237f2052a", null ], + [ "startAllSenders", "class_p_i_connection.html#ab4cb20685c610275c31c4c1a4e4de9c6", null ], + [ "start", "class_p_i_connection.html#a296ce68f2f85085bf4ecfb71580587c4", null ], + [ "stopThreadedRead", "class_p_i_connection.html#a57f58250839c50d221d32f8d1fb62737", null ], + [ "stopThreadedRead", "class_p_i_connection.html#a5ca12246273a1871fe6c53d535f7ab7f", null ], + [ "stopAllThreadedReads", "class_p_i_connection.html#a48c592b6ce3b7d629a379d3858d3fcfa", null ], + [ "stopSender", "class_p_i_connection.html#ab2021a8aadf16591b52196a368700ba6", null ], + [ "stopAllSenders", "class_p_i_connection.html#a96a185e9d93134b8d092265c230158a3", null ], + [ "stop", "class_p_i_connection.html#afd9148e6424e609eff5e42e456788533", null ], + [ "isEmpty", "class_p_i_connection.html#a3a3c31ebf6f1613ae421483ea360d7b2", null ], + [ "diagnostic", "class_p_i_connection.html#a8331d46bea526c5f74958315d725e14b", null ], + [ "diagnostic", "class_p_i_connection.html#a864db6b1ef3905ae761d249f69cbb12b", null ], + [ "write", "class_p_i_connection.html#a37960527c1357e6e2e58e2656c21719b", null ], + [ "write", "class_p_i_connection.html#ad659e36901a3b7c1724325c74473157f", null ], + [ "dataReceivedEvent", "class_p_i_connection.html#afdec29f2680315ace29a8b8f1c445e00", null ], + [ "packetReceivedEvent", "class_p_i_connection.html#a0f25a2e5625a1c33a3cd4d494ea3b9da", null ], + [ "dataReceived", "class_p_i_connection.html#a0646157ff90676be46c8e96a9dfce78f", null ], + [ "packetReceived", "class_p_i_connection.html#a3883e8b65fccb1b85c810c690bb820c6", null ], + [ "filterValidateHeader", "class_p_i_connection.html#a6f8f899f40de092639f1e0cefe95c968", null ], + [ "filterValidateFooter", "class_p_i_connection.html#a2691ceec3dea8c0588f8afd74359277e", null ], + [ "filterValidatePayload", "class_p_i_connection.html#ad883e4b2174fc086da98b1dbcad69aaf", null ], + [ "senderData", "class_p_i_connection.html#a023551841a2209d5ada16c376feb91f9", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_connection__inherit__graph.map b/doc/html/class_p_i_connection__inherit__graph.map new file mode 100644 index 00000000..eac7403f --- /dev/null +++ b/doc/html/class_p_i_connection__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_connection__inherit__graph.md5 b/doc/html/class_p_i_connection__inherit__graph.md5 new file mode 100644 index 00000000..da832d7a --- /dev/null +++ b/doc/html/class_p_i_connection__inherit__graph.md5 @@ -0,0 +1 @@ +ec9e1967648638ed4186f0d20c63e3ca \ No newline at end of file diff --git a/doc/html/class_p_i_connection__inherit__graph.svg b/doc/html/class_p_i_connection__inherit__graph.svg new file mode 100644 index 00000000..c2e0a170 --- /dev/null +++ b/doc/html/class_p_i_connection__inherit__graph.svg @@ -0,0 +1,31 @@ + + + + + + +PIConnection + + +Node1 + +PIConnection + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_console-members.html b/doc/html/class_p_i_console-members.html new file mode 100644 index 00000000..c27ad47b --- /dev/null +++ b/doc/html/class_p_i_console-members.html @@ -0,0 +1,292 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIConsole Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addBitVariable(const PIString &name, const void *ptr, int fromBit, int bitsCount, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addCustomStatus(const PIString &str)PIConsoleinline
addEmptyLine(int column=1, uint count=1)PIConsole
addString(const PIString &name, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addTab(const PIString &name, char bind_key=0)PIConsole
addVariable(const PIString &name, const PIString *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const char *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const bool *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const short *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const int *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const long *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const llong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const uchar *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const ushort *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const uint *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const ulong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const ullong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const float *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const double *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const PISystemTime *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const PIProtocol *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
addVariable(const PIString &name, const PIDiagnostics *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)PIConsole
Alignment enum namePIConsole
BackBlack enum valuePIConsole
BackBlue enum valuePIConsole
BackCyan enum valuePIConsole
BackGreen enum valuePIConsole
BackMagenta enum valuePIConsole
BackRed enum valuePIConsole
BackWhite enum valuePIConsole
BackYellow enum valuePIConsole
Bin enum valuePIConsole
Black enum valuePIConsole
Blink enum valuePIConsole
Blue enum valuePIConsole
Bold enum valuePIConsole
className() const PIObjectinlinevirtual
clearCustomStatus()PIConsoleinline
clearTabs(bool clearScreen=true)PIConsoleinline
clearVariables(bool clearScreen)PIConsoleinline
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
currentTab() const PIConsoleinline
Cyan enum valuePIConsole
data() const PIThreadinline
debug() const PIObjectinline
Dec enum valuePIConsole
defaultAlignment() const PIConsoleinline
disableExitCapture()PIConsoleinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
enableExitCapture(char key= 'Q')PIConsoleinline
end()PIThreadinlineprotectedvirtual
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
exitCaptured() const PIConsoleinline
exitKey() const PIConsoleinline
findByName(const PIString &name)PIObjectinlinestatic
Format enum namePIConsole
Green enum valuePIConsole
HANDLERPIObjectrelated
Hex enum valuePIConsole
Inverse enum valuePIConsole
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
keyPressed(char key, void *data)PIConsole
Left enum valuePIConsole
lock()PIThreadinline
Magenta enum valuePIConsole
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
Normal enum valuePIConsole
Nothing enum valuePIConsole
Oct enum valuePIConsole
PIConsole(bool startNow=true, KBFunc slot=0)PIConsole
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
priority() const PIThreadinline
Priority enum namePIThread
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
Red enum valuePIConsole
removeTab(uint index)PIConsole
removeTab(const PIString &name)PIConsole
Right enum valuePIConsole
Scientific enum valuePIConsole
setColumnAlignment(int col, Alignment align)PIConsoleinline
setColumnAlignmentToAll(Alignment align)PIConsoleinline
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setDefaultAlignment(Alignment align)PIConsoleinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
setTab(uint index)PIConsole
setTab(const PIString &name)PIConsole
setTabBindKey(uint index, char bind_key)PIConsole
setTabBindKey(const PIString &name, char bind_key)PIConsole
start(bool wait)PIConsoleinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stop(bool clear)PIConsole
stopped()PIThread
superClassName() const PIObjectinlinevirtual
SystemTimeSeconds enum valuePIConsole
SystemTimeSplit enum valuePIConsole
tabsCount() const PIConsoleinline
terminate()PIThread
Underline enum valuePIConsole
unlock()PIThreadinline
waitForFinish()PIConsoleinline
PIThread::waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
White enum valuePIConsole
Yellow enum valuePIConsole
+
+ + + + diff --git a/doc/html/class_p_i_console.html b/doc/html/class_p_i_console.html new file mode 100644 index 00000000..03158824 --- /dev/null +++ b/doc/html/class_p_i_console.html @@ -0,0 +1,966 @@ + + + + + + +PIP: PIConsole Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIConsole Class Reference
+
+
+ +

Console output class. + More...

+
+ + Inheritance diagram for PIConsole:
+
+
+ + + + + + + + + + + + + +

+Public Types

enum  Format {
+  Normal = 0x01, +Bold = 0x02 +, Underline = 0x10, +Blink = 0x20, +
+  Inverse = 0x40, +Black = 0x100, +Red = 0x200, +Green = 0x400, +
+  Yellow = 0x800, +Blue = 0x1000, +Magenta = 0x2000, +Cyan = 0x4000, +
+  White = 0x8000, +BackBlack = 0x10000, +BackRed = 0x20000, +BackGreen = 0x40000, +
+  BackYellow = 0x80000, +BackBlue = 0x100000, +BackMagenta = 0x200000, +BackCyan = 0x400000, +
+  BackWhite = 0x800000, +Dec = 0x1000000, +Hex = 0x2000000, +Oct = 0x4000000, +
+  Bin = 0x8000000, +Scientific = 0x10000000, +SystemTimeSplit = 0x20000000, +SystemTimeSeconds = 0x40000000 +
+ }
 Variables output format. More...
 
enum  Alignment { Nothing, +Left, +Right + }
 Column labels alignment. More...
 
- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIConsole (bool startNow=true, KBFunc slot=0)
 Constructs PIConsole with key handler "slot" and if "startNow" start it.
 
+void addString (const PIString &name, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" string "name" with format "format".
 
+void addVariable (const PIString &name, const PIString *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const char *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const bool *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const short *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const int *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const long *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const llong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const uchar *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const ushort *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const uint *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const ulong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const ullong *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const float *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const double *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
+void addVariable (const PIString &name, const PISystemTime *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".
 
void addVariable (const PIString &name, const PIProtocol *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format". More...
 
void addVariable (const PIString &name, const PIDiagnostics *ptr, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format". More...
 
+void addBitVariable (const PIString &name, const void *ptr, int fromBit, int bitsCount, int column=1, PIFlags< PIConsole::Format > format=PIConsole::Normal)
 Add to current tab to column "column" bits field with label "name", pointer "ptr" and format "format".
 
+void addEmptyLine (int column=1, uint count=1)
 Add to current tab to column "column" "count" empty lines.
 
+uint tabsCount () const
 Returns tabs count.
 
+PIString currentTab () const
 Returns current tab name.
 
+int addTab (const PIString &name, char bind_key=0)
 Add new tab with name "name", bind key "bind_key" and returns this tab index.
 
+void removeTab (uint index)
 Remove tab with index "index".
 
+void removeTab (const PIString &name)
 Remove tab with name "name".
 
+bool setTab (uint index)
 Set current tab to tab with index "index", returns if tab exists.
 
+bool setTab (const PIString &name)
 Set current tab to tab with name "name", returns if tab exists.
 
+bool setTabBindKey (uint index, char bind_key)
 Set tab with index "index" bind key to "bind_key", returns if tab exists.
 
+bool setTabBindKey (const PIString &name, char bind_key)
 Set tab with name "name" bind key to "bind_key", returns if tab exists.
 
+void clearTabs (bool clearScreen=true)
 Remove all tabs and if "clearScreen" clear the screen.
 
+void addCustomStatus (const PIString &str)
 Set custom status text of current tab to "str".
 
+void clearCustomStatus ()
 Clear custom status text of current tab.
 
+Alignment defaultAlignment () const
 Returns default alignment.
 
+void setDefaultAlignment (Alignment align)
 Set default alignment to "align".
 
+void setColumnAlignment (int col, Alignment align)
 Set column "col" alignment to "align".
 
+void setColumnAlignmentToAll (Alignment align)
 Set all columns of all tabs alignment to "align".
 
+void enableExitCapture (char key= 'Q')
 Directly call function from PIKbdListener.
 
+void disableExitCapture ()
 Directly call function from PIKbdListener.
 
+bool exitCaptured () const
 Directly call function from PIKbdListener.
 
+char exitKey () const
 Directly call function from PIKbdListener.
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + +

+Handlers

+void clearVariables (bool clearScreen)
 Remove all columns at current tab and if "clearScreen" clear the screen.
 
+void waitForFinish ()
 block until finished (exit key will be pressed)
 
+void start (bool wait)
 Start console output and if "wait" block until finished (exit key will be pressed)
 
+void stop (bool clear)
 Stop console output and if "clear" clear the screen.
 
+ + + + +

+Events

+void keyPressed (char key, void *data)
 Raise on key "key" pressed, "data" is pointer to PIConsole object.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
- Protected Member Functions inherited from PIThread
+virtual void end ()
 Function executed once at the end of thread.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+

Detailed Description

+

Console output class.

+

+Synopsis

+

This class provides output to console with automatic alignment and update. It supports tabs, keyboard listening, formats and colors.

+

+Layout

+

PIConsole works with variable pointers. You should add your variables with functions addVariable() which receives label name, pointer to variable and optional column and format. Columns count is dynamically increased if new column used. E.g. if you add variable to empty tab to column 3, columns count will be increased to 3, but two firsts columns will be empty. Each column filled from top to bottom, but you can add just string with function addString() or add empty line with function addEmptyLine(). Layout scheme:

+piconsole_layout.png +
+

+Keyboard usage

+

PIConsole should to be single in application. PIConsole aggregate PIKbdListener which grab keyboard and automatic switch tabs by theirs bind keys. If there is no tab binded to pressed key external function "slot" will be called

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIConsole::Format
+
+ +

Variables output format.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
Normal  +

Default console format

+
Bold  +

Bold text

+
Underline  +

Underlined text

+
Blink  +

Blinked text

+
Inverse  +

Swap text and background colors

+
Black  +

Black text

+
Red  +

Red text

+
Green  +

Green text

+
Yellow  +

Yellow text

+
Blue  +

Blue text

+
Magenta  +

Magenta text

+
Cyan  +

Cyan text

+
White  +

White text

+
BackBlack  +

Black background

+
BackRed  +

Red background

+
BackGreen  +

Green background

+
BackYellow  +

Yellow background

+
BackBlue  +

Blue background

+
BackMagenta  +

Magenta background

+
BackCyan  +

Cyan background

+
BackWhite  +

White background

+
Dec  +

Decimal base for integers

+
Hex  +

Hexadecimal base for integers

+
Oct  +

Octal base for integers

+
Bin  +

Binary base for integers

+
Scientific  +

Scientific representation of floats

+
SystemTimeSplit  +

PISystemTime split representation (* s, * ns)

+
SystemTimeSeconds  +

PISystemTime seconds representation (*.* s)

+
+ +
+
+ +
+
+ + + + +
enum PIConsole::Alignment
+
+ +

Column labels alignment.

+ + + + +
Enumerator
Nothing  +

No alignment

+
Left  +

Labels align left and variables align left

+
Right  +

Labels align right and variables align left

+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void PIConsole::addVariable (const PIStringname,
const PIProtocolptr,
int col = 1,
PIFlags< PIConsole::Formatformat = PIConsole::Normal 
)
+
+ +

Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".

+

This function add to column "column" next lines:

    +
  • "protocol <name>"
  • +
  • "Rec - receiverDeviceName": PIProtocol::receiverDeviceState
  • +
  • "Send - senderDeviceName": PIProtocol::senderDeviceState
  • +
  • "Received count": PIProtocol::receiveCount
  • +
  • "Invalid count": PIProtocol::wrongCount
  • +
  • "Missed count": PIProtocol::missedCount
  • +
  • "Sended count": PIProtocol::sendCount
  • +
  • "Immediate Frequency, Hz": PIProtocol::immediateFrequency
  • +
  • "Integral Frequency, Hz": PIProtocol::integralFrequency
  • +
  • "Receive speed": PIProtocol::receiveSpeed
  • +
  • "Send speed": PIProtocol::sendSpeed
  • +
  • "Receiver history size": PIProtocol::receiverHistorySize
  • +
  • "Sender history size": PIProtocol::senderHistorySize
  • +
  • "Disconnect Timeout, s": PIProtocol::disconnectTimeout
  • +
  • "Quality": PIProtocol::quality
  • +
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void PIConsole::addVariable (const PIStringname,
const PIDiagnosticsptr,
int col = 1,
PIFlags< PIConsole::Formatformat = PIConsole::Normal 
)
+
+ +

Add to current tab to column "column" variable with label "name", pointer "ptr" and format "format".

+

This function add to column "column" next lines:

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_console.js b/doc/html/class_p_i_console.js new file mode 100644 index 00000000..917077da --- /dev/null +++ b/doc/html/class_p_i_console.js @@ -0,0 +1,84 @@ +var class_p_i_console = +[ + [ "Format", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579", [ + [ "Normal", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a045a7b958509dd5c127a6f8abbbe9128", null ], + [ "Bold", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a78328fa8e10b199523d20b782d6fbc5b", null ], + [ "Underline", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a46936e800bd76246b08d3093cd7b31c9", null ], + [ "Blink", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a91eace12e9f59cb0ad6a6b90adb0aac6", null ], + [ "Inverse", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a0f6700676e0545499b1c669052c07031", null ], + [ "Black", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a3328cd4af8268e8b4ebf26ce8c230862", null ], + [ "Red", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579aa9e6d56193eac85df4a54bf3ef53b7b7", null ], + [ "Green", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579ae959969cfc547e2f48dbe3b51056d931", null ], + [ "Yellow", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a8fcb095f1009154392e0f0c966d838f6", null ], + [ "Blue", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a4bba54e63c8d31705a555f43c931bb98", null ], + [ "Magenta", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a839902f788d727e5bfbd56c961cb7504", null ], + [ "Cyan", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579afad1b218983aa1f775655a30175333af", null ], + [ "White", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a754394a1f1591ca656e42292e2e6ccc9", null ], + [ "BackBlack", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a92a8473a8b9197c3a1c13900cc9711b2", null ], + [ "BackRed", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579aa2c0f1e23fb2d5e39f38f768a73c8522", null ], + [ "BackGreen", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a2aca7018a5a425d1a51981e6753d2b9c", null ], + [ "BackYellow", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a8bbeb50121d330e27b27f7a94731a3b5", null ], + [ "BackBlue", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a0b579bc45bf31df6bad7baa3b0e1ce75", null ], + [ "BackMagenta", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579af98223da559470901eee2a9721647846", null ], + [ "BackCyan", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579ab34059af712560e14f4720fb33b1ef07", null ], + [ "BackWhite", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579ab70bbc35133c405030513695fda472bb", null ], + [ "Dec", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a1a14373d10e03ed37c42f17558d6e412", null ], + [ "Hex", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579aec17c3cf86a35f0a78c1add7ddd4ce3c", null ], + [ "Oct", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a6c18590e7ad6b405aee530a187231c77", null ], + [ "Bin", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a35a7fc42f3436533338bd2bfa096afdb", null ], + [ "Scientific", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a138319e4d812b10ef0e49f4c1464dde4", null ], + [ "SystemTimeSplit", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a4d54e68db54f775ca7e17b307c4f7787", null ], + [ "SystemTimeSeconds", "class_p_i_console.html#ad19497b9c33393ffe08856c622e3a579a412b529aeecff9f150ee7d42c32006f2", null ] + ] ], + [ "Alignment", "class_p_i_console.html#a9185c02e667ead89d506730e6fdc1f5d", [ + [ "Nothing", "class_p_i_console.html#a9185c02e667ead89d506730e6fdc1f5da83cb297e42b088515171ecb83f904bb5", null ], + [ "Left", "class_p_i_console.html#a9185c02e667ead89d506730e6fdc1f5da8f1af835c1d302642a0f5d288e7ce6a2", null ], + [ "Right", "class_p_i_console.html#a9185c02e667ead89d506730e6fdc1f5da5ba51ab04a9644828f79a9e95dfe4382", null ] + ] ], + [ "PIConsole", "class_p_i_console.html#ab37989414cad3b54ddd8ab8d2879e386", null ], + [ "addString", "class_p_i_console.html#a8274edea626b4281fe7de309ee8d1b38", null ], + [ "addVariable", "class_p_i_console.html#a9ae57b8ab5c4f8538633bf8dc8a15e67", null ], + [ "addVariable", "class_p_i_console.html#a6389f65b8835a38a60bf5ee2f2a43712", null ], + [ "addVariable", "class_p_i_console.html#a3b06530b893c79d11cf875419a834cd0", null ], + [ "addVariable", "class_p_i_console.html#ac53481fa1109e55fc1a6b00c9d963f90", null ], + [ "addVariable", "class_p_i_console.html#aee3ced19ce3abda81a1afd1164a1561d", null ], + [ "addVariable", "class_p_i_console.html#a27b939e27bc97c10eab59411de9fb526", null ], + [ "addVariable", "class_p_i_console.html#a7d7ff34b90be97a0b9cab63419ee26c2", null ], + [ "addVariable", "class_p_i_console.html#afa2c5fbf172ba93197b9b2f5c6653d71", null ], + [ "addVariable", "class_p_i_console.html#a2326d0f1a333927d2754830cea35a4ac", null ], + [ "addVariable", "class_p_i_console.html#a5206ecd0cb4d5c17d2f8cece88cbee4e", null ], + [ "addVariable", "class_p_i_console.html#aed85986ef4d195ec22641fc723bc7422", null ], + [ "addVariable", "class_p_i_console.html#a4a5ef27f2e7dbc0b3a657f543e21e580", null ], + [ "addVariable", "class_p_i_console.html#aac91f944400e09e1d07c5d6862691078", null ], + [ "addVariable", "class_p_i_console.html#ac92363d6e3aff60b8b27215fce4f7cbb", null ], + [ "addVariable", "class_p_i_console.html#acf8668140c47e5ee0ac2fc100ebcaf46", null ], + [ "addVariable", "class_p_i_console.html#a8a71fccd3ad2e19b13045ef6e90d9546", null ], + [ "addVariable", "class_p_i_console.html#a36d5583199e73951f650f58dfc9bc0f3", null ], + [ "addBitVariable", "class_p_i_console.html#afafc641d9512134155c491145e8db6dd", null ], + [ "addEmptyLine", "class_p_i_console.html#affc3de9ad31867e4e8002e77c96e8553", null ], + [ "tabsCount", "class_p_i_console.html#a6e1080918dd4d36347fe8e47318a5761", null ], + [ "currentTab", "class_p_i_console.html#a3261d123b00905e06226b828d7920001", null ], + [ "addTab", "class_p_i_console.html#a119860d9253d00a3fe815bc124076577", null ], + [ "removeTab", "class_p_i_console.html#aa3766f5453f3bb6a90e3e890133b0549", null ], + [ "removeTab", "class_p_i_console.html#a09b921eabc7dfb78527916927d67caf4", null ], + [ "setTab", "class_p_i_console.html#afbe2d5ae830d8096e8506114221789f0", null ], + [ "setTab", "class_p_i_console.html#ae4214666e5ae3752189a61d76c73b7ab", null ], + [ "setTabBindKey", "class_p_i_console.html#ae2abf8fd9b17252e057852fa912565e9", null ], + [ "setTabBindKey", "class_p_i_console.html#ad0826c4d2e8a1e4a1ddff1ad4df355b6", null ], + [ "clearTabs", "class_p_i_console.html#aa098e8d9cdc197ce608ff8cd617bab63", null ], + [ "addCustomStatus", "class_p_i_console.html#adec15a8f25d9236622f8868980cd0772", null ], + [ "clearCustomStatus", "class_p_i_console.html#ac2fa6d3e2f715e709c24c557847d0a1c", null ], + [ "defaultAlignment", "class_p_i_console.html#a4e399e64818521932243ee8be392c649", null ], + [ "setDefaultAlignment", "class_p_i_console.html#ad5bdaa30246c6165fe87bdc3539937f0", null ], + [ "setColumnAlignment", "class_p_i_console.html#a44b8aeea4216e6b514d468f3fcc7e19b", null ], + [ "setColumnAlignmentToAll", "class_p_i_console.html#a6c0653f78a4c22a7de20656c150d4d7d", null ], + [ "enableExitCapture", "class_p_i_console.html#a54455e3349316eb52679b8d1f9b85f78", null ], + [ "disableExitCapture", "class_p_i_console.html#af7d77f3929c0c0394b76274472141080", null ], + [ "exitCaptured", "class_p_i_console.html#af31cb35a92c0758c33c73a227a096d04", null ], + [ "exitKey", "class_p_i_console.html#a9c5a216c60e5b9c1bdf5eda25a346594", null ], + [ "clearVariables", "class_p_i_console.html#aec823e3d7ef7045298efbab12489b239", null ], + [ "waitForFinish", "class_p_i_console.html#ad0a588d352faf1bb39cba0bea8b8d0c0", null ], + [ "start", "class_p_i_console.html#a3d5a998c901b37e73c105754135de73f", null ], + [ "stop", "class_p_i_console.html#afd53d4f09d0bad958f0d2073f56d47c5", null ], + [ "keyPressed", "class_p_i_console.html#acb4dd34fc69180a9ba8bca4816bca130", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_console__inherit__graph.map b/doc/html/class_p_i_console__inherit__graph.map new file mode 100644 index 00000000..44730847 --- /dev/null +++ b/doc/html/class_p_i_console__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/class_p_i_console__inherit__graph.md5 b/doc/html/class_p_i_console__inherit__graph.md5 new file mode 100644 index 00000000..146bf054 --- /dev/null +++ b/doc/html/class_p_i_console__inherit__graph.md5 @@ -0,0 +1 @@ +95bfee6ef9d573f96786bedc5b496865 \ No newline at end of file diff --git a/doc/html/class_p_i_console__inherit__graph.svg b/doc/html/class_p_i_console__inherit__graph.svg new file mode 100644 index 00000000..5bed2e5e --- /dev/null +++ b/doc/html/class_p_i_console__inherit__graph.svg @@ -0,0 +1,44 @@ + + + + + + +PIConsole + + +Node1 + +PIConsole + + +Node2 + + +PIThread + + + + +Node2->Node1 + + + + +Node3 + + +PIObject + + + + +Node3->Node2 + + + + + diff --git a/doc/html/class_p_i_cout-members.html b/doc/html/class_p_i_cout-members.html new file mode 100644 index 00000000..7faca5ee --- /dev/null +++ b/doc/html/class_p_i_cout-members.html @@ -0,0 +1,158 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PICout Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
newLine()PICout
operator<<(const char *v)PICout
operator<<(const string &v)PICout
operator<<(const bool v)PICout
operator<<(const char v)PICout
operator<<(const uchar v)PICout
operator<<(const short v)PICout
operator<<(const ushort v)PICout
operator<<(const int v)PICout
operator<<(const uint v)PICout
operator<<(const long v)PICout
operator<<(const ulong v)PICout
operator<<(const llong v)PICout
operator<<(const ullong v)PICout
operator<<(const float v)PICout
operator<<(const double v)PICout
operator<<(const void *v)PICout
operator<<(const PIObject *v)PICout
operator<<(const PICoutSpecialChar v)PICout
operator<<(const PIFlags< PICoutFormat > v)PICoutinline
operator<<(const PICoutFormat v)PICoutinline
operator<<(const PICoutAction v)PICout
operator<<(PICout s, const PIString &v)PICoutrelated
operator<<(PICout s, const PIStringList &v)PICoutrelated
PICout(PIFlags< PICoutControl > controls=AddSpaces|AddNewLine)PICout
quote()PICout
restoreControl()PICoutinline
saveControl()PICoutinline
setControl(PICoutControl c, bool on=true)PICoutinline
setControl(PICoutControls c, bool save=false)PICoutinline
space()PICout
+
+ + + + diff --git a/doc/html/class_p_i_cout.html b/doc/html/class_p_i_cout.html new file mode 100644 index 00000000..370b4ab9 --- /dev/null +++ b/doc/html/class_p_i_cout.html @@ -0,0 +1,426 @@ + + + + + + +PIP: PICout Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PICout Class Reference
+
+
+ +

Class for formatted output similar std::cout. + More...

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

+Public Member Functions

PICout (PIFlags< PICoutControl > controls=AddSpaces|AddNewLine)
 Default constructor with default features (AddSpaces and AddNewLine)
 
+PICout operator<< (const char *v)
 Output operator for strings with "const char * " type.
 
+PICout operator<< (const string &v)
 Output operator for strings with "std::string" type.
 
+PICout operator<< (const bool v)
 Output operator for boolean values.
 
+PICout operator<< (const char v)
 Output operator for "char" values.
 
+PICout operator<< (const uchar v)
 Output operator for "unsigned char" values.
 
+PICout operator<< (const short v)
 Output operator for "short" values.
 
+PICout operator<< (const ushort v)
 Output operator for "unsigned short" values.
 
+PICout operator<< (const int v)
 Output operator for "int" values.
 
+PICout operator<< (const uint v)
 Output operator for "unsigned int" values.
 
+PICout operator<< (const long v)
 Output operator for "long" values.
 
+PICout operator<< (const ulong v)
 Output operator for "unsigned long" values.
 
+PICout operator<< (const llong v)
 Output operator for "long long" values.
 
+PICout operator<< (const ullong v)
 Output operator for "unsigned long long" values.
 
+PICout operator<< (const float v)
 Output operator for "float" values.
 
+PICout operator<< (const double v)
 Output operator for "double" values.
 
+PICout operator<< (const void *v)
 Output operator for pointers.
 
+PICout operator<< (const PIObject *v)
 Output operator for PIObject and ancestors.
 
+PICout operator<< (const PICoutSpecialChar v)
 Output operator for PICoutSpecialChar values.
 
+PICout operator<< (const PIFlags< PICoutFormat > v)
 Output operator for PIFlags<PICoutFormat> values.
 
+PICout operator<< (const PICoutFormat v)
 Output operator for PICoutFormat values.
 
PICout operator<< (const PICoutAction v)
 Do some action. More...
 
+PICoutsetControl (PICoutControl c, bool on=true)
 Set control flag "c" is "on" state.
 
+PICoutsetControl (PICoutControls c, bool save=false)
 Set control flags "c" and if "save" exec saveControl()
 
PICoutsaveControl ()
 Save control flags to internal stack. More...
 
PICoutrestoreControl ()
 Restore control flags from internal stack. More...
 
PICoutspace ()
 Conditional put space character to output. More...
 
PICoutquote ()
 Conditional put quote character to output. More...
 
PICoutnewLine ()
 Conditional put new line character to output. More...
 
+ + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
+PICout operator<< (PICout s, const PIString &v)
 Output operator to PICout.
 
+PICout operator<< (PICout s, const PIStringList &v)
 Output operator to PICout.
 
+

Detailed Description

+

Class for formatted output similar std::cout.

+

+Synopsis

+

This class provide many stream operators for output with some features. Output to PICout is thread-sequential, i.e. doesn`t mixed from parallel threads.

+

+Features

+
    +
  • insertion spaces between entries
  • +
  • insertion new line at the end of output
  • +
  • strings are quoted
  • +
  • custom output operator can be easily written
  • +
+

+Usage

+
int a = 10, b = 32, c = 11;
+
piCout << a << Hex << b << Bin << c;
+
// 10 20 1011
+
+
piCout << "this" << "is" << Green << "green" << Default << "word";
+
// this is green word
+
+
PICout(AddSpaces | AddNewLine | AddQuotes) << Tab << "tab and" << "quotes";
+
// "tab and" "quotes"
+

+Writing your own output operator

+
inline PICout operator <<(PICout s, const PIByteArray & ba) {
+
s.space(); // insert space after previous output
+
s.quote(); // ONLY if you want to quoted your type
+
s.setControl(0, true); // clear all features and
+
// save them to stack,
+
// now it`s behavior similar to std::cout
+
+
// your output
+
for (uint i = 0; i < ba.size(); ++i)
+
s << ba[i];
+
+
s.restoreControl(); // restore features from stack
+
s.quote(); // ONLY if you want to quoted your type
+
return s;
+
}
+

Member Function Documentation

+ +
+
+ + + + + + + + +
PICout PICout::operator<< (const PICoutAction v)
+
+ +

Do some action.

+

TODO !!!

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PICout& PICout::saveControl ()
+
+inline
+
+ +

Save control flags to internal stack.

+
See also
restoreControl()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PICout& PICout::restoreControl ()
+
+inline
+
+ +

Restore control flags from internal stack.

+
See also
saveControl()
+ +
+
+ +
+
+ + + + + + + +
PICout & PICout::space ()
+
+ +

Conditional put space character to output.

+

If it is not a first output and control AddSpaces is set space character is put

See also
quote(), newLine()
+ +
+
+ +
+
+ + + + + + + +
PICout & PICout::quote ()
+
+ +

Conditional put quote character to output.

+

If control AddQuotes is set quote character is put

See also
space(), newLine()
+ +
+
+ +
+
+ + + + + + + +
PICout & PICout::newLine ()
+
+ +

Conditional put new line character to output.

+

If control AddNewLine is set new line character is put

See also
space(), quote()
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_cout.js b/doc/html/class_p_i_cout.js new file mode 100644 index 00000000..93603e7f --- /dev/null +++ b/doc/html/class_p_i_cout.js @@ -0,0 +1,34 @@ +var class_p_i_cout = +[ + [ "PICout", "class_p_i_cout.html#afa5f5b5b95a383a52f286fa80173a77c", null ], + [ "operator<<", "class_p_i_cout.html#ae9dacedd8cc32af047fe2cc7dab95e62", null ], + [ "operator<<", "class_p_i_cout.html#ac260e89c51ed7c18c73f11d08b6d1207", null ], + [ "operator<<", "class_p_i_cout.html#a5aee745aa969f71e82c72dc41dae2b27", null ], + [ "operator<<", "class_p_i_cout.html#a0dbe790c14f97691466e81116cce00bf", null ], + [ "operator<<", "class_p_i_cout.html#ae6cb3028a7d26e39b64fb4e628eb39d9", null ], + [ "operator<<", "class_p_i_cout.html#a4675a5d48fea56b778dac463d86cd7ac", null ], + [ "operator<<", "class_p_i_cout.html#a5a4a6c12e79d161a4e44b774ce5e66f5", null ], + [ "operator<<", "class_p_i_cout.html#a013582c7c4e95714fb10daccf43f5ca3", null ], + [ "operator<<", "class_p_i_cout.html#ac8aa9b0501f6e9c9053ec3af22834fad", null ], + [ "operator<<", "class_p_i_cout.html#ae4a6ca6b6c5df3862517b5a2a7e33b55", null ], + [ "operator<<", "class_p_i_cout.html#ae93cccac30d14ba6102c3f0a1e024f7c", null ], + [ "operator<<", "class_p_i_cout.html#af7a07e6abeacd3482d7195d86791465e", null ], + [ "operator<<", "class_p_i_cout.html#a5d9d1a68372dbafd71e388353df51dec", null ], + [ "operator<<", "class_p_i_cout.html#aab536506458cbb6310588c4f80863756", null ], + [ "operator<<", "class_p_i_cout.html#a31664b00b01429c5f58328d5040954d2", null ], + [ "operator<<", "class_p_i_cout.html#a92a5a13c4cb2ed1b5a72d06c59b266c7", null ], + [ "operator<<", "class_p_i_cout.html#a1394f484e833da6ccb460b58914edfd0", null ], + [ "operator<<", "class_p_i_cout.html#ae658e35cc785d1d3ddc17d1b10e7283a", null ], + [ "operator<<", "class_p_i_cout.html#a356e3ae514df581ddb87bb5f10291f53", null ], + [ "operator<<", "class_p_i_cout.html#a295b2d98053cf976d5c828fd04cee60c", null ], + [ "operator<<", "class_p_i_cout.html#a5dfbca3eb4f732919abc24f1d45987da", null ], + [ "setControl", "class_p_i_cout.html#a5b6614dddc73b36883222e31fda93bf2", null ], + [ "setControl", "class_p_i_cout.html#a39ac735489b5deed01f0d71bfc3a6506", null ], + [ "saveControl", "class_p_i_cout.html#afb789d3710c4bbb56a92e4815bb8fa2b", null ], + [ "restoreControl", "class_p_i_cout.html#a6d6689f35644fba314420d1c218982f1", null ], + [ "space", "class_p_i_cout.html#a3ca9fbac2890b6385fa47dc8c6ab189b", null ], + [ "quote", "class_p_i_cout.html#a95965e197340e6ebe30b84a89ccc4a71", null ], + [ "newLine", "class_p_i_cout.html#a50a7d52c6670f5e693cffd30d565c1af", null ], + [ "operator<<", "class_p_i_cout.html#ab789440b8ebd894dfd628161254f057a", null ], + [ "operator<<", "class_p_i_cout.html#a169bfa237f50a26895592fe63e2bccf1", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_diagnostics-members.html b/doc/html/class_p_i_diagnostics-members.html new file mode 100644 index 00000000..1d5c41cc --- /dev/null +++ b/doc/html/class_p_i_diagnostics-members.html @@ -0,0 +1,246 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIDiagnostics Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addDelimiter(int delim, TimerEvent slot=0)PITimerinlineprivate
Average enum valuePIDiagnostics
Bad enum valuePIDiagnostics
className() const PIObjectinlineprivatevirtual
clearDelimiters()PITimerinlineprivate
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PITimerinlineprivate
debug() const PIObjectinlineprivate
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
disconnectTimeout() const PIDiagnosticsinline
emitter() const PIObjectinlineprivate
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
Failure enum valuePIDiagnostics
findByName(const PIString &name)PIObjectinlineprivatestatic
Good enum valuePIDiagnostics
HANDLERPIObjectrelated
immediateFrequency() const PIDiagnosticsinline
immediateFrequency_ptr() const PIDiagnosticsinline
implementation() const PITimerinlineprivate
integralFrequency() const PIDiagnosticsinline
integralFrequency_ptr() const PIDiagnosticsinline
interval() const PITimerinlineprivate
isPropertyExists(const PIString &name) const PIObjectinlineprivate
isRunning() const PITimerinlineprivate
isStopped() const PITimerinlineprivate
name() const PIObjectinlineprivate
piCoutObjPIObjectrelated
PIDiagnostics(bool start_=true)PIDiagnostics
piDisconnect(PIObject *src, const PIString &sig)PIObjectprivatestatic
piDisconnect(PIObject *src)PIObjectprivatestatic
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObjectprivate
PIOBJECT_PARENTPIObjectrelated
PITimer()PITimerexplicitprivate
PITimer(TimerImplementation ti)PITimerexplicitprivate
PITimer(TimerEvent slot, void *data=0, TimerImplementation ti=Thread)PITimerexplicitprivate
Pool enum valuePITimerprivate
properties() const PIObjectinlineprivate
propertiesCount() const PIObjectinlineprivate
property(const PIString &name) const PIObjectinlineprivate
quality() const PIDiagnosticsinline
Quality enum namePIDiagnostics
quality_ptr() const PIDiagnosticsinline
qualityChanged(PIDiagnostics::Quality new_quality, PIDiagnostics::Quality old_quality)PIDiagnostics
receiveBytesPerSec() const PIDiagnosticsinline
receiveBytesPerSec_ptr() const PIDiagnosticsinline
receiveCount() const PIDiagnosticsinline
receiveCount_ptr() const PIDiagnosticsinline
receiveCountPerSec() const PIDiagnosticsinline
receiveCountPerSec_ptr() const PIDiagnosticsinline
received(int size, bool correct)PIDiagnostics
receiveSpeed() const PIDiagnosticsinline
receiveSpeed_ptr() const PIDiagnosticsinline
removeDelimiter(int delim)PITimerinlineprivate
removeDelimiter(TimerEvent slot)PITimerinlineprivate
removeDelimiter(int delim, TimerEvent slot)PITimerinlineprivate
reset()PIDiagnostics
restart()PITimerinlineprivate
sendBytesPerSec() const PIDiagnosticsinline
sendBytesPerSec_ptr() const PIDiagnosticsinline
sendCount() const PIDiagnosticsinline
sendCount_ptr() const PIDiagnosticsinline
sendCountPerSec() const PIDiagnosticsinline
sendCountPerSec_ptr() const PIDiagnosticsinline
sended(int size)PIDiagnostics
sendSpeed() const PIDiagnosticsinline
sendSpeed_ptr() const PIDiagnosticsinline
setData(void *data_)PITimerinlineprivate
setDebug(bool debug)PIObjectinlineprivate
setDisconnectTimeout(float s)PIDiagnosticsinline
setInterval(double ms)PITimerinlineprivate
setName(const PIString &name)PIObjectinlineprivate
setProperty(const PIString &name, const PIVariant &value)PIObjectinlineprivate
setSlot(TimerEvent slot)PITimerinlineprivate
start(double msecs)PIDiagnosticsinline
PITimer::start(int interval_ms_i)PITimerinlineprivate
stop()PITimerinlineprivate
superClassName() const PIObjectinlineprivatevirtual
Thread enum valuePITimerprivate
ThreadRT enum valuePITimerprivate
tickEvent(void *data_, int delimiter)PITimerprivate
TimerImplementation enum namePITimerprivate
Unknown enum valuePIDiagnostics
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
wrongCount() const PIDiagnosticsinline
wrongCount_ptr() const PIDiagnosticsinline
+
+ + + + diff --git a/doc/html/class_p_i_diagnostics.html b/doc/html/class_p_i_diagnostics.html new file mode 100644 index 00000000..ad1b4597 --- /dev/null +++ b/doc/html/class_p_i_diagnostics.html @@ -0,0 +1,497 @@ + + + + + + +PIP: PIDiagnostics Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIDiagnostics Class Reference
+
+
+ +

Connection quality diagnostics. + More...

+
+ + Inheritance diagram for PIDiagnostics:
+
+
+ + + + + + +

+Public Types

enum  Quality {
+  Unknown = 1, +Failure = 2, +Bad = 3, +Average = 4, +
+  Good = 5 +
+ }
 Connection quality. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIDiagnostics (bool start_=true)
 Constructs an empty diagnostics and if "strat_" start it.
 
+float disconnectTimeout () const
 Returns period of full disconnect in seconds and period of averaging frequency.
 
+void setDisconnectTimeout (float s)
 Returns period of full disconnect in seconds and period of averaging frequency.
 
+float immediateFrequency () const
 Returns immediate receive frequency, packets/s.
 
+float integralFrequency () const
 Returns integral receive frequency for disconnectTimeout() seconds, packets/s.
 
+ullong receiveCountPerSec () const
 Returns correct received packets per second.
 
+ullong sendCountPerSec () const
 Returns sended packets per second.
 
+ullong receiveBytesPerSec () const
 Returns correct received bytes per second.
 
+ullong sendBytesPerSec () const
 Returns sended bytes per second.
 
+ullong receiveCount () const
 Returns overall correct received packets count.
 
+ullong wrongCount () const
 Returns overall wrong received packets count.
 
+ullong sendCount () const
 Returns overall sended packets count.
 
+PIDiagnostics::Quality quality () const
 Returns connection quality.
 
+PIString receiveSpeed () const
 Returns receive speed in format "n {B|kB|MB|GB|TB}/s".
 
+PIString sendSpeed () const
 Returns send speed in format "n {B|kB|MB|GB|TB}/s".
 
+const float * immediateFrequency_ptr () const
 Returns immediate receive frequency pointer, packets/s. Useful for output to PIConsole.
 
+const float * integralFrequency_ptr () const
 Returns integral receive frequency pointer for period, packets/s. Useful for output to PIConsole.
 
+const ullong * receiveCountPerSec_ptr () const
 Returns correct received packets per second pointer. Useful for output to PIConsole.
 
+const ullong * sendCountPerSec_ptr () const
 Returns sended packets per second pointer. Useful for output to PIConsole.
 
+const ullong * receiveBytesPerSec_ptr () const
 Returns correct received bytes per second pointer. Useful for output to PIConsole.
 
+const ullong * sendBytesPerSec_ptr () const
 Returns sended bytes per second pointer. Useful for output to PIConsole.
 
+const ullong * receiveCount_ptr () const
 Returns overall correct received packets count pointer. Useful for output to PIConsole.
 
+const ullong * wrongCount_ptr () const
 Returns overall wrong received packets count pointer. Useful for output to PIConsole.
 
+const ullong * sendCount_ptr () const
 Returns overall sended packets count pointer. Useful for output to PIConsole.
 
+const int * quality_ptr () const
 Returns connection quality pointer. Useful for output to PIConsole.
 
+const PIStringreceiveSpeed_ptr () const
 Returns receive speed pointer in format "n {B|kB|MB|GB|TB}/s". Useful for output to PIConsole.
 
+const PIStringsendSpeed_ptr () const
 Returns send speed pointer in format "n {B|kB|MB|GB|TB}/s". Useful for output to PIConsole.
 
+ + + + + + + + + + + + + +

+Handlers

+void start (double msecs)
 Start diagnostics evaluations with period "msecs" milliseconds.
 
+void reset ()
 Reset diagnostics counters.
 
+void received (int size, bool correct)
 Notify diagnostics about "correct" corected received packet.
 
+void sended (int size)
 Notify diagnostics about sended packet.
 
+ + + + +

+Events

+void qualityChanged (PIDiagnostics::Quality new_quality, PIDiagnostics::Quality old_quality)
 Raise on change receive quality from "old_quality" to "new_quality".
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

+

Detailed Description

+

Connection quality diagnostics.

+

+Synopsis

+

This class provide abstract connection quality diagnostics and counting. You should create instance of PIDiagnostics and on packet receive call function received(), on packet send call function sended(). PIDiagnostics calculates correct, wrong and sended counters, packets per second, bytes per seconds, immediate and integral receive frequencies and receive/send speeds in human readable representation. There statistics are calculates one time per period, by default 1 second. To calculate them you should start PIDiagnostics with function start() or pass true to constructor.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIDiagnostics::Quality
+
+ +

Connection quality.

+ + + + + + +
Enumerator
Unknown  +

Unknown, no one packet received yet

+
Failure  +

No connection, no one correct packet received for last period

+
Bad  +

Bad connection, correct packets received <= 20%

+
Average  +

Average connection, correct packets received > 20% and <= 80%

+
Good  +

Good connection, correct packets received > 80%

+
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_diagnostics.js b/doc/html/class_p_i_diagnostics.js new file mode 100644 index 00000000..424531ed --- /dev/null +++ b/doc/html/class_p_i_diagnostics.js @@ -0,0 +1,42 @@ +var class_p_i_diagnostics = +[ + [ "Quality", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712f", [ + [ "Unknown", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712fab50c35309ba981ccc60aa55f4b391976", null ], + [ "Failure", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712fa7851c3092d436b72bc66b752f73b1d80", null ], + [ "Bad", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712fac8268eaf57232ad3cf9b2a91ead6748b", null ], + [ "Average", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712fa72a5c3ff8a8ae3e43f818db82d730b55", null ], + [ "Good", "class_p_i_diagnostics.html#aabf8f59b49ab62435e220106f204712fa65f12843d70ab8f9bc9f711e2776c169", null ] + ] ], + [ "PIDiagnostics", "class_p_i_diagnostics.html#a0ecb4332d5583be9a0c626c6ad8fc92a", null ], + [ "disconnectTimeout", "class_p_i_diagnostics.html#a58a112660b5a7545c6bb0bb1bf621822", null ], + [ "setDisconnectTimeout", "class_p_i_diagnostics.html#a54f87c6f4fc670cbc5c15129bebb3394", null ], + [ "immediateFrequency", "class_p_i_diagnostics.html#afc88d4112178d144a4e2bf116809a586", null ], + [ "integralFrequency", "class_p_i_diagnostics.html#af2bca72346e1440af8e9a225bfd2ad72", null ], + [ "receiveCountPerSec", "class_p_i_diagnostics.html#a81fa49a759f97f23b0e13992c2decd11", null ], + [ "sendCountPerSec", "class_p_i_diagnostics.html#a42f008c143eb3aeaa34350b41b471bd9", null ], + [ "receiveBytesPerSec", "class_p_i_diagnostics.html#a412a3c850f35ae690bf2ee212bace700", null ], + [ "sendBytesPerSec", "class_p_i_diagnostics.html#ad24cb17710950995f1be0cf48c150a5e", null ], + [ "receiveCount", "class_p_i_diagnostics.html#a894cb3cd2ec9a395ee217fe0573bfa74", null ], + [ "wrongCount", "class_p_i_diagnostics.html#a92a18a79947e0322f67d74c045c71682", null ], + [ "sendCount", "class_p_i_diagnostics.html#a896f8406b97fb4eee8fa5fbcd0f4cb18", null ], + [ "quality", "class_p_i_diagnostics.html#ab4b373f4d0dfaad6e25cf1d376b2d754", null ], + [ "receiveSpeed", "class_p_i_diagnostics.html#a01bf2ddc5c60e8156c8c78b49978810d", null ], + [ "sendSpeed", "class_p_i_diagnostics.html#a8fa858dfeda458616b1f5ecbab3baead", null ], + [ "immediateFrequency_ptr", "class_p_i_diagnostics.html#ae84c320f15128154968da64a185534f6", null ], + [ "integralFrequency_ptr", "class_p_i_diagnostics.html#acb226efc57b90723c6acd5f07f0e8a1c", null ], + [ "receiveCountPerSec_ptr", "class_p_i_diagnostics.html#a364f03141facee8162a66de048005807", null ], + [ "sendCountPerSec_ptr", "class_p_i_diagnostics.html#a34f3d9d9b0560da37f4e3258a2408c6c", null ], + [ "receiveBytesPerSec_ptr", "class_p_i_diagnostics.html#a3dae97db20de5a1a82559eaf872004ea", null ], + [ "sendBytesPerSec_ptr", "class_p_i_diagnostics.html#a5565c0c6c31f39144ce80c4a68dad08d", null ], + [ "receiveCount_ptr", "class_p_i_diagnostics.html#afe4a920694b84936c0fa7d07b14d1dd7", null ], + [ "wrongCount_ptr", "class_p_i_diagnostics.html#adbacd5ebed2dabee1c44f5c2cd8ce48d", null ], + [ "sendCount_ptr", "class_p_i_diagnostics.html#a6c331ad75d8802175b73c2e0f84e2368", null ], + [ "quality_ptr", "class_p_i_diagnostics.html#a4ce10a350d75352320212784193db4fb", null ], + [ "receiveSpeed_ptr", "class_p_i_diagnostics.html#aa7a24231b0008a27405a92f8f7094277", null ], + [ "sendSpeed_ptr", "class_p_i_diagnostics.html#a36ac4c15726cab43cb1a46ddfd1fc87c", null ], + [ "start", "class_p_i_diagnostics.html#a1773afb624fe79976ad9385705f24d02", null ], + [ "reset", "class_p_i_diagnostics.html#a0771a5343fcebfe427876adddae14c34", null ], + [ "received", "class_p_i_diagnostics.html#a0cedccc3d6d8dba5238ee3a0f42a74c6", null ], + [ "sended", "class_p_i_diagnostics.html#a40db151966a7c48357df5e19de20116f", null ], + [ "qualityChanged", "class_p_i_diagnostics.html#a6e0a2d483282afab237e4b1ab9f0b4a4", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_diagnostics__inherit__graph.map b/doc/html/class_p_i_diagnostics__inherit__graph.map new file mode 100644 index 00000000..819e3f05 --- /dev/null +++ b/doc/html/class_p_i_diagnostics__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/class_p_i_diagnostics__inherit__graph.md5 b/doc/html/class_p_i_diagnostics__inherit__graph.md5 new file mode 100644 index 00000000..111cbf47 --- /dev/null +++ b/doc/html/class_p_i_diagnostics__inherit__graph.md5 @@ -0,0 +1 @@ +93d322e14a520049ba4cb515e7be2944 \ No newline at end of file diff --git a/doc/html/class_p_i_diagnostics__inherit__graph.svg b/doc/html/class_p_i_diagnostics__inherit__graph.svg new file mode 100644 index 00000000..95fec3f6 --- /dev/null +++ b/doc/html/class_p_i_diagnostics__inherit__graph.svg @@ -0,0 +1,44 @@ + + + + + + +PIDiagnostics + + +Node1 + +PIDiagnostics + + +Node2 + + +PITimer + + + + +Node2->Node1 + + + + +Node3 + + +PIObject + + + + +Node3->Node2 + + + + + diff --git a/doc/html/class_p_i_ethernet-members.html b/doc/html/class_p_i_ethernet-members.html new file mode 100644 index 00000000..31e075da --- /dev/null +++ b/doc/html/class_p_i_ethernet-members.html @@ -0,0 +1,289 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIEthernet Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
allAddresses()PIEthernetstatic
Broadcast enum valuePIEthernet
broadcastPIEthernet
className() const PIObjectinlinevirtual
closeDevice()PIEthernetprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIEthernetprotectedvirtual
configureFromFullPath(const PIString &full_path)PIEthernetprotectedvirtual
connect()PIEthernet
connect(const PIString &ip, int port)PIEthernetinline
connect(const PIString &ip_port)PIEthernetinline
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
connected()PIEthernet
CONNECTUPIObjectrelated
constructFullPath() const PIEthernetvirtual
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
disconnected(bool withError)PIEthernet
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PIEthernetinlineprotectedvirtual
HANDLERPIObjectrelated
ifActive enum valuePIEthernet
ifBroadcast enum valuePIEthernet
ifLoopback enum valuePIEthernet
ifMulticast enum valuePIEthernet
ifPTP enum valuePIEthernet
ifRunning enum valuePIEthernet
init()PIEthernetprotectedvirtual
InterfaceFlag enum namePIEthernet
InterfaceFlags typedefPIEthernet
interfaces()PIEthernetstatic
ipPIEthernet
isConnected() const PIEthernetinline
isParameterSet(PIEthernet::Parameters parameter) const PIEthernetinline
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
joinMulticastGroup(const PIString &group)PIEthernet
leaveMulticastGroup(const PIString &group)PIEthernet
listen(bool threaded=false)PIEthernet
listen(const PIString &ip, int port, bool threaded=false)PIEthernetinline
listen(const PIString &ip_port, bool threaded=false)PIEthernetinline
lock()PIThreadinline
multicastGroups() const PIEthernetinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
newConnection(PIEthernet *client)PIEthernet
openDevice()PIEthernetprotectedvirtual
parameters() const PIEthernetinline
Parameters enum namePIEthernet
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIEthernet()PIEthernet
PIEthernet(Type type, const PIString &ip_port=PIString(), const PIFlags< Parameters > params=0)PIEthernet
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
portPIEthernet
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIEthernetprotectedvirtual
read(void *read_to, int max_size)PIEthernetvirtual
readAddress() const PIEthernetinline
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
readIP() const PIEthernetinline
readPort() const PIEthernetinline
readTimeout() const PIEthernetinline
received(const void *data, int size)PIEthernetinlineprotectedvirtual
REGISTER_DEVICEPIIODevicerelated
ReuseAddress enum valuePIEthernet
reuseAddressPIEthernet
send(const PIString &ip, int port, const void *data, int size, bool threaded=false)PIEthernetinline
send(const PIString &ip_port, const void *data, int size, bool threaded=false)PIEthernetinline
send(const void *data, int size, bool threaded=false)PIEthernetinline
send(const PIByteArray &data, bool threaded=false)PIEthernetinline
sendAddress() const PIEthernetinline
sendIP() const PIEthernetinline
sendPort() const PIEthernetinline
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setParameter(PIEthernet::Parameters parameter, bool on=true)PIEthernet
setParameters(PIFlags< PIEthernet::Parameters > parameters_)PIEthernetinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setReadAddress(const PIString &ip, int port)PIEthernetinline
setReadAddress(const PIString &ip_port)PIEthernetinline
setReadIP(const PIString &ip)PIEthernetinline
setReadPort(int port)PIEthernetinline
setReadTimeout(double ms)PIEthernetinline
setSendAddress(const PIString &ip, int port)PIEthernetinline
setSendAddress(const PIString &ip_port)PIEthernetinline
setSendIP(const PIString &ip)PIEthernetinline
setSendPort(int port)PIEthernetinline
setSlot(ThreadFunc func)PIThreadinline
setWriteTimeout(double ms)PIEthernetinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
TCP_Client enum valuePIEthernet
TCP_Server enum valuePIEthernet
threadedRead(uchar *readed, int size)PIIODeviceinlineprotectedvirtual
type() const PIEthernetinline
Type enum namePIEthernet
UDP enum valuePIEthernet
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
write(const void *data, int max_size)PIEthernetvirtual
write(const PIByteArray &data)PIEthernetinline
writeTimeout() const PIEthernetinline
+
+ + + + diff --git a/doc/html/class_p_i_ethernet.html b/doc/html/class_p_i_ethernet.html new file mode 100644 index 00000000..53170159 --- /dev/null +++ b/doc/html/class_p_i_ethernet.html @@ -0,0 +1,880 @@ + + + + + + +PIP: PIEthernet Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Ethernet device. + More...

+
+ + Inheritance diagram for PIEthernet:
+
+
+ + + + + + + + + +

+Classes

struct  Interface
 Network interface descriptor. More...
 
class  InterfaceList
 Array of Interface with some features. More...
 
+ + + + + + + + + + + + + + + + + +

+Public Types

enum  Type { UDP, +TCP_Client, +TCP_Server + }
 Type of PIEthernet. More...
 
enum  Parameters { ReuseAddress = 0x1, +Broadcast = 0x2 + }
 Parameters of PIEthernet. More...
 
enum  InterfaceFlag {
+  ifActive = 0x1, +ifRunning = 0x2, +ifBroadcast = 0x4, +ifMulticast = 0x8, +
+  ifLoopback = 0x10, +ifPTP = 0x20 +
+ }
 Flags of network interface. More...
 
+typedef PIFlags< InterfaceFlagInterfaceFlags
 PIFlags of network interface flags
 
- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIEthernet ()
 Contructs UDP PIEthernet with empty read address.
 
PIEthernet (Type type, const PIString &ip_port=PIString(), const PIFlags< Parameters > params=0)
 Contructs PIEthernet with type "type", read address "ip_port" and parameters "params".
 
+void setReadAddress (const PIString &ip, int port)
 Set read address.
 
+void setReadAddress (const PIString &ip_port)
 Set read address in format "i.i.i.i:p".
 
+void setReadIP (const PIString &ip)
 Set read IP.
 
+void setReadPort (int port)
 Set read port.
 
+void setSendAddress (const PIString &ip, int port)
 Set send address.
 
+void setSendAddress (const PIString &ip_port)
 Set send address in format "i.i.i.i:p".
 
+void setSendIP (const PIString &ip)
 Set send IP.
 
+void setSendPort (int port)
 Set send port.
 
+PIString readAddress () const
 Returns read address in format "i.i.i.i:p".
 
+PIString readIP () const
 Returns read IP.
 
+int readPort () const
 Returns read port.
 
+PIString sendAddress () const
 Returns send address in format "i.i.i.i:p".
 
+PIString sendIP () const
 Returns send IP.
 
+int sendPort () const
 Returns send port.
 
+void setParameters (PIFlags< PIEthernet::Parameters > parameters_)
 Set parameters to "parameters_". You should to reopen PIEthernet to apply them.
 
+void setParameter (PIEthernet::Parameters parameter, bool on=true)
 Set parameter "parameter" to state "on". You should to reopen PIEthernet to apply this.
 
+bool isParameterSet (PIEthernet::Parameters parameter) const
 Returns if parameter "parameter" is set.
 
+PIFlags< PIEthernet::Parametersparameters () const
 Returns parameters.
 
+Type type () const
 Returns PIEthernet type.
 
+double readTimeout () const
 Returns read timeout.
 
+double writeTimeout () const
 Returns write timeout.
 
+void setReadTimeout (double ms)
 Set timeout for read.
 
+void setWriteTimeout (double ms)
 Set timeout for write.
 
+bool joinMulticastGroup (const PIString &group)
 Join to multicast group with address "group". Use only for UDP.
 
+bool leaveMulticastGroup (const PIString &group)
 Leave multicast group with address "group". Use only for UDP.
 
+const PIStringListmulticastGroups () const
 Returns joined multicast groups. Use only for UDP.
 
+bool connect ()
 Connect to TCP server with address readAddress(). Use only for TCP_Client.
 
+bool connect (const PIString &ip, int port)
 Connect to TCP server with address "ip":"port". Use only for TCP_Client.
 
+bool connect (const PIString &ip_port)
 Connect to TCP server with address "ip_port". Use only for TCP_Client.
 
+bool isConnected () const
 Returns if PIEthernet connected to TCP server. Use only for TCP_Client.
 
+bool listen (bool threaded=false)
 Start listen for incoming TCP connections on address readAddress(). Use only for TCP_Server.
 
+bool listen (const PIString &ip, int port, bool threaded=false)
 Start listen for incoming TCP connections on address "ip":"port". Use only for TCP_Server.
 
+bool listen (const PIString &ip_port, bool threaded=false)
 Start listen for incoming TCP connections on address "ip_port". Use only for TCP_Server.
 
+bool send (const PIString &ip, int port, const void *data, int size, bool threaded=false)
 Send data "data" with size "size" to address "ip":"port".
 
+bool send (const PIString &ip_port, const void *data, int size, bool threaded=false)
 Send data "data" with size "size" to address "ip_port".
 
+bool send (const void *data, int size, bool threaded=false)
 Send data "data" with size "size" to address sendAddress() for UDP or readAddress() for TCP_Client.
 
+bool send (const PIByteArray &data, bool threaded=false)
 Send data "data" to address sendAddress() for UDP or readAddress() for TCP_Client.
 
+int read (void *read_to, int max_size)
 Wait for some data and read it to "read_to".
 
+int write (const void *data, int max_size)
 Send data "read_to" with size "max_size" to address sendAddress() for UDP or readAddress() for TCP_Client.
 
+int write (const PIByteArray &data)
 Send data "data" to address sendAddress() for UDP or readAddress() for TCP_Client.
 
+PIString constructFullPath () const
 Reimplement to construct full unambiguous string, describes this device, default returns fullPathPrefix() + "://" + path()
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + +

+Static Public Member Functions

+static InterfaceList interfaces ()
 Returns all system network interfaces.
 
+static PIStringList allAddresses ()
 Returns all system network IP addresses.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
+bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+virtual void received (const void *data, int size)
 Executes when any read function was successful. Default implementation does nothing.
 
+bool init ()
 Function executed before first openDevice() or from constructor.
 
+bool openDevice ()
 Reimplement to open device, return value will be set to "opened_" variable.
 
+bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
- Protected Member Functions inherited from PIIODevice
+virtual bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+ + + + + + + + + + +

+Events

+void newConnection (PIEthernet *client)
 Raise on new TCP connection received.
 
+void connected ()
 Raise if succesfull TCP connection.
 
+void disconnected (bool withError)
 Raise if TCP connection was closed.
 
+ + + + + + + + + + + + + +

+Configurable parameters

+string ip
 read ip, default ""
 
+int port
 read port, default 0
 
+bool broadcast
 Broadcast parameter, default false.
 
+bool reuseAddress
 ReuseAddress parameter, default false.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

+

Detailed Description

+

Ethernet device.

+

+Synopsis

+

PIEthernet designed to work with IPv4 network by two protocols: UDP and TCP. This class allow you send and receive packets to/from another computer through network.

+

+IPv4

+

+UDP

+

User Datagram Protocol

+

+TCP

+

Transmission Control Protocol

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIEthernet::Type
+
+ +

Type of PIEthernet.

+ + + + +
Enumerator
UDP  +

UDP - User Datagram Protocol

+
TCP_Client  +

TCP client - allow connection to TCP server

+
TCP_Server  +

TCP server - receive connections from TCP clients

+
+ +
+
+ +
+
+ + + + +
enum PIEthernet::Parameters
+
+ +

Parameters of PIEthernet.

+ + + +
Enumerator
ReuseAddress  +

Rebind address if there is already binded

+
Broadcast  +

Broadcast send

+
+ +
+
+ +
+
+ + + + +
enum PIEthernet::InterfaceFlag
+
+ +

Flags of network interface.

+ + + + + + + +
Enumerator
ifActive  +

Is active

+
ifRunning  +

Is running

+
ifBroadcast  +

Support broadcast

+
ifMulticast  +

Support multicast

+
ifLoopback  +

Is loopback

+
ifPTP  +

Is point-to-point

+
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_ethernet.js b/doc/html/class_p_i_ethernet.js new file mode 100644 index 00000000..3face8f0 --- /dev/null +++ b/doc/html/class_p_i_ethernet.js @@ -0,0 +1,81 @@ +var class_p_i_ethernet = +[ + [ "Interface", "struct_p_i_ethernet_1_1_interface.html", "struct_p_i_ethernet_1_1_interface" ], + [ "InterfaceList", "class_p_i_ethernet_1_1_interface_list.html", "class_p_i_ethernet_1_1_interface_list" ], + [ "InterfaceFlags", "class_p_i_ethernet.html#a26d086cc06bc533006ac4fca2c3bab33", null ], + [ "Type", "class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5c", [ + [ "UDP", "class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5ca17c6e599807b02ebaf8ab6decbd17c7b", null ], + [ "TCP_Client", "class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5ca468f2c843283f472aa48487bebc38416", null ], + [ "TCP_Server", "class_p_i_ethernet.html#a7abf73f51652b00af7a6198be2fa0f5caf2c9526cd4b694f14a0d8a4693a5b76c", null ] + ] ], + [ "Parameters", "class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55", [ + [ "ReuseAddress", "class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55a880142bb3993c7839af6d847beee1b34", null ], + [ "Broadcast", "class_p_i_ethernet.html#ae03a64ce3d7d8a1e95b2212ab2497f55af792cda5436050309ee9368d6ac5e6f7", null ] + ] ], + [ "InterfaceFlag", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374", [ + [ "ifActive", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374af0267ac1003b142861da4f3b13cd8eec", null ], + [ "ifRunning", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a1ee5d68a37246b49b542d4e7a35129a5", null ], + [ "ifBroadcast", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a968abc4436cda4f3a7d6f9d5b73a5161", null ], + [ "ifMulticast", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a221bac530c63ca6256286ae46d4cf2da", null ], + [ "ifLoopback", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374ae5762f8e14d0d44e59d98d40a5e61d47", null ], + [ "ifPTP", "class_p_i_ethernet.html#a2e219801b3a6c451c4aca63ad99b6374a57217604fea835e4aaec5ad6f16101a5", null ] + ] ], + [ "PIEthernet", "class_p_i_ethernet.html#a6a5a47b716613af3c224d1a6909f0751", null ], + [ "PIEthernet", "class_p_i_ethernet.html#aa47c8e516e88c2cb479bd62934bf2660", null ], + [ "setReadAddress", "class_p_i_ethernet.html#a4da57633bb41886a07a0a01139022ce9", null ], + [ "setReadAddress", "class_p_i_ethernet.html#a76652ae5f391e8957c864be224d46937", null ], + [ "setReadIP", "class_p_i_ethernet.html#a281ffec154f8a604da5f8e8494740b63", null ], + [ "setReadPort", "class_p_i_ethernet.html#a13f17f1b0022b15d05879c0228bd4bba", null ], + [ "setSendAddress", "class_p_i_ethernet.html#afa66a8ec37d66b17e0d1cf52dc3f9f00", null ], + [ "setSendAddress", "class_p_i_ethernet.html#aa2f490fa2749860c2d8c58dd691e4663", null ], + [ "setSendIP", "class_p_i_ethernet.html#a5f90001f1f3b49da411421fc15256a5c", null ], + [ "setSendPort", "class_p_i_ethernet.html#a0866eb6385dda7b6988b29fedc45fc48", null ], + [ "readAddress", "class_p_i_ethernet.html#a53052c78cb24aca1e1a65d8c14e1dd7c", null ], + [ "readIP", "class_p_i_ethernet.html#aa04de0ef1cab98a7bc80cc43ca550f18", null ], + [ "readPort", "class_p_i_ethernet.html#ac93db4b6831c0304955c74c666d716f4", null ], + [ "sendAddress", "class_p_i_ethernet.html#a9f1c3496e88242f1637666a9a0ac9c86", null ], + [ "sendIP", "class_p_i_ethernet.html#aaa134cd7aecf18f151a09c497b19e0fa", null ], + [ "sendPort", "class_p_i_ethernet.html#a428a2e1cdf265f4b363240b4f8f40183", null ], + [ "setParameters", "class_p_i_ethernet.html#aa2edcd2272537c2250b4542c09e7f5d2", null ], + [ "setParameter", "class_p_i_ethernet.html#a158851a3cde91615d8feaac4edb805fb", null ], + [ "isParameterSet", "class_p_i_ethernet.html#a2131c00ba019a17cbf68c2b90fc8ec0f", null ], + [ "parameters", "class_p_i_ethernet.html#a69d52300d09db298d90ebcf02b1006d9", null ], + [ "type", "class_p_i_ethernet.html#af42a7ca0266f28bc9a389aca1618f43f", null ], + [ "readTimeout", "class_p_i_ethernet.html#a6e2bd7559bfb46784bda61f88ad055b4", null ], + [ "writeTimeout", "class_p_i_ethernet.html#a377813eb8c2b6c223a543ce8a001ef99", null ], + [ "setReadTimeout", "class_p_i_ethernet.html#a414c18f256488c471093178137526776", null ], + [ "setWriteTimeout", "class_p_i_ethernet.html#ae15ac03c2fdcab779650759b932c4660", null ], + [ "joinMulticastGroup", "class_p_i_ethernet.html#a99df6e4eccbecb0b704678b8df273dec", null ], + [ "leaveMulticastGroup", "class_p_i_ethernet.html#ac0213b620b1b79ee14dd6756bb11175c", null ], + [ "multicastGroups", "class_p_i_ethernet.html#aa7091f6fbba9f955eaba767e5a254f2e", null ], + [ "connect", "class_p_i_ethernet.html#ac09a74cc735c5e80e79b3f771a2a289c", null ], + [ "connect", "class_p_i_ethernet.html#a59b3f77ff2b8d62dacd6366a4d0879d3", null ], + [ "connect", "class_p_i_ethernet.html#a262d31ac59d8a3539899be651a6e56e7", null ], + [ "isConnected", "class_p_i_ethernet.html#a6917b5530a9b4daa4030e49892db3887", null ], + [ "listen", "class_p_i_ethernet.html#a8b756229579e309044186b776989db16", null ], + [ "listen", "class_p_i_ethernet.html#ac01db2157f9518237e915fabb360e40c", null ], + [ "listen", "class_p_i_ethernet.html#a606a5cac3eca4126a5fd6ad2f29763ab", null ], + [ "send", "class_p_i_ethernet.html#af01b2a4c78bce376ba6cfcf4dd2907c1", null ], + [ "send", "class_p_i_ethernet.html#ae8c88ae9984347a23e2d5743dec5739e", null ], + [ "send", "class_p_i_ethernet.html#a77b555fc82243b3e998cf2b008008f0f", null ], + [ "send", "class_p_i_ethernet.html#a8b42711033d1c21ea978b4c3deed0962", null ], + [ "read", "class_p_i_ethernet.html#a28595d8f88cdedf9e5572068ab116fa8", null ], + [ "write", "class_p_i_ethernet.html#a06c2ca73668cbdefc9fad4749b465ff0", null ], + [ "write", "class_p_i_ethernet.html#a9dbe618372c2ad3f5a5e02b638b2aaf1", null ], + [ "constructFullPath", "class_p_i_ethernet.html#ac4bac35deda7848e7c16e770c64b08ee", null ], + [ "newConnection", "class_p_i_ethernet.html#aae2f98a5e99d82d5520e352bb2c87a76", null ], + [ "connected", "class_p_i_ethernet.html#a80df2b0b931858d93065fa32e1682bc7", null ], + [ "disconnected", "class_p_i_ethernet.html#a0e7319514519c950760c760f605f330f", null ], + [ "propertyChanged", "class_p_i_ethernet.html#aeab32d357e600e3428a3c40db782df1e", null ], + [ "fullPathPrefix", "class_p_i_ethernet.html#ae80b62a0c52c5e0985e4fa3f39aadfea", null ], + [ "configureFromFullPath", "class_p_i_ethernet.html#a884e1f63790d644916fb54da4603ba2d", null ], + [ "configureDevice", "class_p_i_ethernet.html#af6a952895c0e75d5420b5671c929721a", null ], + [ "received", "class_p_i_ethernet.html#a2adc07e00ede7ca18bfa93e94290a9f9", null ], + [ "init", "class_p_i_ethernet.html#a9c9a8d104603bcb93b7b5f096b3105bb", null ], + [ "openDevice", "class_p_i_ethernet.html#a6168aeef5b82bb0f8befa17366f1b116", null ], + [ "closeDevice", "class_p_i_ethernet.html#a5229b3d4d175a6144a189a7204e02204", null ], + [ "ip", "class_p_i_ethernet.html#ae49bc185dedf39646ea445fd57e21283", null ], + [ "port", "class_p_i_ethernet.html#ad6b354929e62f909918d73633ea49135", null ], + [ "broadcast", "class_p_i_ethernet.html#abd3b6f9ba04b899316f8bd7067ec03e7", null ], + [ "reuseAddress", "class_p_i_ethernet.html#a079e3664394cae2bd1a7981bbfd580ee", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list-members.html b/doc/html/class_p_i_ethernet_1_1_interface_list-members.html new file mode 100644 index 00000000..fcac3f0f --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list-members.html @@ -0,0 +1,159 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIEthernet::InterfaceList Member List
+
+
+ +

This is the complete list of members for PIEthernet::InterfaceList, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
back()PIVector< PIEthernet::Interface >inline
back() constPIVector< PIEthernet::Interface >inline
clear()PIVector< PIEthernet::Interface >inline
compare_func(const PIEthernet::Interface *t0, const PIEthernet::Interface *t1)PIVector< PIEthernet::Interface >inlinestatic
contains(const PIEthernet::Interface &v) constPIVector< PIEthernet::Interface >inline
enlarge(llong piv_size)PIVector< PIEthernet::Interface >inline
etries(const PIEthernet::Interface &v) constPIVector< PIEthernet::Interface >inline
fill(const PIEthernet::Interface &f=PIEthernet::Interface())PIVector< PIEthernet::Interface >inline
front()PIVector< PIEthernet::Interface >inline
front() constPIVector< PIEthernet::Interface >inline
getByAddress(const PIString &address) const PIEthernet::InterfaceListinline
getByIndex(int index) const PIEthernet::InterfaceListinline
getByName(const PIString &name) const PIEthernet::InterfaceListinline
getLoopback() const PIEthernet::InterfaceListinline
isEmpty() constPIVector< PIEthernet::Interface >inline
operator!=(const PIVector< PIEthernet::Interface > &t) constPIVector< PIEthernet::Interface >inline
operator<<(const PIVector< PIEthernet::Interface > &other)PIVector< PIEthernet::Interface >inline
operator==(const PIVector< PIEthernet::Interface > &t) constPIVector< PIEthernet::Interface >inline
PIVector()PIVector< PIEthernet::Interface >inline
pop_back()PIVector< PIEthernet::Interface >inline
pop_front()PIVector< PIEthernet::Interface >inline
push_back(const PIEthernet::Interface &v)PIVector< PIEthernet::Interface >inline
push_front(const PIEthernet::Interface &v)PIVector< PIEthernet::Interface >inline
remove(size_t index, size_t count=1)PIVector< PIEthernet::Interface >inline
removeAll(const PIEthernet::Interface &v)PIVector< PIEthernet::Interface >inline
removeOne(const PIEthernet::Interface &v)PIVector< PIEthernet::Interface >inline
resize(size_t new_size, const PIEthernet::Interface &f=PIEthernet::Interface())PIVector< PIEthernet::Interface >inline
size() constPIVector< PIEthernet::Interface >inline
size_s() constPIVector< PIEthernet::Interface >inline
sort(CompareFunc compare=compare_func)PIVector< PIEthernet::Interface >inline
take_back()PIVector< PIEthernet::Interface >inline
take_front()PIVector< PIEthernet::Interface >inline
+
+ + + + diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list.html b/doc/html/class_p_i_ethernet_1_1_interface_list.html new file mode 100644 index 00000000..ea6cf09e --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list.html @@ -0,0 +1,161 @@ + + + + + + +PIP: PIEthernet::InterfaceList Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIEthernet::InterfaceList Class Reference
+
+
+ +

Array of Interface with some features. + More...

+
+ + Inheritance diagram for PIEthernet::InterfaceList:
+
+
+ + + + + + + + + + + + + + + +

+Public Member Functions

+const InterfacegetByIndex (int index) const
 Get interface with system index "index" or 0 if there is no one.
 
+const InterfacegetByName (const PIString &name) const
 Get interface with system name "name" or 0 if there is no one.
 
+const InterfacegetByAddress (const PIString &address) const
 Get interface with IP address "address" or 0 if there is no one.
 
+const InterfacegetLoopback () const
 Get loopback interface or 0 if there is no one.
 
+

Detailed Description

+

Array of Interface with some features.

+
+
+ + + + diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list.js b/doc/html/class_p_i_ethernet_1_1_interface_list.js new file mode 100644 index 00000000..41ccf283 --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list.js @@ -0,0 +1,7 @@ +var class_p_i_ethernet_1_1_interface_list = +[ + [ "getByIndex", "class_p_i_ethernet_1_1_interface_list.html#a2b206fa34041a17fd220dedb8f7f5b23", null ], + [ "getByName", "class_p_i_ethernet_1_1_interface_list.html#a370ca35bd198f7b5299a8a397648ee98", null ], + [ "getByAddress", "class_p_i_ethernet_1_1_interface_list.html#a310d9bbcbce604c11e3c3a016f1e449d", null ], + [ "getLoopback", "class_p_i_ethernet_1_1_interface_list.html#aa7d664f29056fba64f8e58f547c739f0", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.map b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.map new file mode 100644 index 00000000..fdae41c5 --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.md5 b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.md5 new file mode 100644 index 00000000..dde396d9 --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.md5 @@ -0,0 +1 @@ +c62d3f4ecc47b4ce2ac9e4e77f00b771 \ No newline at end of file diff --git a/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.svg b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.svg new file mode 100644 index 00000000..6d0f3c47 --- /dev/null +++ b/doc/html/class_p_i_ethernet_1_1_interface_list__inherit__graph.svg @@ -0,0 +1,32 @@ + + + + + + +PIEthernet::InterfaceList + + +Node1 + +PIEthernet::InterfaceList + + +Node2 + + +PIVector< PIEthernet +::Interface > + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_ethernet__inherit__graph.map b/doc/html/class_p_i_ethernet__inherit__graph.map new file mode 100644 index 00000000..cfd36b80 --- /dev/null +++ b/doc/html/class_p_i_ethernet__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/doc/html/class_p_i_ethernet__inherit__graph.md5 b/doc/html/class_p_i_ethernet__inherit__graph.md5 new file mode 100644 index 00000000..647f4149 --- /dev/null +++ b/doc/html/class_p_i_ethernet__inherit__graph.md5 @@ -0,0 +1 @@ +d6973a100e3a536bb39f655ef2739b0d \ No newline at end of file diff --git a/doc/html/class_p_i_ethernet__inherit__graph.svg b/doc/html/class_p_i_ethernet__inherit__graph.svg new file mode 100644 index 00000000..caab32e1 --- /dev/null +++ b/doc/html/class_p_i_ethernet__inherit__graph.svg @@ -0,0 +1,57 @@ + + + + + + +PIEthernet + + +Node1 + +PIEthernet + + +Node2 + + +PIIODevice + + + + +Node2->Node1 + + + + +Node3 + + +PIThread + + + + +Node3->Node2 + + + + +Node4 + + +PIObject + + + + +Node4->Node3 + + + + + diff --git a/doc/html/class_p_i_evaluator-members.html b/doc/html/class_p_i_evaluator-members.html new file mode 100644 index 00000000..8159fd9b --- /dev/null +++ b/doc/html/class_p_i_evaluator-members.html @@ -0,0 +1,142 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIEvaluator Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + +
check(const PIString &string)PIEvaluator
clearCustomVariables()PIEvaluatorinline
data()PIEvaluatorinline
error() const PIEvaluatorinline
evaluate()PIEvaluator
expression() const PIEvaluatorinline
isCorrect() const PIEvaluatorinline
lastResult() const PIEvaluatorinline
PIEvaluator()PIEvaluatorinline
removeVariable(const PIString &name)PIEvaluatorinline
setData(void *_data)PIEvaluatorinline
setVariable(const PIString &name, complexd value=0.)PIEvaluatorinline
setVariable(int index, complexd value=0.)PIEvaluatorinline
unknownVariables() const PIEvaluatorinline
variableIndex(const PIString &name) const PIEvaluatorinline
+
+ + + + diff --git a/doc/html/class_p_i_evaluator.html b/doc/html/class_p_i_evaluator.html new file mode 100644 index 00000000..3d5d1161 --- /dev/null +++ b/doc/html/class_p_i_evaluator.html @@ -0,0 +1,299 @@ + + + + + + +PIP: PIEvaluator Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIEvaluator Class Reference
+
+
+ +

This class provide mathematical evaluations of custom expression. + More...

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

+Public Member Functions

PIEvaluator ()
 Constructs an empty evaluator.
 
+void * data ()
 Returns custom data.
 
+void setData (void *_data)
 Set custom data to "_data".
 
+bool check (const PIString &string)
 Check mathematical expression and parse it to list of instructions.
 
+bool isCorrect () const
 Returns true if expression was checked succesfully.
 
+int setVariable (const PIString &name, complexd value=0.)
 Set variable value with name "name" to value "value". Add variable if it doesn`t exists.
 
+void setVariable (int index, complexd value=0.)
 Set variable value with index "index" to value "value". Dont add variable if it doesnt exists.
 
+complexd evaluate ()
 Evaluate last successfully checked with function check() expression and returns result.
 
+void removeVariable (const PIString &name)
 Remove variable with name "name".
 
+void clearCustomVariables ()
 Remove all manually added variables.
 
+int variableIndex (const PIString &name) const
 Returns index of variable with name "name".
 
+const PIStringListunknownVariables () const
 Returns all unknown variables founded in last expression passed to check() function.
 
+const PIStringexpression () const
 Returns processed last expression passed to check() function.
 
+const PIStringerror () const
 Returns last error description occured in check() function.
 
+const complexd & lastResult () const
 Returns last result of evaluate()
 
+

Detailed Description

+

This class provide mathematical evaluations of custom expression.

+

+Synopsis

+

PIEvaluator developed for stream evaluations of once set expression. It`s create internal list of instructions on function check() and executes very fast on function evaluate(). Once given expression can be evaluated any times with different variable values. Evaluator supports many common mathematic functions described below. Also it`s automatic puts unnecessarily signs and bracets. Processed expression can be obtains with function expression(). If there is an error in expression you can get it with function error(). Last evaluated result you can get with function lastResult().

+

+Using

+

First you should set your variables with function setVariable(). Next give your expression with function check() and check for error with functions isCorrect() and error(). If expression is correct you can get processed expression with function expression() and evaluate it with function evaluate(). You can change variable values without rechecking expression.

+

+Functions

+

PIEvaluator supports arithmetical operations with complex numbers, this is their list in priority order:

    +
  • ^ (power)
  • +
  • * (multiply)
  • +
  • / (divide)
  • +
  • % (residue)
  • +
  • + (add)
  • +
  • - (subtract)
  • +
+

In addition there are compare and logical operations:

    +
  • == (equal)
  • +
  • != (not equal)
  • +
  • > (greater)
  • +
  • < (smaller)
  • +
  • >= (greater or equal)
  • +
  • <= (smaller or equal)
  • +
  • && (and)
  • +
  • || (or)
  • +
+

Compare and logical functions works with real operators part and returns 0 or 1.

+

Mathematical functions:

    +
  • sin(x) - sine
  • +
  • cos(x) - cosine
  • +
  • tg(x) - tangent
  • +
  • ctg(x) - cotangent
  • +
  • arcsin(x) - arcsine
  • +
  • arccos(x) - arccosine
  • +
  • arctg(x) -arccotangent
  • +
  • arcctg(x) - arctangent
  • +
  • sh(x) - hyperbolical sine
  • +
  • ch(x) - hyperbolical cosine
  • +
  • th(x) - hyperbolical tangent
  • +
  • cth(x) - hyperbolical cotangent
  • +
  • sqr(x) - square
  • +
  • sqrt(x) - square root
  • +
  • abs(x) - absolute value
  • +
  • sign(x) - sign of real part (-1 or 1)
  • +
  • exp(x) - exponent
  • +
  • pow(x, p) - x in power p
  • +
  • ln(x) - natural logarithm
  • +
  • lg(x) - decimal logarithm
  • +
  • log(x, b) - logarithm of x with base b
  • +
  • im(x) - imaginary part of complex number
  • +
  • re(x) - real part of complex number
  • +
  • arg(x) - argument of complex number
  • +
  • len(x) - length of complex number
  • +
  • conj(x) - length of complex number
  • +
  • rad(x) - convert degrees to radians
  • +
  • deg(x) - convert radians to degrees
  • +
  • j0(x) - Bessel function first kind order 0
  • +
  • j1(x) - Bessel function first kind order 1
  • +
  • jn(x, n) - Bessel function first kind order n
  • +
  • y0(x) - Bessel function second kind order 0
  • +
  • y1(x) - Bessel function second kind order 1
  • +
  • yn(x, n) - Bessel function second kind order n
  • +
  • random(s, f) - regular random number in range [s, f]
  • +
  • min(x0, x1, ...) - minimum of x0, x1, ...
  • +
  • max(x0, x1, ...) - maximum of x0, x1, ...
  • +
  • clamp(x, a, b) - trim x on range [a, b]
  • +
  • step(x, s) - 0 if x < s, else 1
  • +
  • mix(x, a, b) - interpolate between a and b linear for x (a * (1 - x) + b * x)
  • +
+

There are some built-in constans:

    +
  • i (imaginary 1)
  • +
  • e
  • +
  • pi
  • +
+

All trigonometric functions takes angle in radians.

+

+Example

+
+
+
eval.check("e2eelge");
+
+
piCout << eval.expression() << "=" << eval.evaluate();
+
// e*2*e*e*lg(e) = (17.4461; 0)
+
+
eval.check("10x");
+
+
piCout << eval.error() << eval.unknownVariables();
+
// Unknown variables: "x" {"x"}
+
+
eval.setVariable("x", complexd(1, 2));
+
eval.check("10x");
+
+
piCout << eval.error() << eval.unknownVariables();
+
// Correct {}
+
+
piCout << eval.expression() << "=" << eval.evaluate();
+
// 10*x = (10; 20)
+
+
eval.setVariable("x", complexd(-2, 0));
+
+
piCout << eval.expression() << "=" << eval.evaluate();
+
// 10*x = (-20; 0)
+
+
+ + + + diff --git a/doc/html/class_p_i_evaluator.js b/doc/html/class_p_i_evaluator.js new file mode 100644 index 00000000..887bd20a --- /dev/null +++ b/doc/html/class_p_i_evaluator.js @@ -0,0 +1,18 @@ +var class_p_i_evaluator = +[ + [ "PIEvaluator", "class_p_i_evaluator.html#a4fe9e776a1db6cc5b55665304764cf20", null ], + [ "data", "class_p_i_evaluator.html#ac5d8118fce80c08a8ae3ad2215625839", null ], + [ "setData", "class_p_i_evaluator.html#a56921d7e9aac1543eeee4d52b220f8ac", null ], + [ "check", "class_p_i_evaluator.html#a1eae7848dc5d9d740a18acf4538ec34f", null ], + [ "isCorrect", "class_p_i_evaluator.html#ac9a77afecf7a5ca245c920a491f4386f", null ], + [ "setVariable", "class_p_i_evaluator.html#a066713e986ccf0abbdffc1dd4ab8a487", null ], + [ "setVariable", "class_p_i_evaluator.html#ad83802b50958b28193a523144b7e8d55", null ], + [ "evaluate", "class_p_i_evaluator.html#abc6012ab974a16f99b08cc2773142b79", null ], + [ "removeVariable", "class_p_i_evaluator.html#a10a2ad62c7636b8c343ca0a60afcb9d0", null ], + [ "clearCustomVariables", "class_p_i_evaluator.html#aa96ba5c4174592341d65eaebffd7fece", null ], + [ "variableIndex", "class_p_i_evaluator.html#ac20bb44234749ce227df1b95fcc319ae", null ], + [ "unknownVariables", "class_p_i_evaluator.html#a7d1a1ce4eea722fde90e487f397cd25c", null ], + [ "expression", "class_p_i_evaluator.html#ac9a0a4fd65af2518d8efdaa9c5298991", null ], + [ "error", "class_p_i_evaluator.html#ac3e87ff15b4b04240b133affaf09e72b", null ], + [ "lastResult", "class_p_i_evaluator.html#a50b2b35e52268072b8b2080f9dcf1d2c", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_file-members.html b/doc/html/class_p_i_file-members.html new file mode 100644 index 00000000..afd36d54 --- /dev/null +++ b/doc/html/class_p_i_file-members.html @@ -0,0 +1,221 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIFile Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
closeDevice()PIFileprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIIODeviceinlineprotectedvirtual
configureFromFullPath(const PIString &full_path)PIFileprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PIFileinlineprotectedvirtual
HANDLERPIObjectrelated
init()PIIODeviceinlineprotectedvirtual
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
openDevice()PIFileprotectedvirtual
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
priority() const PIThreadinline
Priority enum namePIThread
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
REGISTER_DEVICEPIIODevicerelated
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
threadedRead(uchar *readed, int size)PIIODeviceinlineprotectedvirtual
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_file.html b/doc/html/class_p_i_file.html new file mode 100644 index 00000000..16a140fc --- /dev/null +++ b/doc/html/class_p_i_file.html @@ -0,0 +1,526 @@ + + + + + + +PIP: PIFile Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIFile Class Reference
+
+
+ +

Local file. + More...

+
+ + Inheritance diagram for PIFile:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
+bool openDevice ()
 Reimplement to open device, return value will be set to "opened_" variable.
 
+bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
- Protected Member Functions inherited from PIIODevice
+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+virtual bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Local file.

+

+Synopsis

+

This class provide access to local file. You can manipulate binary content or use this class as text stream. To binary access there are function read(), write(), and many writeBinary() functions. For write variables to file in their text representation threr are many "<<" operators.

+

+Position

+

Each opened file has a read/write position - logical position in the file content you read from or you write to. You can find out current position with function pos(). Function seek(llong position) move position to position "position", seekToBegin() move position to the begin of file, seekToEnd() move position to the end of file.

+
+
+ + + + diff --git a/doc/html/class_p_i_file.js b/doc/html/class_p_i_file.js new file mode 100644 index 00000000..265478da --- /dev/null +++ b/doc/html/class_p_i_file.js @@ -0,0 +1,7 @@ +var class_p_i_file = +[ + [ "fullPathPrefix", "class_p_i_file.html#a68c53a59d5afef2a7c363f987b1a5e1a", null ], + [ "configureFromFullPath", "class_p_i_file.html#a8f98ce9e7a6896b7c1dd0ca49a8eb49a", null ], + [ "openDevice", "class_p_i_file.html#aeb972f021b5ef835566764f8bb000976", null ], + [ "closeDevice", "class_p_i_file.html#ad3d944f75bbda0f14f2d9549d92ca614", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_file__inherit__graph.map b/doc/html/class_p_i_file__inherit__graph.map new file mode 100644 index 00000000..05ca8917 --- /dev/null +++ b/doc/html/class_p_i_file__inherit__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/doc/html/class_p_i_file__inherit__graph.md5 b/doc/html/class_p_i_file__inherit__graph.md5 new file mode 100644 index 00000000..19f4ca7f --- /dev/null +++ b/doc/html/class_p_i_file__inherit__graph.md5 @@ -0,0 +1 @@ +6c5612232cfc6995ecd599ca417f588c \ No newline at end of file diff --git a/doc/html/class_p_i_file__inherit__graph.svg b/doc/html/class_p_i_file__inherit__graph.svg new file mode 100644 index 00000000..fe7a0be5 --- /dev/null +++ b/doc/html/class_p_i_file__inherit__graph.svg @@ -0,0 +1,70 @@ + + + + + + +PIFile + + +Node1 + +PIFile + + +Node5 + + +PIConfig + + + + +Node1->Node5 + + + + +Node2 + + +PIIODevice + + + + +Node2->Node1 + + + + +Node3 + + +PIThread + + + + +Node3->Node2 + + + + +Node4 + + +PIObject + + + + +Node4->Node3 + + + + + diff --git a/doc/html/class_p_i_flags-members.html b/doc/html/class_p_i_flags-members.html new file mode 100644 index 00000000..103e430d --- /dev/null +++ b/doc/html/class_p_i_flags-members.html @@ -0,0 +1,175 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIFlags< Enum > Member List
+
+
+ +

This is the complete list of members for PIFlags< Enum >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
operator int() const PIFlags< Enum >inline
operator!=(const PIFlags &f)PIFlags< Enum >inline
operator!=(const Enum &e)PIFlags< Enum >inline
operator!=(const int i)PIFlags< Enum >inline
operator&(PIFlags f) const PIFlags< Enum >inline
operator&(Enum e) const PIFlags< Enum >inline
operator&(int i) const PIFlags< Enum >inline
operator&=(const PIFlags &f)PIFlags< Enum >inline
operator&=(const Enum &e)PIFlags< Enum >inline
operator&=(const int i)PIFlags< Enum >inline
operator<(const PIFlags &f)PIFlags< Enum >inline
operator<(const Enum &e)PIFlags< Enum >inline
operator<(const int i)PIFlags< Enum >inline
operator<=(const PIFlags &f)PIFlags< Enum >inline
operator<=(const Enum &e)PIFlags< Enum >inline
operator<=(const int i)PIFlags< Enum >inline
operator=(const PIFlags &f)PIFlags< Enum >inline
operator=(const Enum &e)PIFlags< Enum >inline
operator=(const int &i)PIFlags< Enum >inline
operator==(const PIFlags &f)PIFlags< Enum >inline
operator==(const Enum &e)PIFlags< Enum >inline
operator==(const int i)PIFlags< Enum >inline
operator>(const PIFlags &f)PIFlags< Enum >inline
operator>(const Enum &e)PIFlags< Enum >inline
operator>(const int i)PIFlags< Enum >inline
operator>=(const PIFlags &f)PIFlags< Enum >inline
operator>=(const Enum &e)PIFlags< Enum >inline
operator>=(const int i)PIFlags< Enum >inline
operator[](Enum e) const PIFlags< Enum >inline
operator^(PIFlags f) const PIFlags< Enum >inline
operator^(Enum e) const PIFlags< Enum >inline
operator^(int i) const PIFlags< Enum >inline
operator^=(const PIFlags &f)PIFlags< Enum >inline
operator^=(const Enum &e)PIFlags< Enum >inline
operator^=(const int i)PIFlags< Enum >inline
operator|(PIFlags f) const PIFlags< Enum >inline
operator|(Enum e) const PIFlags< Enum >inline
operator|(int i) const PIFlags< Enum >inline
operator|=(const PIFlags &f)PIFlags< Enum >inline
operator|=(const Enum &e)PIFlags< Enum >inline
operator|=(const int i)PIFlags< Enum >inline
PIFlags()PIFlags< Enum >inline
PIFlags(Enum e)PIFlags< Enum >inline
PIFlags(const PIFlags &f)PIFlags< Enum >inline
PIFlags(const int i)PIFlags< Enum >inline
setFlag(const PIFlags &f, bool on=true)PIFlags< Enum >inline
setFlag(const Enum &e, bool on=true)PIFlags< Enum >inline
setFlag(const int &i, bool on=true)PIFlags< Enum >inline
+
+ + + + diff --git a/doc/html/class_p_i_flags.html b/doc/html/class_p_i_flags.html new file mode 100644 index 00000000..d530310b --- /dev/null +++ b/doc/html/class_p_i_flags.html @@ -0,0 +1,338 @@ + + + + + + +PIP: PIFlags< Enum > Class Template Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIFlags< Enum > Class Template Reference
+
+
+ +

This class used as container for bit flags. + More...

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

+Public Member Functions

PIFlags ()
 Constructor with flags = 0.
 
PIFlags (Enum e)
 Constructor with flags = Enum "e".
 
PIFlags (const PIFlags &f)
 Constructor with flags = PIFlags "f".
 
PIFlags (const int i)
 Constructor with flags = int "i".
 
+PIFlagssetFlag (const PIFlags &f, bool on=true)
 Set flags "f" to value "on".
 
+PIFlagssetFlag (const Enum &e, bool on=true)
 Set flag "e" to value "on".
 
+PIFlagssetFlag (const int &i, bool on=true)
 Set flag "i" to value "on".
 
+void operator= (const PIFlags &f)
 copy operator
 
+void operator= (const Enum &e)
 copy operator
 
+void operator= (const int &i)
 copy operator
 
+bool operator== (const PIFlags &f)
 compare operator
 
+bool operator== (const Enum &e)
 compare operator
 
+bool operator== (const int i)
 compare operator
 
+bool operator!= (const PIFlags &f)
 compare operator
 
+bool operator!= (const Enum &e)
 compare operator
 
+bool operator!= (const int i)
 compare operator
 
+bool operator> (const PIFlags &f)
 compare operator
 
+bool operator> (const Enum &e)
 compare operator
 
+bool operator> (const int i)
 compare operator
 
+bool operator< (const PIFlags &f)
 compare operator
 
+bool operator< (const Enum &e)
 compare operator
 
+bool operator< (const int i)
 compare operator
 
+bool operator>= (const PIFlags &f)
 compare operator
 
+bool operator>= (const Enum &e)
 compare operator
 
+bool operator>= (const int i)
 compare operator
 
+bool operator<= (const PIFlags &f)
 compare operator
 
+bool operator<= (const Enum &e)
 compare operator
 
+bool operator<= (const int i)
 compare operator
 
+void operator&= (const PIFlags &f)
 Bit-wise AND operator.
 
+void operator&= (const Enum &e)
 Bit-wise AND operator.
 
+void operator&= (const int i)
 Bit-wise AND operator.
 
+void operator|= (const PIFlags &f)
 Bit-wise OR operator.
 
+void operator|= (const Enum &e)
 Bit-wise OR operator.
 
+void operator|= (const int i)
 Bit-wise OR operator.
 
+void operator^= (const PIFlags &f)
 Bit-wise XOR operator.
 
+void operator^= (const Enum &e)
 Bit-wise XOR operator.
 
+void operator^= (const int i)
 Bit-wise XOR operator.
 
+PIFlags operator& (PIFlags f) const
 Bit-wise AND operator.
 
+PIFlags operator& (Enum e) const
 Bit-wise AND operator.
 
+PIFlags operator& (int i) const
 Bit-wise AND operator.
 
+PIFlags operator| (PIFlags f) const
 Bit-wise OR operator.
 
+PIFlags operator| (Enum e) const
 Bit-wise OR operator.
 
+PIFlags operator| (int i) const
 Bit-wise OR operator.
 
+PIFlags operator^ (PIFlags f) const
 Bit-wise XOR operator.
 
+PIFlags operator^ (Enum e) const
 Bit-wise XOR operator.
 
+PIFlags operator^ (int i) const
 Bit-wise XOR operator.
 
+bool operator[] (Enum e) const
 Test flag operator.
 
operator int () const
 Implicity conversion to int.
 
+

Detailed Description

+

template<typename Enum>
+class PIFlags< Enum >

+ +

This class used as container for bit flags.

+

PIFlags is wrapper around "int". There are many bit-wise operators, native conversion to int and function to test flag.
+ Example:

enum TestEnum {First = 0x1, Second = 0x2, Third = 0x4};
+
PIFlags<TestEnum> testFlags(First);
+
testFlags |= Third;
+
piCout << testFlags[First] << testFlags[Second] << testFlags[Third]; // 1 0 1
+
piCout << (int)testFlags; // 5
+
+
+ + + + diff --git a/doc/html/class_p_i_flags.js b/doc/html/class_p_i_flags.js new file mode 100644 index 00000000..5bf94746 --- /dev/null +++ b/doc/html/class_p_i_flags.js @@ -0,0 +1,51 @@ +var class_p_i_flags = +[ + [ "PIFlags", "class_p_i_flags.html#a99d2dd72580b4c93b2bd6754cfc5e1b8", null ], + [ "PIFlags", "class_p_i_flags.html#a657c6082214f45ae26436517bb12168e", null ], + [ "PIFlags", "class_p_i_flags.html#a815969c121235a5a1fbfa6cb3d9cc2f4", null ], + [ "PIFlags", "class_p_i_flags.html#a3307667726be788df2ddca22e00c590d", null ], + [ "setFlag", "class_p_i_flags.html#a6673f1d35533de415c32585fa07acc4c", null ], + [ "setFlag", "class_p_i_flags.html#af5e4ff71a745cd3480652f9d8073e0c6", null ], + [ "setFlag", "class_p_i_flags.html#ac3698f718594f1937e2c3b75173c0ccc", null ], + [ "operator=", "class_p_i_flags.html#aa564e466b29c503ffe5fb333477b57e9", null ], + [ "operator=", "class_p_i_flags.html#a770bd137d48fc87414d211136e497264", null ], + [ "operator=", "class_p_i_flags.html#a1bd66aa9dcb533ff06872cb60c280bf2", null ], + [ "operator==", "class_p_i_flags.html#a92c3b13d611c323253155df10ddb0589", null ], + [ "operator==", "class_p_i_flags.html#a81d595884d3625e3f8339515da5142df", null ], + [ "operator==", "class_p_i_flags.html#a7d12ce96db356cf939007094fa8d18ac", null ], + [ "operator!=", "class_p_i_flags.html#a59ae898edaae7ee779cf47985ba97b05", null ], + [ "operator!=", "class_p_i_flags.html#a78ba48024fea46cc2d57172bf997e870", null ], + [ "operator!=", "class_p_i_flags.html#aa589988a996ab33adc81f906c7beff11", null ], + [ "operator>", "class_p_i_flags.html#a7e2e36f073adce8652f8c2bba54c4726", null ], + [ "operator>", "class_p_i_flags.html#ab15468c584d812993908f25e082a8a46", null ], + [ "operator>", "class_p_i_flags.html#a465dcf5ad5a0f3ce635a1cc58582ae73", null ], + [ "operator<", "class_p_i_flags.html#a5bedc9803db598b1fe87bd815f1f50c3", null ], + [ "operator<", "class_p_i_flags.html#af8ad4abecf7a29b4f33a4cdba0d53a91", null ], + [ "operator<", "class_p_i_flags.html#aea03b049361f891ac03d791d8f889016", null ], + [ "operator>=", "class_p_i_flags.html#a7492424bc2aa14d9acc89ed804b43429", null ], + [ "operator>=", "class_p_i_flags.html#adbbd42330d0112e0a3027a4fecae5d0d", null ], + [ "operator>=", "class_p_i_flags.html#a9da15d887157a646afd68d397dfe1834", null ], + [ "operator<=", "class_p_i_flags.html#a8c58b248b368645075bfe17ca3d89dae", null ], + [ "operator<=", "class_p_i_flags.html#ad6db41bdb39487a6527ec61c38731e5f", null ], + [ "operator<=", "class_p_i_flags.html#a846954cedb1fcc2c013c19b97015d673", null ], + [ "operator&=", "class_p_i_flags.html#abddc6b15602a50cb8a43935d32b57cfc", null ], + [ "operator&=", "class_p_i_flags.html#a69759343b60a2ded01f9eb603a4ab471", null ], + [ "operator&=", "class_p_i_flags.html#afc767b6874e64209d8d4d204f98b98b6", null ], + [ "operator|=", "class_p_i_flags.html#ad75fb5da994327ba3d7c3fc6ec6618a8", null ], + [ "operator|=", "class_p_i_flags.html#a875de3331e28f62926b93434d97f0e95", null ], + [ "operator|=", "class_p_i_flags.html#aa2c5fcf51605331ef710d5fa9f9f85dc", null ], + [ "operator^=", "class_p_i_flags.html#a52cc502ff50daa80c835b830f887e123", null ], + [ "operator^=", "class_p_i_flags.html#a786e69005ae156211ea3fbfcfb442c5a", null ], + [ "operator^=", "class_p_i_flags.html#a53d822bbb7e7b3ed6aed90d6b07d96cf", null ], + [ "operator&", "class_p_i_flags.html#a8794228e06813b904f387d831ff0e9b0", null ], + [ "operator&", "class_p_i_flags.html#a4159b4116bded6b35ddeec688999b4bc", null ], + [ "operator&", "class_p_i_flags.html#a4ab2f09fb40fa0988b968ccb957d7ba1", null ], + [ "operator|", "class_p_i_flags.html#a9b502fbd3bb299efac66cbeb364b3480", null ], + [ "operator|", "class_p_i_flags.html#a0cfb21b9520162fc35a4e9b55dade176", null ], + [ "operator|", "class_p_i_flags.html#a9f7a72e1d42087971ebc2368f2a4819d", null ], + [ "operator^", "class_p_i_flags.html#a6ba52142f66b679d36c16f7954c87296", null ], + [ "operator^", "class_p_i_flags.html#ac0526e886b96e22c4e3433eecd7e8682", null ], + [ "operator^", "class_p_i_flags.html#a34b1ab652fa134e129c55502c577f10e", null ], + [ "operator[]", "class_p_i_flags.html#a8db0289c6a2d99736f2ad8cf8ab48aea", null ], + [ "operator int", "class_p_i_flags.html#a3338b89805f5035e609939c798e6f7a1", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_i_o_device-members.html b/doc/html/class_p_i_i_o_device-members.html new file mode 100644 index 00000000..4d4a4cd1 --- /dev/null +++ b/doc/html/class_p_i_i_o_device-members.html @@ -0,0 +1,221 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIIODevice Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
closeDevice()PIIODeviceinlineprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIIODeviceinlineprotectedvirtual
configureFromFullPath(const PIString &full_path)PIIODeviceinlineprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PIIODeviceinlineprotectedvirtual
HANDLERPIObjectrelated
init()PIIODeviceinlineprotectedvirtual
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
openDevice()=0PIIODeviceprotectedpure virtual
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
REGISTER_DEVICEPIIODevicerelated
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
threadedRead(uchar *readed, int size)PIIODeviceinlineprotectedvirtual
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_i_o_device.html b/doc/html/class_p_i_i_o_device.html new file mode 100644 index 00000000..8eda8cfb --- /dev/null +++ b/doc/html/class_p_i_i_o_device.html @@ -0,0 +1,678 @@ + + + + + + +PIP: PIIODevice Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIIODevice Class Referenceabstract
+
+
+ +

Base class for input/output classes. + More...

+
+ + Inheritance diagram for PIIODevice:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+virtual bool openDevice ()=0
 Reimplement to open device, return value will be set to "opened_" variable.
 
+virtual bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
+virtual bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
+virtual PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+virtual void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
template<typename T >
readDeviceSetting (const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)
 Service function. useful for configuring devices. More...
 
+#define REGISTER_DEVICE(class)
 Use this macro to enable automatic creation instances of your class with createFromFullPath() function.
 
+#define PIIODEVICE(class)
 Use this macro instead of PIOBJECT when describe your own PIIODevice.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Base class for input/output classes.

+

+Synopsis

+

This class provide open/close logic, threaded read/write and virtual input/output functions read() and write(). You should implement pure virtual function openDevice() in your subclass.

+

+Open and close

+

PIIODevice have boolean variable indicated open status. Returns of functions openDevice() and closeDevice() change this variable.

+

+Threaded read

+

PIIODevice based on PIThread, so it`s overload run() to exec read() in background thread. If read is successful virtual function threadedRead() is executed. Default implementation of this function execute external static function set by setThreadedReadSlot() with data set by setThreadedReadData(). Extrenal static function should have format
+bool func_name(void * Threaded_read_data, uchar * readed_data, int readed_size)
+Threaded read starts with function startThreadedRead().

+

+Threaded write

+

PIIODevice aggregate another PIThread to perform a threaded write by function writeThreaded(). This function add task to internal queue and return queue entry ID. You should start write thread by function startThreadedWrite. On successful write event threadedWriteEvent is raised with two arguments - task ID and written bytes count.

+

+Internal buffer

+

PIIODevice have internal buffer for threaded read, and threadedRead() function receive pointer to this buffer in first argument. You can adjust size of this buffer by function setThreadedReadBufferSize()
+Default size of this buffer is 4096 bytes.

+

+Reopen

+

When threaded read is begin its call open() if device is closed. While threaded read running PIIODevice check if device opened every read and if not call open() every reopen timeout if reopen enabled. Reopen timeout is set by setReopenTimeout(), reopen enable is set by setReopenEnabled().

+

+Configuration

+

This is virtual function configureDevice() which executes when configure() executes. This function takes two arguments: "e_main" and "e_parent" as void*. There are pointers to PIConfig::Entry entries of section "section" and their parent. If there is no parent "e_parent" = 0. Function configure() set three parameters of device: "reopenEnabled", "reopenTimeout" and "threadedReadBufferSize", then execute function configureDevice().
+ Each ancestor of PIIODevice reimlements configureDevice() function to be able to be confured from configuration file. This parameters described at section "Configurable parameters" in the class reference.
+ Usage example:

// file example.conf
+
dev.reopenEnabled = false
+
dev.device = /dev/ttyS0
+
dev.speed = 9600
+
// end example.conf
+
// code
+ +
ser.configure("example.conf", "dev");
+

Implementation example:

class SomeIO: public PIIODevice {
+
...
+
bool configureDevice(const void * e_main, const void * e_parent) {
+
PIConfig::Entry * em = (PIConfig::Entry * )e_main;
+
PIConfig::Entry * ep = (PIConfig::Entry * )e_parent;
+
setStringParam(readDeviceSetting<PIString>("stringParam", stringParam(), em, ep));
+
setIntParam(readDeviceSetting<int>("intParam", intParam(), em, ep));
+
return true;
+
}
+
...
+
};
+

+Creating devices by unambiguous string

+

There are some virtual functions to describe child class without its declaration.
+ fullPathPrefix() should returns unique prefix of device
+ constructFullPath() should returns full unambiguous string, contains prefix and all device parameters
+ configureFromFullPath() provide configuring device from full unambiguous string without prefix and "://"
+ Macro PIIODEVICE should be used instead of PIOBJECT
+ Macro REGISTER_DEVICE should be used after definition of class, i.e. at the last line of *.cpp file
+
+ If custom I/O device corresponds there rules, it can be returned by function createFromFullPath().
+ Each PIP I/O device has custom unambiguous string description:

    +
  • PIFile: "file://<path>"
  • +
  • PIBinaryLog: "binlog://<logDir>[:<filePrefix>][:<defaultID>]"
  • +
  • PISerial: "ser://<device>:<speed(50|...|115200)>[:<dataBitsCount(6|7|8)>][:<parity(N|E|O)>][:<stopBits(1|2)>]"
  • +
  • PIEthernet: "eth://<type(UDP|TCP)>:<readIP>:<readPort>[:<multicast(mcast:<ip>)>]"
  • +
  • PIUSB: "usb://<vid>:<pid>[:<deviceNumber>][:<readEndpointNumber>][:<writeEndpointNumber>]"
    +
    + Examples:
  • +
  • PIFile: "file://../text.txt"
  • +
  • PIBinaryLog: "binlog://../logs/:mylog_:1"
  • +
  • PISerial: "ser:///dev/ttyUSB0:9600:8:N:1", equivalent "ser:///dev/ttyUSB0:9600"
  • +
  • PIEthernet: "eth://TCP:127.0.0.1:16666", "eth://UDP:192.168.0.5:16666:mcast:234.0.2.1:mcast:234.0.2.2"
  • +
  • PIUSB: "usb://0bb4:0c86:1:1:2"
    +
    +So, custom I/O device can be created with next call:
    // creatring devices
    +
    PISerial * ser = (PISerial * )PIIODevice::createFromFullPath("ser://COM1:115200");
    +
    PIEthernet * eth = (PIEthernet * )PIIODevice::createFromFullPath("eth://UDP:127.0.0.1:4001");
    +
    // examine devices
    +
    piCout << ser << ser->properties();
    +
    piCout << eth << eth->properties();
    +
  • +
+

+Example

+
class SomeIO: public PIIODevice {
+
PIIODEVICE(SomeIO)
+
public:
+
SomeIO(): PIIODevice() {}
+
protected:
+
bool openDevice() {
+
// open your device here
+
return if_success;
+
}
+
int read(void * read_to, int max_size) {
+
// read from your device here
+
return readed_bytes;
+
}
+
int write(const void * data, int max_size) {
+
// write to your device here
+
return written_bytes;
+
}
+
PIString fullPathPrefix() const {return "myio";}
+
void configureFromFullPath(const PIString & full_path) {
+
// parse full_path and configure device there
+
}
+
};
+ +

Friends And Related Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T readDeviceSetting (const PIStringname,
const T & def,
const PIConfig::Entryem,
const PIConfig::Entryep 
)
+
+related
+
+ +

Service function. useful for configuring devices.

+

Function takes entry name "name", default value "def" and two PIConfig::Entry sections: "em" and their parent "ep". If there is no parent ep = 0. If "ep" is not null and entry "name" exists in "ep" function returns this value. Else returns value of entry "name" in section "em" or "def" if entry doesn`t exists.
+ This function useful to read settings from configuration file in implementation PIIODevice::configureDevice() function

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_i_o_device.js b/doc/html/class_p_i_i_o_device.js new file mode 100644 index 00000000..3ec55deb --- /dev/null +++ b/doc/html/class_p_i_i_o_device.js @@ -0,0 +1,13 @@ +var class_p_i_i_o_device = +[ + [ "init", "class_p_i_i_o_device.html#a587c32639f2732920338a363ad163d81", null ], + [ "configureDevice", "class_p_i_i_o_device.html#ae7c5a2d7b6ea2409df4e200c8e4b8e32", null ], + [ "openDevice", "class_p_i_i_o_device.html#ae62b3035a9f884d345fd5d071c8089c8", null ], + [ "closeDevice", "class_p_i_i_o_device.html#aaf041ac27ee2b9af4828fbe2f4b5b1e2", null ], + [ "threadedRead", "class_p_i_i_o_device.html#a3c744704af365358af074e1089e20068", null ], + [ "fullPathPrefix", "class_p_i_i_o_device.html#a568194e78dc8aac94ed6c1d17809a71e", null ], + [ "configureFromFullPath", "class_p_i_i_o_device.html#aeb3edefa3b78b06e0f293936c15a74ab", null ], + [ "readDeviceSetting", "class_p_i_i_o_device.html#add5b851e98d22dd4d7482a8e509113dc", null ], + [ "REGISTER_DEVICE", "class_p_i_i_o_device.html#a672a05d4391737b8fecd4524f1a47bda", null ], + [ "PIIODEVICE", "class_p_i_i_o_device.html#a5adabd429443716b75771317ec43301b", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_i_o_device__inherit__graph.map b/doc/html/class_p_i_i_o_device__inherit__graph.map new file mode 100644 index 00000000..8fd5c25e --- /dev/null +++ b/doc/html/class_p_i_i_o_device__inherit__graph.map @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/doc/html/class_p_i_i_o_device__inherit__graph.md5 b/doc/html/class_p_i_i_o_device__inherit__graph.md5 new file mode 100644 index 00000000..aefffef7 --- /dev/null +++ b/doc/html/class_p_i_i_o_device__inherit__graph.md5 @@ -0,0 +1 @@ +40b53cd9ae00e0b4624f13ce84484389 \ No newline at end of file diff --git a/doc/html/class_p_i_i_o_device__inherit__graph.svg b/doc/html/class_p_i_i_o_device__inherit__graph.svg new file mode 100644 index 00000000..f3cdbd01 --- /dev/null +++ b/doc/html/class_p_i_i_o_device__inherit__graph.svg @@ -0,0 +1,122 @@ + + + + + + +PIIODevice + + +Node1 + +PIIODevice + + +Node4 + + +PIBinaryLog + + + + +Node1->Node4 + + + + +Node5 + + +PIEthernet + + + + +Node1->Node5 + + + + +Node6 + + +PIFile + + + + +Node1->Node6 + + + + +Node8 + + +PIPacketExtractor + + + + +Node1->Node8 + + + + +Node9 + + +PISerial + + + + +Node1->Node9 + + + + +Node2 + + +PIThread + + + + +Node2->Node1 + + + + +Node3 + + +PIObject + + + + +Node3->Node2 + + + + +Node7 + + +PIConfig + + + + +Node6->Node7 + + + + + diff --git a/doc/html/class_p_i_kbd_listener-members.html b/doc/html/class_p_i_kbd_listener-members.html new file mode 100644 index 00000000..8c489df8 --- /dev/null +++ b/doc/html/class_p_i_kbd_listener-members.html @@ -0,0 +1,232 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIKbdListener Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
CtrlDownArrow enum valuePIKbdListener
CtrlLeftArrow enum valuePIKbdListener
CtrlRightArrow enum valuePIKbdListener
CtrlUpArrow enum valuePIKbdListener
data()PIKbdListenerinline
PIThread::data() const PIThreadinline
debug() const PIObjectinline
disableExitCapture()PIKbdListenerinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
DownArrow enum valuePIKbdListener
emitter() const PIObjectinlineprotected
enableExitCapture(char key)PIKbdListenerinline
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
exitCaptured() const PIKbdListenerinline
exitKey() const PIKbdListenerinline
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isActive()PIKbdListenerinline
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
keyPressed(char key, void *data)PIKbdListener
LeftArrow enum valuePIKbdListener
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIKbdListener(KBFunc slot=0, void *data=0)PIKbdListener
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
RightArrow enum valuePIKbdListener
setActive(bool yes)PIKbdListener
setData(void *_data)PIKbdListenerinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(KBFunc slot)PIKbdListenerinline
PIThread::setSlot(ThreadFunc func)PIThreadinline
SpecialSymbol enum namePIKbdListener
start(int timer_delay)PIThread
start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stop(bool wait)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
terminate()PIThread
unlock()PIThreadinline
UpArrow enum valuePIKbdListener
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_kbd_listener.html b/doc/html/class_p_i_kbd_listener.html new file mode 100644 index 00000000..c2875b03 --- /dev/null +++ b/doc/html/class_p_i_kbd_listener.html @@ -0,0 +1,601 @@ + + + + + + +PIP: PIKbdListener Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIKbdListener Class Reference
+
+
+ +

Keyboard console input listener. + More...

+
+ + Inheritance diagram for PIKbdListener:
+
+
+ + + + + + + + + + +

+Public Types

enum  SpecialSymbol {
+  UpArrow = -1, +DownArrow = -2, +RightArrow = -3, +LeftArrow = -4, +
+  CtrlUpArrow = -5, +CtrlDownArrow = -6, +CtrlRightArrow = -7, +CtrlLeftArrow = -8 +
+ }
 Special keyboard keys. More...
 
- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIKbdListener (KBFunc slot=0, void *data=0)
 Constructs keyboard listener with external function "slot" and custom data "data".
 
+void * data ()
 Returns custom data.
 
+void setData (void *_data)
 Set custom data to "_data".
 
+void setSlot (KBFunc slot)
 Set external function to "slot".
 
+bool exitCaptured () const
 Returns if exit key if awaiting.
 
+char exitKey () const
 Returns exit key, default 'Q'.
 
+bool isActive ()
 Returns if keyboard listening is active (not running!)
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + +

+Handlers

+void enableExitCapture (char key)
 Enable exit key "key" awaiting.
 
+void disableExitCapture ()
 Disable exit key awaiting.
 
+void setActive (bool yes)
 Set keyboard listening is active or not.
 
+ + + + +

+Events

+void keyPressed (char key, void *data)
 Raise on key "key" pressed, "data" is custom data.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+

Detailed Description

+

Keyboard console input listener.

+

This class provide listening of console keyboard input. There is two ways to receive pressed key:

    +
  • external static function with format "void func(char key, void * data_)"
  • +
  • event keyPressed()
  • +
+

Also there is static variable exiting which by default is set to false. If enableExitCapture() was called and listener was started with function start(), this variable will be set to true if exit key will be pressed. By default exit key is 'Q' = shift + 'q'. To wait for this variable changes to true there is WAIT_FOR_EXIT macro

void key_event(char key, void * ) {
+
piCout << "key" << key << "pressed";
+
}
+
int main(int argc, char ** argv) {
+ +
kbd.enableExitCapture();
+
kbd.start();
+
WAIT_FOR_EXIT
+
return 0;
+
}
+

Member Enumeration Documentation

+ +
+
+ +

Special keyboard keys.

+ + + + + + + + + +
Enumerator
UpArrow  +

Up arrow key

+
DownArrow  +

Down arrow key

+
RightArrow  +

Right arrow key

+
LeftArrow  +

Left arrow key

+
CtrlUpArrow  +

Ctrl + Up arrow key

+
CtrlDownArrow  +

Ctrl + Down arrow key

+
CtrlRightArrow  +

Ctrl + Right arrow key

+
CtrlLeftArrow  +

Ctrl + Left arrow key

+
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_kbd_listener.js b/doc/html/class_p_i_kbd_listener.js new file mode 100644 index 00000000..51568c06 --- /dev/null +++ b/doc/html/class_p_i_kbd_listener.js @@ -0,0 +1,24 @@ +var class_p_i_kbd_listener = +[ + [ "SpecialSymbol", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716", [ + [ "UpArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716ae4af7e9101a6ebcca1a0b94f5d389297", null ], + [ "DownArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a2cc10cee6bd5ded7573f4ba9730cde6d", null ], + [ "RightArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a8931e408583ed3ce190e26e4adf523eb", null ], + [ "LeftArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a4e2a34c99dbe919ec3405fc629ac228b", null ], + [ "CtrlUpArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a27096906a3e1a35ff46cbeae0412ed8a", null ], + [ "CtrlDownArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a06471072c3855f97036cfaceec75ecd7", null ], + [ "CtrlRightArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716af997647f0bac2cfe113f58458a71c7ce", null ], + [ "CtrlLeftArrow", "class_p_i_kbd_listener.html#a3e1b468bee20e5a4155f7d99d19eb716a9d6d02f0615594d1fbceadb7d68ebc83", null ] + ] ], + [ "PIKbdListener", "class_p_i_kbd_listener.html#a2baa588cd4ae95363c980804b47ed461", null ], + [ "data", "class_p_i_kbd_listener.html#a1b5584b91e3280213b61b31508127598", null ], + [ "setData", "class_p_i_kbd_listener.html#a0e0b57b7012db4134a0f72c9cbfa1d07", null ], + [ "setSlot", "class_p_i_kbd_listener.html#a5e8285dbb2c1b04fffff36c6d7db1d84", null ], + [ "exitCaptured", "class_p_i_kbd_listener.html#a333aaeadb6ca6bfee5aea3378ce7e1f4", null ], + [ "exitKey", "class_p_i_kbd_listener.html#a99de0ef4e19dc43b66c3ee42cfb3b5ab", null ], + [ "isActive", "class_p_i_kbd_listener.html#ac5e65b971731b969f162f0daf332280a", null ], + [ "enableExitCapture", "class_p_i_kbd_listener.html#a15702f6822a016c0c44c3217ba1a27f8", null ], + [ "disableExitCapture", "class_p_i_kbd_listener.html#acd5b37d732168274a30c678e8373d0dd", null ], + [ "setActive", "class_p_i_kbd_listener.html#a13b9bca3e1c73dcdbbd8ea813e7893f4", null ], + [ "keyPressed", "class_p_i_kbd_listener.html#a46a45b9ee857b0cdc782ce977471c286", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_kbd_listener__inherit__graph.map b/doc/html/class_p_i_kbd_listener__inherit__graph.map new file mode 100644 index 00000000..edc4c5d2 --- /dev/null +++ b/doc/html/class_p_i_kbd_listener__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/class_p_i_kbd_listener__inherit__graph.md5 b/doc/html/class_p_i_kbd_listener__inherit__graph.md5 new file mode 100644 index 00000000..57914bc4 --- /dev/null +++ b/doc/html/class_p_i_kbd_listener__inherit__graph.md5 @@ -0,0 +1 @@ +a7fa6a269423d7a28436ecae56935811 \ No newline at end of file diff --git a/doc/html/class_p_i_kbd_listener__inherit__graph.svg b/doc/html/class_p_i_kbd_listener__inherit__graph.svg new file mode 100644 index 00000000..355a04dc --- /dev/null +++ b/doc/html/class_p_i_kbd_listener__inherit__graph.svg @@ -0,0 +1,44 @@ + + + + + + +PIKbdListener + + +Node1 + +PIKbdListener + + +Node2 + + +PIThread + + + + +Node2->Node1 + + + + +Node3 + + +PIObject + + + + +Node3->Node2 + + + + + diff --git a/doc/html/class_p_i_mutex-members.html b/doc/html/class_p_i_mutex-members.html new file mode 100644 index 00000000..b70c3806 --- /dev/null +++ b/doc/html/class_p_i_mutex-members.html @@ -0,0 +1,131 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIMutex Member List
+
+
+ +

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

+ + + + + +
lock()PIMutexinline
PIMutex()PIMutex
tryLock()PIMutexinline
unlock()PIMutexinline
+
+ + + + diff --git a/doc/html/class_p_i_mutex.html b/doc/html/class_p_i_mutex.html new file mode 100644 index 00000000..368814e5 --- /dev/null +++ b/doc/html/class_p_i_mutex.html @@ -0,0 +1,238 @@ + + + + + + +PIP: PIMutex Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIMutex Class Reference
+
+
+ +

Mutex. + More...

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

+Public Member Functions

PIMutex ()
 Constructs unlocked mutex.
 
void lock ()
 Lock mutex. More...
 
void unlock ()
 Unlock mutex. More...
 
bool tryLock ()
 Try to lock mutex. More...
 
+

Detailed Description

+

Mutex.

+

+Synopsis

+

PIMutex provides synchronization blocks between several threads. Using mutex guarantees execution of some code only one of threads. Mutex contains logic state and functions to change it: lock(), unlock() and tryLock().

+

+Usage

+

Block of code that should to be executed only one thread simultaniously should to be started with lock() and ended with unlock().

mutex.lock();
+
// ... your code here
+
mutex.unlock();
+

"mutex" in this example is one for all threads.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void PIMutex::lock ()
+
+inline
+
+ +

Lock mutex.

+

If mutex is unlocked it set to locked state and returns immediate. If mutex is already locked function blocks until mutex will be unlocked

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
void PIMutex::unlock ()
+
+inline
+
+ +

Unlock mutex.

+

In any case this function returns immediate

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool PIMutex::tryLock ()
+
+inline
+
+ +

Try to lock mutex.

+

If mutex is unlocked it set to locked state and returns "true" immediate. If mutex is already locked function returns immediate an returns "false"

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_mutex.js b/doc/html/class_p_i_mutex.js new file mode 100644 index 00000000..6779ed09 --- /dev/null +++ b/doc/html/class_p_i_mutex.js @@ -0,0 +1,7 @@ +var class_p_i_mutex = +[ + [ "PIMutex", "class_p_i_mutex.html#ac4d6be4bdac6af45f1db56c4d1a0d971", null ], + [ "lock", "class_p_i_mutex.html#aa571ad61ee7bd5fcf60f6f5032a16441", null ], + [ "unlock", "class_p_i_mutex.html#aae483d17150e38436ca25a1bd26b04c2", null ], + [ "tryLock", "class_p_i_mutex.html#a5c4ed063c5c7d7ee94ff3402d320851a", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_object-members.html b/doc/html/class_p_i_object-members.html new file mode 100644 index 00000000..9b608182 --- /dev/null +++ b/doc/html/class_p_i_object-members.html @@ -0,0 +1,185 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIObject Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinline
name() const PIObjectinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
superClassName() const PIObjectinlinevirtual
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_object.html b/doc/html/class_p_i_object.html new file mode 100644 index 00000000..c153376c --- /dev/null +++ b/doc/html/class_p_i_object.html @@ -0,0 +1,432 @@ + + + + + + +PIP: PIObject Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

This is base class for any classes which use events -> handlers mechanism. + More...

+
+ + Inheritance diagram for PIObject:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + +

+Static Public Member Functions

+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+ + + + + + + +

+Protected Member Functions

+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
+#define piCoutObj
 Macro used for conditional (piDebug and PIObject::debug()) output to PICout for subclasses of PIObject.
 
+#define PIOBJECT(name)
 you should use this macro after class declaration to use EVENT and EVENT_HANDLER and correct piCoutObj output
 
+#define PIOBJECT_PARENT(name)
 you should use this macro after class declaration to use EVENT and EVENT_HANDLER of parent class
 
+#define EVENT_HANDLER0(ret, name)   ret name()
 declare event handler "event" with name "name" and return type "ret", ret name()
 
+#define EVENT_HANDLER1(ret, name, type0, var0)   ret name(type0 var0)
 declare event handler "event" with name "name" and return type "ret", ret name(type0 var0)
 
+#define EVENT_HANDLER2(ret, name, type0, var0, type1, var1)   ret name(type0 var0, type1 var1)
 declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1)
 
+#define EVENT_HANDLER3(ret, name, type0, var0, type1, var1, type2, var2)   ret name(type0 var0, type1 var1, type2 var2)
 declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1, type2 var2)
 
+#define EVENT_HANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3)   ret name(type0 var0, type1 var1, type2 var2, type3 var3)
 declare event handler "event" with name "name" and return type "ret", ret name(type0 var0, type1 var1, type2 var2, type3 var3)
 
+#define EVENT_HANDLER   EVENT_HANDLER0
 EVENT_HANDLER is synonym of EVENT_HANDLER0.
 
+#define EVENT_VHANDLER0(ret, name)   virtual ret name()
 declare virtual event handler "event" with name "name" and return type "ret", virtual ret name()
 
+#define EVENT_VHANDLER1(ret, name, type0, var0)   virtual ret name(type0 var0)
 declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0)
 
+#define EVENT_VHANDLER2(ret, name, type0, var0, type1, var1)   virtual ret name(type0 var0, type1 var1)
 declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1)
 
+#define EVENT_VHANDLER3(ret, name, type0, var0, type1, var1, type2, var2)   virtual ret name(type0 var0, type1 var1, type2 var2)
 declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1, type2 var2)
 
+#define EVENT_VHANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3)   virtual ret name(type0 var0, type1 var1, type2 var2, type3 var3)
 declare virtual event handler "event" with name "name" and return type "ret", virtual ret name(type0 var0, type1 var1, type2 var2, type3 var3)
 
+#define EVENT_VHANDLER   EVENT_VHANDLER0
 EVENT_VHANDLER is synonym of EVENT_VHANDLER0.
 
+#define EVENT0(name)   void name();
 declare event "event" with name "name", void name();
 
+#define EVENT1(name, type0, var0)   void name(type0 var0);
 declare event "event" with name "name", void name(type0 var0);
 
+#define EVENT2(name, type0, var0, type1, var1)   void name(type0 var0, type1 var1);
 declare event "event" with name "name", void name(type0 var0, type1 var1);
 
+#define EVENT3(name, type0, var0, type1, var1, type2, var2)   void name(type0 var0, type1 var1, type2 var2);
 declare event "event" with name "name", void name(type0 var0, type1 var1, type2 var2);
 
+#define EVENT4(name, type0, var0, type1, var1, type2, var2, type3, var3)   void name(type0 var0, type1 var1, type2 var2, type3 var3);
 declare event "event" with name "name", void name(type0 var0, type1 var1, type2 var2, type3 var3);
 
+#define EVENT   EVENT0
 EVENT is synonym of EVENT0.
 
+#define CONNECTU(src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler". "Event" and "handler" must has equal argument lists.
 
+#define CONNECT0(ret, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists
 
+#define CONNECT1(ret, type0, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists
 
+#define CONNECT2(ret, type0, type1, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists
 
+#define CONNECT3(ret, type0, type1, type2, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists
 
+#define CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" with check of event and handler exists
 
+#define CONNECT   CONNECT0
 CONNECT is synonym of CONNECT0.
 
+#define WEAK_CONNECT0(ret, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists
 
+#define WEAK_CONNECT1(ret, type0, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists
 
+#define WEAK_CONNECT2(ret, type0, type1, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists
 
+#define WEAK_CONNECT3(ret, type0, type1, type2, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists
 
+#define WEAK_CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler)
 connect event "event" from object "src" to event handler "handler" with return type "ret" from object "dest" without check of event exists
 
+#define WEAK_CONNECT   WEAK_CONNECT0
 WEAK_CONNECT is synonym of WEAK_CONNECT0.
 
+#define DISCONNECT0(ret, src, event, dest, handler)
 piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest"
 
+#define DISCONNECT1(ret, type0, src, event, dest, handler)
 piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest"
 
+#define DISCONNECT2(ret, type0, type1, src, event, dest, handler)
 piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest"
 
+#define DISCONNECT3(ret, type0, type1, type2, src, event, dest, handler)
 piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest"
 
+#define DISCONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler)
 piDisconnect event "event" from object "src" from event handler "handler" with return type "ret" from object "dest"
 
+#define DISCONNECT   DISCONNECT0
 DISCONNECT is synonym of DISCONNECT0.
 
+#define HANDLER(handler)
 Returns pointer to events handler "handler".
 
+

Detailed Description

+

This is base class for any classes which use events -> handlers mechanism.

+

+Events and Event handlers

+

PIObject provide notification mechanism similar Qt but implemented on language capabilities without any special preprocessors or compilers. Any class inherits PIObject should use macro PIOBJECT() immediate after declaration to proper compile.

+

Event is a some abstract event that can be raised at any time. Event is a function but declared with special macro EVENT(). To raise event simply execute event function.

+

Event handler is a function but declared with special macro EVENT_HANDLER(). You can use event handlers as ordinary functions.

+

Main goal of this mechanism is perform abstract connections between various objects. This functionality provide macro CONNECT() which connect some event of first object to some event handler or event of second object. Each event can be connected any times to any event handlers.

+
+events_handlers.png +
+

Example:

class ObjectA: public PIObject {
+
PIOBJECT(ObjectA)
+
public:
+
EVENT_HANDLER1(void, handlerA, const PIString & , str) {piCoutObj << "handler A:" << str;}
+
EVENT2(eventA2, int, i, float, f);
+
EVENT1(eventA1, const PIString & , str);
+
};
+
+
class ObjectB: public PIObject {
+
PIOBJECT(ObjectB)
+
public:
+
EVENT_HANDLER2(void, handlerB, int, i, float, f) {piCoutObj << "handler B:" << i << "," << f;}
+
EVENT1(eventB, PIString, str);
+
};
+
+
int main(int argc, char * argv[]) {
+
ObjectA obj_a;
+
ObjectB obj_b;
+
+
CONNECT2(void, int, float, &obj_a, eventA2, &obj_b, handlerB);
+
obj_a.eventA2(2, 0.5);
+
+
CONNECT1(void, PIString, &obj_b, eventB, &obj_a, handlerA);
+
obj_b.eventB("event to handler");
+
+
CONNECT1(void, PIString, &obj_a, eventA1, &obj_b, eventB);
+
obj_a.eventA1("event to event");
+
};
+

Result:

handler B: 2 , 0.5
+
handler A: event to handler
+
handler A: event to event
+
+
+ + + + diff --git a/doc/html/class_p_i_object.js b/doc/html/class_p_i_object.js new file mode 100644 index 00000000..81c969a3 --- /dev/null +++ b/doc/html/class_p_i_object.js @@ -0,0 +1,58 @@ +var class_p_i_object = +[ + [ "PIObject", "class_p_i_object.html#a779d66bab882a51ef6389d2e212f2bd6", null ], + [ "name", "class_p_i_object.html#aee2242a0210f2a009d63764e01a37338", null ], + [ "className", "class_p_i_object.html#a5da8208d12e37e5277db308939208150", null ], + [ "superClassName", "class_p_i_object.html#a41060ba64a882ef4c3b24dc868c5635c", null ], + [ "debug", "class_p_i_object.html#a286d39fdf2dacf8bc1f26c8744d8bf18", null ], + [ "setName", "class_p_i_object.html#a8eb211f42dfcf7b7a1f32acabbfd6ada", null ], + [ "setDebug", "class_p_i_object.html#a9a0ec972d4864287fae4d1a0edcd9dc5", null ], + [ "properties", "class_p_i_object.html#aeb8178ed4012f204d2c89a8413bbcd2d", null ], + [ "propertiesCount", "class_p_i_object.html#a68dbd55885a081be717ff818dcb31bcc", null ], + [ "property", "class_p_i_object.html#ad0cadfad8b61e8c994abde7d2d4853ac", null ], + [ "setProperty", "class_p_i_object.html#a647e2f79b975cf88d636a2ca2dadfb9c", null ], + [ "isPropertyExists", "class_p_i_object.html#a8d6bd4c57aa01dc41e1b28720f9604a7", null ], + [ "emitter", "class_p_i_object.html#a2f43644909496ba11ca294a67ed18deb", null ], + [ "propertyChanged", "class_p_i_object.html#a2f98c7c43b93f9d636e9119f0a577715", null ], + [ "piCoutObj", "class_p_i_object.html#a722b67a967e55918f6921de66ecffce9", null ], + [ "PIOBJECT", "class_p_i_object.html#affa62b02040517a34b3f173d804e487f", null ], + [ "PIOBJECT_PARENT", "class_p_i_object.html#a4ce1840f79eac65344a4c5823f5034d4", null ], + [ "EVENT_HANDLER0", "class_p_i_object.html#ab605cf0454d34cc72c65bfed2abd696a", null ], + [ "EVENT_HANDLER1", "class_p_i_object.html#a56defa004e9b7efb2db50b3a43ca7225", null ], + [ "EVENT_HANDLER2", "class_p_i_object.html#abb64b696544ee4ee8715add9747c1293", null ], + [ "EVENT_HANDLER3", "class_p_i_object.html#af90eced49fbdb43f5fc631fa7e7a44fb", null ], + [ "EVENT_HANDLER4", "class_p_i_object.html#ae8a8499ba07a4cc16c0b15c51b197d9f", null ], + [ "EVENT_HANDLER", "class_p_i_object.html#ae92ae8e64fbb4c6fa7d87cc1e93d55c0", null ], + [ "EVENT_VHANDLER0", "class_p_i_object.html#a338377c8ec10707dd26a168b8aef5c31", null ], + [ "EVENT_VHANDLER1", "class_p_i_object.html#abf138848427466a7ae91ada5876f926d", null ], + [ "EVENT_VHANDLER2", "class_p_i_object.html#ad0ba4a14c77b8d968dc13918f9b2d384", null ], + [ "EVENT_VHANDLER3", "class_p_i_object.html#a4f47b429ac594cebdca1567e1b9a1021", null ], + [ "EVENT_VHANDLER4", "class_p_i_object.html#a96b2461314db11f3b68942bcd4b9d13d", null ], + [ "EVENT_VHANDLER", "class_p_i_object.html#a26a0e3181ebb2a90c11e9a7eb906a99e", null ], + [ "EVENT0", "class_p_i_object.html#a4fa760299649bc8aeaa0dcf4d605be70", null ], + [ "EVENT1", "class_p_i_object.html#a7083e0b630c70def2ce05d60d70a45b9", null ], + [ "EVENT2", "class_p_i_object.html#a91d380b7235ad11b4830c4c2e8860618", null ], + [ "EVENT3", "class_p_i_object.html#a685a85b0791e73158dc0173b4e18dd00", null ], + [ "EVENT4", "class_p_i_object.html#a59032ae5e0b94cdfb52be1f24d5e8252", null ], + [ "EVENT", "class_p_i_object.html#a7877e997621e1161f058fce90febd464", null ], + [ "CONNECTU", "class_p_i_object.html#ac86f9567fcbe10d7e49685e0a01b8427", null ], + [ "CONNECT0", "class_p_i_object.html#a38e74a7ce99df00a10517f5ce4aa66c5", null ], + [ "CONNECT1", "class_p_i_object.html#a36132851189bb01db4957595111a28db", null ], + [ "CONNECT2", "class_p_i_object.html#a850bbf4e8361a106c99da4c46f684247", null ], + [ "CONNECT3", "class_p_i_object.html#ab45dbd69bde3cde22d4aba27ed585407", null ], + [ "CONNECT4", "class_p_i_object.html#a34e41d730c07354e07333def3d854019", null ], + [ "CONNECT", "class_p_i_object.html#a65528c74adc6691eac2c7a2f39328064", null ], + [ "WEAK_CONNECT0", "class_p_i_object.html#aaaba5b68617a43903056bc175b8cd162", null ], + [ "WEAK_CONNECT1", "class_p_i_object.html#a37d80492e781bf82b9c22c56977da81e", null ], + [ "WEAK_CONNECT2", "class_p_i_object.html#a34134cc70172ef5a8d38ba8eb0db327d", null ], + [ "WEAK_CONNECT3", "class_p_i_object.html#a601eb7e6e4c3c1a2ba741abbaf271fed", null ], + [ "WEAK_CONNECT4", "class_p_i_object.html#a483ad0828f2c221308d95fd07ba1ee6e", null ], + [ "WEAK_CONNECT", "class_p_i_object.html#a52fc22658e025b4c15c8a2454d81b289", null ], + [ "DISCONNECT0", "class_p_i_object.html#aed7fd8edaccbbca33c51417ca43ac32a", null ], + [ "DISCONNECT1", "class_p_i_object.html#ae030e8deb226c636d2df22076391f12c", null ], + [ "DISCONNECT2", "class_p_i_object.html#a8f0609bfd7dfcd4512d76480bc114dab", null ], + [ "DISCONNECT3", "class_p_i_object.html#af2789f99d1916f231fc579f00370fa6f", null ], + [ "DISCONNECT4", "class_p_i_object.html#aedf429d3192da764163c1377cad310e3", null ], + [ "DISCONNECT", "class_p_i_object.html#a587604e6f3570c0fc32794384d4d0d1f", null ], + [ "HANDLER", "class_p_i_object.html#a3f7b0da6b28ced23e1deee48dde17c98", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_object__inherit__graph.map b/doc/html/class_p_i_object__inherit__graph.map new file mode 100644 index 00000000..467455bd --- /dev/null +++ b/doc/html/class_p_i_object__inherit__graph.map @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/doc/html/class_p_i_object__inherit__graph.md5 b/doc/html/class_p_i_object__inherit__graph.md5 new file mode 100644 index 00000000..316bc547 --- /dev/null +++ b/doc/html/class_p_i_object__inherit__graph.md5 @@ -0,0 +1 @@ +03543378d017772e3db551d54fff8d9e \ No newline at end of file diff --git a/doc/html/class_p_i_object__inherit__graph.svg b/doc/html/class_p_i_object__inherit__graph.svg new file mode 100644 index 00000000..5a7f3a0f --- /dev/null +++ b/doc/html/class_p_i_object__inherit__graph.svg @@ -0,0 +1,327 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +PIObject + + +Node1 + +PIObject + + +Node2 + + +PICLI + + + + +Node1->Node2 + + + + +Node3 + + +PIConnection + + + + +Node1->Node3 + + + + +Node4 + + +PIProtocol + + + + +Node1->Node4 + + + + +Node5 + + +PIStateMachine< Type > + + + + +Node1->Node5 + + + + +Node6 + + +PIThread + + + + +Node1->Node6 + + + + +Node17 + + +PITimer + + + + +Node1->Node17 + + + + +Node7 + + +PIConsole + + + + +Node6->Node7 + + + + +Node8 + + +PIIODevice + + + + +Node6->Node8 + + + + +Node15 + + +PIKbdListener + + + + +Node6->Node15 + + + + +Node16 + + +PIProcess + + + + +Node6->Node16 + + + + +Node9 + + +PIBinaryLog + + + + +Node8->Node9 + + + + +Node10 + + +PIEthernet + + + + +Node8->Node10 + + + + +Node11 + + +PIFile + + + + +Node8->Node11 + + + + +Node13 + + +PIPacketExtractor + + + + +Node8->Node13 + + + + +Node14 + + +PISerial + + + + +Node8->Node14 + + + + +Node12 + + +PIConfig + + + + +Node11->Node12 + + + + +Node18 + + +PIDiagnostics + + + + +Node17->Node18 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/html/class_p_i_object__inherit__graph_org.svg b/doc/html/class_p_i_object__inherit__graph_org.svg new file mode 100644 index 00000000..c81aba4f --- /dev/null +++ b/doc/html/class_p_i_object__inherit__graph_org.svg @@ -0,0 +1,239 @@ + + + + + + +PIObject + + +Node1 + +PIObject + + +Node2 + + +PICLI + + + + +Node1->Node2 + + + + +Node3 + + +PIConnection + + + + +Node1->Node3 + + + + +Node4 + + +PIProtocol + + + + +Node1->Node4 + + + + +Node5 + + +PIStateMachine< Type > + + + + +Node1->Node5 + + + + +Node6 + + +PIThread + + + + +Node1->Node6 + + + + +Node17 + + +PITimer + + + + +Node1->Node17 + + + + +Node7 + + +PIConsole + + + + +Node6->Node7 + + + + +Node8 + + +PIIODevice + + + + +Node6->Node8 + + + + +Node15 + + +PIKbdListener + + + + +Node6->Node15 + + + + +Node16 + + +PIProcess + + + + +Node6->Node16 + + + + +Node9 + + +PIBinaryLog + + + + +Node8->Node9 + + + + +Node10 + + +PIEthernet + + + + +Node8->Node10 + + + + +Node11 + + +PIFile + + + + +Node8->Node11 + + + + +Node13 + + +PIPacketExtractor + + + + +Node8->Node13 + + + + +Node14 + + +PISerial + + + + +Node8->Node14 + + + + +Node12 + + +PIConfig + + + + +Node11->Node12 + + + + +Node18 + + +PIDiagnostics + + + + +Node17->Node18 + + + + + diff --git a/doc/html/class_p_i_packet_extractor-members.html b/doc/html/class_p_i_packet_extractor-members.html new file mode 100644 index 00000000..f8529fb7 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor-members.html @@ -0,0 +1,250 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIPacketExtractor Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bufferSize() const PIPacketExtractorinline
className() const PIObjectinlinevirtual
closeDevice()PIIODeviceinlineprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PIIODeviceinlineprotectedvirtual
configureFromFullPath(const PIString &full_path)PIIODeviceinlineprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
constructFullPath() const PIPacketExtractorvirtual
PIIODevice::data() const PIThreadinline
debug() const PIObjectinline
device()PIPacketExtractorinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
Footer enum valuePIPacketExtractor
footer() const PIPacketExtractorinline
HANDLERPIObjectrelated
header() const PIPacketExtractorinline
Header enum valuePIPacketExtractor
HeaderAndFooter enum valuePIPacketExtractor
init()PIIODeviceinlineprotectedvirtual
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
missedBytes() const PIPacketExtractorinline
missedBytes_ptr() const PIPacketExtractorinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
None enum valuePIPacketExtractor
packetReceived(uchar *data, int size)PIPacketExtractor
packetSize() const PIPacketExtractorinline
payloadSize() const PIPacketExtractorinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIPacketExtractor(PIIODevice *device_=0, SplitMode mode=None)PIPacketExtractor
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
read(void *read_to, int max_size)PIPacketExtractorinlinevirtual
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
REGISTER_DEVICEPIIODevicerelated
setBufferSize(int new_size)PIPacketExtractorinline
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setDevice(PIIODevice *device_)PIPacketExtractor
setFooter(const PIByteArray &data)PIPacketExtractor
setHeader(const PIByteArray &data)PIPacketExtractor
setName(const PIString &name)PIObjectinline
setPacketSize(int size)PIPacketExtractorinline
setPayloadSize(int size)PIPacketExtractor
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
setSplitMode(SplitMode mode)PIPacketExtractorinline
setTimeout(double msecs)PIPacketExtractorinline
Size enum valuePIPacketExtractor
SplitMode enum namePIPacketExtractor
splitMode() const PIPacketExtractorinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
Timeout enum valuePIPacketExtractor
timeout() const PIPacketExtractorinline
unlock()PIThreadinline
validateFooter(uchar *src, uchar *rec, int size)PIPacketExtractorinlineprotectedvirtual
validateHeader(uchar *src, uchar *rec, int size)PIPacketExtractorinlineprotectedvirtual
validatePayload(uchar *rec, int size)PIPacketExtractorinlineprotectedvirtual
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
write(const void *data, int max_size)PIPacketExtractorinlinevirtual
+
+ + + + diff --git a/doc/html/class_p_i_packet_extractor.html b/doc/html/class_p_i_packet_extractor.html new file mode 100644 index 00000000..24f24fc9 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor.html @@ -0,0 +1,854 @@ + + + + + + +PIP: PIPacketExtractor Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIPacketExtractor Class Reference
+
+
+ +

Packets extractor. + More...

+
+ + Inheritance diagram for PIPacketExtractor:
+
+
+ + + + + + + + + + +

+Public Types

enum  SplitMode {
+  None, +Header, +Footer, +HeaderAndFooter, +
+  Size, +Timeout +
+ }
 Extract algorithms. More...
 
- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIPacketExtractor (PIIODevice *device_=0, SplitMode mode=None)
 Contructs extractor with child device "device_" and extract algorithm "mode".
 
+PIIODevicedevice ()
 Returns child device.
 
+void setDevice (PIIODevice *device_)
 Set child device to "device_".
 
+int bufferSize () const
 Returns buffer size.
 
+void setBufferSize (int new_size)
 Set buffer size to "new_size" bytes, should be at least greater than whole packet size.
 
+void setSplitMode (SplitMode mode)
 Set extract algorithm.
 
+void setPayloadSize (int size)
 Set payload size, used for PIPacketExtractor::Header and PIPacketExtractor::Footer algorithms.
 
+void setHeader (const PIByteArray &data)
 Set header data, used for PIPacketExtractor::Header and PIPacketExtractor::HeaderAndFooter algorithms.
 
+void setFooter (const PIByteArray &data)
 Set footer data, used for PIPacketExtractor::Footer and PIPacketExtractor::HeaderAndFooter algorithms.
 
+void setPacketSize (int size)
 Set packet size, used for PIPacketExtractor::Size algorithm.
 
+void setTimeout (double msecs)
 Set timeout in milliseconds, used for PIPacketExtractor::Timeout algorithm.
 
+SplitMode splitMode () const
 Returns current extract algorithm.
 
+int payloadSize () const
 Returns current payload size, used for PIPacketExtractor::Header and PIPacketExtractor::Footer algorithms.
 
+PIByteArray header () const
 Returns current header data, used for PIPacketExtractor::Header and PIPacketExtractor::HeaderAndFooter algorithms.
 
+PIByteArray footer () const
 Returns current footer data, used for PIPacketExtractor::Footer and PIPacketExtractor::HeaderAndFooter algorithms.
 
+int packetSize () const
 Returns current packet size, used for PIPacketExtractor::Size algorithm.
 
+double timeout () const
 Returns current timeout in milliseconds, used for PIPacketExtractor::Timeout algorithm.
 
+ullong missedBytes () const
 Returns missed by validating functions bytes count.
 
+const ullong * missedBytes_ptr () const
 Returns pointer to missedBytes() count. Useful for output to PIConsole.
 
+int read (void *read_to, int max_size)
 Directly call read() function of child device.
 
+int write (const void *data, int max_size)
 Directly call write() function of child device.
 
+PIString constructFullPath () const
 Reimplement to construct full unambiguous string, describes this device, default returns fullPathPrefix() + "://" + path()
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

virtual bool validateHeader (uchar *src, uchar *rec, int size)
 Function to validate header. More...
 
virtual bool validateFooter (uchar *src, uchar *rec, int size)
 Function to validate footer. More...
 
virtual bool validatePayload (uchar *rec, int size)
 Function to validate payload. More...
 
- Protected Member Functions inherited from PIIODevice
+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+virtual bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
+virtual void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+ + + + +

+Events

+void packetReceived (uchar *data, int size)
 Raise on successfull packetValidate() function.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Packets extractor.

+

+Synopsis

+

This class implements packet recognition by various algorithms and custom validating from data stream. Stream is formed from child PIIODevice passed from contructor or with function setDevice().

+

+Principle of work

+

PIPacketExtractor works with child PIIODevice. read and write functions directly call child device functions. You should start threaded read of extractor (not child device) to proper work. Extractor read data from child device, try to detect packet from readed data and raise packetReceived() event on success.

+

+Algorithms

+

There are 6 algorithms:
+

+

+Control validating

+

There are three parameters:

    +
  • header content
  • +
  • header size
  • +
  • payload size
  • +
+

Extractor can detect packet with compare your header with readed data. It is default implementation of function packetHeaderValidate(). If header validating passed, function packetValidate() will be called. If either of this function return false extractor shifts by one byte and takes next header. If both functions returns true extractor shifts by whole packet size.

+packet_detection.png +
+

Member Enumeration Documentation

+ +
+
+ +

Extract algorithms.

+ + + + + + + +
Enumerator
None  +

No data processing

+
Header  +

Detect packets with header() and following payloadSize()

+
Footer  +

Detect packets with footer() and leading payloadSize()

+
HeaderAndFooter  +

Detect packets with header() and footer() without payloadSize()

+
Size  +

Detect packets with packetSize()

+
Timeout  +

Wait for first read, then read for timeout() milliseconds

+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual bool PIPacketExtractor::validateHeader (uchar * src,
uchar * rec,
int size 
)
+
+inlineprotectedvirtual
+
+ +

Function to validate header.

+
Parameters
+ + + + +
srcYour header content
recReceived header
sizeHeader size
+
+
+

Default implementation returns by-byte "src" with "rec" compare result

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual bool PIPacketExtractor::validateFooter (uchar * src,
uchar * rec,
int size 
)
+
+inlineprotectedvirtual
+
+ +

Function to validate footer.

+
Parameters
+ + + + +
srcYour footer content
recReceived footer
sizeFooter size
+
+
+

Default implementation returns by-byte "src" with "rec" compare result

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual bool PIPacketExtractor::validatePayload (uchar * rec,
int size 
)
+
+inlineprotectedvirtual
+
+ +

Function to validate payload.

+
Parameters
+ + + +
recReceived payload
sizepayload size
+
+
+

Default implementation returns true

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_packet_extractor.js b/doc/html/class_p_i_packet_extractor.js new file mode 100644 index 00000000..aa015a61 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor.js @@ -0,0 +1,37 @@ +var class_p_i_packet_extractor = +[ + [ "SplitMode", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6", [ + [ "None", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6aab134660d4356d548ad2c7e9bb3ecae0", null ], + [ "Header", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6a29b623cae95dfd777979c401d881c57f", null ], + [ "Footer", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6a48ccac0df6bcb7bccaa01eb3df28f096", null ], + [ "HeaderAndFooter", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6aa588a5c0306511f74b66e60a24373f01", null ], + [ "Size", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6a169d7eb9668b7d6077f6c00c558b12eb", null ], + [ "Timeout", "class_p_i_packet_extractor.html#aab7f856e1fd64e7bdb2507badae99bb6a4ea0db7f406eaa97adbacd580b919903", null ] + ] ], + [ "PIPacketExtractor", "class_p_i_packet_extractor.html#aa79460b536202e7c877f5eca4f5be089", null ], + [ "device", "class_p_i_packet_extractor.html#a8e926713a3505dd109176b2c572274c9", null ], + [ "setDevice", "class_p_i_packet_extractor.html#a82db047d7e3e58f8026028857b6b69c4", null ], + [ "bufferSize", "class_p_i_packet_extractor.html#ab9598fdc2e3a641a4d1b4a5c7b62313f", null ], + [ "setBufferSize", "class_p_i_packet_extractor.html#aa6f77a5a0acf43e7b69354e59c89523a", null ], + [ "setSplitMode", "class_p_i_packet_extractor.html#aaa8b6f0d301cd7b73fc6e9570462b6a1", null ], + [ "setPayloadSize", "class_p_i_packet_extractor.html#a0c0de7854ff8187b3cd280467a321ea5", null ], + [ "setHeader", "class_p_i_packet_extractor.html#ab35777c26316da887e36b0eeb56ef239", null ], + [ "setFooter", "class_p_i_packet_extractor.html#aaf0e85876d15690e47bced1da78efa65", null ], + [ "setPacketSize", "class_p_i_packet_extractor.html#a9c0b73a88a7ae8f4c724a4d99e34a783", null ], + [ "setTimeout", "class_p_i_packet_extractor.html#ade4301e8cad37f9a2c887913a3b1a69e", null ], + [ "splitMode", "class_p_i_packet_extractor.html#aea556fb1df7074461b7df1e3afa347b9", null ], + [ "payloadSize", "class_p_i_packet_extractor.html#af22580e67cd2601575a7834a4c9b414c", null ], + [ "header", "class_p_i_packet_extractor.html#a8e6ff4a862b5fc4826ceae42d630174c", null ], + [ "footer", "class_p_i_packet_extractor.html#a6382b9238ce84d3c93044dc96748d42a", null ], + [ "packetSize", "class_p_i_packet_extractor.html#a033ac83733f23c61a65ad9c810123219", null ], + [ "timeout", "class_p_i_packet_extractor.html#a369b3bfd48065cf9da70788015d6d020", null ], + [ "missedBytes", "class_p_i_packet_extractor.html#ac5a810fc6551422b92ace27652c24813", null ], + [ "missedBytes_ptr", "class_p_i_packet_extractor.html#ad8cbbb5d99d89629975913b134ad68a8", null ], + [ "read", "class_p_i_packet_extractor.html#aa41b9b23ba7a074398687edf82331b40", null ], + [ "write", "class_p_i_packet_extractor.html#aa3348c0df86c7de38ab6cfc02f3cfa2b", null ], + [ "constructFullPath", "class_p_i_packet_extractor.html#acbeb7fa7bdb01b164ce81df601bcee23", null ], + [ "packetReceived", "class_p_i_packet_extractor.html#a008181ba36bc58a7dcc137f49fcad261", null ], + [ "validateHeader", "class_p_i_packet_extractor.html#a96d2078759a69327089faeb37e09bf69", null ], + [ "validateFooter", "class_p_i_packet_extractor.html#ad52e9d11097e5b1d846787fcd1acb5ed", null ], + [ "validatePayload", "class_p_i_packet_extractor.html#ab1b8d323e26be97a126f3950e37ba647", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_packet_extractor__inherit__graph.map b/doc/html/class_p_i_packet_extractor__inherit__graph.map new file mode 100644 index 00000000..a369c7a6 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/doc/html/class_p_i_packet_extractor__inherit__graph.md5 b/doc/html/class_p_i_packet_extractor__inherit__graph.md5 new file mode 100644 index 00000000..c6be3fd3 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor__inherit__graph.md5 @@ -0,0 +1 @@ +c87daf468ecf9b3f492dee9268bfd2f6 \ No newline at end of file diff --git a/doc/html/class_p_i_packet_extractor__inherit__graph.svg b/doc/html/class_p_i_packet_extractor__inherit__graph.svg new file mode 100644 index 00000000..f77196b0 --- /dev/null +++ b/doc/html/class_p_i_packet_extractor__inherit__graph.svg @@ -0,0 +1,57 @@ + + + + + + +PIPacketExtractor + + +Node1 + +PIPacketExtractor + + +Node2 + + +PIIODevice + + + + +Node2->Node1 + + + + +Node3 + + +PIThread + + + + +Node3->Node2 + + + + +Node4 + + +PIObject + + + + +Node4->Node3 + + + + + diff --git a/doc/html/class_p_i_process-members.html b/doc/html/class_p_i_process-members.html new file mode 100644 index 00000000..3a96aed8 --- /dev/null +++ b/doc/html/class_p_i_process-members.html @@ -0,0 +1,213 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIProcess Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
begin()PIThreadinlineprivatevirtual
className() const PIObjectinlineprivatevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinlineprivate
debug() const PIObjectinlineprivate
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprivate
end()PIThreadinlineprivatevirtual
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlineprivatestatic
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinlineprivate
isRunning() const PIThreadinlineprivate
lock()PIThreadinlineprivate
mutex()PIThreadinlineprivate
name() const PIObjectinlineprivate
needLockRun(bool need)PIThreadinlineprivate
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectprivatestatic
piDisconnect(PIObject *src)PIObjectprivatestatic
piHigh enum valuePIThreadprivate
piHighest enum valuePIThreadprivate
piLow enum valuePIThreadprivate
piLowerst enum valuePIThreadprivate
piNormal enum valuePIThreadprivate
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObjectprivate
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThreadprivate
PIThread(bool startNow=false, int loop_delay=-1)PIThreadprivate
priority() const PIThreadinlineprivate
Priority enum namePIThreadprivate
properties() const PIObjectinlineprivate
propertiesCount() const PIObjectinlineprivate
property(const PIString &name) const PIObjectinlineprivate
propertyChanged(const PIString &name)PIObjectinlineprivatevirtual
setData(void *d)PIThreadinlineprivate
setDebug(bool debug)PIObjectinlineprivate
setName(const PIString &name)PIObjectinlineprivate
setPriority(PIThread::Priority prior)PIThreadprivate
setProperty(const PIString &name, const PIVariant &value)PIObjectinlineprivate
setSlot(ThreadFunc func)PIThreadinlineprivate
start(int timer_delay)PIThreadprivate
start(ThreadFunc func, int timer_delay)PIThreadinlineprivate
started()PIThreadprivate
startOnce()PIThreadprivate
startOnce(ThreadFunc func)PIThreadinlineprivate
stop(bool wait)PIThreadinlineprivate
stopped()PIThreadprivate
superClassName() const PIObjectinlineprivatevirtual
unlock()PIThreadinlineprivate
waitForStart(int timeout_msecs)PIThreadprivate
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_process.html b/doc/html/class_p_i_process.html new file mode 100644 index 00000000..b51ee07d --- /dev/null +++ b/doc/html/class_p_i_process.html @@ -0,0 +1,307 @@ + + + + + + +PIP: PIProcess Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIProcess Class Reference
+
+
+
+ + Inheritance diagram for PIProcess:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

+

Detailed Description

+

events: execStarted(PIString program) execFinished(PIString program, int exit_code)

+

handlers: bool exec(const PIString & program) bool exec(const PIString & program, const PIString & arg1) bool exec(const PIString & program, const PIString & arg1, const PIString & arg2) bool exec(const PIString & program, const PIString & arg1, const PIString & arg2, const PIString & arg3) bool exec(const PIString & program, const PIStringList & args) void terminate() bool waitForFinish(int timeout_msecs = 60000)

+
+
+ + + + diff --git a/doc/html/class_p_i_process__inherit__graph.map b/doc/html/class_p_i_process__inherit__graph.map new file mode 100644 index 00000000..9e6cbc1d --- /dev/null +++ b/doc/html/class_p_i_process__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/class_p_i_process__inherit__graph.md5 b/doc/html/class_p_i_process__inherit__graph.md5 new file mode 100644 index 00000000..f5029270 --- /dev/null +++ b/doc/html/class_p_i_process__inherit__graph.md5 @@ -0,0 +1 @@ +a692025996259e3de2ebb0ef02b62c8d \ No newline at end of file diff --git a/doc/html/class_p_i_process__inherit__graph.svg b/doc/html/class_p_i_process__inherit__graph.svg new file mode 100644 index 00000000..81f1abae --- /dev/null +++ b/doc/html/class_p_i_process__inherit__graph.svg @@ -0,0 +1,44 @@ + + + + + + +PIProcess + + +Node1 + +PIProcess + + +Node2 + + +PIThread + + + + +Node2->Node1 + + + + +Node3 + + +PIObject + + + + +Node3->Node2 + + + + + diff --git a/doc/html/class_p_i_protocol-members.html b/doc/html/class_p_i_protocol-members.html new file mode 100644 index 00000000..2782d130 --- /dev/null +++ b/doc/html/class_p_i_protocol-members.html @@ -0,0 +1,191 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIProtocol Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Average enum valuePIProtocol
Bad enum valuePIProtocol
className() const PIObjectinlinevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
Failure enum valuePIProtocol
findByName(const PIString &name)PIObjectinlinestatic
Good enum valuePIProtocol
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIObject(const PIString &name=PIString())PIObject
PIOBJECTPIObjectrelated
PIOBJECT_PARENTPIObjectrelated
PIProtocol()PIProtocolinline
PIProtocol(const PIString &config, const PIString &name, void *recHeaderPtr=0, int recHeaderSize=0, void *recDataPtr=0, int recDataSize=0, void *sendDataPtr=0, int sendDataSize=0)PIProtocol
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
Quality enum namePIProtocol
setDebug(bool debug)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
superClassName() const PIObjectinlinevirtual
Unknown enum valuePIProtocol
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_protocol.html b/doc/html/class_p_i_protocol.html new file mode 100644 index 00000000..99b057f6 --- /dev/null +++ b/doc/html/class_p_i_protocol.html @@ -0,0 +1,440 @@ + + + + + + +PIP: PIProtocol Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIProtocol Class Reference
+
+
+
+ + Inheritance diagram for PIProtocol:
+
+
+ + + + + + +

+Public Types

enum  Quality {
+  Unknown = 1, +Failure = 2, +Bad = 3, +Average = 4, +
+  Good = 5 +
+ }
 Connection quality. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIProtocol ()
 Contructs an empty unconfigured protocol.
 
PIProtocol (const PIString &config, const PIString &name, void *recHeaderPtr=0, int recHeaderSize=0, void *recDataPtr=0, int recDataSize=0, void *sendDataPtr=0, int sendDataSize=0)
 Contructs protocol configured from file "config", config file section "name".
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+

Detailed Description

+

events: void receiverStarted() void receiverStopped() void senderStarted() void senderStopped() void received(bool validate_is_ok) void qualityChanged(PIProtocol::Quality old_quality, PIProtocol::Quality new_quality)

+

handlers: void startReceive(float exp_frequency = -1.f) void stopReceive() void startSend(float frequency = -1.f) void stopSend() void start() void stop() void send() void send(const void * data, int size, bool direct = false)

+

+Synopsis

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIProtocol::Quality
+
+ +

Connection quality.

+ + + + + + +
Enumerator
Unknown  +

Unknown, no one packet received yet

+
Failure  +

No connection, no one correct packet received for last period

+
Bad  +

Bad connection, correct packets received <= 20%

+
Average  +

Average connection, correct packets received > 20% and <= 80%

+
Good  +

Good connection, correct packets received > 80%

+
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_protocol.js b/doc/html/class_p_i_protocol.js new file mode 100644 index 00000000..a27c46b8 --- /dev/null +++ b/doc/html/class_p_i_protocol.js @@ -0,0 +1,12 @@ +var class_p_i_protocol = +[ + [ "Quality", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868", [ + [ "Unknown", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868a53df11ad71f5084b02a504df41fd977a", null ], + [ "Failure", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868aedb67e105ac421f87d7c086213041812", null ], + [ "Bad", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868aab6ef6da8e37ad2a78028a631bc1bd26", null ], + [ "Average", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868a0f731aa8807989815ed9936e1bb35147", null ], + [ "Good", "class_p_i_protocol.html#aef1f5fa8173bcc220b07f084155ec868a79077b969773754677c555ec35c32d9b", null ] + ] ], + [ "PIProtocol", "class_p_i_protocol.html#ac5aa3e1546b771f82658bdcacb856898", null ], + [ "PIProtocol", "class_p_i_protocol.html#a5d4ccd507627a058c67ceec1d9774247", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_protocol__inherit__graph.map b/doc/html/class_p_i_protocol__inherit__graph.map new file mode 100644 index 00000000..402713ae --- /dev/null +++ b/doc/html/class_p_i_protocol__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_protocol__inherit__graph.md5 b/doc/html/class_p_i_protocol__inherit__graph.md5 new file mode 100644 index 00000000..9a371def --- /dev/null +++ b/doc/html/class_p_i_protocol__inherit__graph.md5 @@ -0,0 +1 @@ +e32bf6ef4c4b746416327d7bc08ee766 \ No newline at end of file diff --git a/doc/html/class_p_i_protocol__inherit__graph.svg b/doc/html/class_p_i_protocol__inherit__graph.svg new file mode 100644 index 00000000..941752ec --- /dev/null +++ b/doc/html/class_p_i_protocol__inherit__graph.svg @@ -0,0 +1,31 @@ + + + + + + +PIProtocol + + +Node1 + +PIProtocol + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_serial-members.html b/doc/html/class_p_i_serial-members.html new file mode 100644 index 00000000..a005841a --- /dev/null +++ b/doc/html/class_p_i_serial-members.html @@ -0,0 +1,223 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PISerial Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
className() const PIObjectinlinevirtual
closeDevice()PISerialprotectedvirtual
configureDevice(const void *e_main, const void *e_parent=0)PISerialprotectedvirtual
configureFromFullPath(const PIString &full_path)PISerialprotectedvirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
fullPathPrefix() const PISerialinlineprotectedvirtual
HANDLERPIObjectrelated
init()PIIODeviceinlineprotectedvirtual
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
openDevice()PISerialprotectedvirtual
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
PIIODEVICEPIIODevicerelated
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
readDeviceSetting(const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)PIIODevicerelated
received(const void *data, int size)PISerialinlineprotectedvirtual
REGISTER_DEVICEPIIODevicerelated
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
PIThread::start(int timer_delay)PIThread
PIThread::start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
threadedRead(uchar *readed, int size)PIIODeviceinlineprotectedvirtual
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
write(const void *data, int max_size)PISerialinlineprotectedvirtual
+
+ + + + diff --git a/doc/html/class_p_i_serial.html b/doc/html/class_p_i_serial.html new file mode 100644 index 00000000..a4abb71e --- /dev/null +++ b/doc/html/class_p_i_serial.html @@ -0,0 +1,531 @@ + + + + + + +PIP: PISerial Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PISerial Class Reference
+
+
+ +

Serial device. + More...

+
+ + Inheritance diagram for PISerial:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+PIString fullPathPrefix () const
 Reimplement to construct full unambiguous string prefix. Creating devices by unambiguous string.
 
+void configureFromFullPath (const PIString &full_path)
 Reimplement to configure your device with parameters of full unambiguous string. Default implementation does nothing.
 
+bool configureDevice (const void *e_main, const void *e_parent=0)
 Reimplement to configure device from entries "e_main" and "e_parent", cast arguments to PIConfig::Entry*.
 
+int write (const void *data, int max_size)
 Reimplement this function to write to your device.
 
+virtual void received (const void *data, int size)
 Executes when any read function was successful. Default implementation does nothing.
 
+bool openDevice ()
 Reimplement to open device, return value will be set to "opened_" variable.
 
+bool closeDevice ()
 Reimplement to close device, inverse return value will be set to "opened_" variable.
 
- Protected Member Functions inherited from PIIODevice
+virtual bool init ()
 Function executed before first openDevice() or from constructor.
 
+virtual bool threadedRead (uchar *readed, int size)
 Function executed when thread read some data, default implementation execute external slot "ret_func_".
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from PIThread
enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
- Public Member Functions inherited from PIThread
PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Serial device.

+

+Synopsis

+

This class provide access to serial device, e.g. COM port. It can read, write, wait for write. There are several read and write functions.

+
+
+ + + + diff --git a/doc/html/class_p_i_serial.js b/doc/html/class_p_i_serial.js new file mode 100644 index 00000000..441f4626 --- /dev/null +++ b/doc/html/class_p_i_serial.js @@ -0,0 +1,10 @@ +var class_p_i_serial = +[ + [ "fullPathPrefix", "class_p_i_serial.html#a618759d595670e96afa8103102e98ec7", null ], + [ "configureFromFullPath", "class_p_i_serial.html#a5c31bf29e311d1ea5e188adab37703e6", null ], + [ "configureDevice", "class_p_i_serial.html#a6fa0f2c099da80fe406cd38b7e552d5b", null ], + [ "write", "class_p_i_serial.html#a544a191409e7088b1c7e6a35844c8f7b", null ], + [ "received", "class_p_i_serial.html#aafc6d34cbbdef49fed9454403056a948", null ], + [ "openDevice", "class_p_i_serial.html#a4341607c7ecd49b68b368a9cbc49207a", null ], + [ "closeDevice", "class_p_i_serial.html#aa8f0b19f15100b7bc01c6f87b1eaa587", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_serial__inherit__graph.map b/doc/html/class_p_i_serial__inherit__graph.map new file mode 100644 index 00000000..d3594ded --- /dev/null +++ b/doc/html/class_p_i_serial__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/doc/html/class_p_i_serial__inherit__graph.md5 b/doc/html/class_p_i_serial__inherit__graph.md5 new file mode 100644 index 00000000..d6a88ea0 --- /dev/null +++ b/doc/html/class_p_i_serial__inherit__graph.md5 @@ -0,0 +1 @@ +6b0aa238526ec689ba5f1659df485a78 \ No newline at end of file diff --git a/doc/html/class_p_i_serial__inherit__graph.svg b/doc/html/class_p_i_serial__inherit__graph.svg new file mode 100644 index 00000000..a5e158ee --- /dev/null +++ b/doc/html/class_p_i_serial__inherit__graph.svg @@ -0,0 +1,57 @@ + + + + + + +PISerial + + +Node1 + +PISerial + + +Node2 + + +PIIODevice + + + + +Node2->Node1 + + + + +Node3 + + +PIThread + + + + +Node3->Node2 + + + + +Node4 + + +PIObject + + + + +Node4->Node3 + + + + + diff --git a/doc/html/class_p_i_set-members.html b/doc/html/class_p_i_set-members.html new file mode 100644 index 00000000..09f0dfae --- /dev/null +++ b/doc/html/class_p_i_set-members.html @@ -0,0 +1,135 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PISet< T > Member List
+
+
+ +

This is the complete list of members for PISet< T >, including all inherited members.

+ + + + + + + + + +
operator[](const T &t) const PISet< T >inline
PISet()PISet< T >inline
PISet(const T &value)PISet< T >inline
PISet(const T &v0, const T &v1)PISet< T >inline
PISet(const T &v0, const T &v1, const T &v2)PISet< T >inline
PISet(const T &v0, const T &v1, const T &v2, const T &v3)PISet< T >inline
remove(const T &t)PISet< T >inline
toVector() const PISet< T >inline
+
+ + + + diff --git a/doc/html/class_p_i_set.html b/doc/html/class_p_i_set.html new file mode 100644 index 00000000..403bd9e6 --- /dev/null +++ b/doc/html/class_p_i_set.html @@ -0,0 +1,175 @@ + + + + + + +PIP: PISet< T > Class Template Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PISet< T > Class Template Reference
+
+
+ +

Set of any type. + More...

+ +

Inherits PIMap< Key, T >.

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

+Public Member Functions

PISet ()
 Contructs an empty set.
 
PISet (const T &value)
 Contructs set with one element "value".
 
PISet (const T &v0, const T &v1)
 Contructs set with elements "v0" and "v1".
 
PISet (const T &v0, const T &v1, const T &v2)
 Contructs set with elements "v0", "v1" and "v2".
 
PISet (const T &v0, const T &v1, const T &v2, const T &v3)
 Contructs set with elements "v0", "v1", "v2" and "v3".
 
+bool operator[] (const T &t) const
 Returns if element "t" exists in this set.
 
+PISet< T > & remove (const T &t)
 Returns if element "t" exists in this set.
 
+PIVector< T > toVector () const
 Returns content of set as PIVector.
 
+

Detailed Description

+

template<typename T>
+class PISet< T >

+ +

Set of any type.

+

This class used to store collection of unique elements of any type. You can only add values to set with operator<< or with function insert(). You can discover if value already in set with operator[] or with function find(). These function has logarithmic complexity.

+
+
+ + + + diff --git a/doc/html/class_p_i_set.js b/doc/html/class_p_i_set.js new file mode 100644 index 00000000..f216a62c --- /dev/null +++ b/doc/html/class_p_i_set.js @@ -0,0 +1,11 @@ +var class_p_i_set = +[ + [ "PISet", "class_p_i_set.html#a0611208edb84f2529cb2e2782c3239fd", null ], + [ "PISet", "class_p_i_set.html#ab2a248ae703457ca45cfa55972e1252a", null ], + [ "PISet", "class_p_i_set.html#aebcd07da3920c925af21ad1634dde44b", null ], + [ "PISet", "class_p_i_set.html#a0da9d93a30b419270d6389433266b376", null ], + [ "PISet", "class_p_i_set.html#a5170af33fced202a149267f84baaa65c", null ], + [ "operator[]", "class_p_i_set.html#ab4b957ab5ad99589a07cea34cce4b4ca", null ], + [ "remove", "class_p_i_set.html#aeb31ad164a71727de75ee18f7767d07c", null ], + [ "toVector", "class_p_i_set.html#aa922f639869b9556b0ade5a4099fe0de", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_state_machine-members.html b/doc/html/class_p_i_state_machine-members.html new file mode 100644 index 00000000..05d06d46 --- /dev/null +++ b/doc/html/class_p_i_state_machine-members.html @@ -0,0 +1,209 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIStateMachine< Type > Member List
+
+
+ +

This is the complete list of members for PIStateMachine< Type >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addRule(Type from, Type to, const PIString &condition, Handler handler=0, bool autoTransition=false, bool resetAllConditions=false)PIStateMachine< Type >inline
addRule(Type from, Type to, Handler handler, bool autoTransition=false, bool resetAllConditions=false)PIStateMachine< Type >inline
addRule(Type from, Type to, const PIStringList &conditions=PIStringList(), Handler handler=0, bool autoTransition=false, bool resetAllConditions=false)PIStateMachine< Type >inline
addRule(const Rule &rule)PIStateMachine< Type >inline
addState(Type value, const PIString &name="", Handler handler=0)PIStateMachine< Type >inline
className() const PIObjectinlinevirtual
clearRules()PIStateMachine< Type >inline
clearStates()PIStateMachine< Type >inline
Condition typedefPIStateMachine< Type >
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
currentConditions() const PIStateMachine< Type >inline
currentState() const PIStateMachine< Type >inline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
execution(const State &state)PIStateMachine< Type >inlineprotectedvirtual
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinline
name() const PIObjectinline
performCondition(const PIString &name, int times=1)PIStateMachine< Type >inline
performConditions(const PIStringList &names)PIStateMachine< Type >inline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIStateMachine(void *_parent=0)PIStateMachine< Type >inline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
reset()PIStateMachine< Type >inline
resetCondition(const PIString &name)PIStateMachine< Type >inline
resetConditions()PIStateMachine< Type >inline
rulesCount() const PIStateMachine< Type >inline
setDebug(bool debug)PIObjectinline
setInitialState(Type value)PIStateMachine< Type >inline
setName(const PIString &name)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
statesCount() const PIStateMachine< Type >inline
superClassName() const PIObjectinlinevirtual
switchToState(Type to)PIStateMachine< Type >inline
tick()PIStateMachine< Type >inline
tick(void *data, int delim)PIStateMachine< Type >inline
transition(const State &from, const State &to)PIStateMachine< Type >inlineprotectedvirtual
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_state_machine.html b/doc/html/class_p_i_state_machine.html new file mode 100644 index 00000000..ddfddfb9 --- /dev/null +++ b/doc/html/class_p_i_state_machine.html @@ -0,0 +1,626 @@ + + + + + + +PIP: PIStateMachine< Type > Class Template Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIStateMachine< Type > Class Template Reference
+
+
+ +

Base class for custom state machine. + More...

+
+ + Inheritance diagram for PIStateMachine< Type >:
+
+
+ + + + + + + + + +

+Classes

struct  Rule
 Rule of transition between states of machine More...
 
struct  State
 State of machine More...
 
+ + + + +

+Public Types

+typedef PIPair< PIString, int > Condition
 Condition is a pair (string, number)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIStateMachine (void *_parent=0)
 Constructs an empty state machine.
 
+void addState (Type value, const PIString &name="", Handler handler=0)
 Add state of machine.
 
+int statesCount () const
 States count.
 
+void clearStates ()
 Remove all states.
 
+void addRule (Type from, Type to, const PIString &condition, Handler handler=0, bool autoTransition=false, bool resetAllConditions=false)
 Add rule of transition.
 
+void addRule (Type from, Type to, Handler handler, bool autoTransition=false, bool resetAllConditions=false)
 Add rule of transition.
 
+void addRule (Type from, Type to, const PIStringList &conditions=PIStringList(), Handler handler=0, bool autoTransition=false, bool resetAllConditions=false)
 Add rule of transition.
 
+void addRule (const Rule &rule)
 Add rule of transition.
 
+int rulesCount () const
 Rules count.
 
+void clearRules ()
 Remove all rules.
 
+void setInitialState (Type value)
 Setup initial state. reset() will set machine state to "value".
 
bool switchToState (Type to)
 Try to switch machine state to state "to". More...
 
+void reset ()
 Reset machine state to initial and clear all conditions.
 
+const StatecurrentState () const
 Returns current state of machine.
 
+void resetConditions ()
 Reset all performed conditions.
 
+void resetCondition (const PIString &name)
 Reset performed condition with name "name".
 
+void performCondition (const PIString &name, int times=1)
 Perform condition with name "name" "times" times.
 
+void performConditions (const PIStringList &names)
 Perform every condition with name from "names" one time.
 
+const PIVector< Condition > & currentConditions () const
 Returns all current performed conditions.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + +

+Protected Member Functions

+virtual void execution (const State &state)
 Reimplement this function to process current state of machine.
 
+virtual void transition (const State &from, const State &to)
 Reimplement this function to process switching current state of machine.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + +

+Handlers

+void tick ()
 Main function of machine. Execute execution() and check if need to switch state.
 
+void tick (void *data, int delim)
 Main function of machine. Execute execution() and check if need to switch state.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

template<typename Type = int>
+class PIStateMachine< Type >

+ +

Base class for custom state machine.

+

+Synopsis

+

This class provide functionality of state machine. You should inherit from this class, implement execution() and transition() functions, set rules and periodically call tick() function to proper work of machine.

+

+Prepare for work

+

State machine operates with "state", "rule" and "condition".

    +
  • "State" is some class (by default int), associated name and optional "handler" - pointer to function executed on every tick();
  • +
  • "Rule" define rule of transition from one machine state to other. It is also has optional "handler";
  • +
  • "Condition" is a part of rule and define possibility of transition.
  • +
+

First of all you should define states of your machine by function addState(). Then you should define transition rules for machine by function addRule(). Finally you can set initial state by function setInitialState() and provide periodically execution of function tick().

+

+Principle of work

+

At any time the state machine is in some state. You can ask machine to enter in new state by function switchToState(). If all conditions done machine switch it state immediately, else machine remember request and will be try switch to the new state every tick. Successfull state switching execute function transition(), every tick execute function execution() with current state. On successfull transition if rule "handler" is not null it execute. Every tick() if current state "handler" is not null it execute.

+

+Conditions

+

Each rule has transition condition. Condition is array of pairs (string, number). It means that every condition by name "string" should be performed as least "number" times. Empty condition always permits transition.

+

State machine have current performed conditions. You can read this conditions by function currentConditions() and perform new conditions by functions performCondition() and performConditions(). Currend conditions can de erased by function resetConditions().

+

+Example

+

This is simple example demonstrates all features:

#include "pip.h"
+
+
enum Mode {Start, Manual, Auto, Finish, End};
+
+
class Machine: public PIStateMachine<Mode> {
+
PIOBJECT(Machine)
+
public:
+
Machine() {
+
addState(Start, "start", HANDLER(startFunc));
+
addState(Manual, "manual", HANDLER(manualFunc));
+
addState(Auto, "auto", HANDLER(autoFunc));
+
addState(Finish, "finish", HANDLER(finishFunc));
+
addState(End, "end", HANDLER(endFunc));
+
+
addRule(Start, Manual, "init_ok", HANDLER(beginManualFunc));
+
addRule(Start, Auto, "init_ok", HANDLER(beginAutoFunc));
+
addRule(Manual, Auto, HANDLER(manualToAutoFunc));
+
addRule(Auto, Manual, HANDLER(autoToManualFunc));
+
addRule(Manual, Finish);
+
addRule(Auto, Finish);
+
Rule r(Finish, End);
+
r.addCondition("finish_0_ok");
+
r.addCondition("finish_1_ok", 2);
+
addRule(r);
+
+ +
+
CONNECT2(void, void*, int, &timer, timeout, this, tick);
+
timer.start(500);
+
}
+
virtual void execution(const State & state) {
+
piCout << "performed conditions:" << currentConditions();
+
}
+
virtual void transition(const State & from, const State & to) {
+
piCout << "switch from" << from.name << "to" << to.name << "state";
+
}
+
+
EVENT_HANDLER(void, startFunc) {piCout << "start function";}
+
EVENT_HANDLER(void, manualFunc) {piCout << "manual function";}
+
EVENT_HANDLER(void, autoFunc) {piCout << "auto function";}
+
EVENT_HANDLER(void, finishFunc) {piCout << "finish function";}
+
EVENT_HANDLER(void, endFunc) {piCout << "end function";}
+
EVENT_HANDLER(void, beginManualFunc) {piCout << "begin manual function";}
+
EVENT_HANDLER(void, beginAutoFunc) {piCout << "begin auto function";}
+
EVENT_HANDLER(void, autoToManualFunc) {piCout << "switch from auto to manual function";}
+
EVENT_HANDLER(void, manualToAutoFunc) {piCout << "switch from manual to auto function";}
+
+
PITimer timer;
+
};
+
+
Machine machine;
+
+
void key_event(char key, void*) {
+
switch (key) {
+
case 's': machine.switchToState(Start); break;
+
case 'm': machine.switchToState(Manual); break;
+
case 'a': machine.switchToState(Auto); break;
+
case 'f': machine.switchToState(Finish); break;
+
case 'e': machine.switchToState(End); break;
+
case '1': machine.performCondition("init_ok"); break;
+
case '2': machine.performCondition("finish_0_ok"); break;
+
case '3': machine.performCondition("finish_1_ok"); break;
+
case 'r': machine.resetConditions(); break;
+
case 'R': machine.reset(); break;
+
}
+
}
+
+
int main(int argc, char * argv[]) {
+
PIKbdListener kbd(key_event);
+
kbd.enableExitCapture();
+
WAIT_FOR_EXIT
+
};
+

Member Function Documentation

+ +
+
+
+template<typename Type = int>
+ + + + + +
+ + + + + + + + +
bool PIStateMachine< Type >::switchToState (Type to)
+
+inline
+
+ +

Try to switch machine state to state "to".

+

If there is rule of transition exists and this rule conditions is performed then machine switched to new state immediately. Otherwise machine will be try to enter to new state every tick().

Returns
true if state switched immediately, otherwise false
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_state_machine.js b/doc/html/class_p_i_state_machine.js new file mode 100644 index 00000000..10c59e0a --- /dev/null +++ b/doc/html/class_p_i_state_machine.js @@ -0,0 +1,29 @@ +var class_p_i_state_machine = +[ + [ "Rule", "struct_p_i_state_machine_1_1_rule.html", "struct_p_i_state_machine_1_1_rule" ], + [ "State", "struct_p_i_state_machine_1_1_state.html", "struct_p_i_state_machine_1_1_state" ], + [ "Condition", "class_p_i_state_machine.html#abc7ad84744d038a0eb598e82ac536ed7", null ], + [ "PIStateMachine", "class_p_i_state_machine.html#a5a9c75f183207bc366b2f0531473b905", null ], + [ "addState", "class_p_i_state_machine.html#ac26f6300f7545b0182e3a52805b04cd6", null ], + [ "statesCount", "class_p_i_state_machine.html#ab0e424ab27e2edca90cdf1c368f4686f", null ], + [ "clearStates", "class_p_i_state_machine.html#a18bceb62d18013df1459c3bb442eb7e8", null ], + [ "addRule", "class_p_i_state_machine.html#aee180e7f75ece9aef1c3d8a94095ed21", null ], + [ "addRule", "class_p_i_state_machine.html#a52703fc2cac4578a7a70b57aeb8742fc", null ], + [ "addRule", "class_p_i_state_machine.html#a2bda5abc394ca0d479faf01050c5b843", null ], + [ "addRule", "class_p_i_state_machine.html#a60f175d31774c0a01689ebe4a463dd85", null ], + [ "rulesCount", "class_p_i_state_machine.html#af5c2a2973b22c37217a1d74c60aab909", null ], + [ "clearRules", "class_p_i_state_machine.html#a1e44d3e3cacd745413e84272993a6407", null ], + [ "setInitialState", "class_p_i_state_machine.html#a42b22e027a498659282a4838d576eb80", null ], + [ "switchToState", "class_p_i_state_machine.html#af4aa7b86c70425bfc9690e4c27ab6cf7", null ], + [ "reset", "class_p_i_state_machine.html#a2dbebcfe51dfd85c568bcc5eab3a4d40", null ], + [ "currentState", "class_p_i_state_machine.html#a2335fae60078ae68750df3ca50d95850", null ], + [ "resetConditions", "class_p_i_state_machine.html#aa932844b2866a28e24028020c33fe23a", null ], + [ "resetCondition", "class_p_i_state_machine.html#a8c62341c659ed29e4ba25672162aafc0", null ], + [ "performCondition", "class_p_i_state_machine.html#a0c51b3d6ffd0a96ae5b24a2c06ae20e3", null ], + [ "performConditions", "class_p_i_state_machine.html#a0c2a680c0a10c9440bbe89dccc55ee0c", null ], + [ "currentConditions", "class_p_i_state_machine.html#ab49ff1a9fc9b2a354cd5493a5fd3859a", null ], + [ "tick", "class_p_i_state_machine.html#a37e8b9df953d6948e84d061bc02e5903", null ], + [ "tick", "class_p_i_state_machine.html#a6a262d1d71be95b5b5d4f5d7b276c8f7", null ], + [ "execution", "class_p_i_state_machine.html#a59c79d761ab1c4b64a655e55c6a93904", null ], + [ "transition", "class_p_i_state_machine.html#ad848623075776b802de3fc22b4a08cea", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_state_machine__inherit__graph.map b/doc/html/class_p_i_state_machine__inherit__graph.map new file mode 100644 index 00000000..45fc754a --- /dev/null +++ b/doc/html/class_p_i_state_machine__inherit__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/class_p_i_state_machine__inherit__graph.md5 b/doc/html/class_p_i_state_machine__inherit__graph.md5 new file mode 100644 index 00000000..67dc31e7 --- /dev/null +++ b/doc/html/class_p_i_state_machine__inherit__graph.md5 @@ -0,0 +1 @@ +5a04af85317b4c40db5345fba502dd89 \ No newline at end of file diff --git a/doc/html/class_p_i_state_machine__inherit__graph.svg b/doc/html/class_p_i_state_machine__inherit__graph.svg new file mode 100644 index 00000000..1a4a2bac --- /dev/null +++ b/doc/html/class_p_i_state_machine__inherit__graph.svg @@ -0,0 +1,31 @@ + + + + + + +PIStateMachine< Type > + + +Node1 + +PIStateMachine< Type > + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_string-members.html b/doc/html/class_p_i_string-members.html new file mode 100644 index 00000000..c4d1ae43 --- /dev/null +++ b/doc/html/class_p_i_string-members.html @@ -0,0 +1,275 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIString Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
append(const PIString &str)PIStringinline
cutLeft(const int len)PIStringinline
cutMid(const int start, const int len)PIString
cutRight(const int len)PIStringinline
data() const PIString
endsWith(const PIString &str) const PIString
expandLeftTo(const int len, const PIChar &c)PIStringinline
expandRightTo(const int len, const PIChar &c)PIStringinline
find(const char str, const int start=0) const PIString
find(const PIString str, const int start=0) const PIString
find(const char *str, const int start=0) const PIStringinline
find(const string str, const int start=0) const PIStringinline
findCWord(const PIString &word, const int start=0) const PIString
findLast(const char str, const int start=0) const PIString
findLast(const PIString str, const int start=0) const PIString
findLast(const char *str, const int start=0) const PIStringinline
findLast(const string str, const int start=0) const PIStringinline
findWord(const PIString &word, const int start=0) const PIString
fromBool(const bool value)PIStringinlinestatic
fromNumber(const short value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const ushort value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const int value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const uint value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const long value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const ulong value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const llong &value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const ullong &value, int base=10, bool *ok=0)PIStringinlinestatic
fromNumber(const float value)PIStringinlinestatic
fromNumber(const double &value)PIStringinlinestatic
fromNumber(const ldouble &value)PIStringinlinestatic
insert(const int index, const PIChar &c)PIStringinline
insert(const int index, const char &c)PIStringinline
insert(const int index, const PIString &str)PIString
insert(const int index, const char *c)PIStringinline
isEmpty() const PIStringinline
left(const int len) const PIStringinline
length() const PIStringinline
lengthAscii() const PIString
mid(const int start, const int len=-1) const PIString
operator const char *()PIStringinline
operator const string()PIStringinline
operator!=(const PIString &str) const PIString
operator!=(const PIChar c) const PIStringinline
operator!=(const char *str) const PIStringinline
operator!=(const string &str) const PIStringinline
operator+(const PIString &str, const PIString &f)PIStringrelated
operator+(const PIString &f, const char *str)PIStringrelated
operator+(const PIString &f, const string &str)PIStringrelated
operator+(const char *str, const PIString &f)PIStringrelated
operator+(const string &str, const PIString &f)PIStringrelated
operator<(const PIString &str) const PIString
operator<(const PIChar c) const PIStringinline
operator<(const char *str) const PIStringinline
operator<(const string &str) const PIStringinline
operator<<(const PIString &str)PIStringinline
operator<<(const PIChar &c)PIStringinline
operator<<(const char *str)PIStringinline
operator<<(const wchar_t *str)PIStringinline
operator<<(const string &str)PIStringinline
operator<<(const int &num)PIStringinline
operator<<(const short &num)PIStringinline
operator<<(const long &num)PIStringinline
operator<<(const float &num)PIStringinline
operator<<(const double &num)PIStringinline
operator<<(std::ostream &s, const PIString &v)PIStringrelated
operator<=(const PIString &str) const PIStringinline
operator<=(const PIChar c) const PIStringinline
operator<=(const char *str) const PIStringinline
operator<=(const string &str) const PIStringinline
operator==(const PIString &str) const PIString
operator==(const PIChar c) const PIStringinline
operator==(const char *str) const PIStringinline
operator==(const string &str) const PIStringinline
operator>(const PIString &str) const PIString
operator>(const PIChar c) const PIStringinline
operator>(const char *str) const PIStringinline
operator>(const string &str) const PIStringinline
operator>=(const PIString &str) const PIStringinline
operator>=(const PIChar c) const PIStringinline
operator>=(const char *str) const PIStringinline
operator>=(const string &str) const PIStringinline
operator>>(std::istream &s, PIString &v)PIStringrelated
operator[](const int pos) const PIStringinline
operator[](const int pos)PIStringinline
PIString()PIStringinline
PIString(const PIChar &c)PIStringinline
PIString(const char *str)PIStringinline
PIString(const wchar_t *str)PIStringinline
PIString(const string &str)PIStringinline
PIString(const PIByteArray &ba)PIStringinline
PIString(const PIChar *str, const int len)PIStringinline
PIString(const char *str, const int len)PIStringinline
PIString(const int len, const char c)PIStringinline
PIString(const int len, const PIChar &c)PIStringinline
prepend(const PIString &str)PIStringinline
readableSize(llong bytes)PIStringinlinestatic
repeat(int times)PIStringinline
repeated(int times) const PIStringinline
replace(const int from, const int count, const PIString &with)PIString
replace(const PIString &what, const PIString &with, bool *ok=0)PIString
replaceAll(const PIString &what, const PIString &with)PIString
replaced(const int from, const int count, const PIString &with) const PIStringinline
replaced(const PIString &what, const PIString &with, bool *ok=0) const PIStringinline
reverse()PIStringinline
reversed() const PIStringinline
right(const int len) const PIStringinline
setNumber(const short value, int base=10, bool *ok=0)PIStringinline
setNumber(const ushort value, int base=10, bool *ok=0)PIStringinline
setNumber(const int value, int base=10, bool *ok=0)PIStringinline
setNumber(const uint value, int base=10, bool *ok=0)PIStringinline
setNumber(const long value, int base=10, bool *ok=0)PIStringinline
setNumber(const ulong value, int base=10, bool *ok=0)PIStringinline
setNumber(const llong &value, int base=10, bool *ok=0)PIStringinline
setNumber(const ullong &value, int base=10, bool *ok=0)PIStringinline
setNumber(const float value)PIStringinline
setNumber(const double &value)PIStringinline
setNumber(const ldouble &value)PIStringinline
setReadableSize(llong bytes)PIString
split(const PIString &delim) const PIString
startsWith(const PIString &str) const PIString
stdString() const PIStringinline
takeCWord()PIString
takeLeft(const int len)PIStringinline
takeLine()PIString
takeMid(const int start, const int len=-1)PIStringinline
takeNumber()PIString
takeRange(const PIChar &start, const PIChar &end, const PIChar &shield= '\\')PIString
takeRight(const int len)PIStringinline
takeSymbol()PIString
takeWord()PIString
toBool() const PIStringinline
toByteArray() const PIStringinline
toChar() const PIString
toDouble() const PIStringinline
toFloat() const PIStringinline
toInt(int base=-1, bool *ok=0) const PIStringinline
toLDouble() const PIStringinline
toLLong(int base=-1, bool *ok=0) const PIStringinline
toLong(int base=-1, bool *ok=0) const PIStringinline
toLowerCase() const PIString
toShort(int base=-1, bool *ok=0) const PIStringinline
toUInt(int base=-1, bool *ok=0) const PIStringinline
toULLong(int base=-1, bool *ok=0) const PIStringinline
toULong(int base=-1, bool *ok=0) const PIStringinline
toUpperCase() const PIString
toUShort(int base=-1, bool *ok=0) const PIStringinline
trim()PIString
trimmed() const PIString
+
+ + + + diff --git a/doc/html/class_p_i_string.html b/doc/html/class_p_i_string.html new file mode 100644 index 00000000..6c74d135 --- /dev/null +++ b/doc/html/class_p_i_string.html @@ -0,0 +1,3942 @@ + + + + + + +PIP: PIString Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

String class. + More...

+ +

Inherits PIDeque< T >.

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

+Public Member Functions

PIString ()
 Contructs an empty string.
 
PIString (const PIChar &c)
 Contructs string with single symbol "c".
 
 PIString (const char *str)
 Contructs string from c-string "str". More...
 
 PIString (const wchar_t *str)
 Contructs string from wchar_t c-string "str". More...
 
PIString (const string &str)
 Contructs string from std::string "str".
 
PIString (const PIByteArray &ba)
 Contructs string from byte array "ba".
 
PIString (const PIChar *str, const int len)
 Contructs string from "len" characters of buffer "str".
 
 PIString (const char *str, const int len)
 Contructs string from "len" characters of buffer "str". More...
 
 PIString (const int len, const char c)
 Contructs string as sequence of characters "c" of buffer with length "len". More...
 
 PIString (const int len, const PIChar &c)
 Contructs string as sequence of symbols "c" of buffer with length "len". More...
 
 operator const char * ()
 Return c-string representation of string. More...
 
operator const string ()
 Return std::string representation of string.
 
+PIChar operator[] (const int pos) const
 Return symbol at index "pos".
 
+PICharoperator[] (const int pos)
 Return reference to symbol at index "pos".
 
+bool operator== (const PIString &str) const
 Compare operator.
 
+bool operator== (const PIChar c) const
 Compare operator.
 
+bool operator== (const char *str) const
 Compare operator.
 
+bool operator== (const string &str) const
 Compare operator.
 
+bool operator!= (const PIString &str) const
 Compare operator.
 
+bool operator!= (const PIChar c) const
 Compare operator.
 
+bool operator!= (const char *str) const
 Compare operator.
 
+bool operator!= (const string &str) const
 Compare operator.
 
+bool operator< (const PIString &str) const
 Compare operator.
 
+bool operator< (const PIChar c) const
 Compare operator.
 
+bool operator< (const char *str) const
 Compare operator.
 
+bool operator< (const string &str) const
 Compare operator.
 
+bool operator> (const PIString &str) const
 Compare operator.
 
+bool operator> (const PIChar c) const
 Compare operator.
 
+bool operator> (const char *str) const
 Compare operator.
 
+bool operator> (const string &str) const
 Compare operator.
 
+bool operator<= (const PIString &str) const
 Compare operator.
 
+bool operator<= (const PIChar c) const
 Compare operator.
 
+bool operator<= (const char *str) const
 Compare operator.
 
+bool operator<= (const string &str) const
 Compare operator.
 
+bool operator>= (const PIString &str) const
 Compare operator.
 
+bool operator>= (const PIChar c) const
 Compare operator.
 
+bool operator>= (const char *str) const
 Compare operator.
 
+bool operator>= (const string &str) const
 Compare operator.
 
PIStringoperator<< (const PIString &str)
 Append string "str" at the end of string. More...
 
PIStringoperator<< (const PIChar &c)
 Append symbol "c" at the end of string. More...
 
PIStringoperator<< (const char *str)
 Append c-string "str" at the end of string. More...
 
PIStringoperator<< (const wchar_t *str)
 Append wchar_t c-string "str" at the end of string. More...
 
+PIStringoperator<< (const string &str)
 Append std::string "str" at the end of string.
 
PIStringoperator<< (const int &num)
 Append string representation of "num" at the end of string. More...
 
PIStringoperator<< (const short &num)
 Append string representation of "num" at the end of string. More...
 
PIStringoperator<< (const long &num)
 Append string representation of "num" at the end of string. More...
 
PIStringoperator<< (const float &num)
 Append string representation of "num" at the end of string. More...
 
PIStringoperator<< (const double &num)
 Append string representation of "num" at the end of string. More...
 
+PIStringprepend (const PIString &str)
 Insert string "str" at the begin of string.
 
+PIStringappend (const PIString &str)
 Insert string "str" at the end of string.
 
PIString mid (const int start, const int len=-1) const
 Return part of string from symbol at index "start" and maximum length "len". More...
 
PIString left (const int len) const
 Return part of string from left and maximum length "len". More...
 
PIString right (const int len) const
 Return part of string from right and maximum length "len". More...
 
PIStringcutMid (const int start, const int len)
 Remove part of string from symbol as index "start" and maximum length "len" and return this string. More...
 
PIStringcutLeft (const int len)
 Remove part of string from left and maximum length "len" and return this string. More...
 
PIStringcutRight (const int len)
 Remove part of string from right and maximum length "len" and return this string. More...
 
PIStringtrim ()
 Remove spaces at the start and at the end of string and return this string. More...
 
PIString trimmed () const
 Return copy of this string without spaces at the start and at the end. More...
 
PIStringreplace (const int from, const int count, const PIString &with)
 Replace part of string from index "from" and maximum length "len" with string "with" and return this string. More...
 
PIString replaced (const int from, const int count, const PIString &with) const
 Replace part copy of this string from index "from" and maximum length "len" with string "with" and return copied string. More...
 
PIStringreplace (const PIString &what, const PIString &with, bool *ok=0)
 Replace first founded substring "what" with string "with" and return this string. More...
 
PIString replaced (const PIString &what, const PIString &with, bool *ok=0) const
 Replace first founded substring "what" with string "with" and return copied string. More...
 
PIStringreplaceAll (const PIString &what, const PIString &with)
 Replace all founded substrings "what" with strings "with" and return this string. More...
 
PIStringrepeat (int times)
 Repeat content of string "times" times and return this string. More...
 
PIString repeated (int times) const
 Returns repeated "times" times string. More...
 
PIStringinsert (const int index, const PIChar &c)
 Insert symbol "c" after index "index" and return this string. More...
 
PIStringinsert (const int index, const char &c)
 Insert symbol "c" after index "index" and return this string. More...
 
PIStringinsert (const int index, const PIString &str)
 Insert string "str" after index "index" and return this string. More...
 
PIStringinsert (const int index, const char *c)
 Insert string "str" after index "index" and return this string. More...
 
PIStringexpandRightTo (const int len, const PIChar &c)
 Enlarge string to length "len" by addition sequence of symbols "c" at the end of string, and return this string. More...
 
PIStringexpandLeftTo (const int len, const PIChar &c)
 Enlarge string to length "len" by addition sequence of symbols "c" at the beginning of string, and return this string. More...
 
PIStringreverse ()
 Reverse string and return this string. More...
 
PIString reversed () const
 Reverse copy of this string and return it. More...
 
PIString takeMid (const int start, const int len=-1)
 Take a part of string from symbol at index "start" and maximum length "len" and return it. More...
 
PIString takeLeft (const int len)
 Take a part from the begin of string with maximum length "len" and return it. More...
 
PIString takeRight (const int len)
 Take a part from the end of string with maximum length "len" and return it. More...
 
PIString takeSymbol ()
 Take a symbol from the begin of this string and return it. More...
 
PIString takeWord ()
 Take a word from the begin of this string and return it. More...
 
PIString takeCWord ()
 Take a word with letters, numbers and '_' symbols from the begin of this string and return it. More...
 
PIString takeLine ()
 Take a line from the begin of this string and return it. More...
 
PIString takeNumber ()
 Take a number with C-format from the begin of this string and return it. More...
 
PIString takeRange (const PIChar &start, const PIChar &end, const PIChar &shield= '\\')
 Take a range between "start" and "end" symbols from the begin of this string and return it. More...
 
int lengthAscii () const
 Return real bytes count of this string. More...
 
const char * data () const
 Return char * representation of this string. More...
 
+std::string stdString () const
 Return std::string representation of this string.
 
+PIByteArray toByteArray () const
 Return PIByteArray contains data() of this string.
 
PIStringList split (const PIString &delim) const
 Split string with delimiter "delim" to PIStringList and return it. More...
 
+PIString toUpperCase () const
 Convert each symbol in copyed string to upper case and return it.
 
+PIString toLowerCase () const
 Convert each symbol in copyed string to lower case and return it.
 
int find (const char str, const int start=0) const
 Search substring "str" from symbol at index "start" and return first occur position. More...
 
int find (const PIString str, const int start=0) const
 Search substring "str" from symbol at index "start" and return first occur position. More...
 
int find (const char *str, const int start=0) const
 Search substring "str" from symbol at index "start" and return first occur position. More...
 
int find (const string str, const int start=0) const
 Search substring "str" from symbol at index "start" and return first occur position. More...
 
int findLast (const char str, const int start=0) const
 Search substring "str" from symbol at index "start" and return last occur position. More...
 
int findLast (const PIString str, const int start=0) const
 Search substring "str" from symbol at index "start" and return last occur position. More...
 
int findLast (const char *str, const int start=0) const
 Search substring "str" from symbol at index "start" and return last occur position. More...
 
int findLast (const string str, const int start=0) const
 Search substring "str" from symbol at index "start" and return last occur position. More...
 
int findWord (const PIString &word, const int start=0) const
 Search word "word" from symbol at index "start" and return first occur position. More...
 
int findCWord (const PIString &word, const int start=0) const
 Search C-style word "word" from symbol at index "start" and return first occur position. More...
 
+bool startsWith (const PIString &str) const
 Return if string starts with "str".
 
+bool endsWith (const PIString &str) const
 Return if string ends with "str".
 
+int length () const
 Return symbols length of string.
 
+bool isEmpty () const
 Return true if string is empty, i.e. length = 0.
 
+bool toBool () const
 Return true if string equal "true", "yes", "on" or positive not null numeric value.
 
+char toChar () const
 Return char numeric value of string.
 
short toShort (int base=-1, bool *ok=0) const
 Return short numeric value of string in base "base". More...
 
ushort toUShort (int base=-1, bool *ok=0) const
 Return ushort numeric value of string in base "base". More...
 
int toInt (int base=-1, bool *ok=0) const
 Return int numeric value of string in base "base". More...
 
uint toUInt (int base=-1, bool *ok=0) const
 Return uint numeric value of string in base "base". More...
 
long toLong (int base=-1, bool *ok=0) const
 Return long numeric value of string in base "base". More...
 
ulong toULong (int base=-1, bool *ok=0) const
 Return ulong numeric value of string in base "base". More...
 
llong toLLong (int base=-1, bool *ok=0) const
 Return llong numeric value of string in base "base". More...
 
ullong toULLong (int base=-1, bool *ok=0) const
 Return ullong numeric value of string in base "base". More...
 
float toFloat () const
 Return float numeric value of string. More...
 
double toDouble () const
 Return double numeric value of string. More...
 
ldouble toLDouble () const
 Return ldouble numeric value of string. More...
 
PIStringsetNumber (const short value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const ushort value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const int value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const uint value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const long value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const ulong value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const llong &value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const ullong &value, int base=10, bool *ok=0)
 Set string content to numeric representation of "value" in base "base". More...
 
PIStringsetNumber (const float value)
 Set string content to numeric representation of "value". More...
 
PIStringsetNumber (const double &value)
 Set string content to numeric representation of "value". More...
 
PIStringsetNumber (const ldouble &value)
 Set string content to numeric representation of "value". More...
 
PIStringsetReadableSize (llong bytes)
 Set string content to human readable size in B/kB/MB/GB/TB. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Static Public Member Functions

static PIString fromNumber (const short value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const ushort value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const int value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const uint value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const long value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const ulong value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const llong &value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const ullong &value, int base=10, bool *ok=0)
 Return string contains numeric representation of "value" in base "base". More...
 
static PIString fromNumber (const float value)
 Return string contains numeric representation of "value". More...
 
static PIString fromNumber (const double &value)
 Return string contains numeric representation of "value". More...
 
static PIString fromNumber (const ldouble &value)
 Return string contains numeric representation of "value". More...
 
+static PIString fromBool (const bool value)
 Return "true" or "false".
 
static PIString readableSize (llong bytes)
 Return string contains human readable size in B/kB/MB/GB/TB. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
+std::ostream & operator<< (std::ostream &s, const PIString &v)
 Output operator to std::ostream (cout)
 
+std::istream & operator>> (std::istream &s, PIString &v)
 Input operator from std::istream (cin)
 
+PIString operator+ (const PIString &str, const PIString &f)
 Return concatenated string.
 
+PIString operator+ (const PIString &f, const char *str)
 Return concatenated string.
 
+PIString operator+ (const PIString &f, const string &str)
 Return concatenated string.
 
+PIString operator+ (const char *str, const PIString &f)
 Return concatenated string.
 
+PIString operator+ (const string &str, const PIString &f)
 Return concatenated string.
 
+

Detailed Description

+

String class.

+

PIP use this class for use string information.

+

+Synopsis

+

This class based on PIVector to store information. String is a sequence of PIChar and can contain multibyte symbols. Therefore real memory size of string is symbols count * 4. String can be constucted from many types of data and can be converted to many types. There are man operators and handly functions to use string as you wish.

+

+To/from data convertions

+

Most common constructor is PIString(const char * str), where "str" is null-terminated string, e.g. "string". This is 7 chars with last char = 0. Also you can constructs PIString from single PIChar, PIByteArray, other PIString or sequency of the same characters with custom length.
+
+This class has implicit conversions to const char * and std::string. Also there are functions to make same convertions:

+

+Numeric operations

+

You can get symbolic representation of any numeric value with function setNumber(any integer value, int base = 10, bool * ok = 0). Default arguments are set for decimal base system, but you can choose any system from 2 to 40. There are the same static functions fromNumber(), that returns PIString.
+Also there is function setReadableSize() which is set human-readable size in bytes, Kb, Mb, Gb or Pb. Static analog is readableSize().

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
PIString::PIString (const char * str)
+
+inline
+
+ +

Contructs string from c-string "str".

+

"str" should be null-terminated
+Example:

PIString s("string");
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString::PIString (const wchar_t * str)
+
+inline
+
+ +

Contructs string from wchar_t c-string "str".

+

"str" should be null-terminated
+Example:

PIString s(L"string");
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString::PIString (const char * str,
const int len 
)
+
+inline
+
+ +

Contructs string from "len" characters of buffer "str".

+

Example:

PIString s("string", 3); // s = "str"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString::PIString (const int len,
const char c 
)
+
+inline
+
+ +

Contructs string as sequence of characters "c" of buffer with length "len".

+

Example:

PIString s(5, 'p'); // s = "ppppp"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString::PIString (const int len,
const PICharc 
)
+
+inline
+
+ +

Contructs string as sequence of symbols "c" of buffer with length "len".

+

Example:

PIString s(5, "â„–"); // s = "â„–â„–â„–â„–â„–"
+
+
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
PIString::operator const char * ()
+
+inline
+
+ +

Return c-string representation of string.

+

Converts content of string to c-string and return pointer to first char. This buffer is valid until new convertion or execution data() or toByteArray().
+Example:

PIString s("pip");
+
cout << (char*)s << endl; // pip
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const PIStringstr)
+
+inline
+
+ +

Append string "str" at the end of string.

+

Example:

PIString s("this"), s1(" is"), s2(" string");
+
s << s1 << s2; // s = "this is string"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const PICharc)
+
+inline
+
+ +

Append symbol "c" at the end of string.

+

Example:

PIString s("stri");
+
s << PIChar('n') << PIChar('g'); // s = "string"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const char * str)
+
+inline
+
+ +

Append c-string "str" at the end of string.

+

Example:

PIString s("this");
+
s << " is" << " string"; // s = "this is string"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const wchar_t * str)
+
+inline
+
+ +

Append wchar_t c-string "str" at the end of string.

+

Example:

+
s << L"â„– -" << " number"; // s = "â„– - number"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const int & num)
+
+inline
+
+ +

Append string representation of "num" at the end of string.

+

Example:

PIString s("ten - ");
+
s << 10; // s = "ten - 10"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const short & num)
+
+inline
+
+ +

Append string representation of "num" at the end of string.

+

Example:

PIString s("ten - ");
+
s << 10; // s = "ten - 10"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const long & num)
+
+inline
+
+ +

Append string representation of "num" at the end of string.

+

Example:

PIString s("ten - ");
+
s << 10; // s = "ten - 10"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const float & num)
+
+inline
+
+ +

Append string representation of "num" at the end of string.

+

Example:

PIString s("ten - ");
+
s << 10; // s = "ten - 10"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::operator<< (const double & num)
+
+inline
+
+ +

Append string representation of "num" at the end of string.

+

Example:

PIString s("ten - ");
+
s << 10; // s = "ten - 10"
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
PIString PIString::mid (const int start,
const int len = -1 
) const
+
+ +

Return part of string from symbol at index "start" and maximum length "len".

+

All variants demonstrated in example:

PIString s("0123456789");
+
piCout << s.mid(-2, -1); // s = "0123456789"
+
piCout << s.mid(-2, 4); // s = "01"
+
piCout << s.mid(3, -1); // s = "3456789"
+
piCout << s.mid(3, 4); // s = "3456"
+
See also
left(), right()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIString::left (const int len) const
+
+inline
+
+ +

Return part of string from left and maximum length "len".

+

Example:

PIString s("0123456789");
+
piCout << s.left(-1); // s = ""
+
piCout << s.left(1); // s = "0"
+
piCout << s.left(5); // s = "01234"
+
piCout << s.left(15); // s = "0123456789"
+
See also
mid(), right()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIString::right (const int len) const
+
+inline
+
+ +

Return part of string from right and maximum length "len".

+

Example:

PIString s("0123456789");
+
piCout << s.right(-1); // s = ""
+
piCout << s.right(1); // s = "9"
+
piCout << s.right(5); // s = "56789"
+
piCout << s.right(15); // s = "0123456789"
+
See also
mid(), left()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
PIString & PIString::cutMid (const int start,
const int len 
)
+
+ +

Remove part of string from symbol as index "start" and maximum length "len" and return this string.

+

All variants demonstrated in example:

PIString s("0123456789");
+
s.cutMid(1, 3);
+
piCout << s; // s = "0456789"
+
s.cutMid(-1, 3);
+
piCout << s; // s = "56789"
+
s.cutMid(3, -1);
+
piCout << s; // s = "567"
+
See also
cutLeft(), cutRight()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::cutLeft (const int len)
+
+inline
+
+ +

Remove part of string from left and maximum length "len" and return this string.

+

Example:

PIString s("0123456789");
+
s.cutLeft(1);
+
piCout << s; // s = "123456789"
+
s.cutLeft(3);
+
piCout << s; // s = "456789"
+
s.cutLeft(30);
+
piCout << s; // s = ""
+
See also
cutMid(), cutRight()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::cutRight (const int len)
+
+inline
+
+ +

Remove part of string from right and maximum length "len" and return this string.

+

Example:

PIString s("0123456789");
+
s.cutRight(1);
+
piCout << s; // s = "012345678"
+
s.cutRight(3);
+
piCout << s; // s = "012345"
+
s.cutRight(30);
+
piCout << s; // s = ""
+
See also
cutMid(), cutLeft()
+ +
+
+ +
+
+ + + + + + + +
PIString & PIString::trim ()
+
+ +

Remove spaces at the start and at the end of string and return this string.

+

Example:

PIString s(" string ");
+
s.trim();
+
piCout << s; // s = "string"
+
See also
trimmed()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::trimmed () const
+
+ +

Return copy of this string without spaces at the start and at the end.

+

Example:

PIString s(" string ");
+
piCout << s.trimmed(); // s = "string"
+
piCout << s; // s = " string "
+
See also
trim()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString & PIString::replace (const int from,
const int count,
const PIStringwith 
)
+
+ +

Replace part of string from index "from" and maximum length "len" with string "with" and return this string.

+

Example:

PIString s("0123456789");
+
s.replace(2, 3, "_cut_");
+
piCout << s; // s = "01_cut_56789"
+
s.replace(0, 1, "one_");
+
piCout << s; // s = "one_1_cut_56789"
+
See also
replaced(), replaceAll()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString PIString::replaced (const int from,
const int count,
const PIStringwith 
) const
+
+inline
+
+ +

Replace part copy of this string from index "from" and maximum length "len" with string "with" and return copied string.

+

Example:

PIString s("0123456789");
+
piCout << s.replaced(2, 3, "_cut_"); // s = "01_cut_56789"
+
piCout << s.replaced(0, 1, "one_"); // s = "one_123456789"
+
See also
replace(), replaceAll()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString & PIString::replace (const PIStringwhat,
const PIStringwith,
bool * ok = 0 
)
+
+ +

Replace first founded substring "what" with string "with" and return this string.

+

If "ok" is not null, it set to "true" if something was replaced
+Example:

PIString s("pip string");
+
bool ok;
+
s.replace("string", "conf", &ok);
+
piCout << s << ok; // s = "pip conf", true
+
s.replace("PIP", "PlInPr", &ok);
+
piCout << s << ok; // s = "pip conf", false
+
See also
replaced(), replaceAll()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString PIString::replaced (const PIStringwhat,
const PIStringwith,
bool * ok = 0 
) const
+
+inline
+
+ +

Replace first founded substring "what" with string "with" and return copied string.

+

If "ok" is not null, it set to "true" if something was replaced
+Example:

PIString s("pip string");
+
bool ok;
+
piCout << s.replace("string", "conf", &ok); // s = "pip conf", true
+
piCout << s.replace("PIP", "PlInPr", &ok); // s = "pip string", false
+
See also
replaced(), replaceAll()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
PIString & PIString::replaceAll (const PIStringwhat,
const PIStringwith 
)
+
+ +

Replace all founded substrings "what" with strings "with" and return this string.

+

Example:

PIString s("substrings");
+
s.replaceAll("s", "_");
+
piCout << s; // s = "_ub_tring_"
+
See also
replace(), replaced()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::repeat (int times)
+
+inline
+
+ +

Repeat content of string "times" times and return this string.

+

Example:

PIString s(" :-) ");
+
s.repeat(3);
+
piCout << s; // :-) :-) :-)
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIString::repeated (int times) const
+
+inline
+
+ +

Returns repeated "times" times string.

+

Example:

PIString s(" :-) ");
+
piCout << s.repeated(3); // :-) :-) :-)
+
piCout << s; // :-)
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString& PIString::insert (const int index,
const PICharc 
)
+
+inline
+
+ +

Insert symbol "c" after index "index" and return this string.

+

Example:

PIString s("pp");
+
s.insert(1, "i");
+
piCout << s; // s = "pip"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString& PIString::insert (const int index,
const char & c 
)
+
+inline
+
+ +

Insert symbol "c" after index "index" and return this string.

+

Example:

PIString s("pp");
+
s.insert(1, 'i');
+
piCout << s; // s = "pip"
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
PIString & PIString::insert (const int index,
const PIStringstr 
)
+
+ +

Insert string "str" after index "index" and return this string.

+

Example:

PIString s("stg");
+
s.insert(2, "rin");
+
piCout << s; // s = "string"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString& PIString::insert (const int index,
const char * c 
)
+
+inline
+
+ +

Insert string "str" after index "index" and return this string.

+

Example:

PIString s("stg");
+
s.insert(2, "rin");
+
piCout << s; // s = "string"
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString& PIString::expandRightTo (const int len,
const PICharc 
)
+
+inline
+
+ +

Enlarge string to length "len" by addition sequence of symbols "c" at the end of string, and return this string.

+

Example:

PIString s("str");
+
s.expandRightTo(2, "_");
+
piCout << s; // s = "str"
+
s.expandRightTo(6, "_");
+
piCout << s; // s = "str___"
+
See also
expandLeftTo()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString& PIString::expandLeftTo (const int len,
const PICharc 
)
+
+inline
+
+ +

Enlarge string to length "len" by addition sequence of symbols "c" at the beginning of string, and return this string.

+

Example:

PIString s("str");
+
s.expandLeftTo(2, "_");
+
piCout << s; // s = "str"
+
s.expandLeftTo(6, "_");
+
piCout << s; // s = "___str"
+
See also
expandRightTo()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PIString& PIString::reverse ()
+
+inline
+
+ +

Reverse string and return this string.

+

Example:

PIString s("0123456789");
+
s.reverse();
+
piCout << s; // s = "9876543210"
+
See also
reversed()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PIString PIString::reversed () const
+
+inline
+
+ +

Reverse copy of this string and return it.

+

Example:

PIString s("0123456789");
+
piCout << s.reversed(); // s = "9876543210"
+
piCout << s; // s = "0123456789"
+
See also
reverse()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIString PIString::takeMid (const int start,
const int len = -1 
)
+
+inline
+
+ +

Take a part of string from symbol at index "start" and maximum length "len" and return it.

+

Example:

See also
takeLeft, takeRight()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIString::takeLeft (const int len)
+
+inline
+
+ +

Take a part from the begin of string with maximum length "len" and return it.

+

Example:

See also
takeMid(), takeRight()
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIString::takeRight (const int len)
+
+inline
+
+ +

Take a part from the end of string with maximum length "len" and return it.

+

Example:

See also
takeMid(), takeLeft()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::takeSymbol ()
+
+ +

Take a symbol from the begin of this string and return it.

+

Example:

PIString s("\t ! word");
+
piCout << s.takeSymbol(); // "!"
+
piCout << s.takeSymbol(); // "w"
+
piCout << s.takeSymbol(); // "o"
+
piCout << s; // "rd"
+
See also
takeWord(), takeCWord(), takeLine(), takeNumber(), takeRange()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::takeWord ()
+
+ +

Take a word from the begin of this string and return it.

+

Example:

PIString s("some words\nnew line ");
+
piCout << s.takeWord(); // "some"
+
piCout << s.takeWord(); // "words"
+
piCout << s.takeWord(); // "new"
+
piCout << s; // " line "
+
See also
takeSymbol(), takeCWord(), takeLine(), takeNumber(), takeRange()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::takeCWord ()
+
+ +

Take a word with letters, numbers and '_' symbols from the begin of this string and return it.

+

Example:

See also
takeSymbol(), takeWord(), takeLine(), takeNumber(), takeRange()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::takeLine ()
+
+ +

Take a line from the begin of this string and return it.

+

Example:

PIString s("some words\nnew line \n\nend");
+
piCout << s.takeLine(); // "some words"
+
piCout << s.takeLine(); // "new line "
+
piCout << s.takeLine(); // ""
+
piCout << s; // "end"
+
See also
takeSymbol(), takeWord(), takeCWord(), takeNumber(), takeRange()
+ +
+
+ +
+
+ + + + + + + +
PIString PIString::takeNumber ()
+
+ +

Take a number with C-format from the begin of this string and return it.

+

Example:

PIString s(" 0xFF -99 1.2E+5f 1000L");
+
piCout << s.takeNumber(); // "0xFF"
+
piCout << s.takeNumber(); // "-99"
+
piCout << s.takeNumber(); // "1.2E+5f"
+
piCout << s.takeNumber(); // "1000L"
+
piCout << s; // ""
+
See also
takeSymbol(), takeWord(), takeCWord(), takeLine(), takeRange()
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString PIString::takeRange (const PICharstart,
const PICharend,
const PICharshield = '\\' 
)
+
+ +

Take a range between "start" and "end" symbols from the begin of this string and return it.

+

"Shield" symbol prevent analysis of the next symbol. Example:

PIString s(" {figures{inside}}");
+
piCout << s.takeRange('{', '}'); // "figures{inside}"
+
piCout << s; // ""
+
s = "\"text\\\"shielded\" next";
+
piCout << s.takeRange('"', '"'); // "text\"shielded"
+
piCout << s; // " next"
+
See also
takeSymbol(), takeWord(), takeLine(), takeNumber()
+ +
+
+ +
+
+ + + + + + + +
int PIString::lengthAscii () const
+
+ +

Return real bytes count of this string.

+

It`s equivalent length of char sequence returned by function data()
+Example:

piCout << PIString("0123456789").lengthAscii(); // 10
+
piCout << PIString("â„–1").lengthAscii(); // 3
+
See also
data()
+ +
+
+ +
+
+ + + + + + + +
const char * PIString::data () const
+
+ +

Return char * representation of this string.

+

This function fill buffer by sequence of chars. Minimum length of this buffer is count of symbols. Returned char * is valid until next execution of this function.
+Example:

piCout << PIString("0123456789").data(); // 0123456789
+
piCout << PIString("â„–1").data(); // â„–1
+
See also
lengthAscii()
+ +
+
+ +
+
+ + + + + + + + +
PIStringList PIString::split (const PIStringdelim) const
+
+ +

Split string with delimiter "delim" to PIStringList and return it.

+

Example:

PIString s("1 2 3");
+
piCout << s.split(" "); // {"1", "2", "3"}
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::find (const char str,
const int start = 0 
) const
+
+ +

Search substring "str" from symbol at index "start" and return first occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 3
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::find (const PIString str,
const int start = 0 
) const
+
+ +

Search substring "str" from symbol at index "start" and return first occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 3
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int PIString::find (const char * str,
const int start = 0 
) const
+
+inline
+
+ +

Search substring "str" from symbol at index "start" and return first occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 3
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int PIString::find (const string str,
const int start = 0 
) const
+
+inline
+
+ +

Search substring "str" from symbol at index "start" and return first occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 3
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::findLast (const char str,
const int start = 0 
) const
+
+ +

Search substring "str" from symbol at index "start" and return last occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 9
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::findLast (const PIString str,
const int start = 0 
) const
+
+ +

Search substring "str" from symbol at index "start" and return last occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 9
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int PIString::findLast (const char * str,
const int start = 0 
) const
+
+inline
+
+ +

Search substring "str" from symbol at index "start" and return last occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 9
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int PIString::findLast (const string str,
const int start = 0 
) const
+
+inline
+
+ +

Search substring "str" from symbol at index "start" and return last occur position.

+

Example:

PIString s("012345012345");
+
piCout << s.find("-"); // -1
+
piCout << s.find("3"); // 9
+
piCout << s.find("3", 4); // 9
+
piCout << s.find("3", 10); // -1
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::findWord (const PIStringword,
const int start = 0 
) const
+
+ +

Search word "word" from symbol at index "start" and return first occur position.

+

Example:

PIString s("this is <PIP>");
+
piCout << s.find("this"); // 0
+
piCout << s.find("is"); // 5
+
piCout << s.find("PIP", 4); // -1
+
piCout << s.find("<PIP>", 10); // 8
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
int PIString::findCWord (const PIStringword,
const int start = 0 
) const
+
+ +

Search C-style word "word" from symbol at index "start" and return first occur position.

+

Example:

PIString s("this::is <PIP>");
+
piCout << s.find("this"); // 0
+
piCout << s.find("is"); // 6
+
piCout << s.find("PIP", 4); // 10
+
piCout << s.find("<PIP>", 10); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
short PIString::toShort (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return short numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
ushort PIString::toUShort (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return ushort numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
int PIString::toInt (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return int numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
uint PIString::toUInt (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return uint numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
long PIString::toLong (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return long numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
ulong PIString::toULong (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return ulong numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
llong PIString::toLLong (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return llong numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
ullong PIString::toULLong (int base = -1,
bool * ok = 0 
) const
+
+inline
+
+ +

Return ullong numeric value of string in base "base".

+

Example:

piCout << PIString("123").toInt(); // 123
+
piCout << PIString("123").toInt(16); // 291
+
piCout << PIString("0x123").toInt(); // 291
+
piCout << PIString("1001").toInt(2); // 9
+
+
+
+ +
+
+ + + + + +
+ + + + + + + +
float PIString::toFloat () const
+
+inline
+
+ +

Return float numeric value of string.

+

Example:

piCout << PIString("123").toFloat(); // 123
+
piCout << PIString("1.2E+2").toFloat(); // 120
+
piCout << PIString("0.01").toFloat(); // 0.01
+
+
+
+ +
+
+ + + + + +
+ + + + + + + +
double PIString::toDouble () const
+
+inline
+
+ +

Return double numeric value of string.

+

Example:

piCout << PIString("123").toFloat(); // 123
+
piCout << PIString("1.2E+2").toFloat(); // 120
+
piCout << PIString("0.01").toFloat(); // 0.01
+
+
+
+ +
+
+ + + + + +
+ + + + + + + +
ldouble PIString::toLDouble () const
+
+inline
+
+ +

Return ldouble numeric value of string.

+

Example:

piCout << PIString("123").toFloat(); // 123
+
piCout << PIString("1.2E+2").toFloat(); // 120
+
piCout << PIString("0.01").toFloat(); // 0.01
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const short value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const ushort value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const int value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const uint value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const long value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const ulong value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const llong & value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
PIString& PIString::setNumber (const ullong & value,
int base = 10,
bool * ok = 0 
)
+
+inline
+
+ +

Set string content to numeric representation of "value" in base "base".

+

Example:

+
s.setNumber(123);
+
piCout << s; // 123
+
s.setNumber(123, 16);
+
piCout << s; // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::setNumber (const float value)
+
+inline
+
+ +

Set string content to numeric representation of "value".

+

Example:

+
s.setNumber(12.3);
+
piCout << s; // 12.3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::setNumber (const double & value)
+
+inline
+
+ +

Set string content to numeric representation of "value".

+

Example:

+
s.setNumber(12.3);
+
piCout << s; // 12.3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIString& PIString::setNumber (const ldouble & value)
+
+inline
+
+ +

Set string content to numeric representation of "value".

+

Example:

+
s.setNumber(12.3);
+
piCout << s; // 12.3
+
+
+
+ +
+
+ + + + + + + + +
PIString & PIString::setReadableSize (llong bytes)
+
+ +

Set string content to human readable size in B/kB/MB/GB/TB.

+

Example:

+ +
piCout << s; // 512 B
+ +
piCout << s; // 5.0 kB
+
s.setReadableSize(512000);
+
piCout << s; // 500.0 kB
+
s.setReadableSize(5120000);
+
piCout << s; // 4.8 MB
+
s.setReadableSize(512000000);
+
piCout << s; // 488.2 MB
+
s.setReadableSize(51200000000);
+
piCout << s; // 47.6 GB
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const short value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const ushort value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const int value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const uint value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const long value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const ulong value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const llong & value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
static PIString PIString::fromNumber (const ullong & value,
int base = 10,
bool * ok = 0 
)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value" in base "base".

+

Example:

+
piCout << PIString::fromNumber(123, 16); // 7B
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
static PIString PIString::fromNumber (const float value)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value".

+

Example:

piCout << PIString::fromNumber(12.3); // 12.3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
static PIString PIString::fromNumber (const double & value)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value".

+

Example:

piCout << PIString::fromNumber(12.3); // 12.3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
static PIString PIString::fromNumber (const ldouble & value)
+
+inlinestatic
+
+ +

Return string contains numeric representation of "value".

+

Example:

piCout << PIString::fromNumber(12.3); // 12.3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
static PIString PIString::readableSize (llong bytes)
+
+inlinestatic
+
+ +

Return string contains human readable size in B/kB/MB/GB/TB.

+

Example:

piCout << PIString::readableSize(512); // 512 B
+
piCout << PIString::readableSize(5120); // 5.0 kB
+
piCout << PIString::readableSize(512000); // 500.0 kB
+
piCout << PIString::readableSize(5120000); // 4.8 MB
+
piCout << PIString::readableSize(512000000); // 488.2 MB
+
piCout << PIString::readableSize(51200000000); // 47.6 GB
+
+
+
+
+
+ + + + diff --git a/doc/html/class_p_i_string.js b/doc/html/class_p_i_string.js new file mode 100644 index 00000000..fc49a266 --- /dev/null +++ b/doc/html/class_p_i_string.js @@ -0,0 +1,138 @@ +var class_p_i_string = +[ + [ "PIString", "class_p_i_string.html#a5671ba063015ac95a0fc582776424629", null ], + [ "PIString", "class_p_i_string.html#a0a7dbce851e0654c1f46239c60b215d7", null ], + [ "PIString", "class_p_i_string.html#a83698956091624f377f9bb7f9f3a6afc", null ], + [ "PIString", "class_p_i_string.html#a1c7edbae1d5dd3d123c3f19679c8a105", null ], + [ "PIString", "class_p_i_string.html#adba42068e854520b6fa4e3665055ab90", null ], + [ "PIString", "class_p_i_string.html#a09e89cd86ab4b41a6d4f68a4c04ade71", null ], + [ "PIString", "class_p_i_string.html#add45a4c9d96be4a7ff91e69b37f7e7f7", null ], + [ "PIString", "class_p_i_string.html#a6c15cfb2ef6a0898ac99a602a4910c92", null ], + [ "PIString", "class_p_i_string.html#a571606d1afac0afb1850f314e5a7f582", null ], + [ "PIString", "class_p_i_string.html#ac977eece58d4b01775cb5ec1aa9c0172", null ], + [ "operator const char *", "class_p_i_string.html#a3eec9656b507d8d71ab2f58c551a03ff", null ], + [ "operator const string", "class_p_i_string.html#ab90b8d26f08ff17f5f2302bbd9f3b66a", null ], + [ "operator[]", "class_p_i_string.html#aa367374496df45efba10fd44e52a6777", null ], + [ "operator[]", "class_p_i_string.html#a192df04225c734474a74ed92a3be92e4", null ], + [ "operator==", "class_p_i_string.html#a4bccf4bb40ab454e0acbb72c370f74df", null ], + [ "operator==", "class_p_i_string.html#a15a2d2e8205de172d5a1ba9c4e1300b5", null ], + [ "operator==", "class_p_i_string.html#ae56247a537ddd4742a5f8830446396fb", null ], + [ "operator==", "class_p_i_string.html#abcb1247b51cb9fb935fe4b7583004d2e", null ], + [ "operator!=", "class_p_i_string.html#ae1fde0664048d052d23e40c111ebe2d3", null ], + [ "operator!=", "class_p_i_string.html#aec766e4f39ef4c581026e932a2e0c60e", null ], + [ "operator!=", "class_p_i_string.html#a5410e68d9c7d22527767ea28891c2c69", null ], + [ "operator!=", "class_p_i_string.html#a05f9cb6d8d4540a62daa0bc682c914b1", null ], + [ "operator<", "class_p_i_string.html#a4b29c79b0cfd8eeea23977cd72f24768", null ], + [ "operator<", "class_p_i_string.html#a4b40e4567d6c5b9afabfda25efeb975a", null ], + [ "operator<", "class_p_i_string.html#a793f8bb4b64903f9016bfac27b4e21aa", null ], + [ "operator<", "class_p_i_string.html#a2ed901b6668a596013959d9433461b3a", null ], + [ "operator>", "class_p_i_string.html#a559e23e281ff040dc447a47aead1556f", null ], + [ "operator>", "class_p_i_string.html#a17725b847ca400d0817f4a89887658d6", null ], + [ "operator>", "class_p_i_string.html#a19f4fa9c8c691030543627ba3b04c7fb", null ], + [ "operator>", "class_p_i_string.html#a8f752b9a951be56a6e4bbf15d9683605", null ], + [ "operator<=", "class_p_i_string.html#a0bb50e3024c857df57446970f06215f2", null ], + [ "operator<=", "class_p_i_string.html#a1caa9a22c08bf1403d7f02ee25391a6a", null ], + [ "operator<=", "class_p_i_string.html#ae3636333daa1c30be2e59046234549db", null ], + [ "operator<=", "class_p_i_string.html#a7b8acb21a78caa79efaf202e7e701587", null ], + [ "operator>=", "class_p_i_string.html#a1da2d74fa84f2da3d1632e20d834f0fa", null ], + [ "operator>=", "class_p_i_string.html#ae4c9edd7b999ec3b755f584cbd730d93", null ], + [ "operator>=", "class_p_i_string.html#a4b9695c703cb3055d9b395a84bbc091c", null ], + [ "operator>=", "class_p_i_string.html#a0368a200e908bee57dabdfb5f8cf8563", null ], + [ "operator<<", "class_p_i_string.html#aa9503e3cf1a769ff9969811e794848c9", null ], + [ "operator<<", "class_p_i_string.html#ae1a767e64e5cd7e8b0bf8f30261e7b51", null ], + [ "operator<<", "class_p_i_string.html#ae913da2112cec3234ab25d5998058061", null ], + [ "operator<<", "class_p_i_string.html#a637ba3d798aef6d9b0ec1c94bd009eba", null ], + [ "operator<<", "class_p_i_string.html#a37ac4141ad06bace00f45f4199577e43", null ], + [ "operator<<", "class_p_i_string.html#a32f84a7c388aa230b00389625b957f3e", null ], + [ "operator<<", "class_p_i_string.html#a6fa1fe095dcdf2401fd6aeeeff95bcab", null ], + [ "operator<<", "class_p_i_string.html#a2716ff6ff64666a4234b95858705c9a2", null ], + [ "operator<<", "class_p_i_string.html#accecec313ba77318942690e11f745ed7", null ], + [ "operator<<", "class_p_i_string.html#af585e41702ae09d013b19477c7e1f4ef", null ], + [ "prepend", "class_p_i_string.html#aa21143de8258bbc8698e46a9216c5a26", null ], + [ "append", "class_p_i_string.html#afbccf232307f332e25c7ce577ce58146", null ], + [ "mid", "class_p_i_string.html#afdeb3714be4ad6a1bf8f2478f657f510", null ], + [ "left", "class_p_i_string.html#aa6614f666f502b2d759bb37c046f6181", null ], + [ "right", "class_p_i_string.html#a84b4d361d9c7bf1d9c467e4a90d0d06b", null ], + [ "cutMid", "class_p_i_string.html#a1329bf4f870ef9417f30baf23a0589f9", null ], + [ "cutLeft", "class_p_i_string.html#a5e6ebd047f481f11bfc7aa5a599f84d9", null ], + [ "cutRight", "class_p_i_string.html#a3f1dea63c0baead80b3700129c2837e3", null ], + [ "trim", "class_p_i_string.html#a83a888181b131ccff5854c080ef706ba", null ], + [ "trimmed", "class_p_i_string.html#ab1050c0603206d40ec0a1a315cc87ca6", null ], + [ "replace", "class_p_i_string.html#a5409e1aecee919acb3995fe2d98396d2", null ], + [ "replaced", "class_p_i_string.html#abdde92d6e5efa3a0f6a53e7a6cb27b64", null ], + [ "replace", "class_p_i_string.html#a1fb70092a8723959b7f0718676dea6ed", null ], + [ "replaced", "class_p_i_string.html#a4e91d076a5c2488986f5e9860e65d8c7", null ], + [ "replaceAll", "class_p_i_string.html#a02fd96dd8a55a990602ecdbf21a120e0", null ], + [ "repeat", "class_p_i_string.html#a95bc5ca2e401747051eb019101036838", null ], + [ "repeated", "class_p_i_string.html#a8cdd3ad7481f765352ff371705e29ff6", null ], + [ "insert", "class_p_i_string.html#a73eb6e5b422f635f67e7db616639dd26", null ], + [ "insert", "class_p_i_string.html#aa48ee0a414ad57dd9c8db645808f1dd1", null ], + [ "insert", "class_p_i_string.html#aa71f46f0fecf56aef8501c88d41ecd35", null ], + [ "insert", "class_p_i_string.html#a8c20b60718cd3ba095012f29ef2af0c7", null ], + [ "expandRightTo", "class_p_i_string.html#ad17b4d47401a31557a06490efd9e40e5", null ], + [ "expandLeftTo", "class_p_i_string.html#aeecafb43528159d4d65dc9a5e2ca26e4", null ], + [ "reverse", "class_p_i_string.html#a57ef668d89de132b1fd27342365c7ac1", null ], + [ "reversed", "class_p_i_string.html#ab4e184e66ced5c40307797708a7fa747", null ], + [ "takeMid", "class_p_i_string.html#a923862dee9a73d4fe229f9c7106dd2c3", null ], + [ "takeLeft", "class_p_i_string.html#abe1d54c60781701c390712193e775129", null ], + [ "takeRight", "class_p_i_string.html#ab06270cc3639a716d77747f6e0e65a73", null ], + [ "takeSymbol", "class_p_i_string.html#a2717788f206607e15afa2eaa2466f2fb", null ], + [ "takeWord", "class_p_i_string.html#a66dfa56b97db69f1b3046bfed79d8dd9", null ], + [ "takeCWord", "class_p_i_string.html#a15391624f236a1c0bf2b1f6c90a42027", null ], + [ "takeLine", "class_p_i_string.html#a32449c92418db399e96faeb0e67ce6b8", null ], + [ "takeNumber", "class_p_i_string.html#a39c2f4b34d43c3f2dd2c85eb37959cba", null ], + [ "takeRange", "class_p_i_string.html#ada971d7b12743e827811e124c7bb2809", null ], + [ "lengthAscii", "class_p_i_string.html#a512a49d09681e5ecc87fb5c2b51c7bba", null ], + [ "data", "class_p_i_string.html#ac1f4d3aad27aa25a5e92f092d2890188", null ], + [ "stdString", "class_p_i_string.html#a16e633f140ce9fd27fdddd2369261721", null ], + [ "toByteArray", "class_p_i_string.html#a6438ae63b451975a06699c2c6c02221a", null ], + [ "split", "class_p_i_string.html#a2befe83e46b8e3764236445132ec023a", null ], + [ "toUpperCase", "class_p_i_string.html#a54e5e2c6fcf1869228b3fb48a9a8bae1", null ], + [ "toLowerCase", "class_p_i_string.html#a658e07bdbf43996c39f545218122989b", null ], + [ "find", "class_p_i_string.html#a99fbf95d65c51cce60c27d18c4cd5531", null ], + [ "find", "class_p_i_string.html#a1a237a5d7836ba1fcaa37087039e7d04", null ], + [ "find", "class_p_i_string.html#a4590628a19e551470960e7b350f0ff5f", null ], + [ "find", "class_p_i_string.html#a60a4b7cd4bce3f6c8208a713164f1479", null ], + [ "findLast", "class_p_i_string.html#ae19031ecb5e129e2cbc830694b2fe20f", null ], + [ "findLast", "class_p_i_string.html#a43c55edb22d030aee0c04dae4c03fa2a", null ], + [ "findLast", "class_p_i_string.html#a5b846d7fb50ccd548f640681aca4fbf4", null ], + [ "findLast", "class_p_i_string.html#a103ad13acbd263ced666ec07b4e6228d", null ], + [ "findWord", "class_p_i_string.html#a434cb662bfa4af1ccdfd0ed5188d6020", null ], + [ "findCWord", "class_p_i_string.html#aebd028e4a34e907fb891944b1de4f555", null ], + [ "startsWith", "class_p_i_string.html#a273612208fcf37a4075e517eba410920", null ], + [ "endsWith", "class_p_i_string.html#a9e58076006c085e76b7a139f2b830a7a", null ], + [ "length", "class_p_i_string.html#a61133c9da8ce47fced3d5f5e26cc0f6d", null ], + [ "isEmpty", "class_p_i_string.html#abc0709f3722cd63230b81f613c0a999e", null ], + [ "toBool", "class_p_i_string.html#ab347fe3a167a3a101e5028cc76826353", null ], + [ "toChar", "class_p_i_string.html#a33520b70a2236d83f50d5b028497db65", null ], + [ "toShort", "class_p_i_string.html#a03aa66b2e10d725f8c5310bdec3a9b76", null ], + [ "toUShort", "class_p_i_string.html#a6ab34efa2cf190bfa8309d140308e8eb", null ], + [ "toInt", "class_p_i_string.html#aebe1038b3abcbf976dbffc3f3b0de826", null ], + [ "toUInt", "class_p_i_string.html#aa243f8732d1ce3187329642025c49623", null ], + [ "toLong", "class_p_i_string.html#a32e0cd5008be019860da2be3c136f9ce", null ], + [ "toULong", "class_p_i_string.html#a75630ad632c3887e0ec7daf850a4281a", null ], + [ "toLLong", "class_p_i_string.html#a18023a92bd2ba5a90dc014cbfd77bc9c", null ], + [ "toULLong", "class_p_i_string.html#a15475a9e2b65a70208534431ee28f75a", null ], + [ "toFloat", "class_p_i_string.html#a4525841adcb8929e486e61d499430559", null ], + [ "toDouble", "class_p_i_string.html#a8a9720daaf84455e7a839a5b8bcf6fa7", null ], + [ "toLDouble", "class_p_i_string.html#af2739348013dfcd75ce88acafafcce73", null ], + [ "setNumber", "class_p_i_string.html#a03446a900bdce8a41f5be7eee2c732d5", null ], + [ "setNumber", "class_p_i_string.html#a70bda23c245790c6a3b50f31a3200aa9", null ], + [ "setNumber", "class_p_i_string.html#a102c2fcdc4bb92141c01f2108e142991", null ], + [ "setNumber", "class_p_i_string.html#aaac03b6d596d958a8e256ccb0eb40f22", null ], + [ "setNumber", "class_p_i_string.html#ad880c23247e4d79d44d215c883fcd766", null ], + [ "setNumber", "class_p_i_string.html#ada1c713c5622284efcc3ac1d89977161", null ], + [ "setNumber", "class_p_i_string.html#a2f54ca3f0ef9dde8df3fb488cbe33f7b", null ], + [ "setNumber", "class_p_i_string.html#aff868564bdb9e93d028bbe4b034ef74e", null ], + [ "setNumber", "class_p_i_string.html#a8ee00154fbc549bd4d0035270001580a", null ], + [ "setNumber", "class_p_i_string.html#a6fb55d9c34c56a3528303eb9f7419671", null ], + [ "setNumber", "class_p_i_string.html#a26f131487f10ee8a13769ae833f81fcb", null ], + [ "setReadableSize", "class_p_i_string.html#a08dad783a704578ab82b816f2cd02829", null ], + [ "operator<<", "class_p_i_string.html#af86ed54c2bd0e7590db4ca3b6845f50f", null ], + [ "operator>>", "class_p_i_string.html#a92a7c6060c9a5cea05fc97d6faea53a2", null ], + [ "operator+", "class_p_i_string.html#ab542a906081915a23c5e71e4d272be61", null ], + [ "operator+", "class_p_i_string.html#a3c9fd9112bf9bf8add42aa4a1232f02c", null ], + [ "operator+", "class_p_i_string.html#a7feead55bd8c6f9c91da7575870bbb4a", null ], + [ "operator+", "class_p_i_string.html#ac6c5f17dfacd8deb8db814c69390667e", null ], + [ "operator+", "class_p_i_string.html#acb64f0a2a7b71219db76b5d5f498515c", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_string_list-members.html b/doc/html/class_p_i_string_list-members.html new file mode 100644 index 00000000..bfe0883c --- /dev/null +++ b/doc/html/class_p_i_string_list-members.html @@ -0,0 +1,140 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIStringList Member List
+
+
+ +

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

+ + + + + + + + + + + + + + +
contentSize()PIStringListinline
join(const PIString &delim) const PIStringListinline
operator!=(const PIStringList &o) const PIStringListinline
operator<<(std::ostream &s, const PIStringList &v)PIStringListrelated
operator==(const PIStringList &o) const PIStringListinline
PIStringList()PIStringListinline
PIStringList(const PIString &str)PIStringListinline
PIStringList(const PIString &s0, const PIString &s1)PIStringListinline
PIStringList(const PIString &s0, const PIString &s1, const PIString &s2)PIStringListinline
PIStringList(const PIString &s0, const PIString &s1, const PIString &s2, const PIString &s3)PIStringListinline
removeDuplicates()PIStringList
removeStrings(const PIString &value)PIStringListinline
trim()PIStringListinline
+
+ + + + diff --git a/doc/html/class_p_i_string_list.html b/doc/html/class_p_i_string_list.html new file mode 100644 index 00000000..ee5d91f7 --- /dev/null +++ b/doc/html/class_p_i_string_list.html @@ -0,0 +1,300 @@ + + + + + + +PIP: PIStringList Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIStringList Class Reference
+
+
+ +

Strings array class. + More...

+ +

Inherits PIDeque< T >.

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

+Public Member Functions

PIStringList ()
 Contructs empty strings list.
 
PIStringList (const PIString &str)
 Contructs strings list with one string "str".
 
PIStringList (const PIString &s0, const PIString &s1)
 Contructs empty strings list with strings "s0" and "s1".
 
PIStringList (const PIString &s0, const PIString &s1, const PIString &s2)
 Contructs empty strings list with strings "s0", "s1" and "s2".
 
PIStringList (const PIString &s0, const PIString &s1, const PIString &s2, const PIString &s3)
 Contructs empty strings list with strings "s0", "s1", "s2" and "s3".
 
PIString join (const PIString &delim) const
 Join all strings in one with delimiter "delim" and return it. More...
 
PIStringListremoveStrings (const PIString &value)
 Remove all strings equal "value" and return this. More...
 
PIStringListremoveDuplicates ()
 Remove duplicated strings and return this. More...
 
PIStringListtrim ()
 Trim all strings. More...
 
+uint contentSize ()
 Return sum of lengths of all strings.
 
+bool operator== (const PIStringList &o) const
 Compare operator.
 
+bool operator!= (const PIStringList &o) const
 Compare operator.
 
+ + + + + +

+Related Functions

(Note that these are not member functions.)

+
+std::ostream & operator<< (std::ostream &s, const PIStringList &v)
 Output operator to std::ostream (cout)
 
+

Detailed Description

+

Strings array class.

+

This class is based on PIDeque<PIString> and expand it functionality.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
PIString PIStringList::join (const PIStringdelim) const
+
+inline
+
+ +

Join all strings in one with delimiter "delim" and return it.

+

Example:

PIStringList sl("1", "2");
+
sl << "3";
+
piCout << sl.join(" < "); // 1 < 2 < 3
+
+
+
+ +
+
+ + + + + +
+ + + + + + + + +
PIStringList& PIStringList::removeStrings (const PIStringvalue)
+
+inline
+
+ +

Remove all strings equal "value" and return this.

+

Example:

PIStringList sl("1", "2");
+
sl << "1" << "2" << "3";
+
piCout << sl; // {"1", "2", "1", "2", "3"}
+
piCout << sl.removeStrings("1"); // {"2", "2", "3"}
+
+
+
+ +
+
+ + + + + + + +
PIStringList & PIStringList::removeDuplicates ()
+
+ +

Remove duplicated strings and return this.

+

Example:

PIStringList sl("1", "2");
+
sl << "1" << "2" << "3";
+
piCout << sl; // {"1", "2", "1", "2", "3"}
+
piCout << sl.removeDuplicates(); // {"1", "2", "3"}
+
+
+
+ +
+
+ + + + + +
+ + + + + + + +
PIStringList& PIStringList::trim ()
+
+inline
+
+ +

Trim all strings.

+

Example:

+
+
+
+
+ + + + diff --git a/doc/html/class_p_i_string_list.js b/doc/html/class_p_i_string_list.js new file mode 100644 index 00000000..9b1fbd00 --- /dev/null +++ b/doc/html/class_p_i_string_list.js @@ -0,0 +1,16 @@ +var class_p_i_string_list = +[ + [ "PIStringList", "class_p_i_string_list.html#a2e303b0d998cc4a3d1801a4ae58a095d", null ], + [ "PIStringList", "class_p_i_string_list.html#a637847edb01e44dbd98fd636e870d8da", null ], + [ "PIStringList", "class_p_i_string_list.html#a619a3fadd772a3ceb4f7433aaaa707d5", null ], + [ "PIStringList", "class_p_i_string_list.html#a204dafd0021fb841cdb52cf2a01a0ef5", null ], + [ "PIStringList", "class_p_i_string_list.html#a79c640961baae9bbf10935245eaf3339", null ], + [ "join", "class_p_i_string_list.html#a05ae2b8fc9909e4c20a1852ee680c381", null ], + [ "removeStrings", "class_p_i_string_list.html#a7b3c809c1c93ddab639d2163da783043", null ], + [ "removeDuplicates", "class_p_i_string_list.html#af7e798057ddb99a7cca519ccf3aaba8d", null ], + [ "trim", "class_p_i_string_list.html#aebcbef8d88b0081f7081a23331f66364", null ], + [ "contentSize", "class_p_i_string_list.html#ab1d6f27922acdb2de9e8b37cd20ccd50", null ], + [ "operator==", "class_p_i_string_list.html#a5933d3895fdf319f7077c7c078a0971e", null ], + [ "operator!=", "class_p_i_string_list.html#a15888f52377f7f88aca65a66a511d3e8", null ], + [ "operator<<", "class_p_i_string_list.html#ab2ace08e93a4de6b184b29bf3d690467", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_system_time-members.html b/doc/html/class_p_i_system_time-members.html new file mode 100644 index 00000000..c0eb4b27 --- /dev/null +++ b/doc/html/class_p_i_system_time-members.html @@ -0,0 +1,161 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PISystemTime Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
abs() const PISystemTime
addMicroseconds(double v)PISystemTimeinline
addMilliseconds(double v)PISystemTimeinline
addNanoseconds(double v)PISystemTimeinline
addSeconds(double v)PISystemTimeinline
current(bool precise_but_not_system=false)PISystemTimestatic
fromMicroseconds(double v)PISystemTimeinlinestatic
fromMilliseconds(double v)PISystemTimeinlinestatic
fromNanoseconds(double v)PISystemTimeinlinestatic
fromSeconds(double v)PISystemTimeinlinestatic
nanosecondsPISystemTime
operator!=(const PISystemTime &t) const PISystemTimeinline
operator*(const double &v) const PISystemTimeinline
operator*=(const double &v)PISystemTimeinline
operator+(const PISystemTime &t) const PISystemTimeinline
operator+=(const PISystemTime &t)PISystemTimeinline
operator-(const PISystemTime &t) const PISystemTimeinline
operator-=(const PISystemTime &t)PISystemTimeinline
operator/(const double &v) const PISystemTimeinline
operator/=(const double &v)PISystemTimeinline
operator<(const PISystemTime &t) const PISystemTimeinline
operator<=(const PISystemTime &t) const PISystemTimeinline
operator==(const PISystemTime &t) const PISystemTimeinline
operator>(const PISystemTime &t) const PISystemTimeinline
operator>=(const PISystemTime &t) const PISystemTimeinline
PISystemTime()PISystemTimeinline
PISystemTime(long s, long ns)PISystemTimeinline
PISystemTime(const PISystemTime &t)PISystemTimeinline
secondsPISystemTime
sleep()PISystemTimeinline
toMicroseconds() const PISystemTimeinline
toMilliseconds() const PISystemTimeinline
toNanoseconds() const PISystemTimeinline
toSeconds() const PISystemTimeinline
+
+ + + + diff --git a/doc/html/class_p_i_system_time.html b/doc/html/class_p_i_system_time.html new file mode 100644 index 00000000..c3f62074 --- /dev/null +++ b/doc/html/class_p_i_system_time.html @@ -0,0 +1,322 @@ + + + + + + +PIP: PISystemTime Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

System time. + More...

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

+Public Member Functions

PISystemTime ()
 Contructs system time with s = ns = 0.
 
PISystemTime (long s, long ns)
 Contructs system time with s = "s" and ns = "ns".
 
PISystemTime (const PISystemTime &t)
 Contructs system time from another.
 
+double toSeconds () const
 Returns stored system time value in seconds.
 
+double toMilliseconds () const
 Returns stored system time value in milliseconds.
 
+double toMicroseconds () const
 Returns stored system time value in microseconds.
 
+double toNanoseconds () const
 Returns stored system time value in nanoseconds.
 
+PISystemTimeaddSeconds (double v)
 Add to stored system time "v" seconds.
 
+PISystemTimeaddMilliseconds (double v)
 Add to stored system time "v" milliseconds.
 
+PISystemTimeaddMicroseconds (double v)
 Add to stored system time "v" microseconds.
 
+PISystemTimeaddNanoseconds (double v)
 Add to stored system time "v" nanoseconds.
 
void sleep ()
 
+PISystemTime abs () const
 Returns copy of this system time with absolutely values of s and ns.
 
+PISystemTime operator+ (const PISystemTime &t) const
 Returns sum of this system time with "t".
 
+PISystemTime operator- (const PISystemTime &t) const
 Returns difference between this system time and "t".
 
+PISystemTime operator* (const double &v) const
 Returns multiplication between this system time and "t".
 
+PISystemTime operator/ (const double &v) const
 Returns division between this system time and "t".
 
+PISystemTimeoperator+= (const PISystemTime &t)
 Add to stored value system time "t".
 
+PISystemTimeoperator-= (const PISystemTime &t)
 Subtract from stored value system time "t".
 
+PISystemTimeoperator*= (const double &v)
 Multiply stored value system time by "v".
 
+PISystemTimeoperator/= (const double &v)
 Divide stored value system time by "v".
 
+bool operator== (const PISystemTime &t) const
 Compare system times.
 
+bool operator!= (const PISystemTime &t) const
 Compare system times.
 
+bool operator> (const PISystemTime &t) const
 Compare system times.
 
+bool operator< (const PISystemTime &t) const
 Compare system times.
 
+bool operator>= (const PISystemTime &t) const
 Compare system times.
 
+bool operator<= (const PISystemTime &t) const
 Compare system times.
 
+ + + + + + + + + + + + + + + + +

+Static Public Member Functions

+static PISystemTime fromSeconds (double v)
 Contructs system time from seconds "v".
 
+static PISystemTime fromMilliseconds (double v)
 Contructs system time from milliseconds "v".
 
+static PISystemTime fromMicroseconds (double v)
 Contructs system time from microseconds "v".
 
+static PISystemTime fromNanoseconds (double v)
 Contructs system time from nanoseconds "v".
 
+static PISystemTime current (bool precise_but_not_system=false)
 Returns current system time.
 
+ + + + + + + +

+Public Attributes

+long seconds
 Seconds of stored system time.
 
+long nanoseconds
 Nanoseconds of stored system time.
 
+

Detailed Description

+

System time.

+

+Synopsis

+

This class provide arithmetic functions for POSIX system time. This time represents as seconds and nanosecons in integer formats. You can take current system time with function PISystemTime::current(), compare times, sum or subtract two times, convert time to/from seconds, milliseconds, microseconds or nanoseconds.

+

+Example

+
int main() {
+
PISystemTime t0; // s = ns = 0
+
t0.addMilliseconds(200); // s = 0, ns = 200000000
+
t0.addMilliseconds(900); // s = 1, ns = 100000000
+
t0 -= PISystemTime::fromSeconds(0.1); // s = 1, ns = 0
+
t0.sleep(); // sleep for 1 second
+ + +
piMSleep(500);
+ +
(t1 - t0).sleep(); // sleep for 500 milliseconds
+
return 0;
+
};
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void PISystemTime::sleep ()
+
+inline
+
+

Sleep for stored value.

Warning
Use this function to sleep for difference of system times or constructs system time. If you call this function on system time returned with PISystemTime::current() thread will be sleep almost forever.
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_system_time.js b/doc/html/class_p_i_system_time.js new file mode 100644 index 00000000..26a294e8 --- /dev/null +++ b/doc/html/class_p_i_system_time.js @@ -0,0 +1,32 @@ +var class_p_i_system_time = +[ + [ "PISystemTime", "class_p_i_system_time.html#a1953b9b01b46f81c9abdda056b586baf", null ], + [ "PISystemTime", "class_p_i_system_time.html#ae21e04bfdf6534b05d0037ed14ee59bc", null ], + [ "PISystemTime", "class_p_i_system_time.html#acf262a7f3ab39b197bae61c942989271", null ], + [ "toSeconds", "class_p_i_system_time.html#a296f501657919b2d66747abb82f606cb", null ], + [ "toMilliseconds", "class_p_i_system_time.html#aff38007b354d3420f25a5d37640e1bf5", null ], + [ "toMicroseconds", "class_p_i_system_time.html#a0cb8a1a609186771ad619620d01c0544", null ], + [ "toNanoseconds", "class_p_i_system_time.html#a7732f3585eab387d80eaa3d68b620bc4", null ], + [ "addSeconds", "class_p_i_system_time.html#a5e98e183f16631bdec2c019356b2679b", null ], + [ "addMilliseconds", "class_p_i_system_time.html#acd6dbda302fd70a2d27e2bd3af7ae29c", null ], + [ "addMicroseconds", "class_p_i_system_time.html#ab7241ee8399e898db3912b6525128ff9", null ], + [ "addNanoseconds", "class_p_i_system_time.html#a8b53a1bf0e40a595b26115369bfb374d", null ], + [ "sleep", "class_p_i_system_time.html#ad290b000832a523754c315404b36ce9b", null ], + [ "abs", "class_p_i_system_time.html#a6408d67d0ebe7fc41d8d91f8b886eef6", null ], + [ "operator+", "class_p_i_system_time.html#a415080b1306b98576a2bd6c38b8de78d", null ], + [ "operator-", "class_p_i_system_time.html#a4401fa2920eb43cfb89019ef6fc5be6a", null ], + [ "operator*", "class_p_i_system_time.html#a951c593d9a3d7f68edee3499886ab06e", null ], + [ "operator/", "class_p_i_system_time.html#a59e752e61f73f625cc46c4613a921ee6", null ], + [ "operator+=", "class_p_i_system_time.html#aa2e044663f23a4456aeac7b472d56d2f", null ], + [ "operator-=", "class_p_i_system_time.html#a9615d99f50b56aaf6a8b10ac96d47422", null ], + [ "operator*=", "class_p_i_system_time.html#af24dc2012c4ba4885975bbc4a14c12f0", null ], + [ "operator/=", "class_p_i_system_time.html#a4bb8e7ee161308b4f7ac23fb547fc5c1", null ], + [ "operator==", "class_p_i_system_time.html#a1f0ca869016e7504ef2ef0d39fb24286", null ], + [ "operator!=", "class_p_i_system_time.html#afa5fd1abc702111b388dd20d8069902a", null ], + [ "operator>", "class_p_i_system_time.html#a2bbab7edaddad2d31f9782aaf8441023", null ], + [ "operator<", "class_p_i_system_time.html#a9f3ebf927584b6577139ebfb6008e8ab", null ], + [ "operator>=", "class_p_i_system_time.html#ab6e479036d86834fbdc3eb39ae17f062", null ], + [ "operator<=", "class_p_i_system_time.html#a5acdaaac43720151791fea0244fee00c", null ], + [ "seconds", "class_p_i_system_time.html#a04b205ecf95921596a68c442b49b34b0", null ], + [ "nanoseconds", "class_p_i_system_time.html#a44d03ab983c54f3edfe3f5e57e08b15a", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_thread-members.html b/doc/html/class_p_i_thread-members.html new file mode 100644 index 00000000..d45ab503 --- /dev/null +++ b/doc/html/class_p_i_thread-members.html @@ -0,0 +1,216 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIThread Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
begin()PIThreadinlineprotectedvirtual
className() const PIObjectinlinevirtual
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PIThreadinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
end()PIThreadinlineprotectedvirtual
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PIThreadinline
lock()PIThreadinline
mutex()PIThreadinline
name() const PIObjectinline
needLockRun(bool need)PIThreadinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
piHigh enum valuePIThread
piHighest enum valuePIThread
piLow enum valuePIThread
piLowerst enum valuePIThread
piNormal enum valuePIThread
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PIThread(void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)PIThread
PIThread(bool startNow=false, int loop_delay=-1)PIThread
Priority enum namePIThread
priority() const PIThreadinline
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
run()PIThreadinlineprotectedvirtual
setData(void *d)PIThreadinline
setDebug(bool debug)PIObjectinline
setName(const PIString &name)PIObjectinline
setPriority(PIThread::Priority prior)PIThread
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(ThreadFunc func)PIThreadinline
start(int timer_delay)PIThread
start(ThreadFunc func, int timer_delay)PIThreadinline
started()PIThread
startOnce()PIThread
startOnce(ThreadFunc func)PIThreadinline
stop(bool wait)PIThreadinline
stopped()PIThread
superClassName() const PIObjectinlinevirtual
terminate()PIThread
unlock()PIThreadinline
waitForFinish(int timeout_msecs)PIThread
waitForStart(int timeout_msecs)PIThread
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_thread.html b/doc/html/class_p_i_thread.html new file mode 100644 index 00000000..3545d55f --- /dev/null +++ b/doc/html/class_p_i_thread.html @@ -0,0 +1,746 @@ + + + + + + +PIP: PIThread Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Thread class. + More...

+
+ + Inheritance diagram for PIThread:
+
+
+ + + + + + +

+Public Types

enum  Priority {
+  piLowerst, +piLow, +piNormal, +piHigh, +
+  piHighest +
+ }
 Priority of thread. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIThread (void *data, ThreadFunc func, bool startNow=false, int loop_delay=-1)
 Contructs thread with custom data "data", external function "func" and main loop delay "loop_delay".
 
PIThread (bool startNow=false, int loop_delay=-1)
 Contructs thread with main loop delay "loop_delay".
 
+void setData (void *d)
 Set common data passed to external function.
 
+void setSlot (ThreadFunc func)
 Set external function that will be executed after every run()
 
+void setPriority (PIThread::Priority prior)
 Set priority of thread.
 
+void * data () const
 Returns common data passed to external function.
 
+PIThread::Priority priority () const
 Return priority of thread.
 
+bool isRunning () const
 Return true if thread is running.
 
+void needLockRun (bool need)
 Set necessity of lock every run with internal mutex.
 
+PIMutexmutex ()
 Return internal mutex.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + + + + + + + + +

+Protected Member Functions

+virtual void begin ()
 Function executed once at the start of thread.
 
+virtual void run ()
 Function executed at every "timer_delay" msecs until thread was stopped.
 
+virtual void end ()
 Function executed once at the end of thread.
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Handlers

bool start (int timer_delay)
 Start thread. More...
 
bool start (ThreadFunc func, int timer_delay)
 Start thread. More...
 
bool startOnce ()
 Start thread without internal loop. More...
 
bool startOnce (ThreadFunc func)
 Start thread without internal loop. More...
 
void stop (bool wait)
 Stop thread. More...
 
void terminate ()
 Strongly stop thread. More...
 
bool waitForStart (int timeout_msecs)
 Wait for thread start. More...
 
bool waitForFinish (int timeout_msecs)
 Wait for thread finish. More...
 
+void lock ()
 Lock internal mutex.
 
+void unlock ()
 Unlock internal mutex.
 
+ + + + + + + +

+Events

+void started ()
 Raise on thread start.
 
+void stopped ()
 Raise on thread stop.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Thread class.

+

This class allow you exec your code in separate thread.

+

+Synopsis

+

Multithreading allow you to write program which will be executed in several threads simultaneously. This trend allow you to use all cores of modern processors, but there are many dangers.

+

This class provide virtual functions begin(), run() and end(), which describes start, execution and finish work of some process. These functions executes in separate thread. When you execute start(), PIThread create separate system thread and sequentially executes function begin(), run() and end(). You can reimplement each function and write your own code to execute. Scheme of functions executing:

+
event started();
+
while (isRunning()) {
+
run();
+
ThreadFunc();
+
msleep(timer_delay);
+
}
+
event stopped();
+
end();
+

Unlike from directly using "pthread" or some similar you doesn`t need to write your own main thread cycle and sleep at every cycle end. PIThread make it for you, and your job is to set sleep value from contructor or when starting thread, and reimplement begin(), run() and end() functions.

+

+Using without subclassing

+

You can use PIThread without subclassing by using "ThreadFunc" pointer that can be set from constructor or by overloaded function start(ThreadFunc func, int timer_delay). If "func" if not null this function will be executed as run(). ThreadFunc is any static function with format void func(void * data). "Data" is custom data set from constructor or with function setData().
+ Also you can connect to event started(), but in this case you should to white your thread main cycle, because this event raised only one time.

+

+Locking

+

PIThread has inrternal mutex that can be locked and unlocked every run() if you set this flag with function needLockRun(bool). Also you can access to this mutex by functions lock(), unlock() and mutex(). Using this functions together with needLockRun(true) can guarantee one-thread access to some data.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIThread::Priority
+
+ +

Priority of thread.

+ + + + + + +
Enumerator
piLowerst  +

Lowest

+
piLow  +

Low

+
piNormal  +

Normal, this is default priority of threads and timers

+
piHigh  +

High

+
piHighest  +

Highest

+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
bool PIThread::start (int timer_delay = -1)
+
+ +

Start thread.

+

Start execution of run() in internal loop with "timer_delay" delay in milliseconds. If "timer_delay" <= 0 there is no delay in loop. Thread also exec external function set by setSlot() if it`s not null

+
Returns
false if thread already started or can`t start thread
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool PIThread::start (ThreadFunc func,
int timer_delay = -1 
)
+
+inline
+
+ +

Start thread.

+

Overloaded function. Set external function "func" before start

+
Returns
false if thread already started or can`t start thread
+ +
+
+ +
+
+ + + + + + + +
bool PIThread::startOnce ()
+
+ +

Start thread without internal loop.

+

Start execution of run() once. Thread also exec external function set by setSlot() if it`s not null

+
Returns
false if thread already started or can`t start thread
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool PIThread::startOnce (ThreadFunc func)
+
+inline
+
+ +

Start thread without internal loop.

+

Overloaded function. Set external function "func" before start

+
Returns
false if thread already started or can`t start thread
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void PIThread::stop (bool wait = false)
+
+inline
+
+ +

Stop thread.

+

Stop execution of thread and wait for it finish if "wait" is true. This function can block for infinite time if "wait" is true and any of thread function is busy forever

+ +
+
+ +
+
+ + + + + + + +
void PIThread::terminate ()
+
+ +

Strongly stop thread.

+

Stop execution of thread immediately

+ +
+
+ +
+
+ + + + + + + + +
bool PIThread::waitForStart (int timeout_msecs = -1)
+
+ +

Wait for thread start.

+

This function block until thread finish for "timeout_msecs" or forever if "timeout_msecs" < 0

+
Returns
false if timeout is exceeded
+ +
+
+ +
+
+ + + + + + + + +
bool PIThread::waitForFinish (int timeout_msecs = -1)
+
+ +

Wait for thread finish.

+

This function block until thread start for "timeout_msecs" or forever if "timeout_msecs" < 0

+
Returns
false if timeout is exceeded
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_thread.js b/doc/html/class_p_i_thread.js new file mode 100644 index 00000000..72ed2d3e --- /dev/null +++ b/doc/html/class_p_i_thread.js @@ -0,0 +1,35 @@ +var class_p_i_thread = +[ + [ "Priority", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77b", [ + [ "piLowerst", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba4dbd54fc5158a029c682b718f48312d4", null ], + [ "piLow", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba46703d0258b11d41c52a266b2b10b6d9", null ], + [ "piNormal", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77babd362bfacabbd61d69793cceb449425c", null ], + [ "piHigh", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba0e6861fee3e57cf6ba026a7553e69576", null ], + [ "piHighest", "class_p_i_thread.html#a3ddcafb0b09d3ed258a519882986a77ba18babfebe41163fbb810eb41357a6347", null ] + ] ], + [ "PIThread", "class_p_i_thread.html#adaa3b942365cb17b3e985648128e5f7e", null ], + [ "PIThread", "class_p_i_thread.html#a538752277df4d58134b05ef080ed6b04", null ], + [ "start", "class_p_i_thread.html#a5fb7161b42840be7fb2f738046887b39", null ], + [ "start", "class_p_i_thread.html#a38785bbce4ef9afb7116cea78beffa08", null ], + [ "startOnce", "class_p_i_thread.html#a44a9fe015ea8288a0a336b614ff2962b", null ], + [ "startOnce", "class_p_i_thread.html#ad50035fe7d3a2557178b6b46f6fa4861", null ], + [ "stop", "class_p_i_thread.html#a37e179466edd8011aca3a07e10153e62", null ], + [ "terminate", "class_p_i_thread.html#a2004de7b6aa59ecb50321571b932ec20", null ], + [ "setData", "class_p_i_thread.html#a221e15d1a4093b7db6cc579fc8be69b6", null ], + [ "setSlot", "class_p_i_thread.html#a85c22bf31dae02180827f2952e3594ee", null ], + [ "setPriority", "class_p_i_thread.html#ade6ddabe46917c5cef2f5da1dd613a69", null ], + [ "data", "class_p_i_thread.html#aa3c4138dc000e34fb74140d0a5be3afe", null ], + [ "priority", "class_p_i_thread.html#adcc0d49a7914cba2b3edc86c454ee3a6", null ], + [ "isRunning", "class_p_i_thread.html#a46720d79609ec893d9eb5eaa2354c414", null ], + [ "waitForStart", "class_p_i_thread.html#a8bcffcc0d12bdd6d8ddd455a15241313", null ], + [ "waitForFinish", "class_p_i_thread.html#ae325266c7f3484ad52c0a5c690cc222c", null ], + [ "needLockRun", "class_p_i_thread.html#a87a8b9315e3e2c0eb8bfeb864474da57", null ], + [ "lock", "class_p_i_thread.html#a221de2cf94a569a223bfc4456c0f4fed", null ], + [ "unlock", "class_p_i_thread.html#a82baf1fe4608234ba76b68540100ee73", null ], + [ "mutex", "class_p_i_thread.html#aeaff22c99b5f5ba444671d658eba2f14", null ], + [ "started", "class_p_i_thread.html#a6b91eb8632e75e0f00a625f28a0bedd1", null ], + [ "stopped", "class_p_i_thread.html#aa6350430814f777fdce81f99cbba4c1a", null ], + [ "begin", "class_p_i_thread.html#a70d5c858e8b7144280b8b216304ce1d0", null ], + [ "run", "class_p_i_thread.html#a8c9cacfd381e0e02eb6e52810d48ce2e", null ], + [ "end", "class_p_i_thread.html#af6dacd35973ff834f007d0f6a40f6e9c", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_thread__inherit__graph.map b/doc/html/class_p_i_thread__inherit__graph.map new file mode 100644 index 00000000..735c8dbc --- /dev/null +++ b/doc/html/class_p_i_thread__inherit__graph.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/doc/html/class_p_i_thread__inherit__graph.md5 b/doc/html/class_p_i_thread__inherit__graph.md5 new file mode 100644 index 00000000..9847b4b9 --- /dev/null +++ b/doc/html/class_p_i_thread__inherit__graph.md5 @@ -0,0 +1 @@ +3dfb852148bc0b73929c253a6df76762 \ No newline at end of file diff --git a/doc/html/class_p_i_thread__inherit__graph.svg b/doc/html/class_p_i_thread__inherit__graph.svg new file mode 100644 index 00000000..a50d5088 --- /dev/null +++ b/doc/html/class_p_i_thread__inherit__graph.svg @@ -0,0 +1,161 @@ + + + + + + +PIThread + + +Node1 + +PIThread + + +Node3 + + +PIConsole + + + + +Node1->Node3 + + + + +Node4 + + +PIIODevice + + + + +Node1->Node4 + + + + +Node11 + + +PIKbdListener + + + + +Node1->Node11 + + + + +Node12 + + +PIProcess + + + + +Node1->Node12 + + + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + +Node5 + + +PIBinaryLog + + + + +Node4->Node5 + + + + +Node6 + + +PIEthernet + + + + +Node4->Node6 + + + + +Node7 + + +PIFile + + + + +Node4->Node7 + + + + +Node9 + + +PIPacketExtractor + + + + +Node4->Node9 + + + + +Node10 + + +PISerial + + + + +Node4->Node10 + + + + +Node8 + + +PIConfig + + + + +Node7->Node8 + + + + + diff --git a/doc/html/class_p_i_time_measurer-members.html b/doc/html/class_p_i_time_measurer-members.html new file mode 100644 index 00000000..60a58726 --- /dev/null +++ b/doc/html/class_p_i_time_measurer-members.html @@ -0,0 +1,139 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/class_p_i_time_measurer.html b/doc/html/class_p_i_time_measurer.html new file mode 100644 index 00000000..33dcecb8 --- /dev/null +++ b/doc/html/class_p_i_time_measurer.html @@ -0,0 +1,218 @@ + + + + + + +PIP: PITimeMeasurer Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PITimeMeasurer Class Reference
+
+
+ +

Time measurements. + More...

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

+Public Member Functions

void reset ()
 Set internal time mark to current system time. More...
 
+double elapsed_n ()
 Returns nanoseconds elapsed from last reset() execution or from timer measurer creation.
 
+double elapsed_u ()
 Returns microseconds elapsed from last reset() execution or from timer measurer creation.
 
+double elapsed_m ()
 Returns milliseconds elapsed from last reset() execution or from timer measurer creation.
 
+double elapsed_s ()
 Returns seconds elapsed from last reset() execution or from timer measurer creation.
 
+PISystemTime elapsed ()
 Returns PISystemTime elapsed from last reset() execution or from timer measurer creation.
 
+PISystemTime reset_time ()
 Returns time mark of last reset() execution or timer measurer creation.
 
+ + + + + + + + + + + + + + + + +

+Static Public Member Functions

+static double elapsed_system_n ()
 Returns nanoseconds representation of current system time.
 
+static double elapsed_system_u ()
 Returns microseconds representation of current system time.
 
+static double elapsed_system_m ()
 Returns milliseconds representation of current system time.
 
+static double elapsed_system_s ()
 Returns seconds representation of current system time.
 
+static PISystemTime elapsed_system ()
 Returns time mark of current system time.
 
+

Detailed Description

+

Time measurements.

+

+Synopsis

+

Function reset() set time mark to current system time, then functions double elapsed_*() returns time elapsed from this mark. These functions can returns nano-, micro-, milli- and seconds with suffixes "n", "u", "m" and "s"

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void PITimeMeasurer::reset ()
+
+inline
+
+ +

Set internal time mark to current system time.

+

This function used for set start time mark. Later you can find out elapsed time from this time mark to any moment of time with elapsed_s(), elapsed_m(), elapsed_u() or elapsed_n() functions.

See also
elapsed_s(), elapsed_m(), elapsed_u(), elapsed_n()
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_time_measurer.js b/doc/html/class_p_i_time_measurer.js new file mode 100644 index 00000000..24aa08a5 --- /dev/null +++ b/doc/html/class_p_i_time_measurer.js @@ -0,0 +1,10 @@ +var class_p_i_time_measurer = +[ + [ "reset", "class_p_i_time_measurer.html#a9b9d77de23a343ccabc56d6658f9d874", null ], + [ "elapsed_n", "class_p_i_time_measurer.html#a7f0832742601a1c6c13e87aca6c9bdc0", null ], + [ "elapsed_u", "class_p_i_time_measurer.html#aa00150de5e04b3c7256e620498182380", null ], + [ "elapsed_m", "class_p_i_time_measurer.html#a2421e0d7f623a3181683ad50957d72fe", null ], + [ "elapsed_s", "class_p_i_time_measurer.html#a49b04aae807b3d09dc25485f4e47da75", null ], + [ "elapsed", "class_p_i_time_measurer.html#a9af8e8ee2231a6b62eea549c8d01d1d2", null ], + [ "reset_time", "class_p_i_time_measurer.html#a1d469ce161b772ce6fffc04e53cea18f", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_timer-members.html b/doc/html/class_p_i_timer-members.html new file mode 100644 index 00000000..12a9b24e --- /dev/null +++ b/doc/html/class_p_i_timer-members.html @@ -0,0 +1,212 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PITimer Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addDelimiter(int delim, TimerEvent slot=0)PITimerinline
className() const PIObjectinlinevirtual
clearDelimiters()PITimerinline
CONNECTPIObjectrelated
CONNECT0PIObjectrelated
CONNECT1PIObjectrelated
CONNECT2PIObjectrelated
CONNECT3PIObjectrelated
CONNECT4PIObjectrelated
CONNECTUPIObjectrelated
data() const PITimerinline
debug() const PIObjectinline
DISCONNECTPIObjectrelated
DISCONNECT0PIObjectrelated
DISCONNECT1PIObjectrelated
DISCONNECT2PIObjectrelated
DISCONNECT3PIObjectrelated
DISCONNECT4PIObjectrelated
emitter() const PIObjectinlineprotected
EVENTPIObjectrelated
EVENT0PIObjectrelated
EVENT1PIObjectrelated
EVENT2PIObjectrelated
EVENT3PIObjectrelated
EVENT4PIObjectrelated
EVENT_HANDLERPIObjectrelated
EVENT_HANDLER0PIObjectrelated
EVENT_HANDLER1PIObjectrelated
EVENT_HANDLER2PIObjectrelated
EVENT_HANDLER3PIObjectrelated
EVENT_HANDLER4PIObjectrelated
EVENT_VHANDLERPIObjectrelated
EVENT_VHANDLER0PIObjectrelated
EVENT_VHANDLER1PIObjectrelated
EVENT_VHANDLER2PIObjectrelated
EVENT_VHANDLER3PIObjectrelated
EVENT_VHANDLER4PIObjectrelated
findByName(const PIString &name)PIObjectinlinestatic
HANDLERPIObjectrelated
implementation() const PITimerinline
interval() const PITimerinline
isPropertyExists(const PIString &name) const PIObjectinline
isRunning() const PITimerinline
isStopped() const PITimerinline
name() const PIObjectinline
piCoutObjPIObjectrelated
piDisconnect(PIObject *src, const PIString &sig)PIObjectstatic
piDisconnect(PIObject *src)PIObjectstatic
PIOBJECTPIObjectrelated
PIObject(const PIString &name=PIString())PIObject
PIOBJECT_PARENTPIObjectrelated
PITimer()PITimerexplicit
PITimer(TimerImplementation ti)PITimerexplicit
PITimer(TimerEvent slot, void *data=0, TimerImplementation ti=Thread)PITimerexplicit
Pool enum valuePITimer
properties() const PIObjectinline
propertiesCount() const PIObjectinline
property(const PIString &name) const PIObjectinline
propertyChanged(const PIString &name)PIObjectinlineprotectedvirtual
removeDelimiter(int delim)PITimerinline
removeDelimiter(TimerEvent slot)PITimerinline
removeDelimiter(int delim, TimerEvent slot)PITimerinline
restart()PITimerinline
setData(void *data_)PITimerinline
setDebug(bool debug)PIObjectinline
setInterval(double ms)PITimerinline
setName(const PIString &name)PIObjectinline
setProperty(const PIString &name, const PIVariant &value)PIObjectinline
setSlot(TimerEvent slot)PITimerinline
start()PITimerinline
start(int interval_ms_i)PITimerinline
start(double interval_ms_d)PITimerinline
stop()PITimerinline
superClassName() const PIObjectinlinevirtual
Thread enum valuePITimer
ThreadRT enum valuePITimer
tick(void *data_, int delimiter)PITimerinlineprotectedvirtual
tickEvent(void *data_, int delimiter)PITimer
TimerImplementation enum namePITimer
WEAK_CONNECTPIObjectrelated
WEAK_CONNECT0PIObjectrelated
WEAK_CONNECT1PIObjectrelated
WEAK_CONNECT2PIObjectrelated
WEAK_CONNECT3PIObjectrelated
WEAK_CONNECT4PIObjectrelated
+
+ + + + diff --git a/doc/html/class_p_i_timer.html b/doc/html/class_p_i_timer.html new file mode 100644 index 00000000..ceaa0a31 --- /dev/null +++ b/doc/html/class_p_i_timer.html @@ -0,0 +1,718 @@ + + + + + + +PIP: PITimer Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Timer. + More...

+
+ + Inheritance diagram for PITimer:
+
+
+ + + + + + +

+Public Types

enum  TimerImplementation { Thread = 0x01, +ThreadRT = 0x02, +Pool = 0x04 + }
 Timer implementations. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PITimer ()
 Constructs timer with PITimer::Thread implementation.
 
PITimer (TimerImplementation ti)
 Constructs timer with "ti" implementation.
 
PITimer (TimerEvent slot, void *data=0, TimerImplementation ti=Thread)
 Constructs timer with "slot" slot, "data" data and "ti" implementation.
 
+PITimer::TimerImplementation implementation () const
 Returns timer implementation.
 
+double interval () const
 Returns timer loop delay in milliseconds.
 
+void setInterval (double ms)
 Set timer loop delay in milliseconds.
 
+bool isRunning () const
 Returns if timer is started.
 
+bool isStopped () const
 Returns if timer is not started.
 
+void setData (void *data_)
 Set custom data.
 
+void setSlot (TimerEvent slot)
 Set timer tick function.
 
+void * data () const
 Returns common data passed to tick functions.
 
+void addDelimiter (int delim, TimerEvent slot=0)
 Add frequency delimiter delim with optional delimiter slot slot.
 
+void removeDelimiter (int delim)
 Remove all frequency delimiters delim.
 
+void removeDelimiter (TimerEvent slot)
 Remove all frequency delimiters with slot slot.
 
+void removeDelimiter (int delim, TimerEvent slot)
 Remove all frequency delimiters delim with slot slot.
 
- Public Member Functions inherited from PIObject
PIObject (const PIString &name=PIString())
 Contructs PIObject with name "name".
 
+PIString name () const
 Returns object name.
 
+virtual const char * className () const
 Returns object class name.
 
+virtual const char * superClassName () const
 Returns object superclass name.
 
+bool debug () const
 Return if debug of this object is active.
 
+void setName (const PIString &name)
 Set object name.
 
+void setDebug (bool debug)
 Set object debug active.
 
+const PIMap< PIString,
+PIVariant > & 
properties () const
 Returns properties of the object.
 
+int propertiesCount () const
 Returns properties count of the object.
 
+PIVariant property (const PIString &name) const
 Returns property with name "name".
 
+void setProperty (const PIString &name, const PIVariant &value)
 Set property with name "name" to "value". If there is no such property in object it will be added.
 
+bool isPropertyExists (const PIString &name) const
 Returns if property with name "name" exists.
 
+ + + + + + + + + + +

+Protected Member Functions

virtual void tick (void *data_, int delimiter)
 
- Protected Member Functions inherited from PIObject
+PIObjectemitter () const
 Returns PIObject* which has raised an event. This value is correct only in definition of some event handler.
 
+virtual void propertyChanged (const PIString &name)
 Virtual function executes after property with name "name" has been changed.
 
+ + + + + + + + + + + + + + + + + + + +

+Handlers

bool start ()
 Start timer with interval() loop delay. More...
 
bool start (int interval_ms_i)
 Start timer with msecs loop delay. More...
 
bool start (double interval_ms_d)
 Start timer with msecs loop delay. More...
 
+bool restart ()
 Stop and start timer with interval() loop delay.
 
+bool stop ()
 Stop timer.
 
+void clearDelimiters ()
 Remove all frequency delimiters.
 
+ + + + +

+Events

void tickEvent (void *data_, int delimiter)
 Raise on timer tick. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from PIObject
+static void piDisconnect (PIObject *src, const PIString &sig)
 Disconnect object "src" from all connections with event name "sig".
 
+static void piDisconnect (PIObject *src)
 Disconnect object "src" from all connections, i.e. all connections where object "src" is emitter.
 
+static PIObjectfindByName (const PIString &name)
 Returns PIObject* with name "name" or 0, if there is no object found.
 
+

Detailed Description

+

Timer.

+

+Synopsis

+

This class implements timer function. PIP timers supports 3 way to tick notify, frequency delimiters and time measurements.

+

+Notify variants

+

Notify variants:

    +
  • "slot" - static function with format void func(void * data, int delimiter);
  • +
  • event - tickEvent();
  • +
  • virtual function - tick().
  • +
+

All these variants are equivalent, use most applicable.

+

+Frequency delimiters

+

Frequency delimiter is an integer number and "slot" function. If "slot" function is null timer main "slot" will be used. Each delimiter numbers tick timer will be execute delimiters or timer main "slot" function with delimiter value = delimiter number. Example:

void tfunc(void * , int delim) {
+
piCout << "tick with delimiter" << delim;
+
};
+
void tfunc4(void * , int delim) {
+
piCout << "tick4 with delimiter" << delim;
+
};
+
int main() {
+
PITimer timer(tfunc);
+
timer.addDelimiter(2);
+
timer.addDelimiter(4, tfunc4);
+
timer.start(50);
+
piMSleep(200);
+
timer.stop();
+
timer.waitForFinish();
+
return 0;
+
};
+
/* Result:
+
tick with delimiter 1
+
tick with delimiter 1
+
tick with delimiter 2
+
tick with delimiter 1
+
tick with delimiter 1
+
tick with delimiter 2
+
tick4 with delimiter 4
+
*/
+

+Synopsis

+

PITimer can be used as time measurer. Function reset() set time mark to current system time, then functions double elapsed_*() returns time elapsed from this mark. These functions can returns nano-, micro-, milli- and seconds with suffixes "n", "u", "m" and "s" Example:

int main() {
+
PITimer timer;
+
piMSleep(100);
+
piCout << "elapsed" << timer.elapsed_m() << "ms";
+
piMSleep(100);
+
piCout << "elapsed" << timer.elapsed_m() << "ms";
+
timer.reset();
+
piMSleep(150);
+
piCout << "elapsed" << timer.elapsed_s() << "s";
+
return 0;
+
};
+
/* Result:
+
elapsed 100 ms
+
elapsed 200 ms
+
elapsed 0.15 s
+
*/
+

Member Enumeration Documentation

+ +
+
+ +

Timer implementations.

+ + + + +
Enumerator
Thread  +

Timer works in his own thread. Intervals are measured by the system time

+
ThreadRT  +

Using POSIX timer with SIGEV_THREAD notification.

Attention
Doesn`t support on Windows and Mac OS!
+
Pool  +

Using single TimerPool for all timers with this implementation. TimerPool works as Thread implementation and sequentially executes all timers.

Attention
Use this implementation with care!
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
bool PITimer::start ()
+
+inline
+
+ +

Start timer with interval() loop delay.

+

Start execution of timer functions with frequency = 1 / msecs Hz.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool PITimer::start (int msecs)
+
+inline
+
+ +

Start timer with msecs loop delay.

+

Start execution of timer functions with frequency = 1 / msecs Hz.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool PITimer::start (double msecs)
+
+inline
+
+ +

Start timer with msecs loop delay.

+

Start execution of timer functions with frequency = 1. / msecs Hz. Instead of start(int msecs) function this variant allow start timer with frequencies more than 1 kHz

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void PITimer::tickEvent (void * data,
int delimiter 
)
+
+ +

Raise on timer tick.

+

Data can be set with function setData(void * data) or from constructor. Delimiter if frequency delimiter, 1 for main loop.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void PITimer::tick (void * data_,
int delimiter 
)
+
+inlineprotectedvirtual
+
+

Virtual timer execution function, similar to "slot" or event void timeout(void * data, int delimiter). By default is empty.

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_timer.js b/doc/html/class_p_i_timer.js new file mode 100644 index 00000000..6428690f --- /dev/null +++ b/doc/html/class_p_i_timer.js @@ -0,0 +1,31 @@ +var class_p_i_timer = +[ + [ "TimerImplementation", "class_p_i_timer.html#a02b36fbf7ae0839eb72c95cde343b719", [ + [ "Thread", "class_p_i_timer.html#a02b36fbf7ae0839eb72c95cde343b719aee4dbda7d96c1ec6bc4a88310e7d4e51", null ], + [ "ThreadRT", "class_p_i_timer.html#a02b36fbf7ae0839eb72c95cde343b719a80970cf7914f7a34ad94fa6620b1f66b", null ], + [ "Pool", "class_p_i_timer.html#a02b36fbf7ae0839eb72c95cde343b719afc1ce0b87bd597621116ec5de765b6db", null ] + ] ], + [ "PITimer", "class_p_i_timer.html#a3cc1d86602eb8d2abd8e0c9a9931cd70", null ], + [ "PITimer", "class_p_i_timer.html#a0cbb0321a650e4dd4acd046e58a67095", null ], + [ "PITimer", "class_p_i_timer.html#a6d3067f66c06ddd21982251f4ed6ec50", null ], + [ "implementation", "class_p_i_timer.html#a5a0616e0a3db99893098b644cdd58288", null ], + [ "interval", "class_p_i_timer.html#a632ce2869f478d0752b0b48cfa399fec", null ], + [ "setInterval", "class_p_i_timer.html#aceedb334c02e3ad05ec9215aa956b780", null ], + [ "isRunning", "class_p_i_timer.html#a5ccbe3dd36ecde88f01b6534659a08d0", null ], + [ "isStopped", "class_p_i_timer.html#a88a8d0df214cb441321e6884342183e3", null ], + [ "start", "class_p_i_timer.html#afbe09c4d09f0dc897045037c1042cd70", null ], + [ "start", "class_p_i_timer.html#a9e4971a2f541ebac94057a61046667ce", null ], + [ "start", "class_p_i_timer.html#a65431888fc569599e6b3ff27c1617e00", null ], + [ "restart", "class_p_i_timer.html#ae899576c5a8b605a749f9c6f09773087", null ], + [ "stop", "class_p_i_timer.html#ae43b33b748524fbef3ec5ad705977737", null ], + [ "setData", "class_p_i_timer.html#aa166b87d70f34ca63b9c39f8f03daea4", null ], + [ "setSlot", "class_p_i_timer.html#ae55067d29d1491c6e583ca8db45fd0ba", null ], + [ "data", "class_p_i_timer.html#abbe9a559d65b0be6980e77218a05cfe3", null ], + [ "addDelimiter", "class_p_i_timer.html#ace072dbf3b4ddbd609b6acf4e058d291", null ], + [ "removeDelimiter", "class_p_i_timer.html#ab02f5a19cb71a4be4965a1d670c7ff72", null ], + [ "removeDelimiter", "class_p_i_timer.html#a2809e63e8678dc914a9b521fa0de7a09", null ], + [ "removeDelimiter", "class_p_i_timer.html#a093ee618f2beac2794a469c76f8064f1", null ], + [ "clearDelimiters", "class_p_i_timer.html#a2968d6a3aefc4c609cbeaf9f301a41f9", null ], + [ "tickEvent", "class_p_i_timer.html#a707cb908c36f42dab13338c42ede4a81", null ], + [ "tick", "class_p_i_timer.html#af94038669f0798c21cc2208da9945406", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_timer__inherit__graph.map b/doc/html/class_p_i_timer__inherit__graph.map new file mode 100644 index 00000000..a88ec6b7 --- /dev/null +++ b/doc/html/class_p_i_timer__inherit__graph.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/class_p_i_timer__inherit__graph.md5 b/doc/html/class_p_i_timer__inherit__graph.md5 new file mode 100644 index 00000000..a7e088b0 --- /dev/null +++ b/doc/html/class_p_i_timer__inherit__graph.md5 @@ -0,0 +1 @@ +195c165790aab704adc9a416814f1c4f \ No newline at end of file diff --git a/doc/html/class_p_i_timer__inherit__graph.svg b/doc/html/class_p_i_timer__inherit__graph.svg new file mode 100644 index 00000000..13a3dcf2 --- /dev/null +++ b/doc/html/class_p_i_timer__inherit__graph.svg @@ -0,0 +1,44 @@ + + + + + + +PITimer + + +Node1 + +PITimer + + +Node3 + + +PIDiagnostics + + + + +Node1->Node3 + + + + +Node2 + + +PIObject + + + + +Node2->Node1 + + + + + diff --git a/doc/html/class_p_i_variant-members.html b/doc/html/class_p_i_variant-members.html new file mode 100644 index 00000000..967155e0 --- /dev/null +++ b/doc/html/class_p_i_variant-members.html @@ -0,0 +1,256 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIVariant Member List
+
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BitArray enum valuePIVariant
Bool enum valuePIVariant
ByteArray enum valuePIVariant
Char enum valuePIVariant
Complexd enum valuePIVariant
Complexld enum valuePIVariant
Custom enum valuePIVariant
Date enum valuePIVariant
DateTime enum valuePIVariant
Double enum valuePIVariant
Float enum valuePIVariant
fromValue(const T &v)PIVariantinlinestatic
Int enum valuePIVariant
Invalid enum valuePIVariant
isValid() const PIVariantinline
LDouble enum valuePIVariant
LLong enum valuePIVariant
Long enum valuePIVariant
operator!=(const PIVariant &v) const PIVariantinline
operator=(const PIVariant &v)PIVariant
operator=(const char *v)PIVariantinline
operator=(const bool v)PIVariantinline
operator=(const char v)PIVariantinline
operator=(const uchar v)PIVariantinline
operator=(const short v)PIVariantinline
operator=(const ushort v)PIVariantinline
operator=(const int &v)PIVariantinline
operator=(const uint &v)PIVariantinline
operator=(const long &v)PIVariantinline
operator=(const ulong &v)PIVariantinline
operator=(const llong &v)PIVariantinline
operator=(const ullong &v)PIVariantinline
operator=(const float &v)PIVariantinline
operator=(const double &v)PIVariantinline
operator=(const ldouble &v)PIVariantinline
operator=(const complexd &v)PIVariantinline
operator=(const complexld &v)PIVariantinline
operator=(const PIBitArray &v)PIVariantinline
operator=(const PIByteArray &v)PIVariantinline
operator=(const PIString &v)PIVariantinline
operator=(const PIStringList &v)PIVariantinline
operator=(const PITime &v)PIVariantinline
operator=(const PIDate &v)PIVariantinline
operator=(const PIDateTime &v)PIVariantinline
operator=(const PISystemTime &v)PIVariantinline
operator==(const PIVariant &v) const PIVariant
PIVariant()PIVariant
PIVariant(const char *v)PIVariantinline
PIVariant(const bool v)PIVariantinline
PIVariant(const char v)PIVariantinline
PIVariant(const uchar v)PIVariantinline
PIVariant(const short v)PIVariantinline
PIVariant(const ushort v)PIVariantinline
PIVariant(const int &v)PIVariantinline
PIVariant(const uint &v)PIVariantinline
PIVariant(const long &v)PIVariantinline
PIVariant(const ulong &v)PIVariantinline
PIVariant(const llong &v)PIVariantinline
PIVariant(const ullong &v)PIVariantinline
PIVariant(const float &v)PIVariantinline
PIVariant(const double &v)PIVariantinline
PIVariant(const ldouble &v)PIVariantinline
PIVariant(const complexd &v)PIVariantinline
PIVariant(const complexld &v)PIVariantinline
PIVariant(const PIBitArray &v)PIVariantinline
PIVariant(const PIByteArray &v)PIVariantinline
PIVariant(const PIString &v)PIVariantinline
PIVariant(const PIStringList &v)PIVariantinline
PIVariant(const PITime &v)PIVariantinline
PIVariant(const PIDate &v)PIVariantinline
PIVariant(const PIDateTime &v)PIVariantinline
PIVariant(const PISystemTime &v)PIVariantinline
setValue(const char *v)PIVariantinline
setValue(const bool v)PIVariantinline
setValue(const char v)PIVariantinline
setValue(const uchar v)PIVariantinline
setValue(const short v)PIVariantinline
setValue(const ushort v)PIVariantinline
setValue(const int &v)PIVariantinline
setValue(const uint &v)PIVariantinline
setValue(const long &v)PIVariantinline
setValue(const ulong &v)PIVariantinline
setValue(const llong &v)PIVariantinline
setValue(const ullong &v)PIVariantinline
setValue(const float &v)PIVariantinline
setValue(const double &v)PIVariantinline
setValue(const ldouble &v)PIVariantinline
setValue(const complexd &v)PIVariantinline
setValue(const complexld &v)PIVariantinline
setValue(const PIBitArray &v)PIVariantinline
setValue(const PIByteArray &v)PIVariantinline
setValue(const PIString &v)PIVariantinline
setValue(const PIStringList &v)PIVariantinline
setValue(const PITime &v)PIVariantinline
setValue(const PIDate &v)PIVariantinline
setValue(const PIDateTime &v)PIVariantinline
setValue(const PISystemTime &v)PIVariantinline
Short enum valuePIVariant
String enum valuePIVariant
StringList enum valuePIVariant
SystemTime enum valuePIVariant
Time enum valuePIVariant
toBitArray() const PIVariant
toBool() const PIVariant
toByteArray() const PIVariant
toComplexd() const PIVariant
toComplexld() const PIVariant
toDate() const PIVariant
toDateTime() const PIVariant
toDouble() const PIVariant
toFloat() const PIVariant
toInt() const PIVariant
toLDouble() const PIVariant
toLLong() const PIVariant
toString() const PIVariant
toStringList() const PIVariant
toSystemTime() const PIVariant
toTime() const PIVariant
toValue() const PIVariantinline
Type enum namePIVariant
type() const PIVariantinline
typeFromName(const PIString &tname)PIVariantstatic
typeName() const PIVariantinline
typeName(PIVariant::Type type)PIVariantstatic
UChar enum valuePIVariant
UInt enum valuePIVariant
ULLong enum valuePIVariant
ULong enum valuePIVariant
UShort enum valuePIVariant
+
+ + + + diff --git a/doc/html/class_p_i_variant.html b/doc/html/class_p_i_variant.html new file mode 100644 index 00000000..def04a67 --- /dev/null +++ b/doc/html/class_p_i_variant.html @@ -0,0 +1,1073 @@ + + + + + + +PIP: PIVariant Class Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Variant type. + More...

+ + + + + +

+Public Types

enum  Type {
+  Invalid = 0, +Bool, +Char, +UChar, +
+  Short, +UShort, +Int, +UInt, +
+  Long, +ULong, +LLong, +ULLong, +
+  Float, +Double, +LDouble, +Complexd, +
+  Complexld, +BitArray, +ByteArray, +String, +
+  StringList, +Time, +Date, +DateTime, +
+  SystemTime, +Custom = 0xFF +
+ }
 Type of PIVariant content. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

PIVariant ()
 Empty constructor, type() will be set to Invalid.
 
PIVariant (const char *v)
 Constructs variant from string.
 
PIVariant (const bool v)
 Constructs variant from boolean.
 
PIVariant (const char v)
 Constructs variant from char.
 
PIVariant (const uchar v)
 Constructs variant from integer.
 
PIVariant (const short v)
 Constructs variant from integer.
 
PIVariant (const ushort v)
 Constructs variant from integer.
 
PIVariant (const int &v)
 Constructs variant from integer.
 
PIVariant (const uint &v)
 Constructs variant from integer.
 
PIVariant (const long &v)
 Constructs variant from integer.
 
PIVariant (const ulong &v)
 Constructs variant from integer.
 
PIVariant (const llong &v)
 Constructs variant from integer.
 
PIVariant (const ullong &v)
 Constructs variant from integer.
 
PIVariant (const float &v)
 Constructs variant from float.
 
PIVariant (const double &v)
 Constructs variant from double.
 
PIVariant (const ldouble &v)
 Constructs variant from long double.
 
PIVariant (const complexd &v)
 Constructs variant from complex.
 
PIVariant (const complexld &v)
 Constructs variant from complex.
 
PIVariant (const PIBitArray &v)
 Constructs variant from bit array.
 
PIVariant (const PIByteArray &v)
 Constructs variant from byte array.
 
PIVariant (const PIString &v)
 Constructs variant from string.
 
PIVariant (const PIStringList &v)
 Constructs variant from strings list.
 
PIVariant (const PITime &v)
 Constructs variant from time.
 
PIVariant (const PIDate &v)
 Constructs variant from date.
 
PIVariant (const PIDateTime &v)
 Constructs variant from date and time.
 
PIVariant (const PISystemTime &v)
 Constructs variant from system time.
 
+void setValue (const char *v)
 Set variant content and type to string.
 
+void setValue (const bool v)
 Set variant content and type to boolean.
 
+void setValue (const char v)
 Set variant content and type to char.
 
+void setValue (const uchar v)
 Set variant content and type to integer.
 
+void setValue (const short v)
 Set variant content and type to integer.
 
+void setValue (const ushort v)
 Set variant content and type to integer.
 
+void setValue (const int &v)
 Set variant content and type to integer.
 
+void setValue (const uint &v)
 Set variant content and type to integer.
 
+void setValue (const long &v)
 Set variant content and type to integer.
 
+void setValue (const ulong &v)
 Set variant content and type to integer.
 
+void setValue (const llong &v)
 Set variant content and type to integer.
 
+void setValue (const ullong &v)
 Set variant content and type to integer.
 
+void setValue (const float &v)
 Set variant content and type to float.
 
+void setValue (const double &v)
 Set variant content and type to double.
 
+void setValue (const ldouble &v)
 Set variant content and type to long double.
 
+void setValue (const complexd &v)
 Set variant content and type to complex.
 
+void setValue (const complexld &v)
 Set variant content and type to complex.
 
+void setValue (const PIBitArray &v)
 Set variant content and type to bit array.
 
+void setValue (const PIByteArray &v)
 Set variant content and type to byte array.
 
+void setValue (const PIString &v)
 Set variant content and type to string.
 
+void setValue (const PIStringList &v)
 Set variant content and type to strings list.
 
+void setValue (const PITime &v)
 Set variant content and type to time.
 
+void setValue (const PIDate &v)
 Set variant content and type to date.
 
+void setValue (const PIDateTime &v)
 Set variant content and type to date and time.
 
+void setValue (const PISystemTime &v)
 Set variant content and type to system time.
 
bool toBool () const
 Returns variant content as boolean. More...
 
int toInt () const
 Returns variant content as int. More...
 
llong toLLong () const
 Returns variant content as long long. More...
 
float toFloat () const
 Returns variant content as float. More...
 
double toDouble () const
 Returns variant content as double. More...
 
ldouble toLDouble () const
 Returns variant content as long double. More...
 
complexd toComplexd () const
 Returns variant content as complex. More...
 
complexld toComplexld () const
 Returns variant content as long complex. More...
 
PITime toTime () const
 Returns variant content as time. More...
 
PIDate toDate () const
 Returns variant content as date. More...
 
PIDateTime toDateTime () const
 Returns variant content as date and time. More...
 
PISystemTime toSystemTime () const
 Returns variant content as system time. More...
 
PIString toString () const
 Returns variant content as string. More...
 
PIStringList toStringList () const
 Returns variant content as strings list. More...
 
PIBitArray toBitArray () const
 Returns variant content as bit array. More...
 
PIByteArray toByteArray () const
 Returns variant content as byte array. More...
 
template<typename T >
toValue () const
 Returns variant content as custom type. More...
 
+PIVariantoperator= (const PIVariant &v)
 Assign operator.
 
+PIVariantoperator= (const char *v)
 Assign operator.
 
+PIVariantoperator= (const bool v)
 Assign operator.
 
+PIVariantoperator= (const char v)
 Assign operator.
 
+PIVariantoperator= (const uchar v)
 Assign operator.
 
+PIVariantoperator= (const short v)
 Assign operator.
 
+PIVariantoperator= (const ushort v)
 Assign operator.
 
+PIVariantoperator= (const int &v)
 Assign operator.
 
+PIVariantoperator= (const uint &v)
 Assign operator.
 
+PIVariantoperator= (const long &v)
 Assign operator.
 
+PIVariantoperator= (const ulong &v)
 Assign operator.
 
+PIVariantoperator= (const llong &v)
 Assign operator.
 
+PIVariantoperator= (const ullong &v)
 Assign operator.
 
+PIVariantoperator= (const float &v)
 Assign operator.
 
+PIVariantoperator= (const double &v)
 Assign operator.
 
+PIVariantoperator= (const ldouble &v)
 Assign operator.
 
+PIVariantoperator= (const complexd &v)
 Assign operator.
 
+PIVariantoperator= (const complexld &v)
 Assign operator.
 
+PIVariantoperator= (const PIBitArray &v)
 Assign operator.
 
+PIVariantoperator= (const PIByteArray &v)
 Assign operator.
 
+PIVariantoperator= (const PIString &v)
 Assign operator.
 
+PIVariantoperator= (const PIStringList &v)
 Assign operator.
 
+PIVariantoperator= (const PITime &v)
 Assign operator.
 
+PIVariantoperator= (const PIDate &v)
 Assign operator.
 
+PIVariantoperator= (const PIDateTime &v)
 Assign operator.
 
+PIVariantoperator= (const PISystemTime &v)
 Assign operator.
 
+bool operator== (const PIVariant &v) const
 Compare operator.
 
+bool operator!= (const PIVariant &v) const
 Compare operator.
 
+PIVariant::Type type () const
 Returns type of variant content.
 
+PIString typeName () const
 Returns type name of variant content.
 
+bool isValid () const
 Returns true if type is not Invalid.
 
+ + + + + + + + + + + +

+Static Public Member Functions

template<typename T >
static PIVariant fromValue (const T &v)
 Returns new variant from custom type. More...
 
+static PIVariant::Type typeFromName (const PIString &tname)
 Returns type from name.
 
+static PIString typeName (PIVariant::Type type)
 Returns type name.
 
+

Detailed Description

+

Variant type.

+

+Synopsis

+

This class provides general type that can contains all standard types, some PIP types or custom type. In case of standard types this class also provides convertions between them.

+

+Usage

+

PIVariant useful if you want pass many variables with different types in single array, e.g.:

+
array << PIVariant(10) << PIVariant(1.61) << PIVariant(true) << PIVariant("0xFF");
+
piCout << array;
+
piForeachC (PIVariant & i, array)
+
piCout << i.toInt();
+

Result:

{PIVariant(Int, 10), PIVariant(Double, 1,61), PIVariant(Bool, true), PIVariant(String, 0xFF)}
+
10
+
1
+
1
+
255
+

Member Enumeration Documentation

+ +
+
+ + + + +
enum PIVariant::Type
+
+ +

Type of PIVariant content.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
Invalid  +

Invalid type , default type of empty contructor

+
Bool  +

bool

+
Char  +

char

+
UChar  +

uchar

+
Short  +

short

+
UShort  +

ushort

+
Int  +

int

+
UInt  +

uint

+
Long  +

long

+
ULong  +

ulong

+
LLong  +

llong

+
ULLong  +

ullong

+
Float  +

float

+
Double  +

double

+
LDouble  +

ldouble

+
Complexd  +

complexd

+
Complexld  +

complexld

+
BitArray  +

PIBitArray

+
ByteArray  +

PIByteArray

+
String  +

PIString

+
StringList  +

PIStringList

+
Time  +

PITime

+
Date  +

PIDate

+
DateTime  +

PIDateTime

+
SystemTime  +

PISystemTime

+
Custom  +

Custom

+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
bool PIVariant::toBool () const
+
+ +

Returns variant content as boolean.

+

In case of numeric types returns true if value != 0.
+In case of String type returns PIString::toBool().
+In case of StringList type returns false if string list is empty, otherwise returns PIString::toBool() of first string.
+In case of other types returns false.

+ +
+
+ +
+
+ + + + + + + +
int PIVariant::toInt () const
+
+ +

Returns variant content as int.

+

In case of numeric types returns integer value.
+In case of String type returns PIString::toInt().
+In case of StringList type returns 0 if string list is empty, otherwise returns PIString::toInt() of first string.
+In case of other types returns 0.

+ +
+
+ +
+
+ + + + + + + +
llong PIVariant::toLLong () const
+
+ +

Returns variant content as long long.

+

In case of numeric types returns integer value.
+In case of String type returns PIString::toLLong().
+In case of StringList type returns 0L if string list is empty, otherwise returns PIString::toLLong() of first string.
+In case of other types returns 0L.

+ +
+
+ +
+
+ + + + + + + +
float PIVariant::toFloat () const
+
+ +

Returns variant content as float.

+

In case of numeric types returns float value.
+In case of String type returns PIString::toFloat().
+In case of StringList type returns 0.f if string list is empty, otherwise returns PIString::toFloat() of first string.
+In case of other types returns 0.f.

+ +
+
+ +
+
+ + + + + + + +
double PIVariant::toDouble () const
+
+ +

Returns variant content as double.

+

In case of numeric types returns double value.
+In case of String type returns PIString::toDouble().
+In case of StringList type returns 0. if string list is empty, otherwise returns PIString::toDouble() of first string.
+In case of other types returns 0..

+ +
+
+ +
+
+ + + + + + + +
ldouble PIVariant::toLDouble () const
+
+ +

Returns variant content as long double.

+

In case of numeric types returns long double value.
+In case of String type returns PIString::toLDouble().
+In case of StringList type returns 0. if string list is empty, otherwise returns PIString::toLDouble() of first string.
+In case of other types returns 0..

+ +
+
+ +
+
+ + + + + + + +
complexd PIVariant::toComplexd () const
+
+ +

Returns variant content as complex.

+

In case of numeric types returns complex value.
+In case of String type returns PIString::toDouble().
+In case of StringList type returns 0. if string list is empty, otherwise returns PIString::toDouble() of first string.
+In case of other types returns 0..

+ +
+
+ +
+
+ + + + + + + +
complexld PIVariant::toComplexld () const
+
+ +

Returns variant content as long complex.

+

In case of numeric types returns long complex value.
+In case of String type returns PIString::toLDouble().
+In case of StringList type returns 0. if string list is empty, otherwise returns PIString::toLDouble() of first string.
+In case of other types returns 0..

+ +
+
+ +
+
+ + + + + + + +
PITime PIVariant::toTime () const
+
+ +

Returns variant content as time.

+

In case of Time type returns time value.
+In case of DateTime type returns time part of value.
+In case of other types returns PITime().

+ +
+
+ +
+
+ + + + + + + +
PIDate PIVariant::toDate () const
+
+ +

Returns variant content as date.

+

In case of Date type returns date value.
+In case of DateTime type returns date part of value.
+In case of other types returns PIDate().

+ +
+
+ +
+
+ + + + + + + +
PIDateTime PIVariant::toDateTime () const
+
+ +

Returns variant content as date and time.

+

In case of Time type returns time value with null date.
+In case of Date type returns date value with null time.
+In case of DateTime type returns date and time.
+In case of other types returns PIDateTime().

+ +
+
+ +
+
+ + + + + + + +
PISystemTime PIVariant::toSystemTime () const
+
+ +

Returns variant content as system time.

+

In case of SystemTime type returns system time.
+In case of other types returns PISystemTime::fromSeconds() from double value of variant content.

+ +
+
+ +
+
+ + + + + + + +
PIString PIVariant::toString () const
+
+ +

Returns variant content as string.

+

In case of numeric types returns PIString::fromNumber().
+In case of String type returns string value.
+In case of StringList type returns joined string ("(" + PIStringList::join("; ") + ")").
+In case of BitArray or ByteArray types returns number of bits/bytes.
+In case of Time, Date or DateTime types returns toString() of this values.
+In case of SystemTime types returns second and nanoseconds of time ("(PISystemTime::seconds s, PISystemTime::nanoseconds ns)").
+In case of other types returns "".

+ +
+
+ +
+
+ + + + + + + +
PIStringList PIVariant::toStringList () const
+
+ +

Returns variant content as strings list.

+

In case of StringList type returns strings list value.
+In case of other types returns PIStringList with one string value of variant content.

+ +
+
+ +
+
+ + + + + + + +
PIBitArray PIVariant::toBitArray () const
+
+ +

Returns variant content as bit array.

+

In case of BitArray type returns bit array value.
+In case of other types returns PIBitArray from toLLong() value.

+ +
+
+ +
+
+ + + + + + + +
PIByteArray PIVariant::toByteArray () const
+
+ +

Returns variant content as byte array.

+

In case of ByteArray type returns byte array value.
+In case of other types returns empty PIByteArray.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T PIVariant::toValue () const
+
+inline
+
+ +

Returns variant content as custom type.

+

In case of known types this function equivalent to<Type> function.
+Otherwise returns content as type T.

+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
static PIVariant PIVariant::fromValue (const T & v)
+
+inlinestatic
+
+ +

Returns new variant from custom type.

+

In case of known types this function equivalent PIVariant(T) constructors.
+Otherwise returns variant with content v and type Custom.

+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_variant.js b/doc/html/class_p_i_variant.js new file mode 100644 index 00000000..ba508d23 --- /dev/null +++ b/doc/html/class_p_i_variant.js @@ -0,0 +1,130 @@ +var class_p_i_variant = +[ + [ "Type", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdf", [ + [ "Invalid", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa45bf798ad32851c9044a3a5755856c5a", null ], + [ "Bool", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfaa3e49597dd8751e48ca20b830d7408bb", null ], + [ "Char", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa45c5f8b793d601954d4a9489370abe64", null ], + [ "UChar", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa513ed493f1e7b30342987c3516f81730", null ], + [ "Short", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa49c4522357ebcea946d477fd78eccd1c", null ], + [ "UShort", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa5d69d3e100a348885d1e8c2e70617b79", null ], + [ "Int", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa2eb3acbd36c03ef70cb7d1faa797e50f", null ], + [ "UInt", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa75efd8b4f684b3e23fdca5a3c9ce7616", null ], + [ "Long", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfada92306e4b6207dd807fea3db9569756", null ], + [ "ULong", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfaff5169e651a3109ba5ac4de618343fe5", null ], + [ "LLong", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa493d57852c824d39bdcaee57c9bfff92", null ], + [ "ULLong", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfae5edbc0259b17315545edd0949e8a2a8", null ], + [ "Float", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa802d8727c57bf77c21aaefb910cddf50", null ], + [ "Double", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfafee752a615286794d4468c72e886ab38", null ], + [ "LDouble", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa7f382b7fd8d07426b696d69ee7247876", null ], + [ "Complexd", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfaf163970dcba9d2f587327e38e5e38098", null ], + [ "Complexld", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfad1548d6221af498427f428a93d0af57f", null ], + [ "BitArray", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa150c2f8336b8aa55ba766aeae271a9ef", null ], + [ "ByteArray", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfaaf9c597dd4d7b17fe96746c96252a16f", null ], + [ "String", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa96a611933bbf5065a29e72e06196f547", null ], + [ "StringList", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfae25be87d1c676373a0356aeedf0e6914", null ], + [ "Time", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa0114b5413f8a42bb71769a22e306e4a1", null ], + [ "Date", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfaf14a1f410b3c192878fc246b45f45124", null ], + [ "DateTime", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa265d67fff2b590fb6765b3838a011c34", null ], + [ "SystemTime", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfa4fc51ffc735800b30adbc4176e3f29e4", null ], + [ "Custom", "class_p_i_variant.html#acc48ff0479fba2c5be5f491e24f40cdfad85616b3a0febed1905a631cfbc9782e", null ] + ] ], + [ "PIVariant", "class_p_i_variant.html#a83432da0a545ad6dd30429c0e1a583da", null ], + [ "PIVariant", "class_p_i_variant.html#aad0458975016273ccd939c7aec69b057", null ], + [ "PIVariant", "class_p_i_variant.html#a14d9afdc7c44865b982f673fa45b83e6", null ], + [ "PIVariant", "class_p_i_variant.html#ad8e268c9cb15c248e914068417e04ccc", null ], + [ "PIVariant", "class_p_i_variant.html#a0f5a040f137b2e048f75b2e18521eb17", null ], + [ "PIVariant", "class_p_i_variant.html#a11042a1ccf1c759055fb604cae320be0", null ], + [ "PIVariant", "class_p_i_variant.html#af7bf9ae6815e438a01b10b2aa546e8c4", null ], + [ "PIVariant", "class_p_i_variant.html#aee8eeff2d7a3ff2a478b428b9b2badd8", null ], + [ "PIVariant", "class_p_i_variant.html#aa670291ca1ec856cdc1887e594b1546f", null ], + [ "PIVariant", "class_p_i_variant.html#a1fe8d4126aaf5bdbbd61ef178df488cc", null ], + [ "PIVariant", "class_p_i_variant.html#a20a6fd9ce7d7de2e20440f722f28f379", null ], + [ "PIVariant", "class_p_i_variant.html#a7ce8905e74c36806ca004e845b67743b", null ], + [ "PIVariant", "class_p_i_variant.html#a0a1355062b5b8df0c88542c782a985d8", null ], + [ "PIVariant", "class_p_i_variant.html#a91dc6be82349d2d24cc642abf9c39e2e", null ], + [ "PIVariant", "class_p_i_variant.html#a4dcc306bce5d0601e9cea679e623d8bd", null ], + [ "PIVariant", "class_p_i_variant.html#a5a03fdaf8ee128358c289ada2c72686d", null ], + [ "PIVariant", "class_p_i_variant.html#adb79886a19bb0efb6e9c221eae8fb236", null ], + [ "PIVariant", "class_p_i_variant.html#a7b33912daf30f5e7cc7c333e4c7400c6", null ], + [ "PIVariant", "class_p_i_variant.html#a8882d5bfc67b3ff89e8ee9835cac3693", null ], + [ "PIVariant", "class_p_i_variant.html#aba63a29878c14870b7a045799452d93c", null ], + [ "PIVariant", "class_p_i_variant.html#ac48a86c19a56cd03f1432596d29204d2", null ], + [ "PIVariant", "class_p_i_variant.html#afccb4ddebcf51eb0241cc99ad46fa6e3", null ], + [ "PIVariant", "class_p_i_variant.html#a3dd80bbfa434bfa4b470192d728be08e", null ], + [ "PIVariant", "class_p_i_variant.html#a3d14c3eec0653cd7a2a1e2988e805499", null ], + [ "PIVariant", "class_p_i_variant.html#a1e71b4d50d2054edb27c23cbfc3416c3", null ], + [ "PIVariant", "class_p_i_variant.html#a1fc8d7e876930686d216924473da466e", null ], + [ "setValue", "class_p_i_variant.html#aa22bd1cc0c6999120bb3820407a8856d", null ], + [ "setValue", "class_p_i_variant.html#a7b5d811efd852064247c7f3b98589481", null ], + [ "setValue", "class_p_i_variant.html#a79fff573e5cc711dfd406cc1b669d6b8", null ], + [ "setValue", "class_p_i_variant.html#a5a8568a8de98e912570d98ebdff9152a", null ], + [ "setValue", "class_p_i_variant.html#abe151f6ec7620f2222690c3c1af39f5b", null ], + [ "setValue", "class_p_i_variant.html#a49a9d2ccbb6a1b37ba985ef490f2b7d6", null ], + [ "setValue", "class_p_i_variant.html#a5eedf14579aa37e4bd2ab018234569c5", null ], + [ "setValue", "class_p_i_variant.html#a2a7a792167f163f11c516a39ff91e6ff", null ], + [ "setValue", "class_p_i_variant.html#ab8cf4fe353f70dd45489ad9b1c50f9d4", null ], + [ "setValue", "class_p_i_variant.html#a4255c426d7e88890c8e57794ff0abd09", null ], + [ "setValue", "class_p_i_variant.html#ab517be43715e8ae0f7dcbd17f16c95bc", null ], + [ "setValue", "class_p_i_variant.html#abd64b1243486bf3ff8878652b9505d4f", null ], + [ "setValue", "class_p_i_variant.html#a13630b2d2dfdc27107bf357b251e0c80", null ], + [ "setValue", "class_p_i_variant.html#ab86b97b9877912321941535949a15598", null ], + [ "setValue", "class_p_i_variant.html#af319e808795d029290f1f687d5d6627d", null ], + [ "setValue", "class_p_i_variant.html#ad5831d2dd7d2c7d4f570396acbef007b", null ], + [ "setValue", "class_p_i_variant.html#a8ab2f1166f8db46e6e68e141ee8d4063", null ], + [ "setValue", "class_p_i_variant.html#aa29e76a4b699e244e3a6679b180c30e3", null ], + [ "setValue", "class_p_i_variant.html#a6c3abdf7e5d0eebe4506c8430f509ad8", null ], + [ "setValue", "class_p_i_variant.html#adb68d9f360dc5f60e4e9442da7c983ef", null ], + [ "setValue", "class_p_i_variant.html#a8b664f935ad023991ee626df2abac13e", null ], + [ "setValue", "class_p_i_variant.html#a09c393e5e299848c8e1d06c0497bce44", null ], + [ "setValue", "class_p_i_variant.html#a9dbf3e639c99af1780f9c753822d5034", null ], + [ "setValue", "class_p_i_variant.html#a39d61e31968269464f6023ecd1645241", null ], + [ "setValue", "class_p_i_variant.html#a0f176cc2e51a5ab7e8a275a71f5166c3", null ], + [ "toBool", "class_p_i_variant.html#a9adb44018cf731bad2b7dcce2dde3684", null ], + [ "toInt", "class_p_i_variant.html#aef7526f9ffb911ac818c13a4fa8de923", null ], + [ "toLLong", "class_p_i_variant.html#ad6f468658cc0803d7ec532c8ebaf394e", null ], + [ "toFloat", "class_p_i_variant.html#a7765fde4363c83ef630ca53ea23b447f", null ], + [ "toDouble", "class_p_i_variant.html#a3f92e859630f5c853c644b494a194798", null ], + [ "toLDouble", "class_p_i_variant.html#aa101193f0a15d6232a8ab6ed39dfcd66", null ], + [ "toComplexd", "class_p_i_variant.html#a95a6405618b51ea226fc1aa788ad2a90", null ], + [ "toComplexld", "class_p_i_variant.html#a02ed61b14e6a9c71510d5c4f05d218c4", null ], + [ "toTime", "class_p_i_variant.html#a5b25bc3f783d63dad8ee68720dbfa9ed", null ], + [ "toDate", "class_p_i_variant.html#af533ce32863a9954e7d761ef56ab582b", null ], + [ "toDateTime", "class_p_i_variant.html#a99afae3218f68cc74bda4af6baa467d4", null ], + [ "toSystemTime", "class_p_i_variant.html#af353cc0fba770fceb61a0dfa4d87eba7", null ], + [ "toString", "class_p_i_variant.html#ae9b75422814a712a2c52ecfe19ca13ba", null ], + [ "toStringList", "class_p_i_variant.html#a734a89a0951763bbdeae2cf16004684d", null ], + [ "toBitArray", "class_p_i_variant.html#a0b4708bac5608fa3676bf409b76b5d23", null ], + [ "toByteArray", "class_p_i_variant.html#acadd0aee889bc4bd59fdd8bae13410df", null ], + [ "toValue", "class_p_i_variant.html#a5b1b4af9ab4bdd8c5bda7a8223a6b6f5", null ], + [ "operator=", "class_p_i_variant.html#a8348e3800d46b52e3afae8b8be493692", null ], + [ "operator=", "class_p_i_variant.html#aae3e2a836db1066ec9a988de171db5bd", null ], + [ "operator=", "class_p_i_variant.html#a95188408fc11d25360d120e9b974a965", null ], + [ "operator=", "class_p_i_variant.html#ad8d679e9c3e4ddce28dcbd2191c4a248", null ], + [ "operator=", "class_p_i_variant.html#aaa33f033d5da8c323690347a2138e984", null ], + [ "operator=", "class_p_i_variant.html#a6d134cec08d18e014457361bc176362e", null ], + [ "operator=", "class_p_i_variant.html#a9f86b544ed5147ec28ea560a6482c598", null ], + [ "operator=", "class_p_i_variant.html#ae45947d53b31848e58df19625738be28", null ], + [ "operator=", "class_p_i_variant.html#adb43e3361dd35d92587d9a039a907551", null ], + [ "operator=", "class_p_i_variant.html#a699e80ad6decf492aff5dd100086484a", null ], + [ "operator=", "class_p_i_variant.html#a45470050a51f8f5ef7da6a48a3c415f1", null ], + [ "operator=", "class_p_i_variant.html#a586b73957d9bf2c9bc241425fea49fb3", null ], + [ "operator=", "class_p_i_variant.html#a4ed52cb18d70695c2c19fa0ace6a37fa", null ], + [ "operator=", "class_p_i_variant.html#af25ec28ea7753a63581a61ff8e3106f0", null ], + [ "operator=", "class_p_i_variant.html#a8c11a9a6c0d1b9a2898ae0fa5388dd8b", null ], + [ "operator=", "class_p_i_variant.html#a17757995e61037053092bdb8172de3b6", null ], + [ "operator=", "class_p_i_variant.html#acda1391727dae83b740e4ef1379af398", null ], + [ "operator=", "class_p_i_variant.html#a9e92c15a29b086618211a42dafc35e7e", null ], + [ "operator=", "class_p_i_variant.html#aea48e5b1ae0b1ab355cd8039241ca0d8", null ], + [ "operator=", "class_p_i_variant.html#affbe4aee3a0113e7a552731a282b18b0", null ], + [ "operator=", "class_p_i_variant.html#ab44d58a4818de512567826c59f7c6521", null ], + [ "operator=", "class_p_i_variant.html#a4f8012d64e5ff5272ec0904d6397ccaa", null ], + [ "operator=", "class_p_i_variant.html#a94878ddb843851c3f6b1f2250123584f", null ], + [ "operator=", "class_p_i_variant.html#a1a459fd1b2d325a785ef015ccc415e83", null ], + [ "operator=", "class_p_i_variant.html#a1a951922fc438f4011676edab67425e7", null ], + [ "operator=", "class_p_i_variant.html#ab0bf9ae63e3f3469a27066f958aa66a6", null ], + [ "operator==", "class_p_i_variant.html#ae6447e6fa8b7acc82abb30fd97a60a0e", null ], + [ "operator!=", "class_p_i_variant.html#a7e188a954fbc5d18bf3f3e825e463054", null ], + [ "type", "class_p_i_variant.html#abc974cec179287663d03da76fac7f928", null ], + [ "typeName", "class_p_i_variant.html#ad349e0701add42efffd83fb19dee1216", null ], + [ "isValid", "class_p_i_variant.html#a80e4379667f46e5a384144e77b9b1aa7", null ] +]; \ No newline at end of file diff --git a/doc/html/class_p_i_vector-members.html b/doc/html/class_p_i_vector-members.html new file mode 100644 index 00000000..69e01491 --- /dev/null +++ b/doc/html/class_p_i_vector-members.html @@ -0,0 +1,155 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIVector< T > Member List
+
+
+ +

This is the complete list of members for PIVector< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
back()PIVector< T >inline
back() const PIVector< T >inline
clear()PIVector< T >inline
compare_func(const T *t0, const T *t1)PIVector< T >inlinestatic
contains(const T &v) const PIVector< T >inline
enlarge(llong piv_size)PIVector< T >inline
etries(const T &v) const PIVector< T >inline
fill(const T &f=T())PIVector< T >inline
front()PIVector< T >inline
front() const PIVector< T >inline
isEmpty() const PIVector< T >inline
operator!=(const PIVector< T > &t) const PIVector< T >inline
operator<<(const PIVector< T > &other)PIVector< T >inline
operator==(const PIVector< T > &t) const PIVector< T >inline
PIVector()PIVector< T >inline
pop_back()PIVector< T >inline
pop_front()PIVector< T >inline
push_back(const T &v)PIVector< T >inline
push_front(const T &v)PIVector< T >inline
remove(size_t index, size_t count=1)PIVector< T >inline
removeAll(const T &v)PIVector< T >inline
removeOne(const T &v)PIVector< T >inline
resize(size_t new_size, const T &f=T())PIVector< T >inline
size() const PIVector< T >inline
size_s() const PIVector< T >inline
sort(CompareFunc compare=compare_func)PIVector< T >inline
take_back()PIVector< T >inline
take_front()PIVector< T >inline
+
+ + + + diff --git a/doc/html/class_p_i_vector.html b/doc/html/class_p_i_vector.html new file mode 100644 index 00000000..42c0c33a --- /dev/null +++ b/doc/html/class_p_i_vector.html @@ -0,0 +1,530 @@ + + + + + + +PIP: PIVector< T > Class Template Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIVector< T > Class Template Reference
+
+
+ +

Dynamic array of any type. + More...

+ +

Inherited by PIQueue< T >, and PIStack< T >.

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

+Public Member Functions

 PIVector ()
 
+size_t size () const
 Elements count.
 
+ssize_t size_s () const
 Elements count.
 
+bool isEmpty () const
 Return "true" if vector is empty, i.e. size = 0.
 
+T & back ()
 Last element of the vector.
 
+const T & back () const
 Last element of the vector.
 
+T & front ()
 First element of the vector.
 
+const T & front () const
 First element of the vector.
 
+bool operator== (const PIVector< T > &t) const
 Compare with vector "t".
 
+bool operator!= (const PIVector< T > &t) const
 Compare with vector "t".
 
+bool contains (const T &v) const
 Return "true" if vector has at least one element equal "t".
 
+int etries (const T &v) const
 Return how many times element "t" appears in vector.
 
+PIVector< T > & clear ()
 Clear vector. Equivalent to call "resize(0)"
 
PIVector< T > & fill (const T &f=T())
 Fill vector with elements "t" leave size is unchanged and return reference to vector. More...
 
PIVector< T > & resize (size_t new_size, const T &f=T())
 Resize vector to size "size". More...
 
PIVector< T > & remove (size_t index, size_t count=1)
 Remove one element by index "index" and return reference to vector. More...
 
PIVector< T > & sort (CompareFunc compare=compare_func)
 Sort vector using quick sort algorithm and standard compare function. More...
 
+PIVector< T > & enlarge (llong piv_size)
 Increase vector size with "size" elements.
 
PIVector< T > & removeOne (const T &v)
 Remove no more than one element equal "v" and return reference to vector. More...
 
PIVector< T > & removeAll (const T &v)
 Remove all elements equal "v" and return reference to vector. More...
 
+PIVector< T > & push_back (const T &v)
 Add new element "t" at the end of vector and return reference to vector.
 
+PIVector< T > & operator<< (const PIVector< T > &other)
 Add vector "t" at the end of vector and return reference to vector.
 
+PIVector< T > & push_front (const T &v)
 Add new element "t" at the beginning of vector and return reference to vector.
 
+PIVector< T > & pop_back ()
 Remove one element from the end of vector and return reference to vector.
 
+PIVector< T > & pop_front ()
 Remove one element from the beginning of vector and return reference to vector.
 
+T take_back ()
 Remove one element from the end of vector and return it.
 
+T take_front ()
 Remove one element from the beginning of vector and return it.
 
+ + + + +

+Static Public Member Functions

+static int compare_func (const T *t0, const T *t1)
 Standard compare function for type "Type". Return 0 if t0 = t1, -1 if t0 < t1 and 1 if t0 > t1.
 
+

Detailed Description

+

template<typename T>
+class PIVector< T >

+ +

Dynamic array of any type.

+

This class used to store dynamic array of any type of data. In memory data stored linear. You can insert item in any place of remove some items from any place. For quick add elements this is stream operator <<.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + +
PIVector< T >::PIVector ()
+
+inline
+
+

Contructs an empty vector

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
PIVector< T > & PIVector< T >::fill (const T & f = T())
+
+inline
+
+ +

Fill vector with elements "t" leave size is unchanged and return reference to vector.

+

Example:

+
vec << '1' << '2' << '3' << '4' << '5';
+
vec.fill('0');
+
piForeachC (char i, vec)
+
cout << i << ", ";
+
// 0, 0, 0, 0, 0,
+
+
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void PIVector< T >::resize (size_t new_size,
const T & f = T() 
)
+
+inline
+
+ +

Resize vector to size "size".

+

Elements removed from end of vector if new size < old size, or added new elements = "new_type" if new size > old size.
+Example:

+
vec << 1 << 2;
+
vec.resize(4);
+
piForeachC (int & i, vec)
+
cout << i << ", ";
+
// 1, 2, 0, 0,
+
vec.resize(3);
+
piForeachC (int & i, vec)
+
cout << i << ", ";
+
// 1, 2, 0,
+
See also
size(), clear()
+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
PIVector< T > & PIVector< T >::remove (size_t index,
size_t count = 1 
)
+
+inline
+
+ +

Remove one element by index "index" and return reference to vector.

+

Remove "count" elements by first index "index" and return reference to vector.

+

Example:

+
vec << '1' << '2' << '3' << '4' << '5';
+
vec.remove(1);
+
piForeachC (char i, vec)
+
cout << i << ", ";
+
// 1, 3, 4, 5,
+
See also
removeOne(), removeAll()
+

Example:

+
vec << '1' << '2' << '3' << '4' << '5';
+
vec.remove(2, 2);
+
piForeachC (char i, vec)
+
cout << i << ", ";
+
// 1, 2, 5,
+
See also
removeOne(), removeAll()
+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
PIVector< T > & PIVector< T >::sort (CompareFunc compare = compare_func)
+
+inline
+
+ +

Sort vector using quick sort algorithm and standard compare function.

+

Example:

+
vec << 3 << 2 << 5 << 1 << 4;
+
vec.sort();
+
piForeachC (int & i, vec)
+
cout << i << ", ";
+
// 1, 2, 3, 4, 5,
+

With custom compare function:

static int mycomp(const int * v0, const int * v1) {
+
if (*v0 == *v1) return 0;
+
return *v0 < *v1 ? 1 : -1;
+
}
+ +
vec << 3 << 2 << 5 << 1 << 4;
+
vec.sort(mycomp);
+
piForeachC (int & i, vec)
+
cout << i << ", ";
+
// 5, 4, 3, 2, 1,
+
+
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
PIVector< T > & PIVector< T >::removeOne (const T & v)
+
+inline
+
+ +

Remove no more than one element equal "v" and return reference to vector.

+

Example:

+
vec << '1' << '2' << '3' << '2' << '1';
+
vec.removeOne('2');
+
piForeachC (char i, vec)
+
cout << i << ", ";
+
// 1, 3, 2, 1,
+
See also
remove(), removeAll()
+ +
+
+ +
+
+
+template<typename T>
+ + + + + +
+ + + + + + + + +
PIVector< T > & PIVector< T >::removeAll (const T & v)
+
+inline
+
+ +

Remove all elements equal "v" and return reference to vector.

+

Example:

+
vec << '1' << '2' << '3' << '2' << '1';
+
vec.removeAll('2');
+
piForeachC (char i, vec)
+
cout << i << ", ";
+
// 1, 3, 1,
+
See also
remove(), removeOne()
+ +
+
+
+
+ + + + diff --git a/doc/html/class_p_i_vector.js b/doc/html/class_p_i_vector.js new file mode 100644 index 00000000..10a837dd --- /dev/null +++ b/doc/html/class_p_i_vector.js @@ -0,0 +1,30 @@ +var class_p_i_vector = +[ + [ "PIVector", "class_p_i_vector.html#a1c666fc2ba39eff314508f1420530875", null ], + [ "size", "class_p_i_vector.html#a5568ad6d26f2392f0a08b6c425774978", null ], + [ "size_s", "class_p_i_vector.html#a9c4a32a229a287b5c03b99e58cdb62ee", null ], + [ "isEmpty", "class_p_i_vector.html#a4b8a3f487b9d1d623133a4c9fea19734", null ], + [ "back", "class_p_i_vector.html#afb5b4f1521561b82ef18a740b89f3838", null ], + [ "back", "class_p_i_vector.html#ab6419acbdf9f34da326890b61a6b6888", null ], + [ "front", "class_p_i_vector.html#abf6923dacf515f1f433544717d615999", null ], + [ "front", "class_p_i_vector.html#a8a35924372d7c30bb030ad7baf7dc450", null ], + [ "operator==", "class_p_i_vector.html#a420281739970e13565154c788b60bf11", null ], + [ "operator!=", "class_p_i_vector.html#abb6e9b8e55b4dc6a4aa639c171f2c9d9", null ], + [ "contains", "class_p_i_vector.html#a569226732df6c45066820db07e09c87d", null ], + [ "etries", "class_p_i_vector.html#a6339bac7482c915be6ed983388cfc275", null ], + [ "clear", "class_p_i_vector.html#a1eac8cb055835b44a4d7b718e976fbc3", null ], + [ "fill", "class_p_i_vector.html#aa6b5cd062e622fa4e3460249c11a2eb2", null ], + [ "resize", "class_p_i_vector.html#af3dc895f63a2b64927918f1be97e8947", null ], + [ "remove", "class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3", null ], + [ "sort", "class_p_i_vector.html#ad05af044be450c64a351df48a96fea97", null ], + [ "enlarge", "class_p_i_vector.html#a834ee327d55d935cefe8358169bc4aee", null ], + [ "removeOne", "class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef", null ], + [ "removeAll", "class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f", null ], + [ "push_back", "class_p_i_vector.html#a6b0cf989ba342d06c8cf21a55d434a8e", null ], + [ "operator<<", "class_p_i_vector.html#a24a59359b4ddeadc529bf35a11f38f6f", null ], + [ "push_front", "class_p_i_vector.html#adadda79d8436c657fd6039e8e090da67", null ], + [ "pop_back", "class_p_i_vector.html#a8f5297d0ee721627ad8c545980756b68", null ], + [ "pop_front", "class_p_i_vector.html#a94b63d4c818f6e27415b8895f37805b9", null ], + [ "take_back", "class_p_i_vector.html#ae951eefed7d44357b714224d9f4558b1", null ], + [ "take_front", "class_p_i_vector.html#a69dbb89bfade5d2c6e4ad18c9a33f718", null ] +]; \ No newline at end of file diff --git a/doc/html/classes.html b/doc/html/classes.html new file mode 100644 index 00000000..153fffa8 --- /dev/null +++ b/doc/html/classes.html @@ -0,0 +1,149 @@ + + + + + + +PIP: Class Index + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Index
+
+
+
B | E | I | P | R | S | T
+ + + + + + + + + + + + + + + +
  B  
+
PIByteArray   PIFile   PIStateMachine   PIStateMachine::Rule   
PIChar   PIFlags   PIString   
  S  
+
PIConfig::Branch   PICLI   PIIODevice   PIStringList   
  E  
+
PICollection   PIKbdListener   PISystemTime   PIStateMachine::State   
PIConfig   PIMutex   PIThread   
  T  
+
PIConfig::Entry   PIConnection   PIObject   PITimeMeasurer   
  I  
+
PIConsole   PIPacketExtractor   PITimer   TransferFunction   
PICout   PIProcess   PIVariant   
PIEthernet::Interface   PIDiagnostics   PIProtocol   PIVector   
PIEthernet::InterfaceList   PIEthernet   PISerial   
  R  
+
  P  
+
PIEvaluator   PISet   
PIByteArray::RawData   
PIBinaryLog   
+
B | E | I | P | R | S | T
+
+
+ + + + diff --git a/doc/html/closed.png b/doc/html/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..5d349094df02ad4df9fcef96c56953f9c4ddf00a GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@1EvmP~>pExO(c% z$+I;R&Az3iOZoaVXoMtGX!Fk(VhFi)pM8NA^NolZ4530-*1!4xTIKeGMa<4y!gguw gdD);oDPb?C;c5|qzB?j`Kw}v^UHx3vIVCg!0Fw?YcK`qY literal 0 HcmV?d00001 diff --git a/doc/html/deprecated.html b/doc/html/deprecated.html new file mode 100644 index 00000000..6654d447 --- /dev/null +++ b/doc/html/deprecated.html @@ -0,0 +1,124 @@ + + + + + + +PIP: Deprecated List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Deprecated List
+
+
+
+
Member currentSystemTime ()
+
Use PISystemTime::current() instead
+
Member letobe_i (uint v)
+
+
Member letobe_s (ushort v)
+
+
+
+
+ + + + diff --git a/doc/html/dir_000001_000006.html b/doc/html/dir_000001_000006.html new file mode 100644 index 00000000..4c54ad68 --- /dev/null +++ b/doc/html/dir_000001_000006.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/_unsused -> math Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

_unsused → math Relation

File in src/_unsusedIncludes file in src/math
pigeometry.hpimath.h
+
+ + + + diff --git a/doc/html/dir_000002_000004.html b/doc/html/dir_000002_000004.html new file mode 100644 index 00000000..75afb946 --- /dev/null +++ b/doc/html/dir_000002_000004.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/code -> core Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000002_000005.html b/doc/html/dir_000002_000005.html new file mode 100644 index 00000000..0d4e5f0d --- /dev/null +++ b/doc/html/dir_000002_000005.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/code -> io Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000002_000006.html b/doc/html/dir_000002_000006.html new file mode 100644 index 00000000..c268cdd1 --- /dev/null +++ b/doc/html/dir_000002_000006.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/code -> math Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000003_000004.html b/doc/html/dir_000003_000004.html new file mode 100644 index 00000000..5da9f5fb --- /dev/null +++ b/doc/html/dir_000003_000004.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/containers -> core Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000004_000003.html b/doc/html/dir_000004_000003.html new file mode 100644 index 00000000..24e7381f --- /dev/null +++ b/doc/html/dir_000004_000003.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/core -> containers Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

core → containers Relation

File in src/coreIncludes file in src/containers
pibitarray.hpicontainers.h
+
+ + + + diff --git a/doc/html/dir_000004_000005.html b/doc/html/dir_000004_000005.html new file mode 100644 index 00000000..6a756dd8 --- /dev/null +++ b/doc/html/dir_000004_000005.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/core -> io Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

core → io Relation

File in src/coreIncludes file in src/io
piobject.cpppifile.h
+
+ + + + diff --git a/doc/html/dir_000004_000006.html b/doc/html/dir_000004_000006.html new file mode 100644 index 00000000..b0187c67 --- /dev/null +++ b/doc/html/dir_000004_000006.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/core -> math Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000004_000007.html b/doc/html/dir_000004_000007.html new file mode 100644 index 00000000..fd7dec3e --- /dev/null +++ b/doc/html/dir_000004_000007.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/core -> system Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

core → system Relation

File in src/coreIncludes file in src/system
piincludes.cpppiconsole.h
piinit.cpppiprocess.h
piinit.cpppisignals.h
+
+ + + + diff --git a/doc/html/dir_000004_000008.html b/doc/html/dir_000004_000008.html new file mode 100644 index 00000000..3dd8612e --- /dev/null +++ b/doc/html/dir_000004_000008.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/core -> thread Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

core → thread Relation

File in src/coreIncludes file in src/thread
piobject.hpimutex.h
+
+ + + + diff --git a/doc/html/dir_000005_000004.html b/doc/html/dir_000005_000004.html new file mode 100644 index 00000000..8a9ccbaa --- /dev/null +++ b/doc/html/dir_000005_000004.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/io -> core Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000005_000007.html b/doc/html/dir_000005_000007.html new file mode 100644 index 00000000..2393fac3 --- /dev/null +++ b/doc/html/dir_000005_000007.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/io -> system Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000005_000008.html b/doc/html/dir_000005_000008.html new file mode 100644 index 00000000..fc2fe740 --- /dev/null +++ b/doc/html/dir_000005_000008.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/io -> thread Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000006_000004.html b/doc/html/dir_000006_000004.html new file mode 100644 index 00000000..2a761fa2 --- /dev/null +++ b/doc/html/dir_000006_000004.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/math -> core Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000007_000003.html b/doc/html/dir_000007_000003.html new file mode 100644 index 00000000..a9bc4e6b --- /dev/null +++ b/doc/html/dir_000007_000003.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/system -> containers Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

system → containers Relation

File in src/systemIncludes file in src/containers
pisignals.hpicontainers.h
+
+ + + + diff --git a/doc/html/dir_000007_000005.html b/doc/html/dir_000007_000005.html new file mode 100644 index 00000000..2105e6d4 --- /dev/null +++ b/doc/html/dir_000007_000005.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/system -> io Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_000007_000008.html b/doc/html/dir_000007_000008.html new file mode 100644 index 00000000..75dfe839 --- /dev/null +++ b/doc/html/dir_000007_000008.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/system -> thread Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+

system → thread Relation

File in src/systemIncludes file in src/thread
pikbdlistener.hpithread.h
piprocess.hpithread.h
pisystemmonitor.hpithread.h
+
+ + + + diff --git a/doc/html/dir_000008_000004.html b/doc/html/dir_000008_000004.html new file mode 100644 index 00000000..120f414d --- /dev/null +++ b/doc/html/dir_000008_000004.html @@ -0,0 +1,113 @@ + + + + + + +PIP: src/thread -> core Relation + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/dir_0b61c55142250c0cc363383afd8075a4.html b/doc/html/dir_0b61c55142250c0cc363383afd8075a4.html new file mode 100644 index 00000000..37fe4eb6 --- /dev/null +++ b/doc/html/dir_0b61c55142250c0cc363383afd8075a4.html @@ -0,0 +1,151 @@ + + + + + + +PIP: src/containers Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
containers Directory Reference
+
+
+
+ + Directory dependency graph for containers:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  picontainers.cpp
 
file  picontainers.h
 Generic containers.
 
file  pideque.h
 Dynamic array of any type.
 
file  pimap.h
 Associative array with custom types of key and value.
 
file  piqueue.h
 
file  piset.h
 Set container.
 
file  pistack.h
 Stack container.
 
file  pivector.h
 Dynamic array of any type.
 
+
+
+ + + + diff --git a/doc/html/dir_0b61c55142250c0cc363383afd8075a4.js b/doc/html/dir_0b61c55142250c0cc363383afd8075a4.js new file mode 100644 index 00000000..086f3dc9 --- /dev/null +++ b/doc/html/dir_0b61c55142250c0cc363383afd8075a4.js @@ -0,0 +1,11 @@ +var dir_0b61c55142250c0cc363383afd8075a4 = +[ + [ "picontainers.h", "picontainers_8h.html", "picontainers_8h" ], + [ "pideque.h", "pideque_8h.html", null ], + [ "pimap.h", "pimap_8h.html", null ], + [ "piset.h", "piset_8h.html", [ + [ "PISet", "class_p_i_set.html", "class_p_i_set" ] + ] ], + [ "pistack.h", "pistack_8h.html", null ], + [ "pivector.h", "pivector_8h.html", "pivector_8h" ] +]; \ No newline at end of file diff --git a/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.map b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.map new file mode 100644 index 00000000..c894b581 --- /dev/null +++ b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.md5 b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.md5 new file mode 100644 index 00000000..79cf1c94 --- /dev/null +++ b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.md5 @@ -0,0 +1 @@ +6c944e828e6629ff262ff3ad6728a073 \ No newline at end of file diff --git a/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.svg b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.svg new file mode 100644 index 00000000..ef80a7a3 --- /dev/null +++ b/doc/html/dir_0b61c55142250c0cc363383afd8075a4_dep.svg @@ -0,0 +1,54 @@ + + + + + + +src/containers + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_0b61c55142250c0cc363383afd8075a4 + + +containers + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_0b61c55142250c0cc363383afd8075a4->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + + diff --git a/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e.html b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e.html new file mode 100644 index 00000000..5bffa9bd --- /dev/null +++ b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e.html @@ -0,0 +1,131 @@ + + + + + + +PIP: src/_unsused Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
_unsused Directory Reference
+
+
+
+ + Directory dependency graph for _unsused:
+
+
+ + + + + +

+Files

file  pigeometry.h
 
+
+
+ + + + diff --git a/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.map b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.map new file mode 100644 index 00000000..a514c6f3 --- /dev/null +++ b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.md5 b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.md5 new file mode 100644 index 00000000..055142a5 --- /dev/null +++ b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.md5 @@ -0,0 +1 @@ +6a30d074c1527d3b96f1b27a2fb420b7 \ No newline at end of file diff --git a/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg new file mode 100644 index 00000000..a351ae44 --- /dev/null +++ b/doc/html/dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg @@ -0,0 +1,45 @@ + + + + + + +src/_unsused + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_3edb929655fe9d5ef5f6ec0f70ce278e + + +_unsused + + + + +dir_ae9a93452e2a84339148a16bcf2eb561 + + +math + + + + +dir_3edb929655fe9d5ef5f6ec0f70ce278e->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + + diff --git a/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html new file mode 100644 index 00000000..cd3ae039 --- /dev/null +++ b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html @@ -0,0 +1,139 @@ + + + + + + +PIP: src/code Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
code Directory Reference
+
+
+
+ + Directory dependency graph for code:
+
+
+ + + + + + + + + + + + + +

+Files

file  picodeinfo.cpp
 
file  picodeinfo.h
 C++ code info structs.
 
file  picodeparser.cpp
 
file  picodeparser.h
 C++ code parser.
 
+
+
+ + + + diff --git a/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.js b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.js new file mode 100644 index 00000000..a45b0a65 --- /dev/null +++ b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.js @@ -0,0 +1,5 @@ +var dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1 = +[ + [ "picodeinfo.h", "picodeinfo_8h.html", null ], + [ "picodeparser.h", "picodeparser_8h.html", null ] +]; \ No newline at end of file diff --git a/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.map b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.map new file mode 100644 index 00000000..9fcb376d --- /dev/null +++ b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.map @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.md5 b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.md5 new file mode 100644 index 00000000..037e2752 --- /dev/null +++ b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.md5 @@ -0,0 +1 @@ +df357f4d6636ab3e8e24ba76102adaa6 \ No newline at end of file diff --git a/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg new file mode 100644 index 00000000..4fe47872 --- /dev/null +++ b/doc/html/dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg @@ -0,0 +1,115 @@ + + + + + + +src/code + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1 + + +code + + + + +dir_ae9a93452e2a84339148a16bcf2eb561 + + +math + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + +io + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +1 + + + + +dir_ae9a93452e2a84339148a16bcf2eb561->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + + diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html new file mode 100644 index 00000000..cc270c55 --- /dev/null +++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -0,0 +1,156 @@ + + + + + + +PIP: src Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
src Directory Reference
+
+
+
+ + Directory dependency graph for src:
+
+
+ + + + + + + + + + + + + + + + + + + +

+Directories

directory  _unsused
 
directory  code
 
directory  containers
 
directory  core
 
directory  io
 
directory  math
 
directory  system
 
directory  thread
 
+ + + + + + + + + +

+Files

file  pip.h
 
file  pip_export.h
 
file  pip_version_str.h
 
file  piversion.h
 
+
+
+ + + + diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js new file mode 100644 index 00000000..25b553e3 --- /dev/null +++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js @@ -0,0 +1,10 @@ +var dir_68267d1309a1af8e8297ef4c3efbcdba = +[ + [ "code", "dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html", "dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1" ], + [ "containers", "dir_0b61c55142250c0cc363383afd8075a4.html", "dir_0b61c55142250c0cc363383afd8075a4" ], + [ "core", "dir_aebb8dcc11953d78e620bbef0b9e2183.html", "dir_aebb8dcc11953d78e620bbef0b9e2183" ], + [ "io", "dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html", "dir_c184e51c84f2c3f0345bbc8a0d75d3e1" ], + [ "math", "dir_ae9a93452e2a84339148a16bcf2eb561.html", "dir_ae9a93452e2a84339148a16bcf2eb561" ], + [ "system", "dir_d501334aeb1b78ad67cd3c72c37b1e87.html", "dir_d501334aeb1b78ad67cd3c72c37b1e87" ], + [ "thread", "dir_bfedb72b9d87795234454f6223b9ab1e.html", "dir_bfedb72b9d87795234454f6223b9ab1e" ] +]; \ No newline at end of file diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map new file mode 100644 index 00000000..c7806e48 --- /dev/null +++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.map @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 new file mode 100644 index 00000000..e1792f34 --- /dev/null +++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.md5 @@ -0,0 +1 @@ +85aa1044293d8b9dc8c30197b927f9a6 \ No newline at end of file diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.svg b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.svg new file mode 100644 index 00000000..d8acf101 --- /dev/null +++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.svg @@ -0,0 +1,249 @@ + + + + + + +src + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + + + + + +dir_68267d1309a1af8e8297ef4c3efbcdba +src + + +dir_3edb929655fe9d5ef5f6ec0f70ce278e + + +_unsused + + + + +dir_ae9a93452e2a84339148a16bcf2eb561 + + +math + + + + +dir_3edb929655fe9d5ef5f6ec0f70ce278e->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1 + + +code + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + +io + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + +dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_0b61c55142250c0cc363383afd8075a4 + + +containers + + + + +dir_0b61c55142250c0cc363383afd8075a4->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87 + + +system + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +3 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e + + +thread + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_bfedb72b9d87795234454f6223b9ab1e + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_bfedb72b9d87795234454f6223b9ab1e + + + +5 + + + + +dir_ae9a93452e2a84339148a16bcf2eb561->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +5 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_bfedb72b9d87795234454f6223b9ab1e + + + +3 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +4 + + + + + diff --git a/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.html b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.html new file mode 100644 index 00000000..ac1b7197 --- /dev/null +++ b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.html @@ -0,0 +1,142 @@ + + + + + + +PIP: src/math Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
math Directory Reference
+
+
+
+ + Directory dependency graph for math:
+
+
+ + + + + + + + + + + + + + + + +

+Files

file  picrc.h
 CRC checksum calculator.
 
file  pievaluator.cpp
 
file  pievaluator.h
 Mathematic expressions calculator.
 
file  pimath.cpp
 
file  pimath.h
 Many mathematical functions and classes.
 
+
+
+ + + + diff --git a/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.js b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.js new file mode 100644 index 00000000..71c7051e --- /dev/null +++ b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561.js @@ -0,0 +1,6 @@ +var dir_ae9a93452e2a84339148a16bcf2eb561 = +[ + [ "picrc.h", "picrc_8h.html", null ], + [ "pievaluator.h", "pievaluator_8h.html", "pievaluator_8h" ], + [ "pimath.h", "pimath_8h.html", "pimath_8h" ] +]; \ No newline at end of file diff --git a/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.map b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.map new file mode 100644 index 00000000..9a019e85 --- /dev/null +++ b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.md5 b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.md5 new file mode 100644 index 00000000..73edcd63 --- /dev/null +++ b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.md5 @@ -0,0 +1 @@ +088d073675f5080b5b7de0d38b461cfc \ No newline at end of file diff --git a/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.svg b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.svg new file mode 100644 index 00000000..2d540aaf --- /dev/null +++ b/doc/html/dir_ae9a93452e2a84339148a16bcf2eb561_dep.svg @@ -0,0 +1,54 @@ + + + + + + +src/math + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_ae9a93452e2a84339148a16bcf2eb561 + + +math + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_ae9a93452e2a84339148a16bcf2eb561->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + + diff --git a/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html new file mode 100644 index 00000000..5d0299da --- /dev/null +++ b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html @@ -0,0 +1,182 @@ + + + + + + +PIP: src/core Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
core Directory Reference
+
+
+
+ + Directory dependency graph for core:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  pibitarray.h
 
file  pibytearray.cpp
 
file  pibytearray.h
 Byte array.
 
file  pichar.h
 Unicode char.
 
file  picli.cpp
 
file  picli.h
 Command-Line parser.
 
file  picollection.cpp
 
file  picollection.h
 Custom elements collection.
 
file  piincludes.cpp
 
file  piincludes.h
 Global includes of PIP.
 
file  piinit.cpp
 
file  piinit.h
 Initialization.
 
file  piobject.cpp
 
file  piobject.h
 Base object.
 
file  pistatemachine.h
 Base class for custom state machine.
 
file  pistring.cpp
 
file  pistring.h
 String.
 
file  pitime.cpp
 
file  pitime.h
 Time structs.
 
file  pivariant.cpp
 
file  pivariant.h
 Variant type.
 
+
+
+ + + + diff --git a/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.js b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.js new file mode 100644 index 00000000..696a083c --- /dev/null +++ b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183.js @@ -0,0 +1,20 @@ +var dir_aebb8dcc11953d78e620bbef0b9e2183 = +[ + [ "pibytearray.h", "pibytearray_8h.html", "pibytearray_8h" ], + [ "pichar.h", "pichar_8h.html", "pichar_8h" ], + [ "picli.h", "picli_8h.html", [ + [ "PICLI", "class_p_i_c_l_i.html", "class_p_i_c_l_i" ] + ] ], + [ "picollection.h", "picollection_8h.html", "picollection_8h" ], + [ "piincludes.h", "piincludes_8h.html", "piincludes_8h" ], + [ "piinit.h", "piinit_8h.html", null ], + [ "piobject.h", "piobject_8h.html", "piobject_8h" ], + [ "pistatemachine.h", "pistatemachine_8h.html", [ + [ "PIStateMachine", "class_p_i_state_machine.html", "class_p_i_state_machine" ], + [ "Rule", "struct_p_i_state_machine_1_1_rule.html", "struct_p_i_state_machine_1_1_rule" ], + [ "State", "struct_p_i_state_machine_1_1_state.html", "struct_p_i_state_machine_1_1_state" ] + ] ], + [ "pistring.h", "pistring_8h.html", "pistring_8h" ], + [ "pitime.h", "pitime_8h.html", "pitime_8h" ], + [ "pivariant.h", "pivariant_8h.html", "pivariant_8h" ] +]; \ No newline at end of file diff --git a/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.map b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.map new file mode 100644 index 00000000..0f4117de --- /dev/null +++ b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.map @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.md5 b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.md5 new file mode 100644 index 00000000..3f45b078 --- /dev/null +++ b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.md5 @@ -0,0 +1 @@ +d25cf8afa3006ecfc0f8ae147b5d078e \ No newline at end of file diff --git a/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.svg b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.svg new file mode 100644 index 00000000..8a5edbef --- /dev/null +++ b/doc/html/dir_aebb8dcc11953d78e620bbef0b9e2183_dep.svg @@ -0,0 +1,194 @@ + + + + + + +src/core + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87 + + +system + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +3 + + + + +dir_ae9a93452e2a84339148a16bcf2eb561 + + +math + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_ae9a93452e2a84339148a16bcf2eb561 + + + +1 + + + + +dir_0b61c55142250c0cc363383afd8075a4 + + +containers + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e + + +thread + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_bfedb72b9d87795234454f6223b9ab1e + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + +io + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_bfedb72b9d87795234454f6223b9ab1e + + + +3 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +5 + + + + +dir_ae9a93452e2a84339148a16bcf2eb561->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_0b61c55142250c0cc363383afd8075a4->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +4 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_bfedb72b9d87795234454f6223b9ab1e + + + +5 + + + + + diff --git a/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.html b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.html new file mode 100644 index 00000000..96a5d64d --- /dev/null +++ b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.html @@ -0,0 +1,144 @@ + + + + + + +PIP: src/thread Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
thread Directory Reference
+
+
+
+ + Directory dependency graph for thread:
+
+
+ + + + + + + + + + + + + + + + + + +

+Files

file  pimutex.cpp
 
file  pimutex.h
 Mutex.
 
file  pithread.cpp
 
file  pithread.h
 Thread.
 
file  pitimer.cpp
 
file  pitimer.h
 Timer.
 
+
+
+ + + + diff --git a/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.js b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.js new file mode 100644 index 00000000..a5c1e04e --- /dev/null +++ b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e.js @@ -0,0 +1,8 @@ +var dir_bfedb72b9d87795234454f6223b9ab1e = +[ + [ "pimutex.h", "pimutex_8h.html", [ + [ "PIMutex", "class_p_i_mutex.html", "class_p_i_mutex" ] + ] ], + [ "pithread.h", "pithread_8h.html", "pithread_8h" ], + [ "pitimer.h", "pitimer_8h.html", "pitimer_8h" ] +]; \ No newline at end of file diff --git a/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.map b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.map new file mode 100644 index 00000000..e972c6aa --- /dev/null +++ b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.md5 b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.md5 new file mode 100644 index 00000000..cb4cc1bb --- /dev/null +++ b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.md5 @@ -0,0 +1 @@ +801623d2df11acc4320bd75f0be17fc6 \ No newline at end of file diff --git a/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.svg b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.svg new file mode 100644 index 00000000..54125f81 --- /dev/null +++ b/doc/html/dir_bfedb72b9d87795234454f6223b9ab1e_dep.svg @@ -0,0 +1,54 @@ + + + + + + +src/thread + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_bfedb72b9d87795234454f6223b9ab1e + + +thread + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_bfedb72b9d87795234454f6223b9ab1e->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +4 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_bfedb72b9d87795234454f6223b9ab1e + + + +1 + + + + + diff --git a/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html new file mode 100644 index 00000000..0b9b22f5 --- /dev/null +++ b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html @@ -0,0 +1,197 @@ + + + + + + +PIP: src/io Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
io Directory Reference
+
+
+
+ + Directory dependency graph for io:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  pibinarylog.cpp
 
file  pibinarylog.h
 Binary log.
 
file  piconfig.cpp
 
file  piconfig.h
 Configuration file.
 
file  piconnection.cpp
 
file  piconnection.h
 Complex I/O point.
 
file  pidiagnostics.cpp
 
file  pidiagnostics.h
 Connection quality diagnostics.
 
file  pidir.cpp
 
file  pidir.h
 
file  piethernet.cpp
 
file  piethernet.h
 Ethernet device.
 
file  pifile.cpp
 
file  pifile.h
 Local file.
 
file  piiodevice.cpp
 
file  piiodevice.h
 Abstract input/output device.
 
file  pimultiprotocol.cpp
 
file  pimultiprotocol.h
 
file  pipacketextractor.cpp
 
file  pipacketextractor.h
 Packets extractor.
 
file  pipeer.cpp
 
file  pipeer.h
 Peering net node.
 
file  piprotocol.cpp
 
file  piprotocol.h
 Highly configurable from file I/O channel.
 
file  piserial.cpp
 
file  piserial.h
 Serial device.
 
file  piusb.cpp
 
file  piusb.h
 USB device.
 
+
+
+ + + + diff --git a/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.js b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.js new file mode 100644 index 00000000..8ea540a4 --- /dev/null +++ b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1.js @@ -0,0 +1,19 @@ +var dir_c184e51c84f2c3f0345bbc8a0d75d3e1 = +[ + [ "pibinarylog.h", "pibinarylog_8h.html", "pibinarylog_8h" ], + [ "piconfig.h", "piconfig_8h.html", "piconfig_8h" ], + [ "piconnection.h", "piconnection_8h.html", "piconnection_8h" ], + [ "pidiagnostics.h", "pidiagnostics_8h.html", [ + [ "PIDiagnostics", "class_p_i_diagnostics.html", "class_p_i_diagnostics" ] + ] ], + [ "piethernet.h", "piethernet_8h.html", "piethernet_8h" ], + [ "pifile.h", "pifile_8h.html", [ + [ "PIFile", "class_p_i_file.html", "class_p_i_file" ] + ] ], + [ "piiodevice.h", "piiodevice_8h.html", "piiodevice_8h" ], + [ "pipacketextractor.h", "pipacketextractor_8h.html", "pipacketextractor_8h" ], + [ "pipeer.h", "pipeer_8h.html", null ], + [ "piprotocol.h", "piprotocol_8h.html", "piprotocol_8h" ], + [ "piserial.h", "piserial_8h.html", "piserial_8h" ], + [ "piusb.h", "piusb_8h.html", null ] +]; \ No newline at end of file diff --git a/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.map b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.map new file mode 100644 index 00000000..b3ea941d --- /dev/null +++ b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.map @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.md5 b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.md5 new file mode 100644 index 00000000..1c750ffe --- /dev/null +++ b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.md5 @@ -0,0 +1 @@ +2d80bead2b53cdd8c096995a032579cc \ No newline at end of file diff --git a/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg new file mode 100644 index 00000000..c1ae5c46 --- /dev/null +++ b/doc/html/dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg @@ -0,0 +1,133 @@ + + + + + + +src/io + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + +io + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87 + + +system + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +1 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e + + +thread + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_bfedb72b9d87795234454f6223b9ab1e + + + +5 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183 + + +core + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +3 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +5 + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_bfedb72b9d87795234454f6223b9ab1e + + + +3 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e->dir_aebb8dcc11953d78e620bbef0b9e2183 + + + +4 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +1 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +3 + + + + +dir_aebb8dcc11953d78e620bbef0b9e2183->dir_bfedb72b9d87795234454f6223b9ab1e + + + +1 + + + + + diff --git a/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.html b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.html new file mode 100644 index 00000000..548001aa --- /dev/null +++ b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.html @@ -0,0 +1,165 @@ + + + + + + +PIP: src/system Directory Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
system Directory Reference
+
+
+
+ + Directory dependency graph for system:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  picodec.cpp
 
file  picodec.h
 
file  piconsole.cpp
 
file  piconsole.h
 Console output class.
 
file  pikbdlistener.cpp
 
file  pikbdlistener.h
 Keyboard console input listener.
 
file  pimonitor.cpp
 
file  pimonitor.h
 
file  piprocess.cpp
 
file  piprocess.h
 Process.
 
file  pisignals.cpp
 
file  pisignals.h
 System signals.
 
file  pisystemmonitor.cpp
 
file  pisystemmonitor.h
 
file  pisystemtests.cpp
 
file  pisystemtests.h
 
+
+
+ + + + diff --git a/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.js b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.js new file mode 100644 index 00000000..b7e02d07 --- /dev/null +++ b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87.js @@ -0,0 +1,9 @@ +var dir_d501334aeb1b78ad67cd3c72c37b1e87 = +[ + [ "piconsole.h", "piconsole_8h.html", "piconsole_8h" ], + [ "pikbdlistener.h", "pikbdlistener_8h.html", "pikbdlistener_8h" ], + [ "piprocess.h", "piprocess_8h.html", [ + [ "PIProcess", "class_p_i_process.html", null ] + ] ], + [ "pisignals.h", "pisignals_8h.html", null ] +]; \ No newline at end of file diff --git a/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.map b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.map new file mode 100644 index 00000000..50cac61c --- /dev/null +++ b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.map @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.md5 b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.md5 new file mode 100644 index 00000000..6027df1b --- /dev/null +++ b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.md5 @@ -0,0 +1 @@ +0497c31ad78dd66106d0ebfb6a6dec58 \ No newline at end of file diff --git a/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg new file mode 100644 index 00000000..6a2b22cb --- /dev/null +++ b/doc/html/dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg @@ -0,0 +1,97 @@ + + + + + + +src/system + +clusterdir_68267d1309a1af8e8297ef4c3efbcdba + + +src + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87 + + +system + + + + +dir_0b61c55142250c0cc363383afd8075a4 + + +containers + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_0b61c55142250c0cc363383afd8075a4 + + + +1 + + + + +dir_bfedb72b9d87795234454f6223b9ab1e + + +thread + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_bfedb72b9d87795234454f6223b9ab1e + + + +3 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + +io + + + + +dir_d501334aeb1b78ad67cd3c72c37b1e87->dir_c184e51c84f2c3f0345bbc8a0d75d3e1 + + + +5 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_d501334aeb1b78ad67cd3c72c37b1e87 + + + +1 + + + + +dir_c184e51c84f2c3f0345bbc8a0d75d3e1->dir_bfedb72b9d87795234454f6223b9ab1e + + + +5 + + + + + diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css new file mode 100644 index 00000000..80c1a4fb --- /dev/null +++ b/doc/html/doxygen.css @@ -0,0 +1,1440 @@ +/* The standard CSS for doxygen 1.8.8 */ + +body, table, div, p, dl { + 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 #9994C6; + color: #47417B; + 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; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @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: #EEEEF6; + border: 1px solid #B1ADD4; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #50498C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #5C54A0; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #ABA7D0; + color: #ffffff; + border: 1px double #9893C6; +} + +.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; +} + +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: 4px 6px; + margin: 4px 8px 4px 2px; + background-color: #FCFCFD; + border: 1px solid #CDCBE3; +} + +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.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; +} + +div.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); +} + +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: #EEEEF6; + font-weight: bold; + border: 1px solid #CDCBE3; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EEEEF6; + border: 1px solid #CDCBE3; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #F0F0F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + 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: #F8F8FB; + border-left: 2px solid #ABA7D0; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @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 #B1ADD4; +} + +th.dirtab { + background: #EEEEF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #6058A7; +} + +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: #FAFAFC; + 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 { + width: 100%; +} + +.memTemplParams { + color: #5C54A0; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #5C54A0; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EEEEF6; + border: 1px solid #B1ADD4; + 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: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #B5B2D6; + border-left: 1px solid #B5B2D6; + border-right: 1px solid #B5B2D6; + padding: 6px 0px 6px 0px; + color: #322E57; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E7E6F1; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #B5B2D6; + border-left: 1px solid #B5B2D6; + border-right: 1px solid #B5B2D6; + padding: 6px 10px 2px 10px; + background-color: #FCFCFD; + 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 { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .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: #8781BC; + border-top:1px solid #6C65AD; + border-left:1px solid #6C65AD; + border-right:1px solid #CDCBE3; + border-bottom:1px solid #CDCBE3; + 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 #ABA7D0; + border-bottom: 1px solid #ABA7D0; + 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: #F8F8FB; +} + +.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: #50498C; +} + +.arrow { + color: #ABA7D0; + -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: #8781BC; + 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('ftv2folderopen.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('ftv2folderclosed.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('ftv2doc.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: #393463; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #3C3769; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #494380; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #B5B2D6; + 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 #B5B2D6; + border-bottom: 1px solid #B5B2D6; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #B5B2D6; + /*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: #E7E6F1; + font-size: 90%; + color: #322E57; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -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 #B5B2D6; +} + + +.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:#9B96C8; + border:solid 1px #CBC9E2; + 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:#47427D; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #36325F; + 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:#7E78B7; +} + +.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:#47427D; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +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: #FAFAFC; + margin: 0px; + border-bottom: 1px solid #CDCBE3; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left: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.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left: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; +} + +#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 #6C65AD; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #A19CCB; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#443E76; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F6F6FA; + border: 1px solid #DEDDED; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +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; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #5C54A0; + 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; +} + +.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; + } +} + diff --git a/doc/html/doxygen.png b/doc/html/doxygen.png new file mode 100644 index 0000000000000000000000000000000000000000..4cfa4898ccbb20c79a6d4dc76d55316b3e3d9959 GIT binary patch literal 3839 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 literal 0 HcmV?d00001 diff --git a/doc/html/files.html b/doc/html/files.html new file mode 100644 index 00000000..b2a49db3 --- /dev/null +++ b/doc/html/files.html @@ -0,0 +1,175 @@ + + + + + + +PIP: File List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all documented files with brief descriptions:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  src
  code
 picodeinfo.hC++ code info structs
 picodeparser.hC++ code parser
  containers
 picontainers.hGeneric containers
 pideque.hDynamic array of any type
 pimap.hAssociative array with custom types of key and value
 piset.hSet container
 pistack.hStack container
 pivector.hDynamic array of any type
  core
 pibytearray.hByte array
 pichar.hUnicode char
 picli.hCommand-Line parser
 picollection.hCustom elements collection
 piincludes.hGlobal includes of PIP
 piinit.hInitialization
 piobject.hBase object
 pistatemachine.hBase class for custom state machine
 pistring.hString
 pitime.hTime structs
 pivariant.hVariant type
  io
 pibinarylog.hBinary log
 piconfig.hConfiguration file
 piconnection.hComplex I/O point
 pidiagnostics.hConnection quality diagnostics
 piethernet.hEthernet device
 pifile.hLocal file
 piiodevice.hAbstract input/output device
 pipacketextractor.hPackets extractor
 pipeer.hPeering net node
 piprotocol.hHighly configurable from file I/O channel
 piserial.hSerial device
 piusb.hUSB device
  math
 picrc.hCRC checksum calculator
 pievaluator.hMathematic expressions calculator
 pimath.hMany mathematical functions and classes
  system
 piconsole.hConsole output class
 pikbdlistener.hKeyboard console input listener
 piprocess.hProcess
 pisignals.hSystem signals
  thread
 pimutex.hMutex
 pithread.hThread
 pitimer.hTimer
+
+
+
+ + + + diff --git a/doc/html/files.js b/doc/html/files.js new file mode 100644 index 00000000..04b0a8ee --- /dev/null +++ b/doc/html/files.js @@ -0,0 +1,4 @@ +var files = +[ + [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] +]; \ No newline at end of file diff --git a/doc/html/ftv2blank.png b/doc/html/ftv2blank.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/html/ftv2doc.png b/doc/html/ftv2doc.png new file mode 100644 index 0000000000000000000000000000000000000000..c53844829a2f69e7b776883fb817bdd2a8c30ced GIT binary patch literal 756 zcmV6k-I8pcoJ}F@9jw#EmXACPuezT#>k_OE<3ExbYv+ zg(j{@*ce6m&^IrFh?b8cE%XEGy|-e7&fvnZaB(wF<~F(aJm;L}Ii0OmE|&pz3=V*u z#EuiV0JdUcEL|>@)+rR$)bCPhjc-eNmY4IGrU%1tVfx)f>;2R>1T+9UI8&(= z5NL`-2Hx1a-A+X!+wmG;u-pe{A$C<@GY%Jx#oRHKUvr3LBy_ zC(X$kvLbuA^7)G6fK88Wi#B?H>_n>&vmTGfrS_)>_Hw8@PS=q*4Y2@$poiKzlVZ`D zz`guY6-KV}Bl^lUrHlBBmk$@xp| z9PMl7@|6zyj<;~Ws87fEDbi zf6Ri^Kvt1RhWRvAtwD!)1K8oWE|MAyTx_GK*IEOa#D*aNw!)HNUHD#JlHVdZ$+GYA zFTy9LxS=tiw2=cAiJCu?k#_*L!m>s3@R^f?OimBuaaV!>SRr4?lGuHS!F#s>s$fab m+ux!+eenR`kMZ|^GQR^5u)@d*WWK`y0000A!SW-Y&(8DnYx~};h7bY(=B5+?%u{m*WB?$lZ(o0j zAN@Z7CUviB;_&TD0{~`GB7n@x+gaT=3GvV~UK=d*&Rku<`w#WdNV?nY0+`eF&<kUJBC}@e*srSAFnP} RYQq2k002ovPDHLkV1m@22Lu2B literal 0 HcmV?d00001 diff --git a/doc/html/ftv2folderopen.png b/doc/html/ftv2folderopen.png new file mode 100644 index 0000000000000000000000000000000000000000..26ba14eb78a792a88d1f0f44d595f04d6eaef8da GIT binary patch literal 590 zcmV-U0Ni;7uDA)-$qNQMM;a9M-Fpa_$ZDQfauC#!geCq z7MHKI3j;fz=Kdh&fK@SeTXMLNuU`n*N`-7XeE~Xgd0&L#hQZhBk z%SpXxZ+;SBgo-~mAInqAHGgTPu5H#&w|u!HXUC40ACF`Z8D9tZTloKv c1~3x80AYU^VSj6@^8f$<07*qoM6N<$f+!Ri5C8xG literal 0 HcmV?d00001 diff --git a/doc/html/ftv2lastnode.png b/doc/html/ftv2lastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/html/ftv2link.png b/doc/html/ftv2link.png new file mode 100644 index 0000000000000000000000000000000000000000..c53844829a2f69e7b776883fb817bdd2a8c30ced GIT binary patch literal 756 zcmV6k-I8pcoJ}F@9jw#EmXACPuezT#>k_OE<3ExbYv+ zg(j{@*ce6m&^IrFh?b8cE%XEGy|-e7&fvnZaB(wF<~F(aJm;L}Ii0OmE|&pz3=V*u z#EuiV0JdUcEL|>@)+rR$)bCPhjc-eNmY4IGrU%1tVfx)f>;2R>1T+9UI8&(= z5NL`-2Hx1a-A+X!+wmG;u-pe{A$C<@GY%Jx#oRHKUvr3LBy_ zC(X$kvLbuA^7)G6fK88Wi#B?H>_n>&vmTGfrS_)>_Hw8@PS=q*4Y2@$poiKzlVZ`D zz`guY6-KV}Bl^lUrHlBBmk$@xp| z9PMl7@|6zyj<;~Ws87fEDbi zf6Ri^Kvt1RhWRvAtwD!)1K8oWE|MAyTx_GK*IEOa#D*aNw!)HNUHD#JlHVdZ$+GYA zFTy9LxS=tiw2=cAiJCu?k#_*L!m>s3@R^f?OimBuaaV!>SRr4?lGuHS!F#s>s$fab m+ux!+eenR`kMZ|^GQR^5u)@d*WWK`y0000Kx0S{NX%maAh38eVK^j+DYO;v#1oU8 zKPR{CoHo53zcG#@{FzPo4|Bi@0=A~b<@v*FY#SOp?GL* znZHM&+8qqx9aFu91^nb!Kz4bKonfkzjDOt^6jZyA#iy~C@A5JA1=Q%Z@hE(R18C6< s$ga1sz4#JZbRSYazJVU|&$JE!pGDXq-|S>iYybcN07*qoM6N<$g57#vQ2+n{ literal 0 HcmV?d00001 diff --git a/doc/html/ftv2mnode.png b/doc/html/ftv2mnode.png new file mode 100644 index 0000000000000000000000000000000000000000..22d5cd562233479eca6e8ee8f9eb118354063d0a GIT binary patch literal 242 zcmVKx0S{NX%maAh38eVK^j+DYO;v#1oU8 zKPR{CoHo53zcG#@{FzPo4|Bi@0=A~b<@v*FY#SOp?GL* znZHM&+8qqx9aFu91^nb!Kz4bKonfkzjDOt^6jZyA#iy~C@A5JA1=Q%Z@hE(R18C6< s$ga1sz4#JZbRSYazJVU|&$JE!pGDXq-|S>iYybcN07*qoM6N<$g57#vQ2+n{ literal 0 HcmV?d00001 diff --git a/doc/html/ftv2node.png b/doc/html/ftv2node.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/html/ftv2plastnode.png b/doc/html/ftv2plastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..49ad225c1a4b598b14fe471631d6f4118618566e GIT binary patch literal 232 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QtLfk978G?-_G67dB{P+eZEiu zuP&?jh7H>%<|IhBnD9Mdx^>H%<|IhBnD9Mdx^>H-{AmhX=Jf(#6djGiuzAr*{o?{4%GOAu*z z_|9tq`@A7#0gEfIIfg*__t`e?-Zp1LZG?dho z6k7lPw{zd}qlbRY7SDdI?LXi4=Z}|PlXli``uOeY!}FJ?uReeN{5rXR*JbbCxwH1$ z>mQ%W{#pFEdr_%p5yxVULmFKMUBoe8*ni=FW^eQBgYcXvV3;s?y85}Sb4q9e0CYx% AyZ`_I literal 0 HcmV?d00001 diff --git a/doc/html/ftv2vertline.png b/doc/html/ftv2vertline.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/doc/html/functions.html b/doc/html/functions.html new file mode 100644 index 00000000..4073161e --- /dev/null +++ b/doc/html/functions.html @@ -0,0 +1,261 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- a -

+
+
+ + + + diff --git a/doc/html/functions_b.html b/doc/html/functions_b.html new file mode 100644 index 00000000..6fe60709 --- /dev/null +++ b/doc/html/functions_b.html @@ -0,0 +1,236 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- b -

+
+
+ + + + diff --git a/doc/html/functions_c.html b/doc/html/functions_c.html new file mode 100644 index 00000000..e1d8863d --- /dev/null +++ b/doc/html/functions_c.html @@ -0,0 +1,340 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- c -

+
+
+ + + + diff --git a/doc/html/functions_d.html b/doc/html/functions_d.html new file mode 100644 index 00000000..6225c3d6 --- /dev/null +++ b/doc/html/functions_d.html @@ -0,0 +1,235 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- d -

+
+
+ + + + diff --git a/doc/html/functions_dup.js b/doc/html/functions_dup.js new file mode 100644 index 00000000..64a6e5b6 --- /dev/null +++ b/doc/html/functions_dup.js @@ -0,0 +1,27 @@ +var functions_dup = +[ + [ "a", "functions.html", null ], + [ "b", "functions_b.html", null ], + [ "c", "functions_c.html", null ], + [ "d", "functions_d.html", null ], + [ "e", "functions_e.html", null ], + [ "f", "functions_f.html", null ], + [ "g", "functions_g.html", null ], + [ "h", "functions_h.html", null ], + [ "i", "functions_i.html", null ], + [ "j", "functions_j.html", null ], + [ "k", "functions_k.html", null ], + [ "l", "functions_l.html", null ], + [ "m", "functions_m.html", null ], + [ "n", "functions_n.html", null ], + [ "o", "functions_o.html", null ], + [ "p", "functions_p.html", null ], + [ "q", "functions_q.html", null ], + [ "r", "functions_r.html", null ], + [ "s", "functions_s.html", null ], + [ "t", "functions_t.html", null ], + [ "u", "functions_u.html", null ], + [ "v", "functions_v.html", null ], + [ "w", "functions_w.html", null ], + [ "y", "functions_y.html", null ] +]; \ No newline at end of file diff --git a/doc/html/functions_e.html b/doc/html/functions_e.html new file mode 100644 index 00000000..16d38473 --- /dev/null +++ b/doc/html/functions_e.html @@ -0,0 +1,295 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- e -

+
+
+ + + + diff --git a/doc/html/functions_enum.html b/doc/html/functions_enum.html new file mode 100644 index 00000000..24eb1868 --- /dev/null +++ b/doc/html/functions_enum.html @@ -0,0 +1,165 @@ + + + + + + +PIP: Class Members - Enumerations + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/doc/html/functions_eval.html b/doc/html/functions_eval.html new file mode 100644 index 00000000..c16f9d88 --- /dev/null +++ b/doc/html/functions_eval.html @@ -0,0 +1,520 @@ + + + + + + +PIP: Class Members - Enumerator + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- f -

+ + +

- g -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- w -

+ + +

- y -

+
+
+ + + + diff --git a/doc/html/functions_f.html b/doc/html/functions_f.html new file mode 100644 index 00000000..ff47f2f9 --- /dev/null +++ b/doc/html/functions_f.html @@ -0,0 +1,264 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- f -

+
+
+ + + + diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html new file mode 100644 index 00000000..59a670d1 --- /dev/null +++ b/doc/html/functions_func.html @@ -0,0 +1,241 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+
+
+ + + + diff --git a/doc/html/functions_func.js b/doc/html/functions_func.js new file mode 100644 index 00000000..e9685c0f --- /dev/null +++ b/doc/html/functions_func.js @@ -0,0 +1,26 @@ +var functions_func = +[ + [ "a", "functions_func.html", null ], + [ "b", "functions_func_b.html", null ], + [ "c", "functions_func_c.html", null ], + [ "d", "functions_func_d.html", null ], + [ "e", "functions_func_e.html", null ], + [ "f", "functions_func_f.html", null ], + [ "g", "functions_func_g.html", null ], + [ "h", "functions_func_h.html", null ], + [ "i", "functions_func_i.html", null ], + [ "j", "functions_func_j.html", null ], + [ "k", "functions_func_k.html", null ], + [ "l", "functions_func_l.html", null ], + [ "m", "functions_func_m.html", null ], + [ "n", "functions_func_n.html", null ], + [ "o", "functions_func_o.html", null ], + [ "p", "functions_func_p.html", null ], + [ "q", "functions_func_q.html", null ], + [ "r", "functions_func_r.html", null ], + [ "s", "functions_func_s.html", null ], + [ "t", "functions_func_t.html", null ], + [ "u", "functions_func_u.html", null ], + [ "v", "functions_func_v.html", null ], + [ "w", "functions_func_w.html", null ] +]; \ No newline at end of file diff --git a/doc/html/functions_func_b.html b/doc/html/functions_func_b.html new file mode 100644 index 00000000..aeabb5fa --- /dev/null +++ b/doc/html/functions_func_b.html @@ -0,0 +1,174 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- b -

+
+
+ + + + diff --git a/doc/html/functions_func_c.html b/doc/html/functions_func_c.html new file mode 100644 index 00000000..e96b2ed7 --- /dev/null +++ b/doc/html/functions_func_c.html @@ -0,0 +1,285 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- c -

+
+
+ + + + diff --git a/doc/html/functions_func_d.html b/doc/html/functions_func_d.html new file mode 100644 index 00000000..19e6e58c --- /dev/null +++ b/doc/html/functions_func_d.html @@ -0,0 +1,201 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- d -

+
+
+ + + + diff --git a/doc/html/functions_func_e.html b/doc/html/functions_func_e.html new file mode 100644 index 00000000..98862ffc --- /dev/null +++ b/doc/html/functions_func_e.html @@ -0,0 +1,240 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- e -

+
+
+ + + + diff --git a/doc/html/functions_func_f.html b/doc/html/functions_func_f.html new file mode 100644 index 00000000..ae7c93a8 --- /dev/null +++ b/doc/html/functions_func_f.html @@ -0,0 +1,244 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- f -

+
+
+ + + + diff --git a/doc/html/functions_func_g.html b/doc/html/functions_func_g.html new file mode 100644 index 00000000..4191b8bb --- /dev/null +++ b/doc/html/functions_func_g.html @@ -0,0 +1,188 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- g -

+
+
+ + + + diff --git a/doc/html/functions_func_h.html b/doc/html/functions_func_h.html new file mode 100644 index 00000000..d9b3b841 --- /dev/null +++ b/doc/html/functions_func_h.html @@ -0,0 +1,165 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_func_i.html b/doc/html/functions_func_i.html new file mode 100644 index 00000000..0c2d1310 --- /dev/null +++ b/doc/html/functions_func_i.html @@ -0,0 +1,271 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- i -

+
+
+ + + + diff --git a/doc/html/functions_func_j.html b/doc/html/functions_func_j.html new file mode 100644 index 00000000..e3b945f2 --- /dev/null +++ b/doc/html/functions_func_j.html @@ -0,0 +1,168 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_func_k.html b/doc/html/functions_func_k.html new file mode 100644 index 00000000..1af67442 --- /dev/null +++ b/doc/html/functions_func_k.html @@ -0,0 +1,166 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_func_l.html b/doc/html/functions_func_l.html new file mode 100644 index 00000000..8cd0e69b --- /dev/null +++ b/doc/html/functions_func_l.html @@ -0,0 +1,184 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- l -

+
+
+ + + + diff --git a/doc/html/functions_func_m.html b/doc/html/functions_func_m.html new file mode 100644 index 00000000..0e6bc826 --- /dev/null +++ b/doc/html/functions_func_m.html @@ -0,0 +1,180 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- m -

+
+
+ + + + diff --git a/doc/html/functions_func_n.html b/doc/html/functions_func_n.html new file mode 100644 index 00000000..5bd3c473 --- /dev/null +++ b/doc/html/functions_func_n.html @@ -0,0 +1,175 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- n -

+
+
+ + + + diff --git a/doc/html/functions_func_o.html b/doc/html/functions_func_o.html new file mode 100644 index 00000000..c0be8f23 --- /dev/null +++ b/doc/html/functions_func_o.html @@ -0,0 +1,323 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- o -

+
+
+ + + + diff --git a/doc/html/functions_func_p.html b/doc/html/functions_func_p.html new file mode 100644 index 00000000..e0720f85 --- /dev/null +++ b/doc/html/functions_func_p.html @@ -0,0 +1,299 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- p -

+
+
+ + + + diff --git a/doc/html/functions_func_q.html b/doc/html/functions_func_q.html new file mode 100644 index 00000000..bdb6ee03 --- /dev/null +++ b/doc/html/functions_func_q.html @@ -0,0 +1,174 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- q -

+
+
+ + + + diff --git a/doc/html/functions_func_r.html b/doc/html/functions_func_r.html new file mode 100644 index 00000000..d08d1371 --- /dev/null +++ b/doc/html/functions_func_r.html @@ -0,0 +1,336 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- r -

+
+
+ + + + diff --git a/doc/html/functions_func_s.html b/doc/html/functions_func_s.html new file mode 100644 index 00000000..af6263db --- /dev/null +++ b/doc/html/functions_func_s.html @@ -0,0 +1,435 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- s -

+
+
+ + + + diff --git a/doc/html/functions_func_t.html b/doc/html/functions_func_t.html new file mode 100644 index 00000000..a54c5067 --- /dev/null +++ b/doc/html/functions_func_t.html @@ -0,0 +1,351 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- t -

+
+
+ + + + diff --git a/doc/html/functions_func_u.html b/doc/html/functions_func_u.html new file mode 100644 index 00000000..ea446f4a --- /dev/null +++ b/doc/html/functions_func_u.html @@ -0,0 +1,169 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_func_v.html b/doc/html/functions_func_v.html new file mode 100644 index 00000000..913d7318 --- /dev/null +++ b/doc/html/functions_func_v.html @@ -0,0 +1,177 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- v -

+
+
+ + + + diff --git a/doc/html/functions_func_w.html b/doc/html/functions_func_w.html new file mode 100644 index 00000000..91bee8e5 --- /dev/null +++ b/doc/html/functions_func_w.html @@ -0,0 +1,187 @@ + + + + + + +PIP: Class Members - Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- w -

+
+
+ + + + diff --git a/doc/html/functions_g.html b/doc/html/functions_g.html new file mode 100644 index 00000000..e303fd17 --- /dev/null +++ b/doc/html/functions_g.html @@ -0,0 +1,196 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- g -

+
+
+ + + + diff --git a/doc/html/functions_h.html b/doc/html/functions_h.html new file mode 100644 index 00000000..90bbfa86 --- /dev/null +++ b/doc/html/functions_h.html @@ -0,0 +1,182 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- h -

+
+
+ + + + diff --git a/doc/html/functions_i.html b/doc/html/functions_i.html new file mode 100644 index 00000000..1fcabb2f --- /dev/null +++ b/doc/html/functions_i.html @@ -0,0 +1,311 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- i -

+
+
+ + + + diff --git a/doc/html/functions_j.html b/doc/html/functions_j.html new file mode 100644 index 00000000..21ae90ac --- /dev/null +++ b/doc/html/functions_j.html @@ -0,0 +1,169 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- j -

+
+
+ + + + diff --git a/doc/html/functions_k.html b/doc/html/functions_k.html new file mode 100644 index 00000000..48dbb14a --- /dev/null +++ b/doc/html/functions_k.html @@ -0,0 +1,167 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- k -

+
+
+ + + + diff --git a/doc/html/functions_l.html b/doc/html/functions_l.html new file mode 100644 index 00000000..5c8b0f1a --- /dev/null +++ b/doc/html/functions_l.html @@ -0,0 +1,200 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- l -

+
+
+ + + + diff --git a/doc/html/functions_m.html b/doc/html/functions_m.html new file mode 100644 index 00000000..547c6061 --- /dev/null +++ b/doc/html/functions_m.html @@ -0,0 +1,187 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- m -

+
+
+ + + + diff --git a/doc/html/functions_n.html b/doc/html/functions_n.html new file mode 100644 index 00000000..e3adc80e --- /dev/null +++ b/doc/html/functions_n.html @@ -0,0 +1,193 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- n -

+
+
+ + + + diff --git a/doc/html/functions_o.html b/doc/html/functions_o.html new file mode 100644 index 00000000..ec6e213f --- /dev/null +++ b/doc/html/functions_o.html @@ -0,0 +1,331 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- o -

+
+
+ + + + diff --git a/doc/html/functions_p.html b/doc/html/functions_p.html new file mode 100644 index 00000000..30bd6b49 --- /dev/null +++ b/doc/html/functions_p.html @@ -0,0 +1,342 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- p -

+
+
+ + + + diff --git a/doc/html/functions_q.html b/doc/html/functions_q.html new file mode 100644 index 00000000..b59c093f --- /dev/null +++ b/doc/html/functions_q.html @@ -0,0 +1,181 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- q -

+
+
+ + + + diff --git a/doc/html/functions_r.html b/doc/html/functions_r.html new file mode 100644 index 00000000..c936ced4 --- /dev/null +++ b/doc/html/functions_r.html @@ -0,0 +1,358 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- r -

+
+
+ + + + diff --git a/doc/html/functions_rela.html b/doc/html/functions_rela.html new file mode 100644 index 00000000..3e82a340 --- /dev/null +++ b/doc/html/functions_rela.html @@ -0,0 +1,323 @@ + + + + + + +PIP: Class Members - Related Functions + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- h -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- w -

+
+
+ + + + diff --git a/doc/html/functions_s.html b/doc/html/functions_s.html new file mode 100644 index 00000000..11693a17 --- /dev/null +++ b/doc/html/functions_s.html @@ -0,0 +1,469 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- s -

+
+
+ + + + diff --git a/doc/html/functions_t.html b/doc/html/functions_t.html new file mode 100644 index 00000000..3b807ec0 --- /dev/null +++ b/doc/html/functions_t.html @@ -0,0 +1,384 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- t -

+
+
+ + + + diff --git a/doc/html/functions_type.html b/doc/html/functions_type.html new file mode 100644 index 00000000..90732e4b --- /dev/null +++ b/doc/html/functions_type.html @@ -0,0 +1,139 @@ + + + + + + +PIP: Class Members - Typedefs + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_u.html b/doc/html/functions_u.html new file mode 100644 index 00000000..887d997b --- /dev/null +++ b/doc/html/functions_u.html @@ -0,0 +1,198 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- u -

+
+
+ + + + diff --git a/doc/html/functions_v.html b/doc/html/functions_v.html new file mode 100644 index 00000000..924ceb0f --- /dev/null +++ b/doc/html/functions_v.html @@ -0,0 +1,179 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- v -

+
+
+ + + + diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html new file mode 100644 index 00000000..1e491fa3 --- /dev/null +++ b/doc/html/functions_vars.html @@ -0,0 +1,196 @@ + + + + + + +PIP: Class Members - Variables + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/functions_w.html b/doc/html/functions_w.html new file mode 100644 index 00000000..0e165fc8 --- /dev/null +++ b/doc/html/functions_w.html @@ -0,0 +1,209 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- w -

+
+
+ + + + diff --git a/doc/html/functions_y.html b/doc/html/functions_y.html new file mode 100644 index 00000000..6877f2bd --- /dev/null +++ b/doc/html/functions_y.html @@ -0,0 +1,166 @@ + + + + + + +PIP: Class Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- y -

+
+
+ + + + diff --git a/doc/html/globals.html b/doc/html/globals.html new file mode 100644 index 00000000..d91de520 --- /dev/null +++ b/doc/html/globals.html @@ -0,0 +1,405 @@ + + + + + + +PIP: File Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented file members with links to the documentation:
+ +

- _ -

    +
  • __PICONTAINERS_SIMPLE_TYPE__() +: pichar.h +
  • +
+ + +

- a -

+ + +

- c -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- q -

+ + +

- r -

+ + +

- w -

+
+
+ + + + diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html new file mode 100644 index 00000000..eb6f2191 --- /dev/null +++ b/doc/html/globals_defs.html @@ -0,0 +1,265 @@ + + + + + + +PIP: File Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- c -

+ + +

- f -

+ + +

- h -

+ + +

- l -

+ + +

- m -

+ + +

- p -

+ + +

- q -

+ + +

- w -

+
+
+ + + + diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html new file mode 100644 index 00000000..0b355ca9 --- /dev/null +++ b/doc/html/globals_func.html @@ -0,0 +1,282 @@ + + + + + + +PIP: File Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- _ -

    +
  • __PICONTAINERS_SIMPLE_TYPE__() +: pichar.h +
  • +
+ + +

- c -

+ + +

- e -

+ + +

- l -

+ + +

- m -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+
+
+ + + + diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html new file mode 100644 index 00000000..b01cc9fd --- /dev/null +++ b/doc/html/globals_vars.html @@ -0,0 +1,131 @@ + + + + + + +PIP: File Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/graph_legend.html b/doc/html/graph_legend.html new file mode 100644 index 00000000..a6f4b3c6 --- /dev/null +++ b/doc/html/graph_legend.html @@ -0,0 +1,176 @@ + + + + + + +PIP: Graph Legend + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

1 /*! Invisible class because of truncation */
+
2 class Invisible { };
+
3 
+
4 /*! Truncated class, inheritance relation is hidden */
+
5 class Truncated : public Invisible { };
+
6 
+
7 /* Class not documented with doxygen comments */
+
8 class Undocumented { };
+
9 
+
10 /*! Class that is inherited using public inheritance */
+
11 class PublicBase : public Truncated { };
+
12 
+
13 /*! A template class */
+
14 template<class T> class Templ { };
+
15 
+
16 /*! Class that is inherited using protected inheritance */
+
17 class ProtectedBase { };
+
18 
+
19 /*! Class that is inherited using private inheritance */
+
20 class PrivateBase { };
+
21 
+
22 /*! Class that is used by the Inherited class */
+
23 class Used { };
+
24 
+
25 /*! Super class that inherits a number of other classes */
+
26 class Inherited : public PublicBase,
+
27  protected ProtectedBase,
+
28  private PrivateBase,
+
29  public Undocumented,
+
30  public Templ<int>
+
31 {
+
32  private:
+
33  Used *m_usedClass;
+
34 };
+

This will result in the following graph:

+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a grey border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +
+
+
+ + + + diff --git a/doc/html/graph_legend.md5 b/doc/html/graph_legend.md5 new file mode 100644 index 00000000..cd7e542e --- /dev/null +++ b/doc/html/graph_legend.md5 @@ -0,0 +1 @@ +e96e874ee5620cee7603f05827c7643a \ No newline at end of file diff --git a/doc/html/graph_legend.svg b/doc/html/graph_legend.svg new file mode 100644 index 00000000..09d5d26a --- /dev/null +++ b/doc/html/graph_legend.svg @@ -0,0 +1,121 @@ + + + + + + +Graph Legend + + +Node9 + +Inherited + + +Node10 + + +PublicBase + + + + +Node10->Node9 + + + + +Node11 + + +Truncated + + + + +Node11->Node10 + + + + +Node13 + + +ProtectedBase + + + + +Node13->Node9 + + + + +Node14 + + +PrivateBase + + + + +Node14->Node9 + + + + +Node15 + +Undocumented + + +Node15->Node9 + + + + +Node16 + + +Templ< int > + + + + +Node16->Node9 + + + + +Node17 + + +Templ< T > + + + + +Node17->Node16 + + +< int > + + +Node18 + + +Used + + + + +Node18->Node9 + + +m_usedClass + + + diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html new file mode 100644 index 00000000..1b0dc077 --- /dev/null +++ b/doc/html/hierarchy.html @@ -0,0 +1,240 @@ + + + + + + +PIP: Class Hierarchy + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
+

Go to the graphical class hierarchy

+This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 12345]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CPIConfig::EntryEntry of configuration file
 CPIEthernet::InterfaceNetwork interface descriptor
 CPIByteArrayByte array
 CPICharUnicode char
 CPICollectionInterface to discover element groups
 CPICoutClass for formatted output similar std::cout
 CPIEvaluatorThis class provide mathematical evaluations of custom expression
 CPIFlags< Enum >This class used as container for bit flags
 CPIFlags< Attribute >
 CPIFlags< InterfaceFlag >
 CPIFlags< PICodeInfo::TypeFlag >
 CPIFlags< PIConsole::Format >
 CPIFlags< PICoutControl >
 CPIMutexMutex
 CPIObjectThis is base class for any classes which use events -> handlers mechanism
 CPICLICommand-line arguments parser
 CPIConnectionComplex Input/Output point
 CPIProtocol
 CPIStateMachine< Type >Base class for custom state machine
 CPIThreadThread class
 CPITimerTimer
 CPISet< T >Set of any type
 CPISet< const void * >
 CPISet< PIObject * >
 CPISet< PIString >
 CPIStringString class
 CPIStringListStrings array class
 CPISystemTimeSystem time
 CPITimeMeasurerTime measurements
 CPIVariantVariant type
 CPIVector< T >Dynamic array of any type
 CPIVector< __EHData >
 CPIVector< __EHFunc >
 CPIVector< _PITimerImp_Pool * >
 CPIVector< Argument >
 CPIVector< Column >
 CPIVector< complexd >
 CPIVector< Condition >
 CPIVector< Connection >
 CPIVector< const PIObject * >
 CPIVector< Define >
 CPIVector< Delimiter >
 CPIVector< DeviceData * >
 CPIVector< double >
 CPIVector< Entity * >
 CPIVector< Entry * >
 CPIConfig::BranchBranch is a list of entries of configuration file
 CPIVector< Entry >
 CPIVector< Enum >
 CPIVector< Enumerator >
 CPIVector< Extractor * >
 CPIVector< Group >
 CPIVector< int >
 CPIVector< Macro >
 CPIVector< Member >
 CPIVector< node >
 CPIVector< PeerInfo >
 CPIVector< PICodeInfo::EnumeratorInfo >
 CPIVector< PICodeInfo::FunctionInfo >
 CPIVector< PICodeInfo::TypeInfo >
 CPIVector< PIConnection * >
 CPIVector< PIDiagnostics * >
 CPIVector< PIEthernet * >
 CPIVector< PIEthernet::Interface >
 CPIEthernet::InterfaceListArray of Interface with some features
 CPIVector< PIEvaluatorTypes::Element >
 CPIVector< PIEvaluatorTypes::Function >
 CPIVector< PIEvaluatorTypes::Instruction >
 CPIVector< PIEvaluatorTypes::Variable >
 CPIVector< PIIODevice * >
 CPIVector< PIIODevice::DeviceMode >
 CPIVector< PIMathVectord >
 CPIVector< PIObject * >
 CPIVector< PIPair< PIByteArray, ullong > >
 CPIVector< PIProtocol * >
 CPIVector< PIStateMachine::Rule >
 CPIVector< PIStateMachine::State >
 CPIVector< PIString >
 CPIVector< PIUSB::Configuration >
 CPIVector< PIUSB::Endpoint >
 CPIVector< PIUSB::Interface >
 CPIVector< PIVariant >
 CPIVector< PIVector< double > >
 CPIVector< PIVector< PeerInfo * > >
 CPIVector< PIVector< PIIODevice * > >
 CPIVector< PIVector< PIPacketExtractor * > >
 CPIVector< PIVector< Type > >
 CPIVector< RemoteClient >
 CPIVector< Sender * >
 CPIVector< SOCKET >
 CPIVector< Tab >
 CPIVector< Type >
 CPIVector< Typedef >
 CPIVector< uchar >
 CPIVector< Variable >
 CPIByteArray::RawDataHelp struct to store/restore custom blocks of data to/from PIByteArray
 CPIStateMachine< Type >::RuleRule of transition between states of machine
 CPIStateMachine< Type >::StateState of machine
 CTransferFunctionDifferential evaluations
+
+
+
+ + + + diff --git a/doc/html/hierarchy.js b/doc/html/hierarchy.js new file mode 100644 index 00000000..6a865c8d --- /dev/null +++ b/doc/html/hierarchy.js @@ -0,0 +1,120 @@ +var hierarchy = +[ + [ "PIConfig::Entry", "class_p_i_config_1_1_entry.html", null ], + [ "PIEthernet::Interface", "struct_p_i_ethernet_1_1_interface.html", null ], + [ "PIByteArray", "class_p_i_byte_array.html", null ], + [ "PIChar", "class_p_i_char.html", null ], + [ "PICollection", "class_p_i_collection.html", null ], + [ "PICout", "class_p_i_cout.html", null ], + [ "PIEvaluator", "class_p_i_evaluator.html", null ], + [ "PIFlags< Enum >", "class_p_i_flags.html", null ], + [ "PIFlags< Attribute >", "class_p_i_flags.html", null ], + [ "PIFlags< InterfaceFlag >", "class_p_i_flags.html", null ], + [ "PIFlags< PICodeInfo::TypeFlag >", "class_p_i_flags.html", null ], + [ "PIFlags< PIConsole::Format >", "class_p_i_flags.html", null ], + [ "PIFlags< PICoutControl >", "class_p_i_flags.html", null ], + [ "PIMutex", "class_p_i_mutex.html", null ], + [ "PIObject", "class_p_i_object.html", [ + [ "PICLI", "class_p_i_c_l_i.html", null ], + [ "PIConnection", "class_p_i_connection.html", null ], + [ "PIProtocol", "class_p_i_protocol.html", null ], + [ "PIStateMachine< Type >", "class_p_i_state_machine.html", null ], + [ "PIThread", "class_p_i_thread.html", [ + [ "PIConsole", "class_p_i_console.html", null ], + [ "PIIODevice", "class_p_i_i_o_device.html", [ + [ "PIBinaryLog", "class_p_i_binary_log.html", null ], + [ "PIEthernet", "class_p_i_ethernet.html", null ], + [ "PIFile", "class_p_i_file.html", [ + [ "PIConfig", "class_p_i_config.html", null ] + ] ], + [ "PIPacketExtractor", "class_p_i_packet_extractor.html", null ], + [ "PISerial", "class_p_i_serial.html", null ] + ] ], + [ "PIKbdListener", "class_p_i_kbd_listener.html", null ], + [ "PIProcess", "class_p_i_process.html", null ] + ] ], + [ "PITimer", "class_p_i_timer.html", [ + [ "PIDiagnostics", "class_p_i_diagnostics.html", null ] + ] ] + ] ], + [ "PISet< T >", "class_p_i_set.html", null ], + [ "PISet< const void * >", "class_p_i_set.html", null ], + [ "PISet< PIObject * >", "class_p_i_set.html", null ], + [ "PISet< PIString >", "class_p_i_set.html", null ], + [ "PIString", "class_p_i_string.html", null ], + [ "PIStringList", "class_p_i_string_list.html", null ], + [ "PISystemTime", "class_p_i_system_time.html", null ], + [ "PITimeMeasurer", "class_p_i_time_measurer.html", null ], + [ "PIVariant", "class_p_i_variant.html", null ], + [ "PIVector< T >", "class_p_i_vector.html", null ], + [ "PIVector< __EHData >", "class_p_i_vector.html", null ], + [ "PIVector< __EHFunc >", "class_p_i_vector.html", null ], + [ "PIVector< _PITimerImp_Pool * >", "class_p_i_vector.html", null ], + [ "PIVector< Argument >", "class_p_i_vector.html", null ], + [ "PIVector< Column >", "class_p_i_vector.html", null ], + [ "PIVector< complexd >", "class_p_i_vector.html", null ], + [ "PIVector< Condition >", "class_p_i_vector.html", null ], + [ "PIVector< Connection >", "class_p_i_vector.html", null ], + [ "PIVector< const PIObject * >", "class_p_i_vector.html", null ], + [ "PIVector< Define >", "class_p_i_vector.html", null ], + [ "PIVector< Delimiter >", "class_p_i_vector.html", null ], + [ "PIVector< DeviceData * >", "class_p_i_vector.html", null ], + [ "PIVector< double >", "class_p_i_vector.html", null ], + [ "PIVector< Entity * >", "class_p_i_vector.html", null ], + [ "PIVector< Entry * >", "class_p_i_vector.html", [ + [ "PIConfig::Branch", "class_p_i_config_1_1_branch.html", null ] + ] ], + [ "PIVector< Entry >", "class_p_i_vector.html", null ], + [ "PIVector< Enum >", "class_p_i_vector.html", null ], + [ "PIVector< Enumerator >", "class_p_i_vector.html", null ], + [ "PIVector< Extractor * >", "class_p_i_vector.html", null ], + [ "PIVector< Group >", "class_p_i_vector.html", null ], + [ "PIVector< int >", "class_p_i_vector.html", null ], + [ "PIVector< Macro >", "class_p_i_vector.html", null ], + [ "PIVector< Member >", "class_p_i_vector.html", null ], + [ "PIVector< node >", "class_p_i_vector.html", null ], + [ "PIVector< PeerInfo >", "class_p_i_vector.html", null ], + [ "PIVector< PICodeInfo::EnumeratorInfo >", "class_p_i_vector.html", null ], + [ "PIVector< PICodeInfo::FunctionInfo >", "class_p_i_vector.html", null ], + [ "PIVector< PICodeInfo::TypeInfo >", "class_p_i_vector.html", null ], + [ "PIVector< PIConnection * >", "class_p_i_vector.html", null ], + [ "PIVector< PIDiagnostics * >", "class_p_i_vector.html", null ], + [ "PIVector< PIEthernet * >", "class_p_i_vector.html", null ], + [ "PIVector< PIEthernet::Interface >", "class_p_i_vector.html", [ + [ "PIEthernet::InterfaceList", "class_p_i_ethernet_1_1_interface_list.html", null ] + ] ], + [ "PIVector< PIEvaluatorTypes::Element >", "class_p_i_vector.html", null ], + [ "PIVector< PIEvaluatorTypes::Function >", "class_p_i_vector.html", null ], + [ "PIVector< PIEvaluatorTypes::Instruction >", "class_p_i_vector.html", null ], + [ "PIVector< PIEvaluatorTypes::Variable >", "class_p_i_vector.html", null ], + [ "PIVector< PIIODevice * >", "class_p_i_vector.html", null ], + [ "PIVector< PIIODevice::DeviceMode >", "class_p_i_vector.html", null ], + [ "PIVector< PIMathVectord >", "class_p_i_vector.html", null ], + [ "PIVector< PIObject * >", "class_p_i_vector.html", null ], + [ "PIVector< PIPair< PIByteArray, ullong > >", "class_p_i_vector.html", null ], + [ "PIVector< PIProtocol * >", "class_p_i_vector.html", null ], + [ "PIVector< PIStateMachine::Rule >", "class_p_i_vector.html", null ], + [ "PIVector< PIStateMachine::State >", "class_p_i_vector.html", null ], + [ "PIVector< PIString >", "class_p_i_vector.html", null ], + [ "PIVector< PIUSB::Configuration >", "class_p_i_vector.html", null ], + [ "PIVector< PIUSB::Endpoint >", "class_p_i_vector.html", null ], + [ "PIVector< PIUSB::Interface >", "class_p_i_vector.html", null ], + [ "PIVector< PIVariant >", "class_p_i_vector.html", null ], + [ "PIVector< PIVector< double > >", "class_p_i_vector.html", null ], + [ "PIVector< PIVector< PeerInfo * > >", "class_p_i_vector.html", null ], + [ "PIVector< PIVector< PIIODevice * > >", "class_p_i_vector.html", null ], + [ "PIVector< PIVector< PIPacketExtractor * > >", "class_p_i_vector.html", null ], + [ "PIVector< PIVector< Type > >", "class_p_i_vector.html", null ], + [ "PIVector< RemoteClient >", "class_p_i_vector.html", null ], + [ "PIVector< Sender * >", "class_p_i_vector.html", null ], + [ "PIVector< SOCKET >", "class_p_i_vector.html", null ], + [ "PIVector< Tab >", "class_p_i_vector.html", null ], + [ "PIVector< Type >", "class_p_i_vector.html", null ], + [ "PIVector< Typedef >", "class_p_i_vector.html", null ], + [ "PIVector< uchar >", "class_p_i_vector.html", null ], + [ "PIVector< Variable >", "class_p_i_vector.html", null ], + [ "PIByteArray::RawData", "struct_p_i_byte_array_1_1_raw_data.html", null ], + [ "PIStateMachine< Type >::Rule", "struct_p_i_state_machine_1_1_rule.html", null ], + [ "PIStateMachine< Type >::State", "struct_p_i_state_machine_1_1_state.html", null ], + [ "TransferFunction", "struct_transfer_function.html", null ] +]; \ No newline at end of file diff --git a/doc/html/index.html b/doc/html/index.html new file mode 100644 index 00000000..ecc57d50 --- /dev/null +++ b/doc/html/index.html @@ -0,0 +1,150 @@ + + + + + + +PIP: What is PIP + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
What is PIP
+
+
+

PIP - Platform-Independent Primitives - is crossplatform library for C++ developers. It is wrap around STL and pure C++. This library can help developers write non-GUI projects much more quickly, efficiently and customizable than on pure C++. Library contains many classes, some of them are pure abstract, some classes can be used as they are, some classes should be inherited to new classes. PIP provide classes:

+
+
+ + + + diff --git a/doc/html/index.qhp b/doc/html/index.qhp new file mode 100644 index 00000000..3842f8cc --- /dev/null +++ b/doc/html/index.qhp @@ -0,0 +1,6202 @@ + + + PIP + doc + + doxygen + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tabs.css + tab_a.png + tab_b.png + tab_h.png + tab_s.png + nav_h.png + nav_f.png + bc_s.png + doxygen.png + closed.png + open.png + bdwn.png + sync_on.png + sync_off.png + ftv2blank.png + ftv2doc.png + ftv2folderclosed.png + ftv2folderopen.png + ftv2lastnode.png + ftv2link.png + ftv2mlastnode.png + ftv2mnode.png + ftv2node.png + ftv2plastnode.png + ftv2pnode.png + ftv2vertline.png + ftv2splitbar.png + doxygen.css + /search/mag_sel.png + /search/search_l.png + /search/search_m.png + /search/search_r.png + /search/close.png + search/search.css + search/search.js + picodeinfo_8h.html + picodeparser_8h.html + picontainers_8h.html + pideque_8h.html + pimap_8h.html + piset_8h.html + pistack_8h.html + pivector_8h.html + pibytearray_8h.html + pichar_8h.html + picli_8h.html + picollection_8h.html + piincludes_8h.html + piinit_8h.html + piobject_8h.html + pistatemachine_8h.html + pistring_8h.html + pitime_8h.html + pivariant_8h.html + pibinarylog_8h.html + piconfig_8h.html + piconnection_8h.html + pidiagnostics_8h.html + piethernet_8h.html + pifile_8h.html + piiodevice_8h.html + pipacketextractor_8h.html + pipeer_8h.html + piprotocol_8h.html + piserial_8h.html + piusb_8h.html + picrc_8h.html + pievaluator_8h.html + pimath_8h.html + piconsole_8h.html + pikbdlistener_8h.html + piprocess_8h.html + pisignals_8h.html + pimutex_8h.html + pithread_8h.html + pitimer_8h.html + using_basic.html + using_advanced.html + deprecated.html + class_p_i_binary_log.html + class_p_i_binary_log__inherit__graph.svg + class_p_i_binary_log-members.html + class_p_i_byte_array.html + class_p_i_byte_array-members.html + struct_p_i_byte_array_1_1_raw_data.html + struct_p_i_byte_array_1_1_raw_data-members.html + class_p_i_char.html + class_p_i_char-members.html + class_p_i_c_l_i.html + class_p_i_c_l_i__inherit__graph.svg + class_p_i_c_l_i-members.html + class_p_i_collection.html + class_p_i_collection-members.html + class_p_i_config.html + class_p_i_config__inherit__graph.svg + piconfig.png + class_p_i_config-members.html + class_p_i_config_1_1_branch.html + class_p_i_config_1_1_branch__inherit__graph.svg + class_p_i_config_1_1_branch-members.html + class_p_i_config_1_1_entry.html + class_p_i_config_1_1_entry-members.html + class_p_i_connection.html + class_p_i_connection__inherit__graph.svg + piconnection.png + piconnection_filters.png + piconnection_senders.png + piconnection_conf.png + class_p_i_connection-members.html + class_p_i_console.html + class_p_i_console__inherit__graph.svg + piconsole_layout.png + class_p_i_console-members.html + class_p_i_cout.html + class_p_i_cout-members.html + class_p_i_diagnostics.html + class_p_i_diagnostics__inherit__graph.svg + class_p_i_diagnostics-members.html + class_p_i_ethernet.html + class_p_i_ethernet__inherit__graph.svg + class_p_i_ethernet-members.html + struct_p_i_ethernet_1_1_interface.html + struct_p_i_ethernet_1_1_interface-members.html + class_p_i_ethernet_1_1_interface_list.html + class_p_i_ethernet_1_1_interface_list__inherit__graph.svg + class_p_i_ethernet_1_1_interface_list-members.html + class_p_i_evaluator.html + class_p_i_evaluator-members.html + class_p_i_file.html + class_p_i_file__inherit__graph.svg + class_p_i_file-members.html + class_p_i_flags.html + class_p_i_flags-members.html + class_p_i_i_o_device.html + class_p_i_i_o_device__inherit__graph.svg + class_p_i_i_o_device-members.html + class_p_i_kbd_listener.html + class_p_i_kbd_listener__inherit__graph.svg + class_p_i_kbd_listener-members.html + class_p_i_mutex.html + class_p_i_mutex-members.html + class_p_i_object.html + class_p_i_object__inherit__graph.svg + events_handlers.png + class_p_i_object-members.html + class_p_i_packet_extractor.html + class_p_i_packet_extractor__inherit__graph.svg + packet_detection.png + class_p_i_packet_extractor-members.html + class_p_i_process.html + class_p_i_process__inherit__graph.svg + class_p_i_process-members.html + class_p_i_protocol.html + class_p_i_protocol__inherit__graph.svg + class_p_i_protocol-members.html + class_p_i_serial.html + class_p_i_serial__inherit__graph.svg + class_p_i_serial-members.html + class_p_i_set.html + class_p_i_set-members.html + class_p_i_state_machine.html + class_p_i_state_machine__inherit__graph.svg + class_p_i_state_machine-members.html + struct_p_i_state_machine_1_1_rule.html + struct_p_i_state_machine_1_1_rule-members.html + struct_p_i_state_machine_1_1_state.html + struct_p_i_state_machine_1_1_state-members.html + class_p_i_string.html + class_p_i_string-members.html + class_p_i_string_list.html + class_p_i_string_list-members.html + class_p_i_system_time.html + class_p_i_system_time-members.html + class_p_i_thread.html + class_p_i_thread__inherit__graph.svg + class_p_i_thread-members.html + class_p_i_time_measurer.html + class_p_i_time_measurer-members.html + class_p_i_timer.html + class_p_i_timer__inherit__graph.svg + class_p_i_timer-members.html + class_p_i_variant.html + class_p_i_variant-members.html + class_p_i_vector.html + class_p_i_vector-members.html + struct_transfer_function.html + struct_transfer_function-members.html + namespace_p_i_cout_manipulators.html + graph_legend.svg + graph_legend.html + dir_3edb929655fe9d5ef5f6ec0f70ce278e.html + dir_3edb929655fe9d5ef5f6ec0f70ce278e_dep.svg + dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1.html + dir_3ef7287b8e7a9ed45eff58e9a3bb8bc1_dep.svg + dir_0b61c55142250c0cc363383afd8075a4.html + dir_0b61c55142250c0cc363383afd8075a4_dep.svg + dir_aebb8dcc11953d78e620bbef0b9e2183.html + dir_aebb8dcc11953d78e620bbef0b9e2183_dep.svg + dir_c184e51c84f2c3f0345bbc8a0d75d3e1.html + dir_c184e51c84f2c3f0345bbc8a0d75d3e1_dep.svg + dir_ae9a93452e2a84339148a16bcf2eb561.html + dir_ae9a93452e2a84339148a16bcf2eb561_dep.svg + dir_68267d1309a1af8e8297ef4c3efbcdba.html + dir_68267d1309a1af8e8297ef4c3efbcdba_dep.svg + dir_d501334aeb1b78ad67cd3c72c37b1e87.html + dir_d501334aeb1b78ad67cd3c72c37b1e87_dep.svg + dir_bfedb72b9d87795234454f6223b9ab1e.html + dir_bfedb72b9d87795234454f6223b9ab1e_dep.svg + dir_000001_000006.html + dir_000002_000006.html + dir_000002_000005.html + dir_000002_000004.html + dir_000006_000004.html + dir_000005_000004.html + dir_000004_000006.html + dir_000004_000005.html + dir_000003_000004.html + dir_000004_000003.html + dir_000007_000003.html + dir_000007_000008.html + dir_000007_000005.html + dir_000008_000004.html + dir_000005_000007.html + dir_000005_000008.html + dir_000004_000007.html + dir_000004_000008.html + index.html + pages.html + namespaces.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers.html + namespacemembers_enum.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + namespacemembers_eval.html + annotated.html + classes.html + hierarchy.html + inherits.html + inherit_graph_0.svg + inherit_graph_1.svg + inherit_graph_2.svg + inherit_graph_3.svg + inherit_graph_4.svg + inherit_graph_5.svg + inherit_graph_6.svg + inherit_graph_7.svg + inherit_graph_8.svg + inherit_graph_9.svg + inherit_graph_10.svg + inherit_graph_11.svg + inherit_graph_12.svg + inherit_graph_13.svg + inherit_graph_14.svg + inherit_graph_15.svg + inherit_graph_16.svg + inherit_graph_17.svg + inherit_graph_18.svg + inherit_graph_19.svg + inherit_graph_20.svg + inherit_graph_21.svg + inherit_graph_22.svg + inherit_graph_23.svg + inherit_graph_24.svg + inherit_graph_25.svg + inherit_graph_26.svg + inherit_graph_27.svg + inherit_graph_28.svg + inherit_graph_29.svg + inherit_graph_30.svg + inherit_graph_31.svg + inherit_graph_32.svg + inherit_graph_33.svg + inherit_graph_34.svg + inherit_graph_35.svg + inherit_graph_36.svg + inherit_graph_37.svg + inherit_graph_38.svg + inherit_graph_39.svg + inherit_graph_40.svg + inherit_graph_41.svg + inherit_graph_42.svg + inherit_graph_43.svg + inherit_graph_44.svg + inherit_graph_45.svg + inherit_graph_46.svg + inherit_graph_47.svg + inherit_graph_48.svg + inherit_graph_49.svg + inherit_graph_50.svg + inherit_graph_51.svg + inherit_graph_52.svg + inherit_graph_53.svg + inherit_graph_54.svg + inherit_graph_55.svg + inherit_graph_56.svg + inherit_graph_57.svg + inherit_graph_58.svg + inherit_graph_59.svg + inherit_graph_60.svg + inherit_graph_61.svg + inherit_graph_62.svg + inherit_graph_63.svg + inherit_graph_64.svg + inherit_graph_65.svg + inherit_graph_66.svg + inherit_graph_67.svg + inherit_graph_68.svg + inherit_graph_69.svg + inherit_graph_70.svg + inherit_graph_71.svg + inherit_graph_72.svg + inherit_graph_73.svg + inherit_graph_74.svg + inherit_graph_75.svg + inherit_graph_76.svg + inherit_graph_77.svg + inherit_graph_78.svg + inherit_graph_79.svg + inherit_graph_80.svg + inherit_graph_81.svg + inherit_graph_82.svg + inherit_graph_83.svg + inherit_graph_84.svg + inherit_graph_85.svg + inherit_graph_86.svg + inherit_graph_87.svg + inherit_graph_88.svg + inherit_graph_89.svg + inherit_graph_90.svg + functions.html + functions_b.html + functions_c.html + functions_d.html + functions_e.html + functions_f.html + functions_g.html + functions_h.html + functions_i.html + functions_j.html + functions_k.html + functions_l.html + functions_m.html + functions_n.html + functions_o.html + functions_p.html + functions_q.html + functions_r.html + functions_s.html + functions_t.html + functions_u.html + functions_v.html + functions_w.html + functions_y.html + functions_func.html + functions_func_b.html + functions_func_c.html + functions_func_d.html + functions_func_e.html + functions_func_f.html + functions_func_g.html + functions_func_h.html + functions_func_i.html + functions_func_j.html + functions_func_k.html + functions_func_l.html + functions_func_m.html + functions_func_n.html + functions_func_o.html + functions_func_p.html + functions_func_q.html + functions_func_r.html + functions_func_s.html + functions_func_t.html + functions_func_u.html + functions_func_v.html + functions_func_w.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_vars.html + functions_type.html + functions_type.html + functions_enum.html + functions_enum.html + functions_enum.html + functions_enum.html + functions_enum.html + functions_enum.html + functions_enum.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_eval.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + functions_rela.html + files.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals.html + globals_func.html + globals_func.html + globals_func.html + globals_func.html + globals_func.html + globals_func.html + globals_func.html + globals_func.html + globals_vars.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + globals_defs.html + + + diff --git a/doc/html/inherit_graph_0.map b/doc/html/inherit_graph_0.map new file mode 100644 index 00000000..96bf26c9 --- /dev/null +++ b/doc/html/inherit_graph_0.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_0.md5 b/doc/html/inherit_graph_0.md5 new file mode 100644 index 00000000..cb4c7d2f --- /dev/null +++ b/doc/html/inherit_graph_0.md5 @@ -0,0 +1 @@ +57ff830eb1ddb53ceb3146342813ca75 \ No newline at end of file diff --git a/doc/html/inherit_graph_0.svg b/doc/html/inherit_graph_0.svg new file mode 100644 index 00000000..0fd86431 --- /dev/null +++ b/doc/html/inherit_graph_0.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIByteArray + + + + + diff --git a/doc/html/inherit_graph_1.map b/doc/html/inherit_graph_1.map new file mode 100644 index 00000000..895a7b97 --- /dev/null +++ b/doc/html/inherit_graph_1.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_1.md5 b/doc/html/inherit_graph_1.md5 new file mode 100644 index 00000000..eb2e607f --- /dev/null +++ b/doc/html/inherit_graph_1.md5 @@ -0,0 +1 @@ +2c83a509a543f3083e793db32376bd59 \ No newline at end of file diff --git a/doc/html/inherit_graph_1.svg b/doc/html/inherit_graph_1.svg new file mode 100644 index 00000000..71f78314 --- /dev/null +++ b/doc/html/inherit_graph_1.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIByteArray::RawData + + + + + diff --git a/doc/html/inherit_graph_10.map b/doc/html/inherit_graph_10.map new file mode 100644 index 00000000..b4772a3f --- /dev/null +++ b/doc/html/inherit_graph_10.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_10.md5 b/doc/html/inherit_graph_10.md5 new file mode 100644 index 00000000..7ac12a5c --- /dev/null +++ b/doc/html/inherit_graph_10.md5 @@ -0,0 +1 @@ +8c0e0e9416849f66df2cb8ca235b3b33 \ No newline at end of file diff --git a/doc/html/inherit_graph_10.svg b/doc/html/inherit_graph_10.svg new file mode 100644 index 00000000..c320fe63 --- /dev/null +++ b/doc/html/inherit_graph_10.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< InterfaceFlag > + + + + + diff --git a/doc/html/inherit_graph_11.map b/doc/html/inherit_graph_11.map new file mode 100644 index 00000000..ca3d051c --- /dev/null +++ b/doc/html/inherit_graph_11.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_11.md5 b/doc/html/inherit_graph_11.md5 new file mode 100644 index 00000000..af555a9d --- /dev/null +++ b/doc/html/inherit_graph_11.md5 @@ -0,0 +1 @@ +527cefb742f2a2ef03607dd6cd487f45 \ No newline at end of file diff --git a/doc/html/inherit_graph_11.svg b/doc/html/inherit_graph_11.svg new file mode 100644 index 00000000..0adc38bf --- /dev/null +++ b/doc/html/inherit_graph_11.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< PICodeInfo +::TypeFlag > + + + + + diff --git a/doc/html/inherit_graph_12.map b/doc/html/inherit_graph_12.map new file mode 100644 index 00000000..67ac0d6a --- /dev/null +++ b/doc/html/inherit_graph_12.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_12.md5 b/doc/html/inherit_graph_12.md5 new file mode 100644 index 00000000..1800226e --- /dev/null +++ b/doc/html/inherit_graph_12.md5 @@ -0,0 +1 @@ +f33dfda47f29f2c55b569ba876160389 \ No newline at end of file diff --git a/doc/html/inherit_graph_12.svg b/doc/html/inherit_graph_12.svg new file mode 100644 index 00000000..0d98b4a4 --- /dev/null +++ b/doc/html/inherit_graph_12.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< PIConsole +::Format > + + + + + diff --git a/doc/html/inherit_graph_13.map b/doc/html/inherit_graph_13.map new file mode 100644 index 00000000..f32790ff --- /dev/null +++ b/doc/html/inherit_graph_13.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_13.md5 b/doc/html/inherit_graph_13.md5 new file mode 100644 index 00000000..44499cef --- /dev/null +++ b/doc/html/inherit_graph_13.md5 @@ -0,0 +1 @@ +cd38e82dd9baba61e1dd7a91123b3b2b \ No newline at end of file diff --git a/doc/html/inherit_graph_13.svg b/doc/html/inherit_graph_13.svg new file mode 100644 index 00000000..3b4a9a39 --- /dev/null +++ b/doc/html/inherit_graph_13.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< PICoutControl > + + + + + diff --git a/doc/html/inherit_graph_14.map b/doc/html/inherit_graph_14.map new file mode 100644 index 00000000..c26dd216 --- /dev/null +++ b/doc/html/inherit_graph_14.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_14.md5 b/doc/html/inherit_graph_14.md5 new file mode 100644 index 00000000..9fdea49b --- /dev/null +++ b/doc/html/inherit_graph_14.md5 @@ -0,0 +1 @@ +1278b4281a75e72befaaa2cb4d55206d \ No newline at end of file diff --git a/doc/html/inherit_graph_14.svg b/doc/html/inherit_graph_14.svg new file mode 100644 index 00000000..8c18ae52 --- /dev/null +++ b/doc/html/inherit_graph_14.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIMutex + + + + + diff --git a/doc/html/inherit_graph_15.map b/doc/html/inherit_graph_15.map new file mode 100644 index 00000000..62903c7f --- /dev/null +++ b/doc/html/inherit_graph_15.map @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/doc/html/inherit_graph_15.md5 b/doc/html/inherit_graph_15.md5 new file mode 100644 index 00000000..807ddc4c --- /dev/null +++ b/doc/html/inherit_graph_15.md5 @@ -0,0 +1 @@ +037a3c56dbdb397c1d969332abde6176 \ No newline at end of file diff --git a/doc/html/inherit_graph_15.svg b/doc/html/inherit_graph_15.svg new file mode 100644 index 00000000..a71315bb --- /dev/null +++ b/doc/html/inherit_graph_15.svg @@ -0,0 +1,242 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIObject + + + + +Node2 + + +PICLI + + + + +Node1->Node2 + + + + +Node3 + + +PIConnection + + + + +Node1->Node3 + + + + +Node4 + + +PIProtocol + + + + +Node1->Node4 + + + + +Node5 + + +PIStateMachine< Type > + + + + +Node1->Node5 + + + + +Node6 + + +PIThread + + + + +Node1->Node6 + + + + +Node17 + + +PITimer + + + + +Node1->Node17 + + + + +Node7 + + +PIConsole + + + + +Node6->Node7 + + + + +Node8 + + +PIIODevice + + + + +Node6->Node8 + + + + +Node15 + + +PIKbdListener + + + + +Node6->Node15 + + + + +Node16 + + +PIProcess + + + + +Node6->Node16 + + + + +Node9 + + +PIBinaryLog + + + + +Node8->Node9 + + + + +Node10 + + +PIEthernet + + + + +Node8->Node10 + + + + +Node11 + + +PIFile + + + + +Node8->Node11 + + + + +Node13 + + +PIPacketExtractor + + + + +Node8->Node13 + + + + +Node14 + + +PISerial + + + + +Node8->Node14 + + + + +Node12 + + +PIConfig + + + + +Node11->Node12 + + + + +Node18 + + +PIDiagnostics + + + + +Node17->Node18 + + + + + diff --git a/doc/html/inherit_graph_16.map b/doc/html/inherit_graph_16.map new file mode 100644 index 00000000..92d71a75 --- /dev/null +++ b/doc/html/inherit_graph_16.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_16.md5 b/doc/html/inherit_graph_16.md5 new file mode 100644 index 00000000..9095d5aa --- /dev/null +++ b/doc/html/inherit_graph_16.md5 @@ -0,0 +1 @@ +7195474103cf1de3eb28a76869bb135c \ No newline at end of file diff --git a/doc/html/inherit_graph_16.svg b/doc/html/inherit_graph_16.svg new file mode 100644 index 00000000..b523b896 --- /dev/null +++ b/doc/html/inherit_graph_16.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PISet< const void * > + + + + + diff --git a/doc/html/inherit_graph_17.map b/doc/html/inherit_graph_17.map new file mode 100644 index 00000000..c9c170fa --- /dev/null +++ b/doc/html/inherit_graph_17.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_17.md5 b/doc/html/inherit_graph_17.md5 new file mode 100644 index 00000000..e1eaffe0 --- /dev/null +++ b/doc/html/inherit_graph_17.md5 @@ -0,0 +1 @@ +fe4ea4a2e083e8a3e79b6ac6dbd1e9c7 \ No newline at end of file diff --git a/doc/html/inherit_graph_17.svg b/doc/html/inherit_graph_17.svg new file mode 100644 index 00000000..f0a9eeb3 --- /dev/null +++ b/doc/html/inherit_graph_17.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PISet< PIObject * > + + + + + diff --git a/doc/html/inherit_graph_18.map b/doc/html/inherit_graph_18.map new file mode 100644 index 00000000..9125eb5b --- /dev/null +++ b/doc/html/inherit_graph_18.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_18.md5 b/doc/html/inherit_graph_18.md5 new file mode 100644 index 00000000..f6c56bef --- /dev/null +++ b/doc/html/inherit_graph_18.md5 @@ -0,0 +1 @@ +c5df9f2ebcab12959c4c3ba358c2dc88 \ No newline at end of file diff --git a/doc/html/inherit_graph_18.svg b/doc/html/inherit_graph_18.svg new file mode 100644 index 00000000..2b201d77 --- /dev/null +++ b/doc/html/inherit_graph_18.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PISet< PIString > + + + + + diff --git a/doc/html/inherit_graph_19.map b/doc/html/inherit_graph_19.map new file mode 100644 index 00000000..954f8f99 --- /dev/null +++ b/doc/html/inherit_graph_19.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_19.md5 b/doc/html/inherit_graph_19.md5 new file mode 100644 index 00000000..fe27e4cb --- /dev/null +++ b/doc/html/inherit_graph_19.md5 @@ -0,0 +1 @@ +d50056d80f8b73883e7d420861a95ae7 \ No newline at end of file diff --git a/doc/html/inherit_graph_19.svg b/doc/html/inherit_graph_19.svg new file mode 100644 index 00000000..869cb6d7 --- /dev/null +++ b/doc/html/inherit_graph_19.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PISet< T > + + + + + diff --git a/doc/html/inherit_graph_2.map b/doc/html/inherit_graph_2.map new file mode 100644 index 00000000..017ddc92 --- /dev/null +++ b/doc/html/inherit_graph_2.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_2.md5 b/doc/html/inherit_graph_2.md5 new file mode 100644 index 00000000..fa177a8f --- /dev/null +++ b/doc/html/inherit_graph_2.md5 @@ -0,0 +1 @@ +d1d86bf63567029164749144f1ab5d29 \ No newline at end of file diff --git a/doc/html/inherit_graph_2.svg b/doc/html/inherit_graph_2.svg new file mode 100644 index 00000000..d55c2aeb --- /dev/null +++ b/doc/html/inherit_graph_2.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIChar + + + + + diff --git a/doc/html/inherit_graph_20.map b/doc/html/inherit_graph_20.map new file mode 100644 index 00000000..d90991bc --- /dev/null +++ b/doc/html/inherit_graph_20.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_20.md5 b/doc/html/inherit_graph_20.md5 new file mode 100644 index 00000000..2ee038b2 --- /dev/null +++ b/doc/html/inherit_graph_20.md5 @@ -0,0 +1 @@ +d37e18fcc8099017fed410af1f0b3431 \ No newline at end of file diff --git a/doc/html/inherit_graph_20.svg b/doc/html/inherit_graph_20.svg new file mode 100644 index 00000000..2efacf07 --- /dev/null +++ b/doc/html/inherit_graph_20.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIStateMachine< Type + >::Rule + + + + + diff --git a/doc/html/inherit_graph_21.map b/doc/html/inherit_graph_21.map new file mode 100644 index 00000000..a659aa2c --- /dev/null +++ b/doc/html/inherit_graph_21.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_21.md5 b/doc/html/inherit_graph_21.md5 new file mode 100644 index 00000000..c5fbaf51 --- /dev/null +++ b/doc/html/inherit_graph_21.md5 @@ -0,0 +1 @@ +a27ba6a3bc85c845a22b3e3ced7ad324 \ No newline at end of file diff --git a/doc/html/inherit_graph_21.svg b/doc/html/inherit_graph_21.svg new file mode 100644 index 00000000..121a9022 --- /dev/null +++ b/doc/html/inherit_graph_21.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIStateMachine< Type + >::State + + + + + diff --git a/doc/html/inherit_graph_22.map b/doc/html/inherit_graph_22.map new file mode 100644 index 00000000..5549071c --- /dev/null +++ b/doc/html/inherit_graph_22.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_22.md5 b/doc/html/inherit_graph_22.md5 new file mode 100644 index 00000000..4f136331 --- /dev/null +++ b/doc/html/inherit_graph_22.md5 @@ -0,0 +1 @@ +798aad3d3ac39f444ed62d179c881379 \ No newline at end of file diff --git a/doc/html/inherit_graph_22.svg b/doc/html/inherit_graph_22.svg new file mode 100644 index 00000000..6ee0b913 --- /dev/null +++ b/doc/html/inherit_graph_22.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIString + + + + + diff --git a/doc/html/inherit_graph_23.map b/doc/html/inherit_graph_23.map new file mode 100644 index 00000000..890e4780 --- /dev/null +++ b/doc/html/inherit_graph_23.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_23.md5 b/doc/html/inherit_graph_23.md5 new file mode 100644 index 00000000..f41c4edf --- /dev/null +++ b/doc/html/inherit_graph_23.md5 @@ -0,0 +1 @@ +d99351d87ed2e44ac957865b18142427 \ No newline at end of file diff --git a/doc/html/inherit_graph_23.svg b/doc/html/inherit_graph_23.svg new file mode 100644 index 00000000..7ab8285b --- /dev/null +++ b/doc/html/inherit_graph_23.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIStringList + + + + + diff --git a/doc/html/inherit_graph_24.map b/doc/html/inherit_graph_24.map new file mode 100644 index 00000000..ccd9f79b --- /dev/null +++ b/doc/html/inherit_graph_24.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_24.md5 b/doc/html/inherit_graph_24.md5 new file mode 100644 index 00000000..51dcb9c1 --- /dev/null +++ b/doc/html/inherit_graph_24.md5 @@ -0,0 +1 @@ +f2b9d43f630e44ab8589acca9c7c5ede \ No newline at end of file diff --git a/doc/html/inherit_graph_24.svg b/doc/html/inherit_graph_24.svg new file mode 100644 index 00000000..690f5915 --- /dev/null +++ b/doc/html/inherit_graph_24.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PISystemTime + + + + + diff --git a/doc/html/inherit_graph_25.map b/doc/html/inherit_graph_25.map new file mode 100644 index 00000000..116f5ea2 --- /dev/null +++ b/doc/html/inherit_graph_25.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_25.md5 b/doc/html/inherit_graph_25.md5 new file mode 100644 index 00000000..4bbbb453 --- /dev/null +++ b/doc/html/inherit_graph_25.md5 @@ -0,0 +1 @@ +23ad4af016632152ceef0559489bcf2c \ No newline at end of file diff --git a/doc/html/inherit_graph_25.svg b/doc/html/inherit_graph_25.svg new file mode 100644 index 00000000..3bcabfc9 --- /dev/null +++ b/doc/html/inherit_graph_25.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PITimeMeasurer + + + + + diff --git a/doc/html/inherit_graph_26.map b/doc/html/inherit_graph_26.map new file mode 100644 index 00000000..0e630ef6 --- /dev/null +++ b/doc/html/inherit_graph_26.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_26.md5 b/doc/html/inherit_graph_26.md5 new file mode 100644 index 00000000..04dd0eb9 --- /dev/null +++ b/doc/html/inherit_graph_26.md5 @@ -0,0 +1 @@ +8483d5cfbf7fc60050a6b05d354d9184 \ No newline at end of file diff --git a/doc/html/inherit_graph_26.svg b/doc/html/inherit_graph_26.svg new file mode 100644 index 00000000..c3e8c03e --- /dev/null +++ b/doc/html/inherit_graph_26.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVariant + + + + + diff --git a/doc/html/inherit_graph_27.map b/doc/html/inherit_graph_27.map new file mode 100644 index 00000000..af23b562 --- /dev/null +++ b/doc/html/inherit_graph_27.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_27.md5 b/doc/html/inherit_graph_27.md5 new file mode 100644 index 00000000..f25d319a --- /dev/null +++ b/doc/html/inherit_graph_27.md5 @@ -0,0 +1 @@ +92dd796f18575f821fc3a6edcb5eea17 \ No newline at end of file diff --git a/doc/html/inherit_graph_27.svg b/doc/html/inherit_graph_27.svg new file mode 100644 index 00000000..848e10b6 --- /dev/null +++ b/doc/html/inherit_graph_27.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< __EHData > + + + + + diff --git a/doc/html/inherit_graph_28.map b/doc/html/inherit_graph_28.map new file mode 100644 index 00000000..bce802d6 --- /dev/null +++ b/doc/html/inherit_graph_28.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_28.md5 b/doc/html/inherit_graph_28.md5 new file mode 100644 index 00000000..84fc93c6 --- /dev/null +++ b/doc/html/inherit_graph_28.md5 @@ -0,0 +1 @@ +ad5141053efb69ef193dceac3d3601a5 \ No newline at end of file diff --git a/doc/html/inherit_graph_28.svg b/doc/html/inherit_graph_28.svg new file mode 100644 index 00000000..6ef60649 --- /dev/null +++ b/doc/html/inherit_graph_28.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< __EHFunc > + + + + + diff --git a/doc/html/inherit_graph_29.map b/doc/html/inherit_graph_29.map new file mode 100644 index 00000000..1402c461 --- /dev/null +++ b/doc/html/inherit_graph_29.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_29.md5 b/doc/html/inherit_graph_29.md5 new file mode 100644 index 00000000..c742f596 --- /dev/null +++ b/doc/html/inherit_graph_29.md5 @@ -0,0 +1 @@ +c9267012e44443c0fad183fee3446eeb \ No newline at end of file diff --git a/doc/html/inherit_graph_29.svg b/doc/html/inherit_graph_29.svg new file mode 100644 index 00000000..a32eaa07 --- /dev/null +++ b/doc/html/inherit_graph_29.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< _PITimerImp +_Pool * > + + + + + diff --git a/doc/html/inherit_graph_3.map b/doc/html/inherit_graph_3.map new file mode 100644 index 00000000..356f20fa --- /dev/null +++ b/doc/html/inherit_graph_3.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_3.md5 b/doc/html/inherit_graph_3.md5 new file mode 100644 index 00000000..74876a74 --- /dev/null +++ b/doc/html/inherit_graph_3.md5 @@ -0,0 +1 @@ +e569003fb67f1e6db4662bdf9cef3682 \ No newline at end of file diff --git a/doc/html/inherit_graph_3.svg b/doc/html/inherit_graph_3.svg new file mode 100644 index 00000000..bec16391 --- /dev/null +++ b/doc/html/inherit_graph_3.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PICollection + + + + + diff --git a/doc/html/inherit_graph_30.map b/doc/html/inherit_graph_30.map new file mode 100644 index 00000000..4907f94d --- /dev/null +++ b/doc/html/inherit_graph_30.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_30.md5 b/doc/html/inherit_graph_30.md5 new file mode 100644 index 00000000..400427dc --- /dev/null +++ b/doc/html/inherit_graph_30.md5 @@ -0,0 +1 @@ +27601fdf83bb6db5a6ea98f6ec4ea6c3 \ No newline at end of file diff --git a/doc/html/inherit_graph_30.svg b/doc/html/inherit_graph_30.svg new file mode 100644 index 00000000..cdbafd38 --- /dev/null +++ b/doc/html/inherit_graph_30.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Argument > + + + + + diff --git a/doc/html/inherit_graph_31.map b/doc/html/inherit_graph_31.map new file mode 100644 index 00000000..5ba87ba6 --- /dev/null +++ b/doc/html/inherit_graph_31.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_31.md5 b/doc/html/inherit_graph_31.md5 new file mode 100644 index 00000000..3f1ee9f5 --- /dev/null +++ b/doc/html/inherit_graph_31.md5 @@ -0,0 +1 @@ +4e5f4a37668849b97222f5a58fe604f4 \ No newline at end of file diff --git a/doc/html/inherit_graph_31.svg b/doc/html/inherit_graph_31.svg new file mode 100644 index 00000000..ca22a7e2 --- /dev/null +++ b/doc/html/inherit_graph_31.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Column > + + + + + diff --git a/doc/html/inherit_graph_32.map b/doc/html/inherit_graph_32.map new file mode 100644 index 00000000..1c72fb2a --- /dev/null +++ b/doc/html/inherit_graph_32.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_32.md5 b/doc/html/inherit_graph_32.md5 new file mode 100644 index 00000000..bd4561bf --- /dev/null +++ b/doc/html/inherit_graph_32.md5 @@ -0,0 +1 @@ +35b6716637dc5557ff0755af81c72166 \ No newline at end of file diff --git a/doc/html/inherit_graph_32.svg b/doc/html/inherit_graph_32.svg new file mode 100644 index 00000000..d9addf37 --- /dev/null +++ b/doc/html/inherit_graph_32.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< complexd > + + + + + diff --git a/doc/html/inherit_graph_33.map b/doc/html/inherit_graph_33.map new file mode 100644 index 00000000..26714723 --- /dev/null +++ b/doc/html/inherit_graph_33.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_33.md5 b/doc/html/inherit_graph_33.md5 new file mode 100644 index 00000000..b868fd42 --- /dev/null +++ b/doc/html/inherit_graph_33.md5 @@ -0,0 +1 @@ +b507ee15a025e0b43a88a7ed97415c6c \ No newline at end of file diff --git a/doc/html/inherit_graph_33.svg b/doc/html/inherit_graph_33.svg new file mode 100644 index 00000000..c2a9b810 --- /dev/null +++ b/doc/html/inherit_graph_33.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Condition > + + + + + diff --git a/doc/html/inherit_graph_34.map b/doc/html/inherit_graph_34.map new file mode 100644 index 00000000..fd9bd8f8 --- /dev/null +++ b/doc/html/inherit_graph_34.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_34.md5 b/doc/html/inherit_graph_34.md5 new file mode 100644 index 00000000..64b51588 --- /dev/null +++ b/doc/html/inherit_graph_34.md5 @@ -0,0 +1 @@ +8c54ccfe0290635e5366df20e5906aa0 \ No newline at end of file diff --git a/doc/html/inherit_graph_34.svg b/doc/html/inherit_graph_34.svg new file mode 100644 index 00000000..6b31e12c --- /dev/null +++ b/doc/html/inherit_graph_34.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Connection > + + + + + diff --git a/doc/html/inherit_graph_35.map b/doc/html/inherit_graph_35.map new file mode 100644 index 00000000..3074e687 --- /dev/null +++ b/doc/html/inherit_graph_35.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_35.md5 b/doc/html/inherit_graph_35.md5 new file mode 100644 index 00000000..f7d78de1 --- /dev/null +++ b/doc/html/inherit_graph_35.md5 @@ -0,0 +1 @@ +a3f8294986be699e66d14b237b7657a2 \ No newline at end of file diff --git a/doc/html/inherit_graph_35.svg b/doc/html/inherit_graph_35.svg new file mode 100644 index 00000000..1ae2bfad --- /dev/null +++ b/doc/html/inherit_graph_35.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< const PIObject * > + + + + + diff --git a/doc/html/inherit_graph_36.map b/doc/html/inherit_graph_36.map new file mode 100644 index 00000000..c05de523 --- /dev/null +++ b/doc/html/inherit_graph_36.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_36.md5 b/doc/html/inherit_graph_36.md5 new file mode 100644 index 00000000..b7cd2aa3 --- /dev/null +++ b/doc/html/inherit_graph_36.md5 @@ -0,0 +1 @@ +bf76c5cab26977759ff8bf45f6430d45 \ No newline at end of file diff --git a/doc/html/inherit_graph_36.svg b/doc/html/inherit_graph_36.svg new file mode 100644 index 00000000..72d31e4e --- /dev/null +++ b/doc/html/inherit_graph_36.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Define > + + + + + diff --git a/doc/html/inherit_graph_37.map b/doc/html/inherit_graph_37.map new file mode 100644 index 00000000..7ed52d59 --- /dev/null +++ b/doc/html/inherit_graph_37.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_37.md5 b/doc/html/inherit_graph_37.md5 new file mode 100644 index 00000000..cb309a69 --- /dev/null +++ b/doc/html/inherit_graph_37.md5 @@ -0,0 +1 @@ +7957c4d92460ecfd875e5559af44e668 \ No newline at end of file diff --git a/doc/html/inherit_graph_37.svg b/doc/html/inherit_graph_37.svg new file mode 100644 index 00000000..beda4c52 --- /dev/null +++ b/doc/html/inherit_graph_37.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Delimiter > + + + + + diff --git a/doc/html/inherit_graph_38.map b/doc/html/inherit_graph_38.map new file mode 100644 index 00000000..022c0073 --- /dev/null +++ b/doc/html/inherit_graph_38.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_38.md5 b/doc/html/inherit_graph_38.md5 new file mode 100644 index 00000000..bec1c454 --- /dev/null +++ b/doc/html/inherit_graph_38.md5 @@ -0,0 +1 @@ +b6f7e35945b1a66b91ea979ba6cbbda9 \ No newline at end of file diff --git a/doc/html/inherit_graph_38.svg b/doc/html/inherit_graph_38.svg new file mode 100644 index 00000000..41fbaa8d --- /dev/null +++ b/doc/html/inherit_graph_38.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< DeviceData * > + + + + + diff --git a/doc/html/inherit_graph_39.map b/doc/html/inherit_graph_39.map new file mode 100644 index 00000000..bcf091cb --- /dev/null +++ b/doc/html/inherit_graph_39.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_39.md5 b/doc/html/inherit_graph_39.md5 new file mode 100644 index 00000000..1d43517a --- /dev/null +++ b/doc/html/inherit_graph_39.md5 @@ -0,0 +1 @@ +4d0321ec927974df938b100b263b13c9 \ No newline at end of file diff --git a/doc/html/inherit_graph_39.svg b/doc/html/inherit_graph_39.svg new file mode 100644 index 00000000..128c13da --- /dev/null +++ b/doc/html/inherit_graph_39.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< double > + + + + + diff --git a/doc/html/inherit_graph_4.map b/doc/html/inherit_graph_4.map new file mode 100644 index 00000000..def59c72 --- /dev/null +++ b/doc/html/inherit_graph_4.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_4.md5 b/doc/html/inherit_graph_4.md5 new file mode 100644 index 00000000..d675a5d4 --- /dev/null +++ b/doc/html/inherit_graph_4.md5 @@ -0,0 +1 @@ +2e06246a1aed209250a05731f7d78778 \ No newline at end of file diff --git a/doc/html/inherit_graph_4.svg b/doc/html/inherit_graph_4.svg new file mode 100644 index 00000000..9c8e57fe --- /dev/null +++ b/doc/html/inherit_graph_4.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIConfig::Entry + + + + + diff --git a/doc/html/inherit_graph_40.map b/doc/html/inherit_graph_40.map new file mode 100644 index 00000000..f1577716 --- /dev/null +++ b/doc/html/inherit_graph_40.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_40.md5 b/doc/html/inherit_graph_40.md5 new file mode 100644 index 00000000..010cc6a1 --- /dev/null +++ b/doc/html/inherit_graph_40.md5 @@ -0,0 +1 @@ +378da3dc0324958a5bbbac8cd502b1c2 \ No newline at end of file diff --git a/doc/html/inherit_graph_40.svg b/doc/html/inherit_graph_40.svg new file mode 100644 index 00000000..acab0ac4 --- /dev/null +++ b/doc/html/inherit_graph_40.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Entity * > + + + + + diff --git a/doc/html/inherit_graph_41.map b/doc/html/inherit_graph_41.map new file mode 100644 index 00000000..942f458b --- /dev/null +++ b/doc/html/inherit_graph_41.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/inherit_graph_41.md5 b/doc/html/inherit_graph_41.md5 new file mode 100644 index 00000000..5cb553c1 --- /dev/null +++ b/doc/html/inherit_graph_41.md5 @@ -0,0 +1 @@ +90ff0f26dea29117466679f011bd56e2 \ No newline at end of file diff --git a/doc/html/inherit_graph_41.svg b/doc/html/inherit_graph_41.svg new file mode 100644 index 00000000..7fffbe7c --- /dev/null +++ b/doc/html/inherit_graph_41.svg @@ -0,0 +1,34 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Entry * > + + + + +Node2 + + +PIConfig::Branch + + + + +Node1->Node2 + + + + + diff --git a/doc/html/inherit_graph_42.map b/doc/html/inherit_graph_42.map new file mode 100644 index 00000000..842f06b8 --- /dev/null +++ b/doc/html/inherit_graph_42.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_42.md5 b/doc/html/inherit_graph_42.md5 new file mode 100644 index 00000000..8ec9de0e --- /dev/null +++ b/doc/html/inherit_graph_42.md5 @@ -0,0 +1 @@ +c31ba014022cec760a25a0541818573c \ No newline at end of file diff --git a/doc/html/inherit_graph_42.svg b/doc/html/inherit_graph_42.svg new file mode 100644 index 00000000..4e9e135e --- /dev/null +++ b/doc/html/inherit_graph_42.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Entry > + + + + + diff --git a/doc/html/inherit_graph_43.map b/doc/html/inherit_graph_43.map new file mode 100644 index 00000000..cba7f609 --- /dev/null +++ b/doc/html/inherit_graph_43.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_43.md5 b/doc/html/inherit_graph_43.md5 new file mode 100644 index 00000000..2bd57d96 --- /dev/null +++ b/doc/html/inherit_graph_43.md5 @@ -0,0 +1 @@ +7b8d2389459aa9c2a1fd6f2f7a2a6e5e \ No newline at end of file diff --git a/doc/html/inherit_graph_43.svg b/doc/html/inherit_graph_43.svg new file mode 100644 index 00000000..ffe630fb --- /dev/null +++ b/doc/html/inherit_graph_43.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Enum > + + + + + diff --git a/doc/html/inherit_graph_44.map b/doc/html/inherit_graph_44.map new file mode 100644 index 00000000..126d902e --- /dev/null +++ b/doc/html/inherit_graph_44.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_44.md5 b/doc/html/inherit_graph_44.md5 new file mode 100644 index 00000000..a3594c13 --- /dev/null +++ b/doc/html/inherit_graph_44.md5 @@ -0,0 +1 @@ +61a8f76db5469ec03ee2cec14d071928 \ No newline at end of file diff --git a/doc/html/inherit_graph_44.svg b/doc/html/inherit_graph_44.svg new file mode 100644 index 00000000..8ef252b4 --- /dev/null +++ b/doc/html/inherit_graph_44.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Enumerator > + + + + + diff --git a/doc/html/inherit_graph_45.map b/doc/html/inherit_graph_45.map new file mode 100644 index 00000000..2764acb0 --- /dev/null +++ b/doc/html/inherit_graph_45.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_45.md5 b/doc/html/inherit_graph_45.md5 new file mode 100644 index 00000000..55ecd292 --- /dev/null +++ b/doc/html/inherit_graph_45.md5 @@ -0,0 +1 @@ +802a6347391af83189159a2212a1ad8c \ No newline at end of file diff --git a/doc/html/inherit_graph_45.svg b/doc/html/inherit_graph_45.svg new file mode 100644 index 00000000..c865f6ef --- /dev/null +++ b/doc/html/inherit_graph_45.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Extractor * > + + + + + diff --git a/doc/html/inherit_graph_46.map b/doc/html/inherit_graph_46.map new file mode 100644 index 00000000..4ee94cab --- /dev/null +++ b/doc/html/inherit_graph_46.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_46.md5 b/doc/html/inherit_graph_46.md5 new file mode 100644 index 00000000..b752a77d --- /dev/null +++ b/doc/html/inherit_graph_46.md5 @@ -0,0 +1 @@ +a38c9fa50548e2741099d7dbb5cefa71 \ No newline at end of file diff --git a/doc/html/inherit_graph_46.svg b/doc/html/inherit_graph_46.svg new file mode 100644 index 00000000..58603aee --- /dev/null +++ b/doc/html/inherit_graph_46.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Group > + + + + + diff --git a/doc/html/inherit_graph_47.map b/doc/html/inherit_graph_47.map new file mode 100644 index 00000000..c6545519 --- /dev/null +++ b/doc/html/inherit_graph_47.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_47.md5 b/doc/html/inherit_graph_47.md5 new file mode 100644 index 00000000..ef18795b --- /dev/null +++ b/doc/html/inherit_graph_47.md5 @@ -0,0 +1 @@ +cec3dae7601d65bcffa5f3461953f03a \ No newline at end of file diff --git a/doc/html/inherit_graph_47.svg b/doc/html/inherit_graph_47.svg new file mode 100644 index 00000000..98ab1b41 --- /dev/null +++ b/doc/html/inherit_graph_47.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< int > + + + + + diff --git a/doc/html/inherit_graph_48.map b/doc/html/inherit_graph_48.map new file mode 100644 index 00000000..85828728 --- /dev/null +++ b/doc/html/inherit_graph_48.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_48.md5 b/doc/html/inherit_graph_48.md5 new file mode 100644 index 00000000..8f4406f3 --- /dev/null +++ b/doc/html/inherit_graph_48.md5 @@ -0,0 +1 @@ +51634f101ee75528eae56a9106d9c4ad \ No newline at end of file diff --git a/doc/html/inherit_graph_48.svg b/doc/html/inherit_graph_48.svg new file mode 100644 index 00000000..069878c5 --- /dev/null +++ b/doc/html/inherit_graph_48.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Macro > + + + + + diff --git a/doc/html/inherit_graph_49.map b/doc/html/inherit_graph_49.map new file mode 100644 index 00000000..4ade2b00 --- /dev/null +++ b/doc/html/inherit_graph_49.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_49.md5 b/doc/html/inherit_graph_49.md5 new file mode 100644 index 00000000..77bc2ef5 --- /dev/null +++ b/doc/html/inherit_graph_49.md5 @@ -0,0 +1 @@ +85cb71fc7bb627aeff9678809e414c71 \ No newline at end of file diff --git a/doc/html/inherit_graph_49.svg b/doc/html/inherit_graph_49.svg new file mode 100644 index 00000000..8594efd0 --- /dev/null +++ b/doc/html/inherit_graph_49.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Member > + + + + + diff --git a/doc/html/inherit_graph_5.map b/doc/html/inherit_graph_5.map new file mode 100644 index 00000000..897f816d --- /dev/null +++ b/doc/html/inherit_graph_5.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_5.md5 b/doc/html/inherit_graph_5.md5 new file mode 100644 index 00000000..08eab0a0 --- /dev/null +++ b/doc/html/inherit_graph_5.md5 @@ -0,0 +1 @@ +3adff8b82ea98b1463f4950609df8fd7 \ No newline at end of file diff --git a/doc/html/inherit_graph_5.svg b/doc/html/inherit_graph_5.svg new file mode 100644 index 00000000..63d04b61 --- /dev/null +++ b/doc/html/inherit_graph_5.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PICout + + + + + diff --git a/doc/html/inherit_graph_50.map b/doc/html/inherit_graph_50.map new file mode 100644 index 00000000..246f03ed --- /dev/null +++ b/doc/html/inherit_graph_50.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_50.md5 b/doc/html/inherit_graph_50.md5 new file mode 100644 index 00000000..32a2e4e9 --- /dev/null +++ b/doc/html/inherit_graph_50.md5 @@ -0,0 +1 @@ +6c705c14f628477de0be0383d19faf54 \ No newline at end of file diff --git a/doc/html/inherit_graph_50.svg b/doc/html/inherit_graph_50.svg new file mode 100644 index 00000000..ecd19ba3 --- /dev/null +++ b/doc/html/inherit_graph_50.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< node > + + + + + diff --git a/doc/html/inherit_graph_51.map b/doc/html/inherit_graph_51.map new file mode 100644 index 00000000..c7ead78a --- /dev/null +++ b/doc/html/inherit_graph_51.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_51.md5 b/doc/html/inherit_graph_51.md5 new file mode 100644 index 00000000..8c922b33 --- /dev/null +++ b/doc/html/inherit_graph_51.md5 @@ -0,0 +1 @@ +76f70cc6450c839938f753d98a9e75f2 \ No newline at end of file diff --git a/doc/html/inherit_graph_51.svg b/doc/html/inherit_graph_51.svg new file mode 100644 index 00000000..2a96d66d --- /dev/null +++ b/doc/html/inherit_graph_51.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PeerInfo > + + + + + diff --git a/doc/html/inherit_graph_52.map b/doc/html/inherit_graph_52.map new file mode 100644 index 00000000..05063904 --- /dev/null +++ b/doc/html/inherit_graph_52.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_52.md5 b/doc/html/inherit_graph_52.md5 new file mode 100644 index 00000000..730db10c --- /dev/null +++ b/doc/html/inherit_graph_52.md5 @@ -0,0 +1 @@ +1ebfb695299fe487b307fc3bd6322d9a \ No newline at end of file diff --git a/doc/html/inherit_graph_52.svg b/doc/html/inherit_graph_52.svg new file mode 100644 index 00000000..de330838 --- /dev/null +++ b/doc/html/inherit_graph_52.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PICodeInfo +::EnumeratorInfo > + + + + + diff --git a/doc/html/inherit_graph_53.map b/doc/html/inherit_graph_53.map new file mode 100644 index 00000000..6340091a --- /dev/null +++ b/doc/html/inherit_graph_53.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_53.md5 b/doc/html/inherit_graph_53.md5 new file mode 100644 index 00000000..d6730eb6 --- /dev/null +++ b/doc/html/inherit_graph_53.md5 @@ -0,0 +1 @@ +a6201b158ea1548c7e7fec186ea51597 \ No newline at end of file diff --git a/doc/html/inherit_graph_53.svg b/doc/html/inherit_graph_53.svg new file mode 100644 index 00000000..580b7b9e --- /dev/null +++ b/doc/html/inherit_graph_53.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PICodeInfo +::FunctionInfo > + + + + + diff --git a/doc/html/inherit_graph_54.map b/doc/html/inherit_graph_54.map new file mode 100644 index 00000000..a228d185 --- /dev/null +++ b/doc/html/inherit_graph_54.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_54.md5 b/doc/html/inherit_graph_54.md5 new file mode 100644 index 00000000..6cf469f7 --- /dev/null +++ b/doc/html/inherit_graph_54.md5 @@ -0,0 +1 @@ +14802bb3defd0d40066b8590830e4378 \ No newline at end of file diff --git a/doc/html/inherit_graph_54.svg b/doc/html/inherit_graph_54.svg new file mode 100644 index 00000000..ad01d751 --- /dev/null +++ b/doc/html/inherit_graph_54.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PICodeInfo +::TypeInfo > + + + + + diff --git a/doc/html/inherit_graph_55.map b/doc/html/inherit_graph_55.map new file mode 100644 index 00000000..aea04520 --- /dev/null +++ b/doc/html/inherit_graph_55.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_55.md5 b/doc/html/inherit_graph_55.md5 new file mode 100644 index 00000000..52bb15d8 --- /dev/null +++ b/doc/html/inherit_graph_55.md5 @@ -0,0 +1 @@ +845b26be2a6a3eda2d69c84df2147cbb \ No newline at end of file diff --git a/doc/html/inherit_graph_55.svg b/doc/html/inherit_graph_55.svg new file mode 100644 index 00000000..ba5517a9 --- /dev/null +++ b/doc/html/inherit_graph_55.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIConnection * > + + + + + diff --git a/doc/html/inherit_graph_56.map b/doc/html/inherit_graph_56.map new file mode 100644 index 00000000..ae1a0fa0 --- /dev/null +++ b/doc/html/inherit_graph_56.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_56.md5 b/doc/html/inherit_graph_56.md5 new file mode 100644 index 00000000..b30f4515 --- /dev/null +++ b/doc/html/inherit_graph_56.md5 @@ -0,0 +1 @@ +0a6c850a1fe4a010fed520bc87caeb02 \ No newline at end of file diff --git a/doc/html/inherit_graph_56.svg b/doc/html/inherit_graph_56.svg new file mode 100644 index 00000000..5da75b79 --- /dev/null +++ b/doc/html/inherit_graph_56.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIDiagnostics * > + + + + + diff --git a/doc/html/inherit_graph_57.map b/doc/html/inherit_graph_57.map new file mode 100644 index 00000000..dda1771d --- /dev/null +++ b/doc/html/inherit_graph_57.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_57.md5 b/doc/html/inherit_graph_57.md5 new file mode 100644 index 00000000..172cf7bf --- /dev/null +++ b/doc/html/inherit_graph_57.md5 @@ -0,0 +1 @@ +54806d18231aacf3c21aa3e8f840a1f1 \ No newline at end of file diff --git a/doc/html/inherit_graph_57.svg b/doc/html/inherit_graph_57.svg new file mode 100644 index 00000000..1d0a88b3 --- /dev/null +++ b/doc/html/inherit_graph_57.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEthernet * > + + + + + diff --git a/doc/html/inherit_graph_58.map b/doc/html/inherit_graph_58.map new file mode 100644 index 00000000..f32d1b45 --- /dev/null +++ b/doc/html/inherit_graph_58.map @@ -0,0 +1,4 @@ + + + + diff --git a/doc/html/inherit_graph_58.md5 b/doc/html/inherit_graph_58.md5 new file mode 100644 index 00000000..c4093bf4 --- /dev/null +++ b/doc/html/inherit_graph_58.md5 @@ -0,0 +1 @@ +46f51a8b072d1b5be4198b980003289e \ No newline at end of file diff --git a/doc/html/inherit_graph_58.svg b/doc/html/inherit_graph_58.svg new file mode 100644 index 00000000..e1674fd5 --- /dev/null +++ b/doc/html/inherit_graph_58.svg @@ -0,0 +1,35 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEthernet +::Interface > + + + + +Node2 + + +PIEthernet::InterfaceList + + + + +Node1->Node2 + + + + + diff --git a/doc/html/inherit_graph_59.map b/doc/html/inherit_graph_59.map new file mode 100644 index 00000000..38b53f9d --- /dev/null +++ b/doc/html/inherit_graph_59.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_59.md5 b/doc/html/inherit_graph_59.md5 new file mode 100644 index 00000000..88e6ae90 --- /dev/null +++ b/doc/html/inherit_graph_59.md5 @@ -0,0 +1 @@ +edc540fc90cbecbb72fe6d146611a2f4 \ No newline at end of file diff --git a/doc/html/inherit_graph_59.svg b/doc/html/inherit_graph_59.svg new file mode 100644 index 00000000..4a7f62d7 --- /dev/null +++ b/doc/html/inherit_graph_59.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEvaluatorTypes +::Element > + + + + + diff --git a/doc/html/inherit_graph_6.map b/doc/html/inherit_graph_6.map new file mode 100644 index 00000000..71b5825f --- /dev/null +++ b/doc/html/inherit_graph_6.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_6.md5 b/doc/html/inherit_graph_6.md5 new file mode 100644 index 00000000..441889cf --- /dev/null +++ b/doc/html/inherit_graph_6.md5 @@ -0,0 +1 @@ +3cbd2d31444cf69f81dc8969a6372700 \ No newline at end of file diff --git a/doc/html/inherit_graph_6.svg b/doc/html/inherit_graph_6.svg new file mode 100644 index 00000000..c89381ed --- /dev/null +++ b/doc/html/inherit_graph_6.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIEthernet::Interface + + + + + diff --git a/doc/html/inherit_graph_60.map b/doc/html/inherit_graph_60.map new file mode 100644 index 00000000..f1ef9bd4 --- /dev/null +++ b/doc/html/inherit_graph_60.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_60.md5 b/doc/html/inherit_graph_60.md5 new file mode 100644 index 00000000..b609cfa2 --- /dev/null +++ b/doc/html/inherit_graph_60.md5 @@ -0,0 +1 @@ +008c3b6bb2d7a5dc24f0418e53005f8b \ No newline at end of file diff --git a/doc/html/inherit_graph_60.svg b/doc/html/inherit_graph_60.svg new file mode 100644 index 00000000..a8efefa9 --- /dev/null +++ b/doc/html/inherit_graph_60.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEvaluatorTypes +::Function > + + + + + diff --git a/doc/html/inherit_graph_61.map b/doc/html/inherit_graph_61.map new file mode 100644 index 00000000..08b88395 --- /dev/null +++ b/doc/html/inherit_graph_61.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_61.md5 b/doc/html/inherit_graph_61.md5 new file mode 100644 index 00000000..fb769020 --- /dev/null +++ b/doc/html/inherit_graph_61.md5 @@ -0,0 +1 @@ +981a44dc7391133c38c8ed51a4360298 \ No newline at end of file diff --git a/doc/html/inherit_graph_61.svg b/doc/html/inherit_graph_61.svg new file mode 100644 index 00000000..b946af04 --- /dev/null +++ b/doc/html/inherit_graph_61.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEvaluatorTypes +::Instruction > + + + + + diff --git a/doc/html/inherit_graph_62.map b/doc/html/inherit_graph_62.map new file mode 100644 index 00000000..f317d7a7 --- /dev/null +++ b/doc/html/inherit_graph_62.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_62.md5 b/doc/html/inherit_graph_62.md5 new file mode 100644 index 00000000..6bd58293 --- /dev/null +++ b/doc/html/inherit_graph_62.md5 @@ -0,0 +1 @@ +690a903dfa5fc35c7cea1d5ae001b21d \ No newline at end of file diff --git a/doc/html/inherit_graph_62.svg b/doc/html/inherit_graph_62.svg new file mode 100644 index 00000000..120e858a --- /dev/null +++ b/doc/html/inherit_graph_62.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIEvaluatorTypes +::Variable > + + + + + diff --git a/doc/html/inherit_graph_63.map b/doc/html/inherit_graph_63.map new file mode 100644 index 00000000..913b4d1b --- /dev/null +++ b/doc/html/inherit_graph_63.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_63.md5 b/doc/html/inherit_graph_63.md5 new file mode 100644 index 00000000..6036aca4 --- /dev/null +++ b/doc/html/inherit_graph_63.md5 @@ -0,0 +1 @@ +5d3b2243a6553325d918a43974841d4c \ No newline at end of file diff --git a/doc/html/inherit_graph_63.svg b/doc/html/inherit_graph_63.svg new file mode 100644 index 00000000..5bbe1704 --- /dev/null +++ b/doc/html/inherit_graph_63.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIIODevice * > + + + + + diff --git a/doc/html/inherit_graph_64.map b/doc/html/inherit_graph_64.map new file mode 100644 index 00000000..1ddde373 --- /dev/null +++ b/doc/html/inherit_graph_64.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_64.md5 b/doc/html/inherit_graph_64.md5 new file mode 100644 index 00000000..0f1cda10 --- /dev/null +++ b/doc/html/inherit_graph_64.md5 @@ -0,0 +1 @@ +6f9a39f1dd22bbb24641e98473e177d5 \ No newline at end of file diff --git a/doc/html/inherit_graph_64.svg b/doc/html/inherit_graph_64.svg new file mode 100644 index 00000000..dd497a6e --- /dev/null +++ b/doc/html/inherit_graph_64.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIIODevice +::DeviceMode > + + + + + diff --git a/doc/html/inherit_graph_65.map b/doc/html/inherit_graph_65.map new file mode 100644 index 00000000..d587ff79 --- /dev/null +++ b/doc/html/inherit_graph_65.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_65.md5 b/doc/html/inherit_graph_65.md5 new file mode 100644 index 00000000..2c498da3 --- /dev/null +++ b/doc/html/inherit_graph_65.md5 @@ -0,0 +1 @@ +8319a8cbc6db0802281d0116c8b42af4 \ No newline at end of file diff --git a/doc/html/inherit_graph_65.svg b/doc/html/inherit_graph_65.svg new file mode 100644 index 00000000..7917a8fc --- /dev/null +++ b/doc/html/inherit_graph_65.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIMathVectord > + + + + + diff --git a/doc/html/inherit_graph_66.map b/doc/html/inherit_graph_66.map new file mode 100644 index 00000000..6af6261f --- /dev/null +++ b/doc/html/inherit_graph_66.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_66.md5 b/doc/html/inherit_graph_66.md5 new file mode 100644 index 00000000..63040175 --- /dev/null +++ b/doc/html/inherit_graph_66.md5 @@ -0,0 +1 @@ +3f909d55cb4db7b044c43deb28a8314f \ No newline at end of file diff --git a/doc/html/inherit_graph_66.svg b/doc/html/inherit_graph_66.svg new file mode 100644 index 00000000..4d8e8f1d --- /dev/null +++ b/doc/html/inherit_graph_66.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIObject * > + + + + + diff --git a/doc/html/inherit_graph_67.map b/doc/html/inherit_graph_67.map new file mode 100644 index 00000000..795d111f --- /dev/null +++ b/doc/html/inherit_graph_67.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_67.md5 b/doc/html/inherit_graph_67.md5 new file mode 100644 index 00000000..d4493a5b --- /dev/null +++ b/doc/html/inherit_graph_67.md5 @@ -0,0 +1 @@ +16c037202ba42bf7deca7c3e0a6af005 \ No newline at end of file diff --git a/doc/html/inherit_graph_67.svg b/doc/html/inherit_graph_67.svg new file mode 100644 index 00000000..a1674f6d --- /dev/null +++ b/doc/html/inherit_graph_67.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIPair< PIByte +Array, ullong > > + + + + + diff --git a/doc/html/inherit_graph_68.map b/doc/html/inherit_graph_68.map new file mode 100644 index 00000000..35f7caaa --- /dev/null +++ b/doc/html/inherit_graph_68.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_68.md5 b/doc/html/inherit_graph_68.md5 new file mode 100644 index 00000000..8456f77d --- /dev/null +++ b/doc/html/inherit_graph_68.md5 @@ -0,0 +1 @@ +91a56056cec7bc83be1d925d475fc29e \ No newline at end of file diff --git a/doc/html/inherit_graph_68.svg b/doc/html/inherit_graph_68.svg new file mode 100644 index 00000000..28c2ca59 --- /dev/null +++ b/doc/html/inherit_graph_68.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIProtocol * > + + + + + diff --git a/doc/html/inherit_graph_69.map b/doc/html/inherit_graph_69.map new file mode 100644 index 00000000..d9f920a0 --- /dev/null +++ b/doc/html/inherit_graph_69.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_69.md5 b/doc/html/inherit_graph_69.md5 new file mode 100644 index 00000000..e9230ada --- /dev/null +++ b/doc/html/inherit_graph_69.md5 @@ -0,0 +1 @@ +3fa7c0e633e9de9955785c333859ea07 \ No newline at end of file diff --git a/doc/html/inherit_graph_69.svg b/doc/html/inherit_graph_69.svg new file mode 100644 index 00000000..57f13ce2 --- /dev/null +++ b/doc/html/inherit_graph_69.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIStateMachine +::Rule > + + + + + diff --git a/doc/html/inherit_graph_7.map b/doc/html/inherit_graph_7.map new file mode 100644 index 00000000..c2eb704c --- /dev/null +++ b/doc/html/inherit_graph_7.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_7.md5 b/doc/html/inherit_graph_7.md5 new file mode 100644 index 00000000..ae78527b --- /dev/null +++ b/doc/html/inherit_graph_7.md5 @@ -0,0 +1 @@ +197985ed7d63011a36be70ef7ccb638e \ No newline at end of file diff --git a/doc/html/inherit_graph_7.svg b/doc/html/inherit_graph_7.svg new file mode 100644 index 00000000..b00adc27 --- /dev/null +++ b/doc/html/inherit_graph_7.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIEvaluator + + + + + diff --git a/doc/html/inherit_graph_70.map b/doc/html/inherit_graph_70.map new file mode 100644 index 00000000..e728c149 --- /dev/null +++ b/doc/html/inherit_graph_70.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_70.md5 b/doc/html/inherit_graph_70.md5 new file mode 100644 index 00000000..9e6e9bfd --- /dev/null +++ b/doc/html/inherit_graph_70.md5 @@ -0,0 +1 @@ +f503a6eae12245f8dd27aa3af74f6020 \ No newline at end of file diff --git a/doc/html/inherit_graph_70.svg b/doc/html/inherit_graph_70.svg new file mode 100644 index 00000000..bb1977fc --- /dev/null +++ b/doc/html/inherit_graph_70.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIStateMachine +::State > + + + + + diff --git a/doc/html/inherit_graph_71.map b/doc/html/inherit_graph_71.map new file mode 100644 index 00000000..762fd636 --- /dev/null +++ b/doc/html/inherit_graph_71.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_71.md5 b/doc/html/inherit_graph_71.md5 new file mode 100644 index 00000000..c290112f --- /dev/null +++ b/doc/html/inherit_graph_71.md5 @@ -0,0 +1 @@ +693e9d4a2527af2fdd57bf96fcba9adb \ No newline at end of file diff --git a/doc/html/inherit_graph_71.svg b/doc/html/inherit_graph_71.svg new file mode 100644 index 00000000..3455fee4 --- /dev/null +++ b/doc/html/inherit_graph_71.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIString > + + + + + diff --git a/doc/html/inherit_graph_72.map b/doc/html/inherit_graph_72.map new file mode 100644 index 00000000..c5ac8437 --- /dev/null +++ b/doc/html/inherit_graph_72.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_72.md5 b/doc/html/inherit_graph_72.md5 new file mode 100644 index 00000000..2a828841 --- /dev/null +++ b/doc/html/inherit_graph_72.md5 @@ -0,0 +1 @@ +4a4a43617a15687a7e950d5456a693d9 \ No newline at end of file diff --git a/doc/html/inherit_graph_72.svg b/doc/html/inherit_graph_72.svg new file mode 100644 index 00000000..62e51fe7 --- /dev/null +++ b/doc/html/inherit_graph_72.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIUSB::Configuration > + + + + + diff --git a/doc/html/inherit_graph_73.map b/doc/html/inherit_graph_73.map new file mode 100644 index 00000000..43151f84 --- /dev/null +++ b/doc/html/inherit_graph_73.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_73.md5 b/doc/html/inherit_graph_73.md5 new file mode 100644 index 00000000..75f2a02d --- /dev/null +++ b/doc/html/inherit_graph_73.md5 @@ -0,0 +1 @@ +ef140149307b6d7dbe1b1c2da6e575ff \ No newline at end of file diff --git a/doc/html/inherit_graph_73.svg b/doc/html/inherit_graph_73.svg new file mode 100644 index 00000000..0a2a8b1f --- /dev/null +++ b/doc/html/inherit_graph_73.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIUSB::Endpoint > + + + + + diff --git a/doc/html/inherit_graph_74.map b/doc/html/inherit_graph_74.map new file mode 100644 index 00000000..6ed1c2fa --- /dev/null +++ b/doc/html/inherit_graph_74.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_74.md5 b/doc/html/inherit_graph_74.md5 new file mode 100644 index 00000000..9bf14c9c --- /dev/null +++ b/doc/html/inherit_graph_74.md5 @@ -0,0 +1 @@ +096651eccde45028edf76076b73fa6d2 \ No newline at end of file diff --git a/doc/html/inherit_graph_74.svg b/doc/html/inherit_graph_74.svg new file mode 100644 index 00000000..e48fb5d0 --- /dev/null +++ b/doc/html/inherit_graph_74.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIUSB::Interface > + + + + + diff --git a/doc/html/inherit_graph_75.map b/doc/html/inherit_graph_75.map new file mode 100644 index 00000000..9485829c --- /dev/null +++ b/doc/html/inherit_graph_75.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_75.md5 b/doc/html/inherit_graph_75.md5 new file mode 100644 index 00000000..46f401e0 --- /dev/null +++ b/doc/html/inherit_graph_75.md5 @@ -0,0 +1 @@ +8bf4b258cf3b096e5f909c82a89777f7 \ No newline at end of file diff --git a/doc/html/inherit_graph_75.svg b/doc/html/inherit_graph_75.svg new file mode 100644 index 00000000..4c86e76b --- /dev/null +++ b/doc/html/inherit_graph_75.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVariant > + + + + + diff --git a/doc/html/inherit_graph_76.map b/doc/html/inherit_graph_76.map new file mode 100644 index 00000000..0ac66285 --- /dev/null +++ b/doc/html/inherit_graph_76.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_76.md5 b/doc/html/inherit_graph_76.md5 new file mode 100644 index 00000000..f5893574 --- /dev/null +++ b/doc/html/inherit_graph_76.md5 @@ -0,0 +1 @@ +9a6e7f5f8cfcb1b27fcc13d3ed06523a \ No newline at end of file diff --git a/doc/html/inherit_graph_76.svg b/doc/html/inherit_graph_76.svg new file mode 100644 index 00000000..a16ed25b --- /dev/null +++ b/doc/html/inherit_graph_76.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVector +< double > > + + + + + diff --git a/doc/html/inherit_graph_77.map b/doc/html/inherit_graph_77.map new file mode 100644 index 00000000..bb1f0c07 --- /dev/null +++ b/doc/html/inherit_graph_77.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_77.md5 b/doc/html/inherit_graph_77.md5 new file mode 100644 index 00000000..beaf7c2c --- /dev/null +++ b/doc/html/inherit_graph_77.md5 @@ -0,0 +1 @@ +299796daae6f1fdc9700863a843e30af \ No newline at end of file diff --git a/doc/html/inherit_graph_77.svg b/doc/html/inherit_graph_77.svg new file mode 100644 index 00000000..496e0125 --- /dev/null +++ b/doc/html/inherit_graph_77.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVector +< PeerInfo * > > + + + + + diff --git a/doc/html/inherit_graph_78.map b/doc/html/inherit_graph_78.map new file mode 100644 index 00000000..94553658 --- /dev/null +++ b/doc/html/inherit_graph_78.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_78.md5 b/doc/html/inherit_graph_78.md5 new file mode 100644 index 00000000..48da43a1 --- /dev/null +++ b/doc/html/inherit_graph_78.md5 @@ -0,0 +1 @@ +09510d30d87bc5d00e2e82004aebbd65 \ No newline at end of file diff --git a/doc/html/inherit_graph_78.svg b/doc/html/inherit_graph_78.svg new file mode 100644 index 00000000..06b2d248 --- /dev/null +++ b/doc/html/inherit_graph_78.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVector +< PIIODevice * > > + + + + + diff --git a/doc/html/inherit_graph_79.map b/doc/html/inherit_graph_79.map new file mode 100644 index 00000000..1153bb9c --- /dev/null +++ b/doc/html/inherit_graph_79.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_79.md5 b/doc/html/inherit_graph_79.md5 new file mode 100644 index 00000000..d47b7429 --- /dev/null +++ b/doc/html/inherit_graph_79.md5 @@ -0,0 +1 @@ +e2b46fd51c0bed48d7295d1e0b51425f \ No newline at end of file diff --git a/doc/html/inherit_graph_79.svg b/doc/html/inherit_graph_79.svg new file mode 100644 index 00000000..55cb3c43 --- /dev/null +++ b/doc/html/inherit_graph_79.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVector +< PIPacketExtractor * > > + + + + + diff --git a/doc/html/inherit_graph_8.map b/doc/html/inherit_graph_8.map new file mode 100644 index 00000000..f79d11f4 --- /dev/null +++ b/doc/html/inherit_graph_8.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_8.md5 b/doc/html/inherit_graph_8.md5 new file mode 100644 index 00000000..ffec3082 --- /dev/null +++ b/doc/html/inherit_graph_8.md5 @@ -0,0 +1 @@ +c0535e6bcc26b794c3235346a915f26e \ No newline at end of file diff --git a/doc/html/inherit_graph_8.svg b/doc/html/inherit_graph_8.svg new file mode 100644 index 00000000..c4f0850e --- /dev/null +++ b/doc/html/inherit_graph_8.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< Attribute > + + + + + diff --git a/doc/html/inherit_graph_80.map b/doc/html/inherit_graph_80.map new file mode 100644 index 00000000..36281e57 --- /dev/null +++ b/doc/html/inherit_graph_80.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_80.md5 b/doc/html/inherit_graph_80.md5 new file mode 100644 index 00000000..5c13d62d --- /dev/null +++ b/doc/html/inherit_graph_80.md5 @@ -0,0 +1 @@ +bcd83deb2b418a5fb0db5ed61c20d471 \ No newline at end of file diff --git a/doc/html/inherit_graph_80.svg b/doc/html/inherit_graph_80.svg new file mode 100644 index 00000000..676bcf65 --- /dev/null +++ b/doc/html/inherit_graph_80.svg @@ -0,0 +1,22 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< PIVector +< Type > > + + + + + diff --git a/doc/html/inherit_graph_81.map b/doc/html/inherit_graph_81.map new file mode 100644 index 00000000..7fa13114 --- /dev/null +++ b/doc/html/inherit_graph_81.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_81.md5 b/doc/html/inherit_graph_81.md5 new file mode 100644 index 00000000..e2f06839 --- /dev/null +++ b/doc/html/inherit_graph_81.md5 @@ -0,0 +1 @@ +9ef4452ab053a4e3415eb13aa807c123 \ No newline at end of file diff --git a/doc/html/inherit_graph_81.svg b/doc/html/inherit_graph_81.svg new file mode 100644 index 00000000..b9db9da3 --- /dev/null +++ b/doc/html/inherit_graph_81.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< RemoteClient > + + + + + diff --git a/doc/html/inherit_graph_82.map b/doc/html/inherit_graph_82.map new file mode 100644 index 00000000..0cd87af3 --- /dev/null +++ b/doc/html/inherit_graph_82.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_82.md5 b/doc/html/inherit_graph_82.md5 new file mode 100644 index 00000000..a37a8e9a --- /dev/null +++ b/doc/html/inherit_graph_82.md5 @@ -0,0 +1 @@ +dbd523e9958d799740a7a6e2e921bc3f \ No newline at end of file diff --git a/doc/html/inherit_graph_82.svg b/doc/html/inherit_graph_82.svg new file mode 100644 index 00000000..2b3daf09 --- /dev/null +++ b/doc/html/inherit_graph_82.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Sender * > + + + + + diff --git a/doc/html/inherit_graph_83.map b/doc/html/inherit_graph_83.map new file mode 100644 index 00000000..a993b4e4 --- /dev/null +++ b/doc/html/inherit_graph_83.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_83.md5 b/doc/html/inherit_graph_83.md5 new file mode 100644 index 00000000..f4e8236f --- /dev/null +++ b/doc/html/inherit_graph_83.md5 @@ -0,0 +1 @@ +3ba7babd31f7a69db5e89c2f60b27961 \ No newline at end of file diff --git a/doc/html/inherit_graph_83.svg b/doc/html/inherit_graph_83.svg new file mode 100644 index 00000000..5556f3e0 --- /dev/null +++ b/doc/html/inherit_graph_83.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< SOCKET > + + + + + diff --git a/doc/html/inherit_graph_84.map b/doc/html/inherit_graph_84.map new file mode 100644 index 00000000..ce97bb32 --- /dev/null +++ b/doc/html/inherit_graph_84.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_84.md5 b/doc/html/inherit_graph_84.md5 new file mode 100644 index 00000000..c8a59091 --- /dev/null +++ b/doc/html/inherit_graph_84.md5 @@ -0,0 +1 @@ +d2510cf9d12b18605b075bfab3269ec2 \ No newline at end of file diff --git a/doc/html/inherit_graph_84.svg b/doc/html/inherit_graph_84.svg new file mode 100644 index 00000000..6f4793d5 --- /dev/null +++ b/doc/html/inherit_graph_84.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< T > + + + + + diff --git a/doc/html/inherit_graph_85.map b/doc/html/inherit_graph_85.map new file mode 100644 index 00000000..2dc98648 --- /dev/null +++ b/doc/html/inherit_graph_85.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_85.md5 b/doc/html/inherit_graph_85.md5 new file mode 100644 index 00000000..9c983674 --- /dev/null +++ b/doc/html/inherit_graph_85.md5 @@ -0,0 +1 @@ +c0e107eb4389d57f00bb0db99aeb5a16 \ No newline at end of file diff --git a/doc/html/inherit_graph_85.svg b/doc/html/inherit_graph_85.svg new file mode 100644 index 00000000..ba4de27e --- /dev/null +++ b/doc/html/inherit_graph_85.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Tab > + + + + + diff --git a/doc/html/inherit_graph_86.map b/doc/html/inherit_graph_86.map new file mode 100644 index 00000000..351723c7 --- /dev/null +++ b/doc/html/inherit_graph_86.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_86.md5 b/doc/html/inherit_graph_86.md5 new file mode 100644 index 00000000..6a836b8d --- /dev/null +++ b/doc/html/inherit_graph_86.md5 @@ -0,0 +1 @@ +27494d6c06607ec98be669308c467d79 \ No newline at end of file diff --git a/doc/html/inherit_graph_86.svg b/doc/html/inherit_graph_86.svg new file mode 100644 index 00000000..feeaddca --- /dev/null +++ b/doc/html/inherit_graph_86.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Type > + + + + + diff --git a/doc/html/inherit_graph_87.map b/doc/html/inherit_graph_87.map new file mode 100644 index 00000000..93464ba1 --- /dev/null +++ b/doc/html/inherit_graph_87.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_87.md5 b/doc/html/inherit_graph_87.md5 new file mode 100644 index 00000000..a84eef79 --- /dev/null +++ b/doc/html/inherit_graph_87.md5 @@ -0,0 +1 @@ +1cf32746d7a38ccd4b934ba5c9b82f1d \ No newline at end of file diff --git a/doc/html/inherit_graph_87.svg b/doc/html/inherit_graph_87.svg new file mode 100644 index 00000000..4c84e359 --- /dev/null +++ b/doc/html/inherit_graph_87.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Typedef > + + + + + diff --git a/doc/html/inherit_graph_88.map b/doc/html/inherit_graph_88.map new file mode 100644 index 00000000..e288cb74 --- /dev/null +++ b/doc/html/inherit_graph_88.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_88.md5 b/doc/html/inherit_graph_88.md5 new file mode 100644 index 00000000..ff6d1d8f --- /dev/null +++ b/doc/html/inherit_graph_88.md5 @@ -0,0 +1 @@ +7ea6ca17f235721f6e649a4c752b6cd3 \ No newline at end of file diff --git a/doc/html/inherit_graph_88.svg b/doc/html/inherit_graph_88.svg new file mode 100644 index 00000000..b03c3931 --- /dev/null +++ b/doc/html/inherit_graph_88.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< uchar > + + + + + diff --git a/doc/html/inherit_graph_89.map b/doc/html/inherit_graph_89.map new file mode 100644 index 00000000..d30fe9e2 --- /dev/null +++ b/doc/html/inherit_graph_89.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_89.md5 b/doc/html/inherit_graph_89.md5 new file mode 100644 index 00000000..f69c9eef --- /dev/null +++ b/doc/html/inherit_graph_89.md5 @@ -0,0 +1 @@ +dac102efd32e036f5329964323bc5c1e \ No newline at end of file diff --git a/doc/html/inherit_graph_89.svg b/doc/html/inherit_graph_89.svg new file mode 100644 index 00000000..bf5bc88f --- /dev/null +++ b/doc/html/inherit_graph_89.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIVector< Variable > + + + + + diff --git a/doc/html/inherit_graph_9.map b/doc/html/inherit_graph_9.map new file mode 100644 index 00000000..c0c6fd8a --- /dev/null +++ b/doc/html/inherit_graph_9.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_9.md5 b/doc/html/inherit_graph_9.md5 new file mode 100644 index 00000000..05caf5d4 --- /dev/null +++ b/doc/html/inherit_graph_9.md5 @@ -0,0 +1 @@ +ca151dc12777026b4bf62fbf8ef24919 \ No newline at end of file diff --git a/doc/html/inherit_graph_9.svg b/doc/html/inherit_graph_9.svg new file mode 100644 index 00000000..083aa2d1 --- /dev/null +++ b/doc/html/inherit_graph_9.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +PIFlags< Enum > + + + + + diff --git a/doc/html/inherit_graph_90.map b/doc/html/inherit_graph_90.map new file mode 100644 index 00000000..22a3238e --- /dev/null +++ b/doc/html/inherit_graph_90.map @@ -0,0 +1,3 @@ + + + diff --git a/doc/html/inherit_graph_90.md5 b/doc/html/inherit_graph_90.md5 new file mode 100644 index 00000000..2a570b68 --- /dev/null +++ b/doc/html/inherit_graph_90.md5 @@ -0,0 +1 @@ +fbbcc884973d52b42cb54b15c60a521c \ No newline at end of file diff --git a/doc/html/inherit_graph_90.svg b/doc/html/inherit_graph_90.svg new file mode 100644 index 00000000..c232579d --- /dev/null +++ b/doc/html/inherit_graph_90.svg @@ -0,0 +1,21 @@ + + + + + + +Graphical Class Hierarchy + + +Node1 + + +TransferFunction + + + + + diff --git a/doc/html/inherits.html b/doc/html/inherits.html new file mode 100644 index 00000000..da1fe08f --- /dev/null +++ b/doc/html/inherits.html @@ -0,0 +1,310 @@ + + + + + + +PIP: Class Hierarchy + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + diff --git a/doc/html/jquery.js b/doc/html/jquery.js new file mode 100644 index 00000000..516483e4 --- /dev/null +++ b/doc/html/jquery.js @@ -0,0 +1,72 @@ +/* + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType; +if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/* + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1 +},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av); +ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length; +if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b +})}})(window); +/* + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/* + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/* + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').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("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom: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({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{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"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,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}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null; +p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
+ +
+
PICoutManipulators Namespace Reference
+
+
+ +

Namespace contains enums controlled PICout. +More...

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

+Enumerations

enum  PICoutSpecialChar {
+  Null, +NewLine, +Tab, +Esc, +
+  Quote +
+ }
 Enum contains special characters. More...
 
enum  PICoutAction {
+  Flush, +Backspace, +ShowCursor, +HideCursor, +
+  ClearScreen, +SaveContol, +RestoreControl +
+ }
 Enum contains immediate action. More...
 
enum  PICoutControl {
+  AddNone = 0x0, +AddSpaces = 0x1, +AddNewLine = 0x2, +AddQuotes = 0x4, +
+  AddAll = 0xFFFFFFFF +
+ }
 Enum contains control of PICout. More...
 
enum  PICoutFormat {
+  Bin = 0x01, +Oct = 0x02, +Dec = 0x04, +Hex = 0x08, +
+  Bold = 0x10 +, Underline = 0x80, +Blink = 0x100, +Black = 0x400, +
+  Red = 0x800, +Green = 0x1000, +Blue = 0x2000, +Yellow = 0x4000, +
+  Magenta = 0x8000, +Cyan = 0x10000, +White = 0x20000, +BackBlack = 0x40000, +
+  BackRed = 0x80000, +BackGreen = 0x100000, +BackBlue = 0x200000, +BackYellow = 0x400000, +
+  BackMagenta = 0x800000, +BackCyan = 0x1000000, +BackWhite = 0x2000000, +Default = 0x4000000 +
+ }
 Enum contains output format. More...
 
+

Detailed Description

+

Namespace contains enums controlled PICout.

+

Enumeration Type Documentation

+ +
+
+ +

Enum contains special characters.

+ + + + + + +
Enumerator
Null  +

Null-character, '\0'

+
NewLine  +

New line character, '\n'

+
Tab  +

Tab character, '\t'

+
Esc  +

Escape character, '\e'

+
Quote  +

Quote character, '"'

+
+ +
+
+ +
+
+ +

Enum contains immediate action.

+ + + + + + + + +
Enumerator
Flush  +

Flush the output

+
Backspace  +

Remove last symbol

+
ShowCursor  +

Show cursor

+
HideCursor  +

Hide cursor

+
ClearScreen  +

Clear the screen

+
SaveContol  +

Save control flags, equivalent to saveControl()

+
RestoreControl  +

Restore control flags, equivalent to restoreControl()

+
+ +
+
+ +
+
+ +

Enum contains control of PICout.

+ + + + + + +
Enumerator
AddNone  +

No controls

+
AddSpaces  +

Spaces will be appear after each output

+
AddNewLine  +

New line will be appear after all output

+
AddQuotes  +

Each string will be quoted

+
AddAll  +

All controls

+
+ +
+
+ +
+
+ +

Enum contains output format.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
Bin  +

Binary representation of integers

+
Oct  +

Octal representation of integers

+
Dec  +

Decimal representation of integers

+
Hex  +

Hexadecimal representation of integers

+
Bold  +

Bold

+
Underline  +

Underline

+
Blink  +

Blink

+
Black  +

Black font

+
Red  +

Red font

+
Green  +

Green font

+
Blue  +

Blue font

+
Yellow  +

Yellow font

+
Magenta  +

Magenta font

+
Cyan  +

Cyan font

+
White  +

White font

+
BackBlack  +

Black background

+
BackRed  +

Red background

+
BackGreen  +

Green background

+
BackBlue  +

Blue background

+
BackYellow  +

Yellow background

+
BackMagenta  +

Magenta background

+
BackCyan  +

Cyan background

+
BackWhite  +

White background

+
Default  +

Default format

+
+ +
+
+ + + + + + diff --git a/doc/html/namespacemembers.html b/doc/html/namespacemembers.html new file mode 100644 index 00000000..a235d917 --- /dev/null +++ b/doc/html/namespacemembers.html @@ -0,0 +1,359 @@ + + + + + + +PIP: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all documented namespace members with links to the namespaces they belong to:
+ +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- g -

+ + +

- h -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- q -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- w -

+ + +

- y -

+
+
+ + + + diff --git a/doc/html/namespacemembers_enum.html b/doc/html/namespacemembers_enum.html new file mode 100644 index 00000000..932316ef --- /dev/null +++ b/doc/html/namespacemembers_enum.html @@ -0,0 +1,139 @@ + + + + + + +PIP: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/namespacemembers_eval.html b/doc/html/namespacemembers_eval.html new file mode 100644 index 00000000..26d42e5b --- /dev/null +++ b/doc/html/namespacemembers_eval.html @@ -0,0 +1,342 @@ + + + + + + +PIP: Namespace Members + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- g -

+ + +

- h -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- q -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- w -

+ + +

- y -

+
+
+ + + + diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html new file mode 100644 index 00000000..cd4bd0f1 --- /dev/null +++ b/doc/html/namespaces.html @@ -0,0 +1,127 @@ + + + + + + +PIP: Namespace List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Namespace List
+
+
+
Here is a list of all documented namespaces with brief descriptions:
+ + +
 NPICoutManipulatorsNamespace contains enums controlled PICout
+
+
+
+ + + + diff --git a/doc/html/namespaces.js b/doc/html/namespaces.js new file mode 100644 index 00000000..95050807 --- /dev/null +++ b/doc/html/namespaces.js @@ -0,0 +1,4 @@ +var namespaces = +[ + [ "PICoutManipulators", "namespace_p_i_cout_manipulators.html", null ] +]; \ No newline at end of file diff --git a/doc/html/nav_f.png b/doc/html/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..bc41fcc3663641b1ebcc9d39e2f8ce4603b5b7dc GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQn8*cjv*C{Z|@rNwJHd-JZ!XF zzn-BrR_wiR(n5!&V)}9qwblO1Fs+p}xxG9nYkTlkKc#D-&vKfNR~o4%-{RVy7`o0m z_oYbP0l+XkKHKjCQ literal 0 HcmV?d00001 diff --git a/doc/html/nav_g.png b/doc/html/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..8c6c13ef54284f3a437ba3738e8e98806ee7ec09 GIT binary patch literal 94 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDOFDw$B+ufw|A{Y85lU2H&!nd sHa_%WeOv!z9mB@Ae4eFG4jyJ>=Cff~Jw0&E1fT{6Pgg&ebxsLQ0Kn=QLI3~& literal 0 HcmV?d00001 diff --git a/doc/html/nav_h.png b/doc/html/nav_h.png new file mode 100644 index 0000000000000000000000000000000000000000..05610f72d617a69de7b354267f776d485b2a3f1f GIT binary patch literal 90 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr8!2~3AUOE6t21QR7$B+ufw|5-{85lSYZ{QVq n-~PLaS?5WTvx9o@w!Z!1$NE@0mfk&F2U6|n>gTe~DWM4fap4%! literal 0 HcmV?d00001 diff --git a/doc/html/navtree.css b/doc/html/navtree.css new file mode 100644 index 00000000..56b5a219 --- /dev/null +++ b/doc/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 250px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #FAFAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/doc/html/navtree.js b/doc/html/navtree.js new file mode 100644 index 00000000..40b193a6 --- /dev/null +++ b/doc/html/navtree.js @@ -0,0 +1,581 @@ +var NAVTREE = +[ + [ "PIP", "index.html", [ + [ "What is PIP", "index.html", null ], + [ "Getting started", "using_basic.html", null ], + [ "Advanced using", "using_advanced.html", null ], + [ "Deprecated List", "deprecated.html", null ], + [ "Namespaces", null, [ + [ "Namespace List", "namespaces.html", "namespaces" ], + [ "Namespace Members", "namespacemembers.html", [ + [ "All", "namespacemembers.html", null ], + [ "Enumerations", "namespacemembers_enum.html", null ], + [ "Enumerator", "namespacemembers_eval.html", null ] + ] ] + ] ], + [ "Classes", null, [ + [ "Class List", "annotated.html", "annotated" ], + [ "Class Index", "classes.html", null ], + [ "Class Hierarchy", "hierarchy.html", "hierarchy" ], + [ "Class Members", "functions.html", [ + [ "All", "functions.html", "functions_dup" ], + [ "Functions", "functions_func.html", "functions_func" ], + [ "Variables", "functions_vars.html", null ], + [ "Typedefs", "functions_type.html", null ], + [ "Enumerations", "functions_enum.html", null ], + [ "Enumerator", "functions_eval.html", null ], + [ "Related Functions", "functions_rela.html", null ] + ] ] + ] ], + [ "Files", null, [ + [ "File List", "files.html", "files" ], + [ "File Members", "globals.html", [ + [ "All", "globals.html", null ], + [ "Functions", "globals_func.html", null ], + [ "Variables", "globals_vars.html", null ], + [ "Macros", "globals_defs.html", null ] + ] ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"annotated.html", +"class_p_i_connection.html#aa547b4a4e64e9adf0c7c45171160bded", +"class_p_i_ethernet_1_1_interface_list.html#a2b206fa34041a17fd220dedb8f7f5b23", +"class_p_i_state_machine.html#aee180e7f75ece9aef1c3d8a94095ed21", +"class_p_i_timer.html#afbe09c4d09f0dc897045037c1042cd70", +"pibytearray_8h.html#a6c4c55eac2a9c3f087e4f86ae8d76104", +"pivector_8h.html" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does not work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("img"); + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.width = 16; + imgNode.height = 22; + imgNode.border = 0; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.src = node.relpath+"ftv2pnode.png"; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + var span = document.createElement("span"); + span.style.display = 'inline-block'; + span.style.width = 16*(level+1)+'px'; + span.style.height = '22px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } + gotoAnchor(anchor,aname,false); +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + $(window).load(function(){ + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + }); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/1|%O$WD@{Vj-D=#Ar*{o?{4I6FyLW1(5-&j z&!lHU+uR#GE-L04JC@nJOx>T-&rpB4uP`p4Gxt63KAYbs81gOWFAd$eXTz_LY^N^p V?3m8pQUf%M!PC{xWt~$(696~}Dc1l1 literal 0 HcmV?d00001 diff --git a/doc/html/packet_detection.png b/doc/html/packet_detection.png new file mode 100644 index 0000000000000000000000000000000000000000..135796234910dda99d91c002c9925415d1d23ec1 GIT binary patch literal 28193 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 Dc4ejz literal 0 HcmV?d00001 diff --git a/doc/html/pages.html b/doc/html/pages.html new file mode 100644 index 00000000..f04035b9 --- /dev/null +++ b/doc/html/pages.html @@ -0,0 +1,123 @@ + + + + + + +PIP: Related Pages + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+
+ + + + diff --git a/doc/html/pibinarylog_8h.html b/doc/html/pibinarylog_8h.html new file mode 100644 index 00000000..d9b08043 --- /dev/null +++ b/doc/html/pibinarylog_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/pibinarylog.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pibinarylog.h File Reference
+
+
+ +

Binary log. +More...

+ + + + + +

+Classes

class  PIBinaryLog
 Class for read and write binary data to logfile, and playback this data in realtime. More...
 
+

Detailed Description

+

Binary log.

+
+
+ + + + diff --git a/doc/html/pibinarylog_8h.js b/doc/html/pibinarylog_8h.js new file mode 100644 index 00000000..28cc2d79 --- /dev/null +++ b/doc/html/pibinarylog_8h.js @@ -0,0 +1,4 @@ +var pibinarylog_8h = +[ + [ "PIBinaryLog", "class_p_i_binary_log.html", "class_p_i_binary_log" ] +]; \ No newline at end of file diff --git a/doc/html/pibytearray_8h.html b/doc/html/pibytearray_8h.html new file mode 100644 index 00000000..39a0097e --- /dev/null +++ b/doc/html/pibytearray_8h.html @@ -0,0 +1,312 @@ + + + + + + +PIP: src/core/pibytearray.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pibytearray.h File Reference
+
+
+ +

Byte array. +More...

+ + + + + + + + +

+Classes

class  PIByteArray
 Byte array. More...
 
struct  PIByteArray::RawData
 Help struct to store/restore custom blocks of data to/from PIByteArray. More...
 
+ + + + +

+Macros

+#define PIP_BYTEARRAY_STREAM_ANY_TYPE
 This macro allow stream template operators for write and read any type from byte array. Use it with attention!
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+std::ostream & operator<< (std::ostream &s, const PIByteArray &ba)
 Output to std::ostream operator.
 
+PICout operator<< (PICout s, const PIByteArray &ba)
 Output to PICout operator.
 
+PIByteArrayoperator<< (PIByteArray &s, uchar v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const short v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const int v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const long &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const llong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ushort v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const uint v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ulong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const ullong &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const float v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const double &v)
 Store operator.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIByteArray &v)
 Store operator, see Attention for details.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIByteArray::RawData &v)
 Store operator, see Attention for details.
 
+template<typename Type0 , typename Type1 >
PIByteArrayoperator<< (PIByteArray &s, const PIPair< Type0, Type1 > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIVector< T > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIList< T > &v)
 Store operator.
 
+template<typename T >
PIByteArrayoperator<< (PIByteArray &s, const PIDeque< T > &v)
 Store operator.
 
+PIByteArrayoperator>> (PIByteArray &s, uchar &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, short &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, int &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, long &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, llong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ushort &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, uint &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ulong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, ullong &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, float &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, double &v)
 Restore operator.
 
+PIByteArrayoperator>> (PIByteArray &s, PIByteArray &v)
 Restore operator, see Attention for details.
 
+PIByteArrayoperator>> (PIByteArray &s, PIByteArray::RawData v)
 Restore operator, see Attention for details.
 
+template<typename Type0 , typename Type1 >
PIByteArrayoperator>> (PIByteArray &s, PIPair< Type0, Type1 > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIVector< T > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIList< T > &v)
 Restore operator.
 
+template<typename T >
PIByteArrayoperator>> (PIByteArray &s, PIDeque< T > &v)
 Restore operator.
 
+bool operator== (PIByteArray &f, PIByteArray &s)
 Byte arrays compare operator.
 
+bool operator!= (PIByteArray &f, PIByteArray &s)
 Byte arrays compare operator.
 
+

Detailed Description

+

Byte array.

+
+
+ + + + diff --git a/doc/html/pibytearray_8h.js b/doc/html/pibytearray_8h.js new file mode 100644 index 00000000..fe3d5c1d --- /dev/null +++ b/doc/html/pibytearray_8h.js @@ -0,0 +1,44 @@ +var pibytearray_8h = +[ + [ "PIByteArray", "class_p_i_byte_array.html", "class_p_i_byte_array" ], + [ "RawData", "struct_p_i_byte_array_1_1_raw_data.html", "struct_p_i_byte_array_1_1_raw_data" ], + [ "PIP_BYTEARRAY_STREAM_ANY_TYPE", "pibytearray_8h.html#ab8da61a42f0f76ae84a347c4a9217b31", null ], + [ "operator<<", "pibytearray_8h.html#ab1e23cf01f90071f1239fcfc17c8ed3d", null ], + [ "operator<<", "pibytearray_8h.html#a32613363dcf56aac9f693c135fff6f89", null ], + [ "operator<<", "pibytearray_8h.html#ae4152fca25c857d502396fc477dd5b4e", null ], + [ "operator<<", "pibytearray_8h.html#a27cb4295a655c80c9223e2af2843ac14", null ], + [ "operator<<", "pibytearray_8h.html#ab8951385e7eda4d8d6925b2a519624ae", null ], + [ "operator<<", "pibytearray_8h.html#a750963c1940bf98afb59c6d5ee745f57", null ], + [ "operator<<", "pibytearray_8h.html#a34e8e853e5ed6beccd359e6cdbbd79ee", null ], + [ "operator<<", "pibytearray_8h.html#ab5772ffd8c729df606daef9af4bab33f", null ], + [ "operator<<", "pibytearray_8h.html#ad4fedc65364715baf41b635174c5fe8a", null ], + [ "operator<<", "pibytearray_8h.html#ac808ed51ef9536275a6133abfde4bb83", null ], + [ "operator<<", "pibytearray_8h.html#ab44ea6a59afa51508ff2901d41b627f0", null ], + [ "operator<<", "pibytearray_8h.html#a2a485f703e44ccea18c8638c7c4c5889", null ], + [ "operator<<", "pibytearray_8h.html#a499da27a6b5a3474fff8cda6c723886a", null ], + [ "operator<<", "pibytearray_8h.html#a959efd617590b844d4dccf73c3565f95", null ], + [ "operator<<", "pibytearray_8h.html#a65a8de355c00ee10f723c0c4a108adcd", null ], + [ "operator<<", "pibytearray_8h.html#a96190dee065ee5b78285ca129e2adb1d", null ], + [ "operator<<", "pibytearray_8h.html#adbbbcf8bf5e3b56e3a114df299fe7c7f", null ], + [ "operator<<", "pibytearray_8h.html#a068a0bcfbe5b9d2fa4b778ba968f44db", null ], + [ "operator<<", "pibytearray_8h.html#a9b9678e9c4c372565e933d2e3ea99407", null ], + [ "operator>>", "pibytearray_8h.html#ab13b3356e12200d943eca6fb5914fff3", null ], + [ "operator>>", "pibytearray_8h.html#ab169b593f262836b81ef0f1e85742bb5", null ], + [ "operator>>", "pibytearray_8h.html#a9193853f9065d13faa500d7402011e95", null ], + [ "operator>>", "pibytearray_8h.html#a2936831420330a89c932b9378bcb531a", null ], + [ "operator>>", "pibytearray_8h.html#ac2f7009be50024c741ba1e34e2520105", null ], + [ "operator>>", "pibytearray_8h.html#a6d7b09e8e0ae58e2a0660a95f5297d62", null ], + [ "operator>>", "pibytearray_8h.html#a6c4c55eac2a9c3f087e4f86ae8d76104", null ], + [ "operator>>", "pibytearray_8h.html#a562da0ccdeabb8269757e25955bb3da5", null ], + [ "operator>>", "pibytearray_8h.html#a51721eb920f53d0c919eec52cf10cd52", null ], + [ "operator>>", "pibytearray_8h.html#a908c8071a8eee9fb7a3752bee614333a", null ], + [ "operator>>", "pibytearray_8h.html#a4f8b92d20e45ebe4e3bac6e2ccedf9f0", null ], + [ "operator>>", "pibytearray_8h.html#aa77ecc852d4e3ba6e4fbe7a7258cfb87", null ], + [ "operator>>", "pibytearray_8h.html#afb2b51047b10d19aced414fec7744dd2", null ], + [ "operator>>", "pibytearray_8h.html#ab2b77a56ba810e64d937dc4f33438310", null ], + [ "operator>>", "pibytearray_8h.html#a3ad45b3c81b974189a6c9ab5193e24d5", null ], + [ "operator>>", "pibytearray_8h.html#a35c4ea115bdcb4627fd9fa635d1c681a", null ], + [ "operator>>", "pibytearray_8h.html#a6cee541d60566eef92585f50aa9ec436", null ], + [ "operator==", "pibytearray_8h.html#a30e1b305b0f9bdcfc1d1e9c970e82d5d", null ], + [ "operator!=", "pibytearray_8h.html#a9db13625502ec190fa40b4155ad136eb", null ] +]; \ No newline at end of file diff --git a/doc/html/pichar_8h.html b/doc/html/pichar_8h.html new file mode 100644 index 00000000..415a4d37 --- /dev/null +++ b/doc/html/pichar_8h.html @@ -0,0 +1,217 @@ + + + + + + +PIP: src/core/pichar.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pichar.h File Reference
+
+
+ +

Unicode char. +More...

+ + + + + +

+Classes

class  PIChar
 Unicode char. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

__PICONTAINERS_SIMPLE_TYPE__ (PIChar) inline std
 Output operator to std::ostream.
 
+PICout operator<< (PICout s, const PIChar &v)
 Output operator to PICout.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIChar &v)
 Write operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIChar &v)
 Read operator from PIByteArray.
 
+bool operator== (const char v, const PIChar &c)
 Compare operator.
 
+bool operator> (const char v, const PIChar &c)
 Compare operator.
 
+bool operator< (const char v, const PIChar &c)
 Compare operator.
 
+bool operator>= (const char v, const PIChar &c)
 Compare operator.
 
+bool operator<= (const char v, const PIChar &c)
 Compare operator.
 
+bool operator== (const char *v, const PIChar &c)
 Compare operator.
 
+bool operator> (const char *v, const PIChar &c)
 Compare operator.
 
+bool operator< (const char *v, const PIChar &c)
 Compare operator.
 
+bool operator>= (const char *v, const PIChar &c)
 Compare operator.
 
+bool operator<= (const char *v, const PIChar &c)
 Compare operator.
 
+bool operator== (const int v, const PIChar &c)
 Compare operator.
 
+bool operator> (const int v, const PIChar &c)
 Compare operator.
 
+bool operator< (const int v, const PIChar &c)
 Compare operator.
 
+bool operator>= (const int v, const PIChar &c)
 Compare operator.
 
+bool operator<= (const int v, const PIChar &c)
 Compare operator.
 
+

Detailed Description

+

Unicode char.

+
+
+ + + + diff --git a/doc/html/pichar_8h.js b/doc/html/pichar_8h.js new file mode 100644 index 00000000..ef5c6d53 --- /dev/null +++ b/doc/html/pichar_8h.js @@ -0,0 +1,23 @@ +var pichar_8h = +[ + [ "PIChar", "class_p_i_char.html", "class_p_i_char" ], + [ "__PICONTAINERS_SIMPLE_TYPE__", "pichar_8h.html#a98c24b190dd598cdebc2e1c884631b13", null ], + [ "operator<<", "pichar_8h.html#abadc4164b551872ca8d636998a638792", null ], + [ "operator<<", "pichar_8h.html#a43cad479313327c089e30ae490e01c24", null ], + [ "operator>>", "pichar_8h.html#a697daa3db190238c3cad29b288821ae0", null ], + [ "operator==", "pichar_8h.html#aef66e1b5e541cb78e83ee5097c24fb66", null ], + [ "operator>", "pichar_8h.html#a87f2cf00cfaf54f2c45e4529d8267523", null ], + [ "operator<", "pichar_8h.html#aac63033d050dd251820843b8d3108182", null ], + [ "operator>=", "pichar_8h.html#ab4990ff3eadcbc5aab844bc6758c5b8b", null ], + [ "operator<=", "pichar_8h.html#a13c44bf8680ec528f13a014e23668b93", null ], + [ "operator==", "pichar_8h.html#a4254ee10c37d8222dd82d834920ed3b8", null ], + [ "operator>", "pichar_8h.html#a5dc6be462318915b8d938a816c018ea9", null ], + [ "operator<", "pichar_8h.html#a767104c71a066ca079cb71e950bfb5ff", null ], + [ "operator>=", "pichar_8h.html#aed3f8114f5a468d2af576f6570cc3efa", null ], + [ "operator<=", "pichar_8h.html#a7fd16bab079996ca2397d3d1f99d01de", null ], + [ "operator==", "pichar_8h.html#a1dbcb604177557289791346d2dafc6c4", null ], + [ "operator>", "pichar_8h.html#a53cbd5dfc0e96fdd0d58bffc256d9157", null ], + [ "operator<", "pichar_8h.html#adece64ba925cbd59a9fa218251556fd5", null ], + [ "operator>=", "pichar_8h.html#ae178de75f712e81d893a87fbd4d6c5a4", null ], + [ "operator<=", "pichar_8h.html#a15d502867a42b6495e8ce0586824e389", null ] +]; \ No newline at end of file diff --git a/doc/html/picli_8h.html b/doc/html/picli_8h.html new file mode 100644 index 00000000..a77bd266 --- /dev/null +++ b/doc/html/picli_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/core/picli.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
picli.h File Reference
+
+
+ +

Command-Line parser. +More...

+ + + + + +

+Classes

class  PICLI
 Command-line arguments parser. More...
 
+

Detailed Description

+

Command-Line parser.

+
+
+ + + + diff --git a/doc/html/picodeinfo_8h.html b/doc/html/picodeinfo_8h.html new file mode 100644 index 00000000..d2af6f8a --- /dev/null +++ b/doc/html/picodeinfo_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/code/picodeinfo.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
picodeinfo.h File Reference
+
+
+ +

C++ code info structs. +More...

+

Detailed Description

+

C++ code info structs.

+
+
+ + + + diff --git a/doc/html/picodeparser_8h.html b/doc/html/picodeparser_8h.html new file mode 100644 index 00000000..bd9c1c86 --- /dev/null +++ b/doc/html/picodeparser_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/code/picodeparser.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
picodeparser.h File Reference
+
+
+ +

C++ code parser. +More...

+

Detailed Description

+

C++ code parser.

+
+
+ + + + diff --git a/doc/html/picollection_8h.html b/doc/html/picollection_8h.html new file mode 100644 index 00000000..5a38414f --- /dev/null +++ b/doc/html/picollection_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/core/picollection.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
picollection.h File Reference
+
+
+ +

Custom elements collection. +More...

+ + + + + +

+Classes

class  PICollection
 Interface to discover element groups. More...
 
+

Detailed Description

+

Custom elements collection.

+
+
+ + + + diff --git a/doc/html/picollection_8h.js b/doc/html/picollection_8h.js new file mode 100644 index 00000000..c71b6a03 --- /dev/null +++ b/doc/html/picollection_8h.js @@ -0,0 +1,6 @@ +var picollection_8h = +[ + [ "PICollection", "class_p_i_collection.html", "class_p_i_collection" ], + [ "ADD_TO_COLLECTION", "picollection_8h.html#a450e8ac720c8b0f6223ad2bf42f83ae2", null ], + [ "ADD_NEW_TO_COLLECTION", "picollection_8h.html#a78cc4937360f5e286cdd8baf403edfec", null ] +]; \ No newline at end of file diff --git a/doc/html/piconfig.png b/doc/html/piconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..c669750142d6c5c145257c08e573136f18b8aa19 GIT binary patch literal 37880 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�+Sa&ro>v9S$3jxjc54vvpY32!BT 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 K&t;ucLK6ThTT9vi literal 0 HcmV?d00001 diff --git a/doc/html/piconfig_8h.html b/doc/html/piconfig_8h.html new file mode 100644 index 00000000..036311dd --- /dev/null +++ b/doc/html/piconfig_8h.html @@ -0,0 +1,196 @@ + + + + + + +PIP: src/io/piconfig.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piconfig.h File Reference
+
+
+ +

Configuration file. +More...

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

+Classes

class  PIConfig
 Configuration file. More...
 
class  PIConfig::Branch
 Branch is a list of entries of configuration file More...
 
class  PIConfig::Entry
 Entry of configuration file More...
 
+ + + + + +

+Functions

template<typename T >
readDeviceSetting (const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep)
 Service function. useful for configuring devices. More...
 
+

Detailed Description

+

Configuration file.

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
T readDeviceSetting (const PIStringname,
const T & def,
const PIConfig::Entryem,
const PIConfig::Entryep 
)
+
+ +

Service function. useful for configuring devices.

+

Function takes entry name "name", default value "def" and two PIConfig::Entry sections: "em" and their parent "ep". If there is no parent ep = 0. If "ep" is not null and entry "name" exists in "ep" function returns this value. Else returns value of entry "name" in section "em" or "def" if entry doesn`t exists.
+ This function useful to read settings from configuration file in implementation PIIODevice::configureDevice() function

+ +
+
+
+
+ + + + diff --git a/doc/html/piconfig_8h.js b/doc/html/piconfig_8h.js new file mode 100644 index 00000000..efbdff29 --- /dev/null +++ b/doc/html/piconfig_8h.js @@ -0,0 +1,7 @@ +var piconfig_8h = +[ + [ "PIConfig", "class_p_i_config.html", "class_p_i_config" ], + [ "Branch", "class_p_i_config_1_1_branch.html", null ], + [ "Entry", "class_p_i_config_1_1_entry.html", "class_p_i_config_1_1_entry" ], + [ "readDeviceSetting", "piconfig_8h.html#add5b851e98d22dd4d7482a8e509113dc", null ] +]; \ No newline at end of file diff --git a/doc/html/piconnection.png b/doc/html/piconnection.png new file mode 100644 index 0000000000000000000000000000000000000000..8971ab76c2a4a792b5d965ece363775907e98633 GIT binary patch literal 98609 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 mKBy?K{okzO>2aB!cRV(Q-GSN{zX!nT_L literal 0 HcmV?d00001 diff --git a/doc/html/piconnection_8h.html b/doc/html/piconnection_8h.html new file mode 100644 index 00000000..e11d27b3 --- /dev/null +++ b/doc/html/piconnection_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/piconnection.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piconnection.h File Reference
+
+
+ +

Complex I/O point. +More...

+ + + + + +

+Classes

class  PIConnection
 Complex Input/Output point. More...
 
+

Detailed Description

+

Complex I/O point.

+
+
+ + + + diff --git a/doc/html/piconnection_8h.js b/doc/html/piconnection_8h.js new file mode 100644 index 00000000..98979742 --- /dev/null +++ b/doc/html/piconnection_8h.js @@ -0,0 +1,4 @@ +var piconnection_8h = +[ + [ "PIConnection", "class_p_i_connection.html", "class_p_i_connection" ] +]; \ No newline at end of file diff --git a/doc/html/piconnection_conf.png b/doc/html/piconnection_conf.png new file mode 100644 index 0000000000000000000000000000000000000000..c42eb7de905de9a6d7c73fa73abb1f8c627a4fd5 GIT binary patch literal 88687 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 z%0D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 z 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
gIL#nJpx=upACi+%T119JwmQY_zO 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 l75~0j + + + + + +PIP: src/system/piconsole.h File Reference + + + + + + + + + + + + + +

+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piconsole.h File Reference
+
+
+ +

Console output class. +More...

+ + + + + +

+Classes

class  PIConsole
 Console output class. More...
 
+

Detailed Description

+

Console output class.

+
+
+ + + + diff --git a/doc/html/piconsole_8h.js b/doc/html/piconsole_8h.js new file mode 100644 index 00000000..1995db86 --- /dev/null +++ b/doc/html/piconsole_8h.js @@ -0,0 +1,4 @@ +var piconsole_8h = +[ + [ "PIConsole", "class_p_i_console.html", "class_p_i_console" ] +]; \ No newline at end of file diff --git a/doc/html/piconsole_layout.png b/doc/html/piconsole_layout.png new file mode 100644 index 0000000000000000000000000000000000000000..ad74a90e51122fb9c88e04f48cb5a0df22e01898 GIT binary patch literal 23307 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 literal 0 HcmV?d00001 diff --git a/doc/html/picontainers_8h.html b/doc/html/picontainers_8h.html new file mode 100644 index 00000000..5a50b187 --- /dev/null +++ b/doc/html/picontainers_8h.html @@ -0,0 +1,318 @@ + + + + + + +PIP: src/containers/picontainers.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
picontainers.h File Reference
+
+
+ +

Generic containers. +More...

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

+Macros

#define piForeach(i, c)
 Macro for iterate any container. More...
 
#define piForeachC(i, c)
 Macro for iterate any container only for read. More...
 
#define piForeachR(i, c)
 Macro for iterate any container with reverse direction. More...
 
#define piForeachCR(i, c)
 Macro for iterate any container only for read with reverse direction. More...
 
#define piBreak
 Macro for break from any piForeach* loop. More...
 
+

Detailed Description

+

Generic containers.

+

Queue container.

+

This file declare all containers and useful macros to use them

+

This file declare PIQueue

+

Macro Definition Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define piForeach( i,
 
)
+
+ +

Macro for iterate any container.

+

Use this macros instead of standard "for" to get read/write access to each element of container. Pass direction is direct
+Example:

+
vec << 1 << 2 << 3;
+
piForeach (int & i, vec)
+
cout << i << ", ";
+
// 1, 2, 3,
+
piForeach (int & i, vec)
+
i++;
+
piForeach (int & i, vec)
+
cout << i << ", ";
+
// 2, 3, 4,
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define piForeachC( i,
 
)
+
+ +

Macro for iterate any container only for read.

+

Use this macros instead of standard "for" to get read access to each element of container. Pass direction is direct
+Example:

+
vec << 1 << 2 << 3;
+
piForeachC (int & i, vec)
+
cout << i << ", ";
+
// 1, 2, 3,
+
piForeachC (int & i, vec)
+
i++; // ERROR! const iterator
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define piForeachR( i,
 
)
+
+ +

Macro for iterate any container with reverse direction.

+

Use this macros instead of standard "for" to get read/write access to each element of container. Pass direction is reverse
+Example:

+
vec << 1 << 2 << 3;
+
piForeachR (int & i, vec)
+
cout << i << ", ";
+
// 3, 2, 1,
+
piForeachR (int & i, vec)
+
i++;
+
piForeachR (int & i, vec)
+
cout << i << ", ";
+
// 4, 3, 2,
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define piForeachCR( i,
 
)
+
+ +

Macro for iterate any container only for read with reverse direction.

+

Use this macros instead of standard "for" to get read access to each element of container. Pass direction is reverse
+Example:

+
vec << 1 << 2 << 3;
+
piForeachCR (int & i, vec)
+
cout << i << ", ";
+
// 3, 2, 1,
+
piForeachCR (int & i, vec)
+
i++; // ERROR! const iterator
+
+
+
+ +
+
+ + + + +
#define piBreak
+
+ +

Macro for break from any piForeach* loop.

+
Warning
C++ ordinary "break" doesn`t work inside piForeach* loops! Always use "piBreak" instead!
+ +
+
+
+
+ + + + diff --git a/doc/html/picontainers_8h.js b/doc/html/picontainers_8h.js new file mode 100644 index 00000000..48eb6369 --- /dev/null +++ b/doc/html/picontainers_8h.js @@ -0,0 +1,8 @@ +var picontainers_8h = +[ + [ "piForeach", "picontainers_8h.html#aa579232460ca92efa5c1befd41d923ba", null ], + [ "piForeachC", "picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96", null ], + [ "piForeachR", "picontainers_8h.html#a0e968bf591ab05721d5ef2ce201e09ed", null ], + [ "piForeachCR", "picontainers_8h.html#ad2685d4ca04df1f2154844e5984b41d8", null ], + [ "piBreak", "picontainers_8h.html#aa315501e5bd9c279ad09fd39dccdea4d", null ] +]; \ No newline at end of file diff --git a/doc/html/picrc_8h.html b/doc/html/picrc_8h.html new file mode 100644 index 00000000..56cfded5 --- /dev/null +++ b/doc/html/picrc_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/math/picrc.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
picrc.h File Reference
+
+
+ +

CRC checksum calculator. +More...

+

Detailed Description

+

CRC checksum calculator.

+
+
+ + + + diff --git a/doc/html/pideque_8h.html b/doc/html/pideque_8h.html new file mode 100644 index 00000000..ca19dcdc --- /dev/null +++ b/doc/html/pideque_8h.html @@ -0,0 +1,129 @@ + + + + + + +PIP: src/containers/pideque.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
pideque.h File Reference
+
+
+ +

Dynamic array of any type. +More...

+

Detailed Description

+

Dynamic array of any type.

+

This file declares PIDeque

+
+
+ + + + diff --git a/doc/html/pidiagnostics_8h.html b/doc/html/pidiagnostics_8h.html new file mode 100644 index 00000000..9324d8a8 --- /dev/null +++ b/doc/html/pidiagnostics_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/pidiagnostics.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pidiagnostics.h File Reference
+
+
+ +

Connection quality diagnostics. +More...

+ + + + + +

+Classes

class  PIDiagnostics
 Connection quality diagnostics. More...
 
+

Detailed Description

+

Connection quality diagnostics.

+
+
+ + + + diff --git a/doc/html/piethernet_8h.html b/doc/html/piethernet_8h.html new file mode 100644 index 00000000..5f7ace4b --- /dev/null +++ b/doc/html/piethernet_8h.html @@ -0,0 +1,143 @@ + + + + + + +PIP: src/io/piethernet.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piethernet.h File Reference
+
+
+ +

Ethernet device. +More...

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

+Classes

class  PIEthernet
 Ethernet device. More...
 
struct  PIEthernet::Interface
 Network interface descriptor. More...
 
class  PIEthernet::InterfaceList
 Array of Interface with some features. More...
 
+

Detailed Description

+

Ethernet device.

+
+
+ + + + diff --git a/doc/html/piethernet_8h.js b/doc/html/piethernet_8h.js new file mode 100644 index 00000000..46aecd42 --- /dev/null +++ b/doc/html/piethernet_8h.js @@ -0,0 +1,6 @@ +var piethernet_8h = +[ + [ "PIEthernet", "class_p_i_ethernet.html", "class_p_i_ethernet" ], + [ "Interface", "struct_p_i_ethernet_1_1_interface.html", "struct_p_i_ethernet_1_1_interface" ], + [ "InterfaceList", "class_p_i_ethernet_1_1_interface_list.html", "class_p_i_ethernet_1_1_interface_list" ] +]; \ No newline at end of file diff --git a/doc/html/pievaluator_8h.html b/doc/html/pievaluator_8h.html new file mode 100644 index 00000000..344354ad --- /dev/null +++ b/doc/html/pievaluator_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/math/pievaluator.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pievaluator.h File Reference
+
+
+ +

Mathematic expressions calculator. +More...

+ + + + + +

+Classes

class  PIEvaluator
 This class provide mathematical evaluations of custom expression. More...
 
+

Detailed Description

+

Mathematic expressions calculator.

+
+
+ + + + diff --git a/doc/html/pievaluator_8h.js b/doc/html/pievaluator_8h.js new file mode 100644 index 00000000..8bcad13a --- /dev/null +++ b/doc/html/pievaluator_8h.js @@ -0,0 +1,4 @@ +var pievaluator_8h = +[ + [ "PIEvaluator", "class_p_i_evaluator.html", "class_p_i_evaluator" ] +]; \ No newline at end of file diff --git a/doc/html/pifile_8h.html b/doc/html/pifile_8h.html new file mode 100644 index 00000000..1ffb3b25 --- /dev/null +++ b/doc/html/pifile_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/pifile.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pifile.h File Reference
+
+
+ +

Local file. +More...

+ + + + + +

+Classes

class  PIFile
 Local file. More...
 
+

Detailed Description

+

Local file.

+
+
+ + + + diff --git a/doc/html/piincludes_8h.html b/doc/html/piincludes_8h.html new file mode 100644 index 00000000..d38ea5a4 --- /dev/null +++ b/doc/html/piincludes_8h.html @@ -0,0 +1,960 @@ + + + + + + +PIP: src/core/piincludes.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piincludes.h File Reference
+
+
+ +

Global includes of PIP. +More...

+ + + + + + + + +

+Classes

class  PIFlags< Enum >
 This class used as container for bit flags. More...
 
class  PICout
 Class for formatted output similar std::cout. More...
 
+ + + + +

+Namespaces

 PICoutManipulators
 Namespace contains enums controlled PICout.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

+#define PIP_VERSION   ((PIP_VERSION_MAJOR << 16) | (PIP_VERSION_MINOR < 8) | PIP_VERSION_REVISION)
 Version of PIP in hex - 0x##(Major)##(Minor)##(Revision)
 
+#define PIP_VERSION_MAJOR
 Major value of PIP version.
 
+#define PIP_VERSION_MINOR
 Minor value of PIP version.
 
+#define PIP_VERSION_REVISION
 Revision value of PIP version.
 
+#define PIP_VERSION_SUFFIX
 Suffix of PIP version.
 
+#define PIP_DEBUG
 Macro is defined when compile-time debug is enabled.
 
+#define WINDOWS
 Macro is defined when host is any Windows.
 
+#define QNX
 Macro is defined when host is QNX.
 
+#define FREE_BSD
 Macro is defined when host is FreeBSD.
 
+#define MAC_OS
 Macro is defined when host is Mac OS.
 
+#define ANDROID
 Macro is defined when host is Android.
 
+#define LINUX
 Macro is defined when host is any Linux.
 
+#define CC_GCC
 Macro is defined when compiler is GCC or MinGW.
 
+#define HAS_LOCALE
 Macro is defined when PIP is decided that host is support language.
 
+#define CC_VC
 Macro is defined when compiler is Visual Studio.
 
+#define CC_OTHER
 Macro is defined when compiler is unknown.
 
+#define PIP_TIMER_RT
 Macro is defined when PIP use "rt" library for timers implementation.
 
+#define PIP_CONTAINERS_STL
 Define this macro to use STL implementation of containers, else PIP implementation will be used.
 
+#define CC_OTHER
 Macro is defined when compiler is unknown.
 
+#define FOREVER   for (;;)
 Macro used for infinite loop.
 
+#define FOREVER_WAIT   FOREVER msleep(1);
 Macro used for infinite wait.
 
+#define WAIT_FOREVER   FOREVER msleep(1);
 Macro used for infinite wait.
 
+#define piCout
 Macro used for conditional (piDebug) output to PICout.
 
+ + + + + + + + + + + + + +

+Enumerations

enum  PICoutManipulators::PICoutSpecialChar {
+  PICoutManipulators::Null, +PICoutManipulators::NewLine, +PICoutManipulators::Tab, +PICoutManipulators::Esc, +
+  PICoutManipulators::Quote +
+ }
 Enum contains special characters. More...
 
enum  PICoutManipulators::PICoutAction {
+  PICoutManipulators::Flush, +PICoutManipulators::Backspace, +PICoutManipulators::ShowCursor, +PICoutManipulators::HideCursor, +
+  PICoutManipulators::ClearScreen, +PICoutManipulators::SaveContol, +PICoutManipulators::RestoreControl +
+ }
 Enum contains immediate action. More...
 
enum  PICoutManipulators::PICoutControl {
+  PICoutManipulators::AddNone = 0x0, +PICoutManipulators::AddSpaces = 0x1, +PICoutManipulators::AddNewLine = 0x2, +PICoutManipulators::AddQuotes = 0x4, +
+  PICoutManipulators::AddAll = 0xFFFFFFFF +
+ }
 Enum contains control of PICout. More...
 
enum  PICoutManipulators::PICoutFormat {
+  PICoutManipulators::Bin = 0x01, +PICoutManipulators::Oct = 0x02, +PICoutManipulators::Dec = 0x04, +PICoutManipulators::Hex = 0x08, +
+  PICoutManipulators::Bold = 0x10 +, PICoutManipulators::Underline = 0x80, +PICoutManipulators::Blink = 0x100, +PICoutManipulators::Black = 0x400, +
+  PICoutManipulators::Red = 0x800, +PICoutManipulators::Green = 0x1000, +PICoutManipulators::Blue = 0x2000, +PICoutManipulators::Yellow = 0x4000, +
+  PICoutManipulators::Magenta = 0x8000, +PICoutManipulators::Cyan = 0x10000, +PICoutManipulators::White = 0x20000, +PICoutManipulators::BackBlack = 0x40000, +
+  PICoutManipulators::BackRed = 0x80000, +PICoutManipulators::BackGreen = 0x100000, +PICoutManipulators::BackBlue = 0x200000, +PICoutManipulators::BackYellow = 0x400000, +
+  PICoutManipulators::BackMagenta = 0x800000, +PICoutManipulators::BackCyan = 0x1000000, +PICoutManipulators::BackWhite = 0x2000000, +PICoutManipulators::Default = 0x4000000 +
+ }
 Enum contains output format. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
void piSwap (T &f, T &s)
 Templated function for swap two values. More...
 
template<typename T >
void piSwapBinary (T &f, T &s)
 Templated function for swap two values without "=". More...
 
template<typename T >
int piRound (const T &v)
 Templated function return round of float falue. More...
 
template<typename T >
int piFloor (const T &v)
 Templated function return floor of float falue. More...
 
template<typename T >
int piCeil (const T &v)
 Templated function return ceil of float falue. More...
 
template<typename T >
piAbs (const T &v)
 Templated function return absolute of numeric falue. More...
 
template<typename T >
piMin (const T &f, const T &s)
 Templated function return minimum of two values. More...
 
template<typename T >
piMin (const T &f, const T &s, const T &t)
 Templated function return minimum of tree values. More...
 
template<typename T >
piMax (const T &f, const T &s)
 Templated function return maximum of two values. More...
 
template<typename T >
piMax (const T &f, const T &s, const T &t)
 Templated function return maximum of tree values. More...
 
template<typename T >
piClamp (const T &v, const T &min, const T &max)
 Templated function return clamped value. More...
 
+void piLetobe (void *data, int size)
 Function inverse byte order in memory block.
 
+template<typename T >
void piLetobe (T *v)
 Templated function that inverse byte order of value "v".
 
template<typename T >
piLetobe (const T &v)
 Templated function that returns "v" with inversed byte order. More...
 
ushort letobe_s (ushort v)
 Use piLetobe() instead of this function. More...
 
uint letobe_i (uint v)
 Use piLetobe() instead of this function. More...
 
+PIString errorString ()
 Return readable error description in format "code <number> - <description>".
 
+PIString PIPVersion ()
 Return readable version of PIP.
 
+ + + + +

+Variables

+bool piDebug
 global variable enabling output to piCout
 
+

Detailed Description

+

Global includes of PIP.

+

This file include all needed system headers, STL and declare many useful macros and functions

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void piSwap (T & f,
T & s 
)
+
+inline
+
+ +

Templated function for swap two values.

+

Example:
+

int v1 = 1, v2 = 2;
+
piCout << v1 << v2; // 1 2
+
piSwap<int>(v1, v2);
+
piCout << v1 << v2; // 2 1
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void piSwapBinary (T & f,
T & s 
)
+
+inline
+
+ +

Templated function for swap two values without "=".

+

Example:
+

+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int piRound (const T & v)
+
+inline
+
+ +

Templated function return round of float falue.

+

Round is the nearest integer value
+There are some macros:

    +
  • piRoundf for "float"
  • +
  • piRoundd for "double"
  • +
+

Example:

piCout << piRoundf(0.6f) << piRoundd(0.2); // 1 0
+
piCout << piRoundf(-0.6f) << piRoundd(-0.2); // -1 0
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int piFloor (const T & v)
+
+inline
+
+ +

Templated function return floor of float falue.

+

Floor is the largest integer that is not greater than value
+There are some macros:

    +
  • piFloorf for "float"
  • +
  • piFloord for "double"
  • +
+

Example:

piCout << piFloorf(0.6f) << piFloorf(0.2); // 0 0
+
piCout << piFloorf(-0.6f) << piFloorf(-0.2f); // -1 -1
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int piCeil (const T & v)
+
+inline
+
+ +

Templated function return ceil of float falue.

+

Ceil is the smallest integer that is not less than value
+There are some macros:

    +
  • piCeilf for "float"
  • +
  • piCeild for "double"
  • +
+

Example:

piCout << piCeilf(0.6f) << piCeilf(0.2); // 1 1
+
piCout << piCeilf(-0.6f) << piCeilf(-0.2f); // 0 0
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T piAbs (const T & v)
+
+inline
+
+ +

Templated function return absolute of numeric falue.

+

Absolute is the positive or equal 0 value
+There are some macros:

    +
  • piAbss for "short"
  • +
  • piAbsi for "int"
  • +
  • piAbsl for "long"
  • +
  • piAbsll for "llong"
  • +
  • piAbsf for "float"
  • +
  • piAbsd for "double"
  • +
+

Example:

piCout << piAbsi(5) << piAbsi(-11); // 5 11
+
piCout << piAbsf(-0.6f) << piAbsf(-0.2f); // 0.6 0.2
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T piMin (const T & f,
const T & s 
)
+
+inline
+
+ +

Templated function return minimum of two values.

+

There are some macros:

    +
  • piMins for "short"
  • +
  • piMini for "int"
  • +
  • piMinl for "long"
  • +
  • piMinll for "llong"
  • +
  • piMinf for "float"
  • +
  • piMind for "double"
  • +
+

Example:

piCout << piMini(5, 1); // 1
+
piCout << piMinf(-0.6f, -0.2f); // -0.6
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
T piMin (const T & f,
const T & s,
const T & t 
)
+
+inline
+
+ +

Templated function return minimum of tree values.

+

There are some macros:

    +
  • piMins for "short"
  • +
  • piMini for "int"
  • +
  • piMinl for "long"
  • +
  • piMinll for "llong"
  • +
  • piMinf for "float"
  • +
  • piMind for "double"
  • +
+

Example:

piCout << piMini(5, 1, -1); // -1
+
piCout << piMinf(-0.6f, -0.2f, 1.f); // -0.6
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
T piMax (const T & f,
const T & s 
)
+
+inline
+
+ +

Templated function return maximum of two values.

+

There are some macros:

    +
  • piMaxs for "short"
  • +
  • piMaxi for "int"
  • +
  • piMaxl for "long"
  • +
  • piMaxll for "llong"
  • +
  • piMaxf for "float"
  • +
  • piMaxd for "double"
  • +
+

Example:

piCout << piMaxi(5, 1); // 5
+
piCout << piMaxf(-0.6f, -0.2f); // -0.2
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
T piMax (const T & f,
const T & s,
const T & t 
)
+
+inline
+
+ +

Templated function return maximum of tree values.

+

There are some macros:

    +
  • piMaxs for "short"
  • +
  • piMaxi for "int"
  • +
  • piMaxl for "long"
  • +
  • piMaxll for "llong"
  • +
  • piMaxf for "float"
  • +
  • piMaxd for "double"
  • +
+

Example:

piCout << piMaxi(5, 1, -1); // 5
+
piCout << piMaxf(-0.6f, -0.2f, 1.f); // 1
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
T piClamp (const T & v,
const T & min,
const T & max 
)
+
+inline
+
+ +

Templated function return clamped value.

+

Clamped is the not greater than "max" and not lesser than "min" value
+There are some macros:

    +
  • piClamps for "short"
  • +
  • piClampi for "int"
  • +
  • piClampl for "long"
  • +
  • piClampll for "llong"
  • +
  • piClampf for "float"
  • +
  • piClampd for "double"
  • +
+

Example:

piCout << piClampf(-5, -3, 2); // -3
+
piCout << piClampf(1, -3, 2); // 1
+
piCout << piClampf(5, -3, 2); // 2
+
+
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T piLetobe (const T & v)
+
+inline
+
+ +

Templated function that returns "v" with inversed byte order.

+

This function used to convert values between little and big endian
+There are some macros:

    +
  • piLetobes for "ushort"
  • +
  • piLetobei for "uint"
  • +
  • piLetobel for "ulong"
  • +
  • piLetobell for "ullong"
  • +
+

Example:

+
+
+ +
+
+ + + + + + + + +
ushort letobe_s (ushort v)
+
+ +

Use piLetobe() instead of this function.

+
Deprecated:
+ +
+
+ +
+
+ + + + + + + + +
uint letobe_i (uint v)
+
+ +

Use piLetobe() instead of this function.

+
Deprecated:
+ +
+
+
+
+ + + + diff --git a/doc/html/piincludes_8h.js b/doc/html/piincludes_8h.js new file mode 100644 index 00000000..da9ba9a9 --- /dev/null +++ b/doc/html/piincludes_8h.js @@ -0,0 +1,97 @@ +var piincludes_8h = +[ + [ "PIFlags", "class_p_i_flags.html", "class_p_i_flags" ], + [ "PICout", "class_p_i_cout.html", "class_p_i_cout" ], + [ "PIP_VERSION", "piincludes_8h.html#acbb7adb82bd5dd3060e2ad0eb604b1bf", null ], + [ "PIP_VERSION_MAJOR", "piincludes_8h.html#a8883b51de92fb8a549d8e78d3db33e59", null ], + [ "PIP_VERSION_MINOR", "piincludes_8h.html#a6feaccd6b29e1709448f9adbae63cfef", null ], + [ "PIP_VERSION_REVISION", "piincludes_8h.html#a1eab67c2ab5528a13d5a071678a08bc6", null ], + [ "PIP_VERSION_SUFFIX", "piincludes_8h.html#aa7382f8ef6d40b57db8a29a3ae810feb", null ], + [ "PIP_DEBUG", "piincludes_8h.html#a7a5fe60328e1cb0dc0f508506afb4ae9", null ], + [ "WINDOWS", "piincludes_8h.html#a987b73d7cc6da72732af75c5d7872d29", null ], + [ "QNX", "piincludes_8h.html#a167ea11947b8e4a492b2366ca250dbc0", null ], + [ "FREE_BSD", "piincludes_8h.html#a436564e12a6f982e63f9a76357146ad6", null ], + [ "MAC_OS", "piincludes_8h.html#a92897222c2229040c842e33404deea72", null ], + [ "ANDROID", "piincludes_8h.html#a84b6d92b7538d9eb6d3cc527c0450558", null ], + [ "LINUX", "piincludes_8h.html#a157a956e14c5c44b3f73ef23a4776f64", null ], + [ "CC_GCC", "piincludes_8h.html#ac1b21a2fcec2c0b8a3c5a463d9296979", null ], + [ "HAS_LOCALE", "piincludes_8h.html#ad5c40e21f5f16ceeb1b98ee2de82a612", null ], + [ "CC_VC", "piincludes_8h.html#a9e439bece2ee7f7fef34febe9b317a8f", null ], + [ "CC_OTHER", "piincludes_8h.html#a572d4f1b7fe8cb972e492e9d7fd83cd5", null ], + [ "PIP_TIMER_RT", "piincludes_8h.html#ab866c362b595e2b327a450f6593f639a", null ], + [ "PIP_CONTAINERS_STL", "piincludes_8h.html#a3806a9aff68b7e2620f37a79e12fb850", null ], + [ "CC_OTHER", "piincludes_8h.html#a572d4f1b7fe8cb972e492e9d7fd83cd5", null ], + [ "FOREVER", "piincludes_8h.html#a75c828ed6c02fcd44084e67a032e422c", null ], + [ "FOREVER_WAIT", "piincludes_8h.html#a39da857669ed22c419a967d5c9acae77", null ], + [ "WAIT_FOREVER", "piincludes_8h.html#ac89d2c332821be06166c210249b671e7", null ], + [ "piCout", "piincludes_8h.html#ad21862cbba89aead064fbef4c825030e", null ], + [ "piCoutObj", "piincludes_8h.html#a722b67a967e55918f6921de66ecffce9", null ], + [ "PICoutSpecialChar", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2", [ + [ "Null", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2a29235e52395eb8951ae13b4136252432", null ], + [ "NewLine", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2a85451af3cb792587c99d576ae3807a67", null ], + [ "Tab", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2a9d183ab2eef93987077269cad1047bcb", null ], + [ "Esc", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2ac32518c74b162effc95d1afff37b4a81", null ], + [ "Quote", "piincludes_8h.html#a66678520ac7701c016e3e90e17a7dfa2adb05a3816f5bd55128af99263b94e15e", null ] + ] ], + [ "PICoutAction", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387", [ + [ "Flush", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387ab830c1a561e2cabe9e7b937a05d04c9f", null ], + [ "Backspace", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387a0c59680927066a05eddf8e3ee61c802d", null ], + [ "ShowCursor", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387a03c25915c04fbc819d7267022e49844a", null ], + [ "HideCursor", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387add30539d8cc3ea1f1dcc49a0d864f877", null ], + [ "ClearScreen", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387a811e1fa9e5deb33af8bcef5186b482bb", null ], + [ "SaveContol", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387ab016f563340e366b6685045e028f2b0f", null ], + [ "RestoreControl", "piincludes_8h.html#a38d041a4e2de4ca6af939837475e9387a79f6f33c2e149fb3903625c855292600", null ] + ] ], + [ "PICoutControl", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87", [ + [ "AddNone", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87a9744aa2b16aabc01f70ef53e8a7db7f8", null ], + [ "AddSpaces", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87ae5fee52fe6ad0dae9a5b953ff3e40152", null ], + [ "AddNewLine", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87a14809fb1b24466983535797f6ed5971c", null ], + [ "AddQuotes", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87a383bc0cbaca2fb5d5cd98a1e9c3f59ca", null ], + [ "AddAll", "piincludes_8h.html#a98e765b109cfa5b09ec3b111c449ac87a51c3de43daff16e88090f6ccc3eb30b2", null ] + ] ], + [ "PICoutFormat", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2a", [ + [ "Bin", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa29a58835892a21d07f3b0dc97ef4f44e", null ], + [ "Oct", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aaad2a72f3b7eada2a8360bdcf11cbfb80", null ], + [ "Dec", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa2169666f4b740a04e641ab8c6ca438f0", null ], + [ "Hex", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aadc3f097ce8d6fafc80018c2df3afe2b5", null ], + [ "Bold", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa527c1b697df8b9dd74ba337663375149", null ], + [ "Underline", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa221437253ff3dc9de5d3762117f5c329", null ], + [ "Blink", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa8b0945213fe7cca2148bd54938fa16c3", null ], + [ "Black", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa405fba724b4f9bb57486ef4a328c23ec", null ], + [ "Red", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa26422e0754e279717e30f36fc9355d39", null ], + [ "Green", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aaf1abd54dd4e1ce4d273e72bf705b276f", null ], + [ "Blue", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa26854a71d7f1dd9439e0114d3961c1e4", null ], + [ "Yellow", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aac9ad26d78d153d33986dd243d79e6704", null ], + [ "Magenta", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa7b9abda5e906d86c86d0e48c68608f4f", null ], + [ "Cyan", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aac1ccdb56cc6bfa3cbe21d9edce17bed4", null ], + [ "White", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aaec78b8c3f9b9c708d6c5a60021c0df51", null ], + [ "BackBlack", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa1f0b497e6f2135f149808e108f25b1d4", null ], + [ "BackRed", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa25a764174c876db1fdfa053435624d12", null ], + [ "BackGreen", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa0056f6bdb9e774d1c251baf736545741", null ], + [ "BackBlue", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aaecc0d0c7be125b3368906502c0e0b355", null ], + [ "BackYellow", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa0ed38ef4734192d2772e0e07bd389dec", null ], + [ "BackMagenta", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa21b89f914b3f779f5eefe70a99270471", null ], + [ "BackCyan", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa585ef724bf93605bbaa3a7e582e9669b", null ], + [ "BackWhite", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa5534e933dca8208950b17034672a1ca7", null ], + [ "Default", "piincludes_8h.html#a4d8fa322c1a8b3fa285759056aae1b2aa651156cbea6768802eb95176611da012", null ] + ] ], + [ "piSwap", "piincludes_8h.html#acdace86016235bb97019f0691fb0b2ce", null ], + [ "piSwapBinary", "piincludes_8h.html#a077c15d518abc4962091fa666c4bedda", null ], + [ "piRound", "piincludes_8h.html#a983fb6261220848dead0db5ffba95071", null ], + [ "piFloor", "piincludes_8h.html#ab9e59a89deba3a70f6a7ce9e746eadc6", null ], + [ "piCeil", "piincludes_8h.html#a4956481d8bee1a43e62ce8b1489b72b0", null ], + [ "piAbs", "piincludes_8h.html#a69a3e3d862d6b51feaca8d27686dd876", null ], + [ "piMin", "piincludes_8h.html#afc6d1b1ff01ad00cda9d0df5e8dbf85f", null ], + [ "piMin", "piincludes_8h.html#a342413b3c07aed06a22289a9e0daaead", null ], + [ "piMax", "piincludes_8h.html#a3b04f3381ca3235a4fe575b4867263c6", null ], + [ "piMax", "piincludes_8h.html#a291a707199f16a78fe41d79a9b89bc00", null ], + [ "piClamp", "piincludes_8h.html#a9269f3c0357a9c7e33c8c5f346c47309", null ], + [ "piLetobe", "piincludes_8h.html#abc830007b90d3beea81c0773811dbc9e", null ], + [ "piLetobe", "piincludes_8h.html#a1de16289b486990a4af21b1faad08e0e", null ], + [ "piLetobe", "piincludes_8h.html#a142038da46a86ef1fc1ab52f57c21010", null ], + [ "letobe_s", "piincludes_8h.html#aec6bba617007bb4636bbef74038cd09a", null ], + [ "letobe_i", "piincludes_8h.html#a2107d4b68fdcfc213defacffefbc6d03", null ], + [ "errorString", "piincludes_8h.html#a0570da4d19817e08dcdd2490308c77c5", null ], + [ "PIPVersion", "piincludes_8h.html#aeb9599e6d2eecbf56d0bf78ec7d07ddf", null ], + [ "piDebug", "piincludes_8h.html#a4f24177400b625bdd603032fa6e2e14a", null ] +]; \ No newline at end of file diff --git a/doc/html/piinit_8h.html b/doc/html/piinit_8h.html new file mode 100644 index 00000000..c535418e --- /dev/null +++ b/doc/html/piinit_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/core/piinit.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
piinit.h File Reference
+
+
+ +

Initialization. +More...

+

Detailed Description

+

Initialization.

+
+
+ + + + diff --git a/doc/html/piiodevice_8h.html b/doc/html/piiodevice_8h.html new file mode 100644 index 00000000..aa16f211 --- /dev/null +++ b/doc/html/piiodevice_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/piiodevice.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piiodevice.h File Reference
+
+
+ +

Abstract input/output device. +More...

+ + + + + +

+Classes

class  PIIODevice
 Base class for input/output classes. More...
 
+

Detailed Description

+

Abstract input/output device.

+
+
+ + + + diff --git a/doc/html/piiodevice_8h.js b/doc/html/piiodevice_8h.js new file mode 100644 index 00000000..b43f4261 --- /dev/null +++ b/doc/html/piiodevice_8h.js @@ -0,0 +1,6 @@ +var piiodevice_8h = +[ + [ "PIIODevice", "class_p_i_i_o_device.html", "class_p_i_i_o_device" ], + [ "REGISTER_DEVICE", "piiodevice_8h.html#a672a05d4391737b8fecd4524f1a47bda", null ], + [ "PIIODEVICE", "piiodevice_8h.html#a5adabd429443716b75771317ec43301b", null ] +]; \ No newline at end of file diff --git a/doc/html/pikbdlistener_8h.html b/doc/html/pikbdlistener_8h.html new file mode 100644 index 00000000..65d0150b --- /dev/null +++ b/doc/html/pikbdlistener_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/system/pikbdlistener.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pikbdlistener.h File Reference
+
+
+ +

Keyboard console input listener. +More...

+ + + + + +

+Classes

class  PIKbdListener
 Keyboard console input listener. More...
 
+

Detailed Description

+

Keyboard console input listener.

+
+
+ + + + diff --git a/doc/html/pikbdlistener_8h.js b/doc/html/pikbdlistener_8h.js new file mode 100644 index 00000000..07ffc64a --- /dev/null +++ b/doc/html/pikbdlistener_8h.js @@ -0,0 +1,4 @@ +var pikbdlistener_8h = +[ + [ "PIKbdListener", "class_p_i_kbd_listener.html", "class_p_i_kbd_listener" ] +]; \ No newline at end of file diff --git a/doc/html/pimap_8h.html b/doc/html/pimap_8h.html new file mode 100644 index 00000000..fac8c132 --- /dev/null +++ b/doc/html/pimap_8h.html @@ -0,0 +1,129 @@ + + + + + + +PIP: src/containers/pimap.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
pimap.h File Reference
+
+
+ +

Associative array with custom types of key and value. +More...

+

Detailed Description

+

Associative array with custom types of key and value.

+

This file declares PIMap

+
+
+ + + + diff --git a/doc/html/pimath_8h.html b/doc/html/pimath_8h.html new file mode 100644 index 00000000..41d9b4a2 --- /dev/null +++ b/doc/html/pimath_8h.html @@ -0,0 +1,294 @@ + + + + + + +PIP: src/math/pimath.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pimath.h File Reference
+
+
+ +

Many mathematical functions and classes. +More...

+ + + + + +

+Classes

struct  TransferFunction
 Differential evaluations. More...
 
+ + + + + + + + + + + + + +

+Macros

#define PIMV_FOR(v, s)   for (uint v = s; v < Size; ++v)
 Vector templated. More...
 
#define PIMM_FOR(r, c)   for (uint c = 0; c < Cols; ++c) { for (uint r = 0; r < Rows; ++r) {
 Matrix templated. More...
 
#define PIMV_FOR(v, s)   for (uint v = s; v < size_; ++v)
 Vector templated. More...
 
#define PIMM_FOR(c, r)   for (uint c = 0; c < cols_; ++c) { for (uint r = 0; r < rows_; ++r) {
 Matrix templated. More...
 
+ + + + + + + + + + + + + + + + + +

+Functions

+template<uint CR, uint Rows0, uint Cols1, typename Type >
PIMathMatrixT< Rows0, Cols1, Type > operator* (const PIMathMatrixT< Rows0, CR, Type > &fm, const PIMathMatrixT< CR, Cols1, Type > &sm)
 Multiply matrices {Rows0 x CR} on {CR x Cols1}, result is {Rows0 x Cols1}.
 
+template<uint Cols, uint Rows, typename Type >
PIMathVectorT< Cols, Type > operator* (const PIMathMatrixT< Rows, Cols, Type > &fm, const PIMathVectorT< Rows, Type > &sv)
 Multiply matrix {Rows x Cols} on vector {Rows}, result is vector {Cols}.
 
+template<typename Type >
PIMathMatrix< Type > operator* (const PIMathMatrix< Type > &fm, const PIMathMatrix< Type > &sm)
 Multiply matrices {CR x Rows0} on {Cols1 x CR}, result is {Cols1 x Rows0}.
 
+template<typename Type >
PIMathVector< Type > operator* (const PIMathMatrix< Type > &fm, const PIMathVector< Type > &sv)
 Multiply matrix {Cols x Rows} on vector {Cols}, result is vector {Rows}.
 
+

Detailed Description

+

Many mathematical functions and classes.

+

Macro Definition Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define PIMV_FOR( v,
 
)   for (uint v = s; v < Size; ++v)
+
+ +

Vector templated.

+

Vector.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define PIMM_FOR( r,
 
)   for (uint c = 0; c < Cols; ++c) { for (uint r = 0; r < Rows; ++r) {
+
+ +

Matrix templated.

+

Matrix.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define PIMV_FOR( v,
 
)   for (uint v = s; v < size_; ++v)
+
+ +

Vector templated.

+

Vector.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define PIMM_FOR( c,
 
)   for (uint c = 0; c < cols_; ++c) { for (uint r = 0; r < rows_; ++r) {
+
+ +

Matrix templated.

+

Matrix.

+ +
+
+
+
+ + + + diff --git a/doc/html/pimath_8h.js b/doc/html/pimath_8h.js new file mode 100644 index 00000000..332a8211 --- /dev/null +++ b/doc/html/pimath_8h.js @@ -0,0 +1,12 @@ +var pimath_8h = +[ + [ "TransferFunction", "struct_transfer_function.html", null ], + [ "PIMV_FOR", "pimath_8h.html#a2701c7bffde31ab4a96bf4d7fdb6866f", null ], + [ "PIMM_FOR", "pimath_8h.html#a119d2152ee2bf3edef4d9e5a641405f7", null ], + [ "PIMV_FOR", "pimath_8h.html#a2701c7bffde31ab4a96bf4d7fdb6866f", null ], + [ "PIMM_FOR", "pimath_8h.html#a14d1a9088eff4d1065094ba1cabf395d", null ], + [ "operator*", "pimath_8h.html#a861b7fa852296cb48167d9e9ada87cef", null ], + [ "operator*", "pimath_8h.html#a9acadcce78833d8dd628e779e6269da9", null ], + [ "operator*", "pimath_8h.html#a86f4f85192137ca8ac9730333dd109a9", null ], + [ "operator*", "pimath_8h.html#a6362a90d4cb1ff0ae43649d50e9b4ec3", null ] +]; \ No newline at end of file diff --git a/doc/html/pimutex_8h.html b/doc/html/pimutex_8h.html new file mode 100644 index 00000000..c1467d0a --- /dev/null +++ b/doc/html/pimutex_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/thread/pimutex.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pimutex.h File Reference
+
+
+ +

Mutex. +More...

+ + + + + +

+Classes

class  PIMutex
 Mutex. More...
 
+

Detailed Description

+

Mutex.

+
+
+ + + + diff --git a/doc/html/piobject_8h.html b/doc/html/piobject_8h.html new file mode 100644 index 00000000..94dd66eb --- /dev/null +++ b/doc/html/piobject_8h.html @@ -0,0 +1,138 @@ + + + + + + +PIP: src/core/piobject.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piobject.h File Reference
+
+
+ +

Base object. +More...

+ + + + + +

+Classes

class  PIObject
 This is base class for any classes which use events -> handlers mechanism. More...
 
+

Detailed Description

+

Base object.

+

This file declare PIObject class and associated macros

+
+
+ + + + diff --git a/doc/html/piobject_8h.js b/doc/html/piobject_8h.js new file mode 100644 index 00000000..74a81046 --- /dev/null +++ b/doc/html/piobject_8h.js @@ -0,0 +1,44 @@ +var piobject_8h = +[ + [ "PIObject", "class_p_i_object.html", "class_p_i_object" ], + [ "PIOBJECT", "piobject_8h.html#affa62b02040517a34b3f173d804e487f", null ], + [ "PIOBJECT_PARENT", "piobject_8h.html#a4ce1840f79eac65344a4c5823f5034d4", null ], + [ "EVENT_HANDLER0", "piobject_8h.html#ab605cf0454d34cc72c65bfed2abd696a", null ], + [ "EVENT_HANDLER1", "piobject_8h.html#a56defa004e9b7efb2db50b3a43ca7225", null ], + [ "EVENT_HANDLER2", "piobject_8h.html#abb64b696544ee4ee8715add9747c1293", null ], + [ "EVENT_HANDLER3", "piobject_8h.html#af90eced49fbdb43f5fc631fa7e7a44fb", null ], + [ "EVENT_HANDLER4", "piobject_8h.html#ae8a8499ba07a4cc16c0b15c51b197d9f", null ], + [ "EVENT_HANDLER", "piobject_8h.html#ae92ae8e64fbb4c6fa7d87cc1e93d55c0", null ], + [ "EVENT_VHANDLER0", "piobject_8h.html#a338377c8ec10707dd26a168b8aef5c31", null ], + [ "EVENT_VHANDLER1", "piobject_8h.html#abf138848427466a7ae91ada5876f926d", null ], + [ "EVENT_VHANDLER2", "piobject_8h.html#ad0ba4a14c77b8d968dc13918f9b2d384", null ], + [ "EVENT_VHANDLER3", "piobject_8h.html#a4f47b429ac594cebdca1567e1b9a1021", null ], + [ "EVENT_VHANDLER4", "piobject_8h.html#a96b2461314db11f3b68942bcd4b9d13d", null ], + [ "EVENT_VHANDLER", "piobject_8h.html#a26a0e3181ebb2a90c11e9a7eb906a99e", null ], + [ "EVENT0", "piobject_8h.html#a4fa760299649bc8aeaa0dcf4d605be70", null ], + [ "EVENT1", "piobject_8h.html#a7083e0b630c70def2ce05d60d70a45b9", null ], + [ "EVENT2", "piobject_8h.html#a91d380b7235ad11b4830c4c2e8860618", null ], + [ "EVENT3", "piobject_8h.html#a685a85b0791e73158dc0173b4e18dd00", null ], + [ "EVENT4", "piobject_8h.html#a59032ae5e0b94cdfb52be1f24d5e8252", null ], + [ "EVENT", "piobject_8h.html#a7877e997621e1161f058fce90febd464", null ], + [ "CONNECTU", "piobject_8h.html#ac86f9567fcbe10d7e49685e0a01b8427", null ], + [ "CONNECT0", "piobject_8h.html#a38e74a7ce99df00a10517f5ce4aa66c5", null ], + [ "CONNECT1", "piobject_8h.html#a36132851189bb01db4957595111a28db", null ], + [ "CONNECT2", "piobject_8h.html#a850bbf4e8361a106c99da4c46f684247", null ], + [ "CONNECT3", "piobject_8h.html#ab45dbd69bde3cde22d4aba27ed585407", null ], + [ "CONNECT4", "piobject_8h.html#a34e41d730c07354e07333def3d854019", null ], + [ "CONNECT", "piobject_8h.html#a65528c74adc6691eac2c7a2f39328064", null ], + [ "WEAK_CONNECT0", "piobject_8h.html#aaaba5b68617a43903056bc175b8cd162", null ], + [ "WEAK_CONNECT1", "piobject_8h.html#a37d80492e781bf82b9c22c56977da81e", null ], + [ "WEAK_CONNECT2", "piobject_8h.html#a34134cc70172ef5a8d38ba8eb0db327d", null ], + [ "WEAK_CONNECT3", "piobject_8h.html#a601eb7e6e4c3c1a2ba741abbaf271fed", null ], + [ "WEAK_CONNECT4", "piobject_8h.html#a483ad0828f2c221308d95fd07ba1ee6e", null ], + [ "WEAK_CONNECT", "piobject_8h.html#a52fc22658e025b4c15c8a2454d81b289", null ], + [ "DISCONNECT0", "piobject_8h.html#aed7fd8edaccbbca33c51417ca43ac32a", null ], + [ "DISCONNECT1", "piobject_8h.html#ae030e8deb226c636d2df22076391f12c", null ], + [ "DISCONNECT2", "piobject_8h.html#a8f0609bfd7dfcd4512d76480bc114dab", null ], + [ "DISCONNECT3", "piobject_8h.html#af2789f99d1916f231fc579f00370fa6f", null ], + [ "DISCONNECT4", "piobject_8h.html#aedf429d3192da764163c1377cad310e3", null ], + [ "DISCONNECT", "piobject_8h.html#a587604e6f3570c0fc32794384d4d0d1f", null ], + [ "HANDLER", "piobject_8h.html#a3f7b0da6b28ced23e1deee48dde17c98", null ] +]; \ No newline at end of file diff --git a/doc/html/pip.qhp b/doc/html/pip.qhp new file mode 100644 index 0000000000000000000000000000000000000000..b786aa150870eebd6e97bf8048a2464ed76b4ae8 GIT binary patch literal 1995776 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%0DrpQft@@3zTmBCPKY~OzTm_0 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

W$hk7Ig8guB1?kyCr)yg1^6 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≷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 z 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

w%8VCFq9NSy%yC3ec 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ⅅR+?T69*y^kmmaV>}(N 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�n~yV4JZJPf!u%jP7Uk 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%0Aa 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%0A|13tw*7`sffJ4-C`yM=K@c7%D9VOl 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

?09J_UZDWc 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%0A&KjZp}6dBQ@3)BXbdr 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

HQk08fdlC*tI;jGDQ;k4n|nF~PuWJ29N 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 + + + + + +PIP: src/io/pipacketextractor.h File Reference + + + + + + + + + + + + + + +
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pipacketextractor.h File Reference
+
+
+ +

Packets extractor. +More...

+ + + + + +

+Classes

class  PIPacketExtractor
 Packets extractor. More...
 
+

Detailed Description

+

Packets extractor.

+
+
+ + + + diff --git a/doc/html/pipacketextractor_8h.js b/doc/html/pipacketextractor_8h.js new file mode 100644 index 00000000..5719f2ba --- /dev/null +++ b/doc/html/pipacketextractor_8h.js @@ -0,0 +1,4 @@ +var pipacketextractor_8h = +[ + [ "PIPacketExtractor", "class_p_i_packet_extractor.html", "class_p_i_packet_extractor" ] +]; \ No newline at end of file diff --git a/doc/html/pipeer_8h.html b/doc/html/pipeer_8h.html new file mode 100644 index 00000000..d9fbc7a3 --- /dev/null +++ b/doc/html/pipeer_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/io/pipeer.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
pipeer.h File Reference
+
+
+ +

Peering net node. +More...

+

Detailed Description

+

Peering net node.

+
+
+ + + + diff --git a/doc/html/piprocess_8h.html b/doc/html/piprocess_8h.html new file mode 100644 index 00000000..4188e263 --- /dev/null +++ b/doc/html/piprocess_8h.html @@ -0,0 +1,136 @@ + + + + + + +PIP: src/system/piprocess.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piprocess.h File Reference
+
+
+ +

Process. +More...

+ + + + +

+Classes

class  PIProcess
 
+

Detailed Description

+

Process.

+
+
+ + + + diff --git a/doc/html/piprotocol_8h.html b/doc/html/piprotocol_8h.html new file mode 100644 index 00000000..b2557095 --- /dev/null +++ b/doc/html/piprotocol_8h.html @@ -0,0 +1,136 @@ + + + + + + +PIP: src/io/piprotocol.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piprotocol.h File Reference
+
+
+ +

Highly configurable from file I/O channel. +More...

+ + + + +

+Classes

class  PIProtocol
 
+

Detailed Description

+

Highly configurable from file I/O channel.

+
+
+ + + + diff --git a/doc/html/piprotocol_8h.js b/doc/html/piprotocol_8h.js new file mode 100644 index 00000000..bfecd6a7 --- /dev/null +++ b/doc/html/piprotocol_8h.js @@ -0,0 +1,4 @@ +var piprotocol_8h = +[ + [ "PIProtocol", "class_p_i_protocol.html", "class_p_i_protocol" ] +]; \ No newline at end of file diff --git a/doc/html/piserial_8h.html b/doc/html/piserial_8h.html new file mode 100644 index 00000000..89895fe7 --- /dev/null +++ b/doc/html/piserial_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/io/piserial.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piserial.h File Reference
+
+
+ +

Serial device. +More...

+ + + + + +

+Classes

class  PISerial
 Serial device. More...
 
+

Detailed Description

+

Serial device.

+
+
+ + + + diff --git a/doc/html/piserial_8h.js b/doc/html/piserial_8h.js new file mode 100644 index 00000000..cbd25c7d --- /dev/null +++ b/doc/html/piserial_8h.js @@ -0,0 +1,4 @@ +var piserial_8h = +[ + [ "PISerial", "class_p_i_serial.html", "class_p_i_serial" ] +]; \ No newline at end of file diff --git a/doc/html/piset_8h.html b/doc/html/piset_8h.html new file mode 100644 index 00000000..c97910b1 --- /dev/null +++ b/doc/html/piset_8h.html @@ -0,0 +1,138 @@ + + + + + + +PIP: src/containers/piset.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
piset.h File Reference
+
+
+ +

Set container. +More...

+ + + + + +

+Classes

class  PISet< T >
 Set of any type. More...
 
+

Detailed Description

+

Set container.

+

This file declare PISet

+
+
+ + + + diff --git a/doc/html/pisignals_8h.html b/doc/html/pisignals_8h.html new file mode 100644 index 00000000..3c48fa54 --- /dev/null +++ b/doc/html/pisignals_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/system/pisignals.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
pisignals.h File Reference
+
+
+ +

System signals. +More...

+

Detailed Description

+

System signals.

+
+
+ + + + diff --git a/doc/html/pistack_8h.html b/doc/html/pistack_8h.html new file mode 100644 index 00000000..11c2a29e --- /dev/null +++ b/doc/html/pistack_8h.html @@ -0,0 +1,129 @@ + + + + + + +PIP: src/containers/pistack.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
pistack.h File Reference
+
+
+ +

Stack container. +More...

+

Detailed Description

+

Stack container.

+

This file declare PIStack

+
+
+ + + + diff --git a/doc/html/pistatemachine_8h.html b/doc/html/pistatemachine_8h.html new file mode 100644 index 00000000..48e531a1 --- /dev/null +++ b/doc/html/pistatemachine_8h.html @@ -0,0 +1,143 @@ + + + + + + +PIP: src/core/pistatemachine.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pistatemachine.h File Reference
+
+
+ +

Base class for custom state machine. +More...

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

+Classes

class  PIStateMachine< Type >
 Base class for custom state machine. More...
 
struct  PIStateMachine< Type >::Rule
 Rule of transition between states of machine More...
 
struct  PIStateMachine< Type >::State
 State of machine More...
 
+

Detailed Description

+

Base class for custom state machine.

+
+
+ + + + diff --git a/doc/html/pistring_8h.html b/doc/html/pistring_8h.html new file mode 100644 index 00000000..66815cac --- /dev/null +++ b/doc/html/pistring_8h.html @@ -0,0 +1,201 @@ + + + + + + +PIP: src/core/pistring.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pistring.h File Reference
+
+
+ +

String. +More...

+ + + + + + + + +

+Classes

class  PIString
 String class. More...
 
class  PIStringList
 Strings array class. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+std::ostream & operator<< (std::ostream &s, const PIString &v)
 Output operator to std::ostream (cout)
 
+std::istream & operator>> (std::istream &s, PIString &v)
 Input operator from std::istream (cin)
 
+PICout operator<< (PICout s, const PIString &v)
 Output operator to PICout.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIString &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIString &v)
 Input operator from PIByteArray.
 
+PIString operator+ (const PIString &str, const PIString &f)
 Return concatenated string.
 
+PIString operator+ (const PIString &f, const char *str)
 Return concatenated string.
 
+PIString operator+ (const PIString &f, const string &str)
 Return concatenated string.
 
+PIString operator+ (const char *str, const PIString &f)
 Return concatenated string.
 
+PIString operator+ (const string &str, const PIString &f)
 Return concatenated string.
 
+PIByteArrayoperator<< (PIByteArray &s, const PIStringList &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PIStringList &v)
 Input operator from PIByteArray.
 
+std::ostream & operator<< (std::ostream &s, const PIStringList &v)
 Output operator to std::ostream (cout)
 
+PICout operator<< (PICout s, const PIStringList &v)
 Output operator to PICout.
 
+

Detailed Description

+

String.

+

This file declare string and string list classes

+
+
+ + + + diff --git a/doc/html/pistring_8h.js b/doc/html/pistring_8h.js new file mode 100644 index 00000000..25032b3e --- /dev/null +++ b/doc/html/pistring_8h.js @@ -0,0 +1,19 @@ +var pistring_8h = +[ + [ "PIString", "class_p_i_string.html", "class_p_i_string" ], + [ "PIStringList", "class_p_i_string_list.html", "class_p_i_string_list" ], + [ "operator<<", "pistring_8h.html#af86ed54c2bd0e7590db4ca3b6845f50f", null ], + [ "operator>>", "pistring_8h.html#a92a7c6060c9a5cea05fc97d6faea53a2", null ], + [ "operator<<", "pistring_8h.html#ab789440b8ebd894dfd628161254f057a", null ], + [ "operator<<", "pistring_8h.html#adaf9cbdf9ef8f318a08ff773a54a3d6c", null ], + [ "operator>>", "pistring_8h.html#a6cd37806e2577611e4a22dc2031fc166", null ], + [ "operator+", "pistring_8h.html#ab542a906081915a23c5e71e4d272be61", null ], + [ "operator+", "pistring_8h.html#a3c9fd9112bf9bf8add42aa4a1232f02c", null ], + [ "operator+", "pistring_8h.html#a7feead55bd8c6f9c91da7575870bbb4a", null ], + [ "operator+", "pistring_8h.html#ac6c5f17dfacd8deb8db814c69390667e", null ], + [ "operator+", "pistring_8h.html#acb64f0a2a7b71219db76b5d5f498515c", null ], + [ "operator<<", "pistring_8h.html#a08f09ee06ada0b3aab326f1c888daf4c", null ], + [ "operator>>", "pistring_8h.html#a410bed597b49992e265e0941feca5cb8", null ], + [ "operator<<", "pistring_8h.html#ab2ace08e93a4de6b184b29bf3d690467", null ], + [ "operator<<", "pistring_8h.html#a169bfa237f50a26895592fe63e2bccf1", null ] +]; \ No newline at end of file diff --git a/doc/html/pithread_8h.html b/doc/html/pithread_8h.html new file mode 100644 index 00000000..e9a5c25c --- /dev/null +++ b/doc/html/pithread_8h.html @@ -0,0 +1,138 @@ + + + + + + +PIP: src/thread/pithread.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pithread.h File Reference
+
+
+ +

Thread. +More...

+ + + + + +

+Classes

class  PIThread
 Thread class. More...
 
+

Detailed Description

+

Thread.

+

This file declare thread class and some wait functions

+
+
+ + + + diff --git a/doc/html/pithread_8h.js b/doc/html/pithread_8h.js new file mode 100644 index 00000000..a2a390e1 --- /dev/null +++ b/doc/html/pithread_8h.js @@ -0,0 +1,4 @@ +var pithread_8h = +[ + [ "PIThread", "class_p_i_thread.html", "class_p_i_thread" ] +]; \ No newline at end of file diff --git a/doc/html/pitime_8h.html b/doc/html/pitime_8h.html new file mode 100644 index 00000000..a822f3c8 --- /dev/null +++ b/doc/html/pitime_8h.html @@ -0,0 +1,272 @@ + + + + + + +PIP: src/core/pitime.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pitime.h File Reference
+
+
+ +

Time structs. +More...

+ + + + + + + + +

+Classes

class  PISystemTime
 System time. More...
 
class  PITimeMeasurer
 Time measurements. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+void msleep (int msecs)
 Sleep for "msecs" milliseconds.
 
void piUSleep (int usecs)
 Precise sleep for "usecs" microseconds. More...
 
void piMSleep (double msecs)
 Precise sleep for "msecs" milliseconds. More...
 
void piSleep (double secs)
 Precise sleep for "secs" seconds. More...
 
+PICout operator<< (PICout s, const PISystemTime &v)
 Output operator to PICout.
 
+PIByteArrayoperator<< (PIByteArray &s, const PISystemTime &v)
 Output operator to PIByteArray.
 
+PIByteArrayoperator>> (PIByteArray &s, PISystemTime &v)
 Input operator from PIByteArray.
 
PISystemTime currentSystemTime ()
 Returns current system time. More...
 
+

Detailed Description

+

Time structs.

+

Function Documentation

+ +
+
+ + + + + + + + +
void piUSleep (int usecs)
+
+ +

Precise sleep for "usecs" microseconds.

+

This function consider "usleep" offset on QNX/Linux/Mac, which is calculated with pip_sys_test program. If there is correct offset value in system config, this function wait exactly "usecs" microseconds.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void piMSleep (double msecs)
+
+inline
+
+ +

Precise sleep for "msecs" milliseconds.

+

This function exec piUSleep (msecs * 1000).

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void piSleep (double secs)
+
+inline
+
+ +

Precise sleep for "secs" seconds.

+

This function exec piUSleep (msecs * 1000000).

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
PISystemTime currentSystemTime ()
+
+inline
+
+ +

Returns current system time.

+
Deprecated:
Use PISystemTime::current() instead
+ +
+
+
+
+ + + + diff --git a/doc/html/pitime_8h.js b/doc/html/pitime_8h.js new file mode 100644 index 00000000..dff03127 --- /dev/null +++ b/doc/html/pitime_8h.js @@ -0,0 +1,13 @@ +var pitime_8h = +[ + [ "PISystemTime", "class_p_i_system_time.html", "class_p_i_system_time" ], + [ "PITimeMeasurer", "class_p_i_time_measurer.html", "class_p_i_time_measurer" ], + [ "msleep", "pitime_8h.html#a242b1482cf8e5f7a8c5d087a2d2b5e3b", null ], + [ "piUSleep", "pitime_8h.html#a905b80a2477dd23f7b2cade100c64385", null ], + [ "piMSleep", "pitime_8h.html#a10862d1267284ae224b51ad95f90c931", null ], + [ "piSleep", "pitime_8h.html#a6c5fbd8c6c0e339600675ce646bb635f", null ], + [ "operator<<", "pitime_8h.html#a6d0138248acb706f616018e64bbc64c6", null ], + [ "operator<<", "pitime_8h.html#a43f469a88331d5bf809f97f77a12e019", null ], + [ "operator>>", "pitime_8h.html#ad563e018cb30fbced03966997b2fc65a", null ], + [ "currentSystemTime", "pitime_8h.html#abcad1d713a692c67abf44720aff77abc", null ] +]; \ No newline at end of file diff --git a/doc/html/pitimer_8h.html b/doc/html/pitimer_8h.html new file mode 100644 index 00000000..cc472a38 --- /dev/null +++ b/doc/html/pitimer_8h.html @@ -0,0 +1,137 @@ + + + + + + +PIP: src/thread/pitimer.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pitimer.h File Reference
+
+
+ +

Timer. +More...

+ + + + + +

+Classes

class  PITimer
 Timer. More...
 
+

Detailed Description

+

Timer.

+
+
+ + + + diff --git a/doc/html/pitimer_8h.js b/doc/html/pitimer_8h.js new file mode 100644 index 00000000..79cd39a9 --- /dev/null +++ b/doc/html/pitimer_8h.js @@ -0,0 +1,4 @@ +var pitimer_8h = +[ + [ "PITimer", "class_p_i_timer.html", "class_p_i_timer" ] +]; \ No newline at end of file diff --git a/doc/html/piusb_8h.html b/doc/html/piusb_8h.html new file mode 100644 index 00000000..27b5bcd1 --- /dev/null +++ b/doc/html/piusb_8h.html @@ -0,0 +1,128 @@ + + + + + + +PIP: src/io/piusb.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
piusb.h File Reference
+
+
+ +

USB device. +More...

+

Detailed Description

+

USB device.

+
+
+ + + + diff --git a/doc/html/pivariant_8h.html b/doc/html/pivariant_8h.html new file mode 100644 index 00000000..14fd0a41 --- /dev/null +++ b/doc/html/pivariant_8h.html @@ -0,0 +1,138 @@ + + + + + + +PIP: src/core/pivariant.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pivariant.h File Reference
+
+
+ +

Variant type. +More...

+ + + + + +

+Classes

class  PIVariant
 Variant type. More...
 
+

Detailed Description

+

Variant type.

+

This file declares PIVariant

+
+
+ + + + diff --git a/doc/html/pivariant_8h.js b/doc/html/pivariant_8h.js new file mode 100644 index 00000000..3ebe7dec --- /dev/null +++ b/doc/html/pivariant_8h.js @@ -0,0 +1,4 @@ +var pivariant_8h = +[ + [ "PIVariant", "class_p_i_variant.html", "class_p_i_variant" ] +]; \ No newline at end of file diff --git a/doc/html/pivector_8h.html b/doc/html/pivector_8h.html new file mode 100644 index 00000000..23f2262a --- /dev/null +++ b/doc/html/pivector_8h.html @@ -0,0 +1,138 @@ + + + + + + +PIP: src/containers/pivector.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
pivector.h File Reference
+
+
+ +

Dynamic array of any type. +More...

+ + + + + +

+Classes

class  PIVector< T >
 Dynamic array of any type. More...
 
+

Detailed Description

+

Dynamic array of any type.

+

This file declares PIVector

+
+
+ + + + diff --git a/doc/html/pivector_8h.js b/doc/html/pivector_8h.js new file mode 100644 index 00000000..98025cb5 --- /dev/null +++ b/doc/html/pivector_8h.js @@ -0,0 +1,4 @@ +var pivector_8h = +[ + [ "PIVector", "class_p_i_vector.html", "class_p_i_vector" ] +]; \ No newline at end of file diff --git a/doc/html/resize.js b/doc/html/resize.js new file mode 100644 index 00000000..304fcb6b --- /dev/null +++ b/doc/html/resize.js @@ -0,0 +1,97 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + var device = navigator.userAgent.toLowerCase(); + var ios = device.match(/(iphone|ipod|ipad)/); + if (ios) { + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + } + }); +} + + diff --git a/doc/html/struct_p_i_byte_array_1_1_raw_data-members.html b/doc/html/struct_p_i_byte_array_1_1_raw_data-members.html new file mode 100644 index 00000000..7a36aace --- /dev/null +++ b/doc/html/struct_p_i_byte_array_1_1_raw_data-members.html @@ -0,0 +1,131 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIByteArray::RawData Member List
+
+
+ +

This is the complete list of members for PIByteArray::RawData, including all inherited members.

+ + + + + +
operator<<(PIByteArray &s, const PIByteArray::RawData &v)PIByteArray::RawDatafriend
operator>>(PIByteArray &s, PIByteArray::RawData v)PIByteArray::RawDatafriend
RawData(void *data=0, int size=0)PIByteArray::RawDatainline
RawData(const void *data, const int size)PIByteArray::RawDatainline
+
+ + + + diff --git a/doc/html/struct_p_i_byte_array_1_1_raw_data.html b/doc/html/struct_p_i_byte_array_1_1_raw_data.html new file mode 100644 index 00000000..f2cd2eda --- /dev/null +++ b/doc/html/struct_p_i_byte_array_1_1_raw_data.html @@ -0,0 +1,157 @@ + + + + + + +PIP: PIByteArray::RawData Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIByteArray::RawData Struct Reference
+
+
+ +

Help struct to store/restore custom blocks of data to/from PIByteArray. + More...

+ + + + + + + + +

+Public Member Functions

RawData (void *data=0, int size=0)
 Constructs data block.
 
RawData (const void *data, const int size)
 Constructs data block.
 
+ + + + + + + +

+Friends

+PIByteArrayoperator<< (PIByteArray &s, const PIByteArray::RawData &v)
 Store operator, see Attention for details.
 
+PIByteArrayoperator>> (PIByteArray &s, PIByteArray::RawData v)
 Restore operator, see Attention for details.
 
+

Detailed Description

+

Help struct to store/restore custom blocks of data to/from PIByteArray.

+
+
+ + + + diff --git a/doc/html/struct_p_i_byte_array_1_1_raw_data.js b/doc/html/struct_p_i_byte_array_1_1_raw_data.js new file mode 100644 index 00000000..90b2dace --- /dev/null +++ b/doc/html/struct_p_i_byte_array_1_1_raw_data.js @@ -0,0 +1,7 @@ +var struct_p_i_byte_array_1_1_raw_data = +[ + [ "RawData", "struct_p_i_byte_array_1_1_raw_data.html#a57c5b593f88843f43a2644b742f10838", null ], + [ "RawData", "struct_p_i_byte_array_1_1_raw_data.html#a35220a8724f8a8a803380ae6f4653ae1", null ], + [ "operator<<", "struct_p_i_byte_array_1_1_raw_data.html#a0473accc805030f209813084ae135f40", null ], + [ "operator>>", "struct_p_i_byte_array_1_1_raw_data.html#ab6da5d995b37fa429d0f3e1288b78393", null ] +]; \ No newline at end of file diff --git a/doc/html/struct_p_i_ethernet_1_1_interface-members.html b/doc/html/struct_p_i_ethernet_1_1_interface-members.html new file mode 100644 index 00000000..55a14d2e --- /dev/null +++ b/doc/html/struct_p_i_ethernet_1_1_interface-members.html @@ -0,0 +1,141 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ + + + + + diff --git a/doc/html/struct_p_i_ethernet_1_1_interface.html b/doc/html/struct_p_i_ethernet_1_1_interface.html new file mode 100644 index 00000000..06b660f9 --- /dev/null +++ b/doc/html/struct_p_i_ethernet_1_1_interface.html @@ -0,0 +1,197 @@ + + + + + + +PIP: PIEthernet::Interface Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIEthernet::Interface Struct Reference
+
+
+ +

Network interface descriptor. + More...

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

+Public Member Functions

+bool isActive () const
 Returns if interface is active.
 
+bool isRunning () const
 Returns if interface is running.
 
+bool isBroadcast () const
 Returns if interface support broadcast.
 
+bool isMulticast () const
 Returns if interface support multicast.
 
+bool isLoopback () const
 Returns if interface is loopback.
 
+bool isPTP () const
 Returns if interface is point-to-point.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

+int index
 System index.
 
+PIString name
 System name.
 
+PIString mac
 MAC address in format "hh:hh:hh:hh:hh:hh" or empty if there is no MAC address.
 
+PIString address
 IP address in format "i.i.i.i" or empty if there is no IP address.
 
+PIString netmask
 Netmask of IP address in format "i.i.i.i" or empty if there is no netmask.
 
+PIString broadcast
 Broadcast address in format "i.i.i.i" or empty if there is no broadcast address.
 
+PIString ptp
 Point-to-point address or empty if there is no point-to-point address.
 
+InterfaceFlags flags
 Flags of interface.
 
+

Detailed Description

+

Network interface descriptor.

+
+
+ + + + diff --git a/doc/html/struct_p_i_ethernet_1_1_interface.js b/doc/html/struct_p_i_ethernet_1_1_interface.js new file mode 100644 index 00000000..a348b428 --- /dev/null +++ b/doc/html/struct_p_i_ethernet_1_1_interface.js @@ -0,0 +1,17 @@ +var struct_p_i_ethernet_1_1_interface = +[ + [ "isActive", "struct_p_i_ethernet_1_1_interface.html#ab76d86b68f0da23428ea8ecee802354a", null ], + [ "isRunning", "struct_p_i_ethernet_1_1_interface.html#a5f603624bc1046421bdc75b25e6f1e78", null ], + [ "isBroadcast", "struct_p_i_ethernet_1_1_interface.html#af331db850efe21a7793bbf813f71c0b4", null ], + [ "isMulticast", "struct_p_i_ethernet_1_1_interface.html#adbfab446dc998e260231b2e7b90f5b29", null ], + [ "isLoopback", "struct_p_i_ethernet_1_1_interface.html#a469b2d721c49354fe43117cf75950920", null ], + [ "isPTP", "struct_p_i_ethernet_1_1_interface.html#a04ba0d64139f4dc46561a4a4962edbf8", null ], + [ "index", "struct_p_i_ethernet_1_1_interface.html#adabd5e847a09e6d81e5a4f7f8a33d6cc", null ], + [ "name", "struct_p_i_ethernet_1_1_interface.html#a9994b57e884e2ac345520f5743957a88", null ], + [ "mac", "struct_p_i_ethernet_1_1_interface.html#a115e97cf7fb6306138c722fdf0d0d711", null ], + [ "address", "struct_p_i_ethernet_1_1_interface.html#aa753498f5a63938b9218b3ccbd8a01bc", null ], + [ "netmask", "struct_p_i_ethernet_1_1_interface.html#ac20887e6c3e2052f67f057d85d99fca6", null ], + [ "broadcast", "struct_p_i_ethernet_1_1_interface.html#a840af238c8f0ec3216b7978d4a896ef8", null ], + [ "ptp", "struct_p_i_ethernet_1_1_interface.html#a7255bb721c0f03b4465eefa422e984da", null ], + [ "flags", "struct_p_i_ethernet_1_1_interface.html#a327b42e5652b8dfd680a3eddec948237", null ] +]; \ No newline at end of file diff --git a/doc/html/struct_p_i_state_machine_1_1_rule-members.html b/doc/html/struct_p_i_state_machine_1_1_rule-members.html new file mode 100644 index 00000000..bfc9d148 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_rule-members.html @@ -0,0 +1,136 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIStateMachine< Type >::Rule Member List
+
+
+ +

This is the complete list of members for PIStateMachine< Type >::Rule, including all inherited members.

+ + + + + + + + + + +
addCondition(const PIString &name, int times=1)PIStateMachine< Type >::Ruleinline
autoTransitionPIStateMachine< Type >::Rule
conditionsPIStateMachine< Type >::Rule
fromPIStateMachine< Type >::Rule
handlerPIStateMachine< Type >::Rule
resetAllConditionsPIStateMachine< Type >::Rule
Rule()PIStateMachine< Type >::Ruleinline
Rule(Type f, Type t, const PIStringList &c=PIStringList(), Handler h=0, bool at=false, bool rac=false)PIStateMachine< Type >::Ruleinline
toPIStateMachine< Type >::Rule
+
+ + + + diff --git a/doc/html/struct_p_i_state_machine_1_1_rule.html b/doc/html/struct_p_i_state_machine_1_1_rule.html new file mode 100644 index 00000000..c84be724 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_rule.html @@ -0,0 +1,180 @@ + + + + + + +PIP: PIStateMachine< Type >::Rule Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIStateMachine< Type >::Rule Struct Reference
+
+
+ +

Rule of transition between states of machine + More...

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

+Public Member Functions

Rule ()
 Constuctor.
 
Rule (Type f, Type t, const PIStringList &c=PIStringList(), Handler h=0, bool at=false, bool rac=false)
 Constuctor.
 
+void addCondition (const PIString &name, int times=1)
 Add condition of transition.
 
+ + + + + + + + + + + + + + + + + + + +

+Public Attributes

+Type from
 Source state.
 
+Type to
 Destination state.
 
+PIVector< Conditionconditions
 Conditions of transition
 
+bool autoTransition
 Automatic transition.
 
+bool resetAllConditions
 Reset or not all performed conditions of machine on transition.
 
+Handler handler
 Pointer to function executed on transition.
 
+

Detailed Description

+

template<typename Type = int>
+struct PIStateMachine< Type >::Rule

+ +

Rule of transition between states of machine

+
+
+ + + + diff --git a/doc/html/struct_p_i_state_machine_1_1_rule.js b/doc/html/struct_p_i_state_machine_1_1_rule.js new file mode 100644 index 00000000..06931122 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_rule.js @@ -0,0 +1,12 @@ +var struct_p_i_state_machine_1_1_rule = +[ + [ "Rule", "struct_p_i_state_machine_1_1_rule.html#a72078e5c7842786930ca73022509698c", null ], + [ "Rule", "struct_p_i_state_machine_1_1_rule.html#af18c79ccfbc149a7ab7959d0179d0276", null ], + [ "addCondition", "struct_p_i_state_machine_1_1_rule.html#abfb64b05b1288d48756a6913f7518650", null ], + [ "from", "struct_p_i_state_machine_1_1_rule.html#af2282cbdc1961296c15afd440696ab4e", null ], + [ "to", "struct_p_i_state_machine_1_1_rule.html#a68721e6beda4580b09fe52e80d47b935", null ], + [ "conditions", "struct_p_i_state_machine_1_1_rule.html#a0c021e87831b92cbbfee9c7d6585cc15", null ], + [ "autoTransition", "struct_p_i_state_machine_1_1_rule.html#ab1f2afcdaa5ff5308769e5b10930fb73", null ], + [ "resetAllConditions", "struct_p_i_state_machine_1_1_rule.html#a67df3697d1b5868ec367402d0f7c1cb6", null ], + [ "handler", "struct_p_i_state_machine_1_1_rule.html#abedad360951b33a15a01a26ab211860d", null ] +]; \ No newline at end of file diff --git a/doc/html/struct_p_i_state_machine_1_1_state-members.html b/doc/html/struct_p_i_state_machine_1_1_state-members.html new file mode 100644 index 00000000..c0601876 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_state-members.html @@ -0,0 +1,132 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
PIStateMachine< Type >::State Member List
+
+
+ +

This is the complete list of members for PIStateMachine< Type >::State, including all inherited members.

+ + + + + + +
handlerPIStateMachine< Type >::State
namePIStateMachine< Type >::State
State()PIStateMachine< Type >::Stateinline
State(Type v, const PIString &n="", Handler h=0)PIStateMachine< Type >::Stateinline
valuePIStateMachine< Type >::State
+
+ + + + diff --git a/doc/html/struct_p_i_state_machine_1_1_state.html b/doc/html/struct_p_i_state_machine_1_1_state.html new file mode 100644 index 00000000..b8080529 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_state.html @@ -0,0 +1,164 @@ + + + + + + +PIP: PIStateMachine< Type >::State Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
PIStateMachine< Type >::State Struct Reference
+
+
+ +

State of machine + More...

+ + + + + + + + +

+Public Member Functions

State ()
 Constuctor.
 
State (Type v, const PIString &n="", Handler h=0)
 Constuctor.
 
+ + + + + + + + + + +

+Public Attributes

+Type value
 State value
 
+PIString name
 State name
 
+Handler handler
 Pointer to function executed on tick.
 
+

Detailed Description

+

template<typename Type = int>
+struct PIStateMachine< Type >::State

+ +

State of machine

+
+
+ + + + diff --git a/doc/html/struct_p_i_state_machine_1_1_state.js b/doc/html/struct_p_i_state_machine_1_1_state.js new file mode 100644 index 00000000..2a777dd5 --- /dev/null +++ b/doc/html/struct_p_i_state_machine_1_1_state.js @@ -0,0 +1,8 @@ +var struct_p_i_state_machine_1_1_state = +[ + [ "State", "struct_p_i_state_machine_1_1_state.html#a04544461dd2553e8b275bda02c7ba728", null ], + [ "State", "struct_p_i_state_machine_1_1_state.html#a85a5ee0d2f96d24beb3eb1c6c900dfa9", null ], + [ "value", "struct_p_i_state_machine_1_1_state.html#a65e79c60532034d5b2be3ee8fe672d43", null ], + [ "name", "struct_p_i_state_machine_1_1_state.html#aa0acfb1b28d4a803f7e896a3fab906f8", null ], + [ "handler", "struct_p_i_state_machine_1_1_state.html#a27a357a8b0fdc53910696032e0d5c3fd", null ] +]; \ No newline at end of file diff --git a/doc/html/struct_transfer_function-members.html b/doc/html/struct_transfer_function-members.html new file mode 100644 index 00000000..577a295b --- /dev/null +++ b/doc/html/struct_transfer_function-members.html @@ -0,0 +1,127 @@ + + + + + + +PIP: Member List + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
TransferFunction Member List
+
+
+ +

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

+ +
+
+ + + + diff --git a/doc/html/struct_transfer_function.html b/doc/html/struct_transfer_function.html new file mode 100644 index 00000000..36360d52 --- /dev/null +++ b/doc/html/struct_transfer_function.html @@ -0,0 +1,132 @@ + + + + + + +PIP: TransferFunction Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
TransferFunction Struct Reference
+
+
+ +

Differential evaluations. + More...

+

Detailed Description

+

Differential evaluations.

+
+
+ + + + diff --git a/doc/html/svgpan.js b/doc/html/svgpan.js new file mode 100644 index 00000000..4218e79b --- /dev/null +++ b/doc/html/svgpan.js @@ -0,0 +1,319 @@ +/** + * The code below is based on SVGPan Library 1.2 and was modified for doxygen + * to support both zooming and panning via the mouse and via embedded bottons. + * + * This code is licensed under the following BSD license: + * + * Copyright 2009-2010 Andrea Leofreddi . All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY Andrea Leofreddi ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Andrea Leofreddi OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of Andrea Leofreddi. + */ + +var root = document.documentElement; +var state = 'none'; +var stateOrigin; +var stateTf = root.createSVGMatrix(); +var cursorGrab = ' url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAMAAAAolt3jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAlQTFRFAAAA////////c3ilYwAAAAN0Uk5T//8A18oNQQAAAD1JREFUeNp0zlEKACAIA9Bt9z90bZBZkQj29qFBEuBOzQHSnWTTyckEfqUuZgFvslH4ch3qLCO/Kr8cAgwATw4Ax6XRCcoAAAAASUVORK5CYII="), move'; +var zoomSteps = 10; +var zoomInFactor; +var zoomOutFactor; +var windowWidth; +var windowHeight; +var svgDoc; +var minZoom; +var maxZoom; +if (!window) window=this; + +/** + * Show the graph in the middle of the view, scaled to fit + */ +function show() +{ + if (window.innerHeight) // Firefox + { + windowWidth = window.innerWidth; + windowHeight = window.innerHeight; + } + else if (document.documentElement.clientWidth) // Chrome/Safari + { + windowWidth = document.documentElement.clientWidth + windowHeight = document.documentElement.clientHeight + } + if (!windowWidth || !windowHeight) // failsafe + { + windowWidth = 800; + windowHeight = 600; + } + minZoom = Math.min(Math.min(viewHeight,windowHeight)/viewHeight,Math.min(viewWidth,windowWidth)/viewWidth); + maxZoom = minZoom+1.5; + zoomInFactor = Math.pow(maxZoom/minZoom,1.0/zoomSteps); + zoomOutFactor = 1.0/zoomInFactor; + + var g = svgDoc.getElementById('viewport'); + try + { + var bb = g.getBBox(); // this can throw an exception if css { display: none } + var tx = (windowWidth-viewWidth*minZoom+8)/(2*minZoom); + var ty = viewHeight+(windowHeight-viewHeight*minZoom)/(2*minZoom); + var a = 'scale('+minZoom+') rotate(0) translate('+tx+' '+ty+')'; + g.setAttribute('transform',a); + } + catch(e) {} +} + +/** + * Register handlers + */ +function init(evt) +{ + svgDoc = evt.target.ownerDocument; + if (top.window && top.window.registerShow) // register show function in html doc for dynamic sections + { + top.window.registerShow(sectionId,show); + } + show(); + + setAttributes(root, { + "onmousedown" : "handleMouseDown(evt)", + "onmousemove" : "handleMouseMove(evt)", + "onmouseup" : "handleMouseUp(evt)" + }); + + if (window.addEventListener) + { + if (navigator.userAgent.toLowerCase().indexOf('webkit') >= 0 || + navigator.userAgent.toLowerCase().indexOf("opera") >= 0 || + navigator.appVersion.indexOf("MSIE") != -1) + { + window.addEventListener('mousewheel', handleMouseWheel, false); // Chrome/Safari/IE9 + } + else + { + window.addEventListener('DOMMouseScroll', handleMouseWheel, false); // Others + } + } +} + +window.onresize=function() +{ + if (svgDoc) { show(); } +} + +/** + * Instance an SVGPoint object with given event coordinates. + */ +function getEventPoint(evt) +{ + var p = root.createSVGPoint(); + p.x = evt.clientX; + p.y = evt.clientY; + return p; +} + +/** + * Sets the current transform matrix of an element. + */ +function setCTM(element, matrix) +{ + var s = "matrix(" + matrix.a + "," + matrix.b + "," + matrix.c + "," + matrix.d + "," + matrix.e + "," + matrix.f + ")"; + element.setAttribute("transform", s); +} + +/** + * Sets attributes of an element. + */ +function setAttributes(element, attributes) +{ + for (i in attributes) + element.setAttributeNS(null, i, attributes[i]); +} + +function doZoom(g,point,zoomFactor) +{ + var p = point.matrixTransform(g.getCTM().inverse()); + var k = root.createSVGMatrix().translate(p.x, p.y).scale(zoomFactor).translate(-p.x, -p.y); + var n = g.getCTM().multiply(k); + var s = Math.max(n.a,n.d); + if (s>maxZoom) n=n.translate(p.x,p.y).scale(maxZoom/s).translate(-p.x,-p.y); + else if (s'); + d.write('Print SVG'); + d.write(''); + d.write('
'+xs+'
'); + d.write(''); + d.write(''); + d.close(); + } catch(e) { + alert('Failed to open popup window needed for printing!\n'+e.message); + } +} + + + + diff --git a/doc/html/sync_off.png b/doc/html/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..ac778a9cd8841731dd937aa2541289ced7d7e422 GIT binary patch literal 863 zcmV-l1EBngP)2iDVK6t6USn#~q)Fq0sfjO5Oq%w| z7hjsR=_S=f6Pu`nKF}yeTTL%$HNiABh!2`56x*`YMbht#JM7FbOQ7NPlW ziMxQQ+XYxJPKcKQX2B=+i&pWz_|o{$2^jlMaefXjH?|z{g*cQfK$G}vhG_$sjgQ4{ z{UW8IPJOf%U43~Lz&ubNdsaNsGdLoO0IYmI4}dMVD`~QR@u6_200m+fVCoKsgVt@~ z$w>8L09%E@Oy2HTj>lsgs7;iq0L|8^@%ue=?uxLYauxwY$_3jAelcVb8))Vb(wd>>c9N_;tE9(E6u|NSOy`Ss3T^F|&~{K-`ZXnGpsh$NRci|>;iHOeYE!UHg9(X=anVS^hJ?h( zij7MXjZqUwAOxGbz(5TIOw?Ke)EJ4@g(lECpca@;%Q?^acyD;q6z%rq{L=UCo4j-H z?Y-x29fyX70n#ZIFNn<|B#K3b_(P0|ufJ-(Qpu=uz{C+PzeIe)i4XcPm<^U{aW+DXF6|--!k%9v4 zFu+54G(ihsiL%wX^zUz?qS9^)0H%0+<#P58Hc(kr2#~5n6KpiMgf^DYyKe(|k7Xv> zYJx>%0bJM4Osd z)AV$}@YLo2wRKuGOzYk0q^)Bu-Mt|)Gd)xB+?v2){2;@@iWNS9|0T=sA;aaomsluL z?5@k-%6LQT^W{9-Rt_X%dU}RCx9{qzGM?w>=kfVm6c%Lz$@u2dB*Uk#5sfAm#iSz zQ2;w%>0uR55D?#s9DpToKemA{$BW%B;sC%BIiw#?J<&eVogb^`0RPo7@m{(U?WpJ% zVSq=Zn`=nCWp0cgIOglS*x{3><<_PX0I5dA8$$OKkc@Q2d|Y&iIn zd6{1`9~*3bKPl?=&iS41rd?qXe7I9Ku}6dX=C1#759V)`YPjB=UR)G^yI(4~BK=Pf P&|U^lS3j3^P6gU~&FnU|Vt{umT<{;I1Bx^BHvtNG=>V`ujpyn4l1 z%Kc^60bb)da}$4a+;-)Obg1w2bSSUm5PVqi;n0~wPCE}RJ-Tga_y$u$w(P?-*MV0^n literal 0 HcmV?d00001 diff --git a/doc/html/tab_s.png b/doc/html/tab_s.png new file mode 100644 index 0000000000000000000000000000000000000000..498a061060228d767549f13679fdf74ecc1208c2 GIT binary patch literal 183 zcmV;o07(CdP)z10001fNkl}y=7#<8o(&MLJE+bpq6#nw<5 lt70aEV6&90=i1_b{sU8DBu5zC;)(zO002ovPDHLkV1nR*OJ4v0 literal 0 HcmV?d00001 diff --git a/doc/html/tabs.css b/doc/html/tabs.css new file mode 100644 index 00000000..c38443e4 --- /dev/null +++ b/doc/html/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #36325F; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/doc/html/using_advanced.html b/doc/html/using_advanced.html new file mode 100644 index 00000000..e7613203 --- /dev/null +++ b/doc/html/using_advanced.html @@ -0,0 +1,117 @@ + + + + + + +PIP: Advanced using + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Advanced using
+
+
+

Sorry, creativity crysis xD

+
+
+ + + + diff --git a/doc/html/using_basic.html b/doc/html/using_basic.html new file mode 100644 index 00000000..16c9395e --- /dev/null +++ b/doc/html/using_basic.html @@ -0,0 +1,208 @@ + + + + + + +PIP: Getting started + + + + + + + + + + + + + +
+
+ + + + + + +
+
PIP +  0.4.1_alpha3 +
+
Platform-Independent Primitives
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Getting started
+
+
+

Many novice programmers are solved many common task with system integrity: output to console, keyboard buttons press detecting, working with serial ports, ethernet or files, and many other. These tasks can solve this library, and code, based only on PIP will be compile and work similar on many systems: Windows, any Linux, Red Hat, FreeBSD, MacOS X and QNX. Typical application on PIP looks like this:
+

#include <pip.h>
+
+
+
// declare key press handler
+
void key_event(char key, void * );
+
+
+
PIConsole console(false, key_event); // don`t start now, key handler is "key_event"
+
+
+
// some vars
+
int i = 2, j = 3;
+
+
+
// implicit key press handler
+
void key_event(char key, void * ) {
+
switch (key) {
+
case '-':
+
i--;
+
break;
+
case '+':
+
i++;
+
break;
+
case '(':
+
j--;
+
break;
+
case ')':
+
j++;
+
break;
+
};
+
};
+
+
+
class MainClass: public PITimer {
+
PIOBJECT(MainClass)
+
public:
+
MainClass() {}
+
protected:
+
void tick(void * data, int delimiter) {
+
piCout << "timer tick";
+
// timer tick
+
}
+
};
+
+
+
MainClass main_class;
+
+
+
int main(int argc, char * argv[]) {
+
// enabling auto-detection of exit button press, by default 'Q' (shift+q)
+
console.enableExitCapture();
+
+
// if we want to parse command-line arguments
+
PICLI cli(argc, argv);
+
cli.addArgument("console"); // "-c" or "--console"
+
cli.addArgument("debug"); // "-d" or "--debug"
+
+
// enabling or disabling global debug flag
+
piDebug = cli.hasArgument("debug");
+
+
// configure console
+
console.addTab("first tab", '1');
+
console.addString("PIP console", 1, PIConsole::Bold);
+
console.addVariable("int var (i)", &i, 1);
+
console.addVariable("int green var (j)", &j, 1, PIConsole::Green);
+
console.addString("'-' - i--", 2);
+
console.addString("'+' - i++", 2);
+
console.addString("'(' - j--", 2);
+
console.addString("')' - j++", 2);
+
console.addTab("second tab", '2');
+
console.addString("col 1", 1);
+
console.addString("col 2", 2);
+
console.addString("col 3", 3);
+
console.setTab("first tab");
+
+
// start output to console if "console" argument exists
+
if (cli.hasArgument("console"))
+
console.start();
+
+
// start main class, e.g. 40 Hz
+
main_class.start(25.);
+
+
// wait for 'Q' press, independently if console is started or not
+
console.waitForFinish();
+
+
return 0;
+
};
+

This code demonstrates simple interactive configurable program, which can be started with console display or not, and with debug or not. MainClass is central class that also can be inherited from PIThread and reimplement run() function.
+ Many PIP classes has events and event handlers, which can be connected one to another. Details you can see at PIObject reference page (Events and Event handlers).
+ To configure your program from file use PIConfig.
+ If you want more information see Advanced using

+
+
+ + + + diff --git a/doc/images/events_handlers.png b/doc/images/events_handlers.png new file mode 100644 index 0000000000000000000000000000000000000000..c217975e72b538c5952b90d2f988fea424d59b2f GIT binary patch literal 28786 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 literal 0 HcmV?d00001 diff --git a/doc/images/packet_detection.png b/doc/images/packet_detection.png new file mode 100644 index 0000000000000000000000000000000000000000..135796234910dda99d91c002c9925415d1d23ec1 GIT binary patch literal 28193 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 Dc4ejz literal 0 HcmV?d00001 diff --git a/doc/images/piconfig.png b/doc/images/piconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..c669750142d6c5c145257c08e573136f18b8aa19 GIT binary patch literal 37880 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�+Sa&ro>v9S$3jxjc54vvpY32!BT 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 K&t;ucLK6ThTT9vi literal 0 HcmV?d00001 diff --git a/doc/images/piconnection.png b/doc/images/piconnection.png new file mode 100644 index 0000000000000000000000000000000000000000..8971ab76c2a4a792b5d965ece363775907e98633 GIT binary patch literal 98609 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 mKBy?K{okzO>2aB!cRV(Q-GSN{zX!nT_L literal 0 HcmV?d00001 diff --git a/doc/images/piconnection_conf.png b/doc/images/piconnection_conf.png new file mode 100644 index 0000000000000000000000000000000000000000..c42eb7de905de9a6d7c73fa73abb1f8c627a4fd5 GIT binary patch literal 88687 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 z%0D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 z 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
gIL#nJpx=upACi+%T119JwmQY_zO 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 l75~0jcxjcemn03rIJd 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 literal 0 HcmV?d00001 diff --git a/utils/code_model_generator/CMakeFiles/CMakeDirectoryInformation.cmake b/utils/code_model_generator/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..ec597a55 --- /dev/null +++ b/utils/code_model_generator/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 2.8 + +# Relative path conversion top directories. +SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/andrey/linux_build/libs") +SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/andrey/linux_build/libs") + +# Force unix paths in dependencies. +SET(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/utils/code_model_generator/CMakeFiles/progress.marks b/utils/code_model_generator/CMakeFiles/progress.marks new file mode 100644 index 00000000..b6a7d89c --- /dev/null +++ b/utils/code_model_generator/CMakeFiles/progress.marks @@ -0,0 +1 @@ +16 diff --git a/utils/remote_console/CMakeFiles/CMakeDirectoryInformation.cmake b/utils/remote_console/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..ec597a55 --- /dev/null +++ b/utils/remote_console/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 2.8 + +# Relative path conversion top directories. +SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/andrey/linux_build/libs") +SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/andrey/linux_build/libs") + +# Force unix paths in dependencies. +SET(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/utils/remote_console/CMakeFiles/progress.marks b/utils/remote_console/CMakeFiles/progress.marks new file mode 100644 index 00000000..60d3b2f4 --- /dev/null +++ b/utils/remote_console/CMakeFiles/progress.marks @@ -0,0 +1 @@ +15 diff --git a/utils/system_daemon/CMakeFiles/CMakeDirectoryInformation.cmake b/utils/system_daemon/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..3a183a56 --- /dev/null +++ b/utils/system_daemon/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "MinGW Makefiles" Generator, CMake Version 2.8 + +# Relative path conversion top directories. +SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "C:/libs") +SET(CMAKE_RELATIVE_PATH_TOP_BINARY "C:/libs") + +# Force unix paths in dependencies. +SET(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/utils/system_daemon/CMakeFiles/progress.marks b/utils/system_daemon/CMakeFiles/progress.marks new file mode 100644 index 00000000..53457f87 --- /dev/null +++ b/utils/system_daemon/CMakeFiles/progress.marks @@ -0,0 +1 @@ +15 diff --git a/utils/system_test/CMakeFiles/CMakeDirectoryInformation.cmake b/utils/system_test/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000..ec597a55 --- /dev/null +++ b/utils/system_test/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 2.8 + +# Relative path conversion top directories. +SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/andrey/linux_build/libs") +SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/andrey/linux_build/libs") + +# Force unix paths in dependencies. +SET(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/utils/system_test/CMakeFiles/progress.marks b/utils/system_test/CMakeFiles/progress.marks new file mode 100644 index 00000000..60d3b2f4 --- /dev/null +++ b/utils/system_test/CMakeFiles/progress.marks @@ -0,0 +1 @@ +15

+dyLzFQuv~rj!88RQtNai?AN`Rxj@O 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≶4d5x+f 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