Compare commits

...

2 Commits

Author SHA1 Message Date
38ce043ae0 updated documentation 2026-06-14 21:05:20 -04:00
4c8af9f9fe Updated optimized doxyfile 2026-06-14 21:04:43 -04:00
233 changed files with 12166 additions and 6282 deletions

1921
Doxyfile

File diff suppressed because it is too large Load Diff

693
docs/dbcframework.tag Normal file
View File

@@ -0,0 +1,693 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile doxygen_version="1.9.4">
<compound kind="file">
<name>dbc_database.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__database_8h.html</filename>
<includes id="frame__info_8h" name="frame_info.h" local="yes" imported="no">frame_info.h</includes>
<class kind="struct">DbcDatabase</class>
</compound>
<compound kind="file">
<name>dbc_decode_builder.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__decode__builder_8cpp.html</filename>
<includes id="dbc__decode__builder_8h" name="dbc_decode_builder.h" local="yes" imported="no">dbc_decode_builder.h</includes>
</compound>
<compound kind="file">
<name>dbc_decode_builder.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__decode__builder_8h.html</filename>
<includes id="dbc__database_8h" name="dbc_database.h" local="yes" imported="no">dbc_database.h</includes>
<includes id="decode__database_8h" name="decode_database.h" local="yes" imported="no">decode_database.h</includes>
<class kind="class">DbcDecodeBuilder</class>
</compound>
<compound kind="file">
<name>dbc_decoder.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__decoder_8cpp.html</filename>
<includes id="dbc__decoder_8h" name="dbc_decoder.h" local="yes" imported="no">dbc_decoder.h</includes>
</compound>
<compound kind="file">
<name>dbc_decoder.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__decoder_8h.html</filename>
<includes id="decode__database_8h" name="decode_database.h" local="yes" imported="no">decode_database.h</includes>
<class kind="struct">RawCanFrame</class>
<class kind="struct">DecodedSignalValue</class>
<class kind="struct">DecodedFrameValue</class>
<class kind="class">DbcDecoder</class>
</compound>
<compound kind="file">
<name>dbc_parser.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__parser_8cpp.html</filename>
<includes id="dbc__parser_8h" name="dbc_parser.h" local="yes" imported="no">dbc_parser.h</includes>
</compound>
<compound kind="file">
<name>dbc_parser.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__parser_8h.html</filename>
<includes id="dbc__database_8h" name="dbc_database.h" local="yes" imported="no">dbc_database.h</includes>
<class kind="class">DbcParser</class>
</compound>
<compound kind="file">
<name>dbc_tree_builder.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__tree__builder_8cpp.html</filename>
<includes id="dbc__tree__builder_8h" name="dbc_tree_builder.h" local="yes" imported="no">dbc_tree_builder.h</includes>
</compound>
<compound kind="file">
<name>dbc_tree_builder.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>dbc__tree__builder_8h.html</filename>
<includes id="dbc__database_8h" name="dbc_database.h" local="yes" imported="no">dbc_database.h</includes>
<includes id="tree__node_8h" name="tree_node.h" local="yes" imported="no">tree_node.h</includes>
<class kind="class">DbcTreeBuilder</class>
</compound>
<compound kind="file">
<name>decode_database.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>decode__database_8h.html</filename>
<class kind="struct">DecodeSignal</class>
<class kind="struct">DecodeFrame</class>
<class kind="struct">FrameKey</class>
<class kind="struct">FrameKeyHasher</class>
<class kind="struct">DecodeDatabase</class>
<member kind="enumeration">
<type></type>
<name>ByteOrder</name>
<anchorfile>decode__database_8h.html</anchorfile>
<anchor>aaeb92d42f5a6e27b8ba19f18d69d142b</anchor>
<arglist></arglist>
<enumvalue file="decode__database_8h.html" anchor="aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</enumvalue>
<enumvalue file="decode__database_8h.html" anchor="aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">Motorola</enumvalue>
</member>
<member kind="enumeration">
<type></type>
<name>ValueType</name>
<anchorfile>decode__database_8h.html</anchorfile>
<anchor>ad9971b6ef33e02ba2c75d19c1d2518a1</anchor>
<arglist></arglist>
<enumvalue file="decode__database_8h.html" anchor="ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">Unsigned</enumvalue>
<enumvalue file="decode__database_8h.html" anchor="ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">Signed</enumvalue>
</member>
</compound>
<compound kind="file">
<name>frame_info.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>frame__info_8h.html</filename>
<includes id="signal__info_8h" name="signal_info.h" local="yes" imported="no">signal_info.h</includes>
<class kind="struct">FrameInfo</class>
</compound>
<compound kind="file">
<name>main.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>main_8cpp.html</filename>
<includes id="dbc__parser_8h" name="dbc_parser.h" local="yes" imported="no">dbc_parser.h</includes>
<includes id="dbc__tree__builder_8h" name="dbc_tree_builder.h" local="yes" imported="no">dbc_tree_builder.h</includes>
<includes id="dbc__decode__builder_8h" name="dbc_decode_builder.h" local="yes" imported="no">dbc_decode_builder.h</includes>
<includes id="dbc__decoder_8h" name="dbc_decoder.h" local="yes" imported="no">dbc_decoder.h</includes>
</compound>
<compound kind="file">
<name>signal_info.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>signal__info_8h.html</filename>
<class kind="struct">SignalInfo</class>
</compound>
<compound kind="file">
<name>tree_node.cpp</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>tree__node_8cpp.html</filename>
<includes id="tree__node_8h" name="tree_node.h" local="yes" imported="no">tree_node.h</includes>
</compound>
<compound kind="file">
<name>tree_node.h</name>
<path>/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/</path>
<filename>tree__node_8h.html</filename>
<includes id="frame__info_8h" name="frame_info.h" local="yes" imported="no">frame_info.h</includes>
<includes id="signal__info_8h" name="signal_info.h" local="yes" imported="no">signal_info.h</includes>
<class kind="class">TreeNode</class>
<member kind="enumeration">
<type></type>
<name>NodeType</name>
<anchorfile>tree__node_8h.html</anchorfile>
<anchor>acac9cbaeea226ed297804c012dc12b16</anchor>
<arglist></arglist>
<enumvalue file="tree__node_8h.html" anchor="acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad">Root</enumvalue>
<enumvalue file="tree__node_8h.html" anchor="acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a">Frame</enumvalue>
<enumvalue file="tree__node_8h.html" anchor="acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398">Signal</enumvalue>
</member>
</compound>
<compound kind="struct">
<name>DbcDatabase</name>
<filename>structDbcDatabase.html</filename>
<member kind="variable">
<type>std::vector&lt; FrameInfo &gt;</type>
<name>frames</name>
<anchorfile>structDbcDatabase.html</anchorfile>
<anchor>a2cade5d0234ee816132127542f8c612b</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="class">
<name>DbcDecodeBuilder</name>
<filename>classDbcDecodeBuilder.html</filename>
<member kind="function">
<type>DecodeDatabase</type>
<name>Build</name>
<anchorfile>classDbcDecodeBuilder.html</anchorfile>
<anchor>a2bc6386dfb5e58976c42e22c19ec471b</anchor>
<arglist>(const DbcDatabase &amp;source) const</arglist>
</member>
</compound>
<compound kind="class">
<name>DbcDecoder</name>
<filename>classDbcDecoder.html</filename>
<member kind="function">
<type>const DecodeFrame *</type>
<name>FindFrame</name>
<anchorfile>classDbcDecoder.html</anchorfile>
<anchor>ab2cfb2fb711c95d3a29365546b89f3da</anchor>
<arglist>(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const</arglist>
</member>
<member kind="function">
<type>DecodedFrameValue</type>
<name>Decode</name>
<anchorfile>classDbcDecoder.html</anchorfile>
<anchor>a345951ffe5d943a70d3a1ea1f39e74f7</anchor>
<arglist>(const DecodeDatabase &amp;database, const RawCanFrame &amp;frame) const</arglist>
</member>
</compound>
<compound kind="class">
<name>DbcParser</name>
<filename>classDbcParser.html</filename>
<member kind="function">
<type>DbcDatabase</type>
<name>ParseFile</name>
<anchorfile>classDbcParser.html</anchorfile>
<anchor>aef72826942c9095d653fafa435855e56</anchor>
<arglist>(const std::string &amp;filePath) const</arglist>
</member>
</compound>
<compound kind="class">
<name>DbcTreeBuilder</name>
<filename>classDbcTreeBuilder.html</filename>
<member kind="function">
<type>std::unique_ptr&lt; TreeNode &gt;</type>
<name>Build</name>
<anchorfile>classDbcTreeBuilder.html</anchorfile>
<anchor>a7e57d067d831b14b383947fd125edd4b</anchor>
<arglist>(const DbcDatabase &amp;database) const</arglist>
</member>
</compound>
<compound kind="struct">
<name>DecodeDatabase</name>
<filename>structDecodeDatabase.html</filename>
</compound>
<compound kind="struct">
<name>DecodedFrameValue</name>
<filename>structDecodedFrameValue.html</filename>
<member kind="variable">
<type>const DecodeFrame *</type>
<name>definition</name>
<anchorfile>structDecodedFrameValue.html</anchorfile>
<anchor>a60dda1cc352d2c8087f0bdbc81dd266c</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; DecodedSignalValue &gt;</type>
<name>public</name>
<anchorfile>structDecodedFrameValue.html</anchorfile>
<anchor>adae123ac7fbb4a5c314b64b01109f4a8</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>valid</name>
<anchorfile>structDecodedFrameValue.html</anchorfile>
<anchor>a4f51c31110dba1f73a763c596372beb0</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>DecodedSignalValue</name>
<filename>structDecodedSignalValue.html</filename>
<member kind="variable">
<type>const DecodeSignal *</type>
<name>definition</name>
<anchorfile>structDecodedSignalValue.html</anchorfile>
<anchor>acadc3b3bb21dd6b0412d342c7e6b20d7</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::int64_t</type>
<name>rawValue</name>
<anchorfile>structDecodedSignalValue.html</anchorfile>
<anchor>a5138b825940e34689f7b3891627ee9ec</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>physicalValue</name>
<anchorfile>structDecodedSignalValue.html</anchorfile>
<anchor>a6847d05b3cb00d5e0f6c611968f57978</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>valid</name>
<anchorfile>structDecodedSignalValue.html</anchorfile>
<anchor>aac0ed361af545cde48d0e6f41a859686</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>DecodeFrame</name>
<filename>structDecodeFrame.html</filename>
<member kind="variable">
<type>std::string</type>
<name>name</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>aa0a7f8fd5bfde2148dfd0d838328f579</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>canId</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a52e10215388db7df8b541b9d9909edcf</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>isExtended</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a3ee2348d781f8f15aaf87e8dcf57ec41</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint8_t</type>
<name>dlc</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a51111ac13988be372d5673d12cf3e060</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>pgn</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a1d3c54055c0cbceb73adf551f7067f23</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>hasPgn</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a2551102670c4a540fced4c71da0b369d</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>transmitter</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>ad78241dc40c793aabb8495b6989b81a9</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>comment</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a25819ef907a32391af5c9f7cae9cdb22</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; DecodeSignal &gt;</type>
<name>public</name>
<anchorfile>structDecodeFrame.html</anchorfile>
<anchor>a7f4e71bbdec3f424b625e724e3dfbf14</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>DecodeSignal</name>
<filename>structDecodeSignal.html</filename>
<member kind="variable">
<type>std::string</type>
<name>name</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a58cf5844f2272a23dcb9687d912e4780</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>startBit</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>aaf5d7527ddf65b6355c2b4f3626df22d</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>length</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>acd4ef5ee30421d117b5756854302debb</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>ByteOrder</type>
<name>byteOrder</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>abdc4c4bb4a67a6d61d6ca81e8a52833d</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>ValueType</type>
<name>valueType</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a9d37638129263b8902ba5be59baf39a8</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>factor</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a428c39913a366a8476dd291061354391</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>offset</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a92db637af4e224a0ae70173050dc3f74</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>minimum</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a0fb84e19a0ab3bd50b6f65c1075ebc25</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>maximum</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a4a6ba87142a9badbf0ca830e9e709cb7</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>unit</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>a38eed9ca7581423fd8bfbedcffc12092</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; std::string &gt;</type>
<name>receivers</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>abdbae62a64d2df716bf60c6b67b30eaa</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>comment</name>
<anchorfile>structDecodeSignal.html</anchorfile>
<anchor>ae28c905d4a2bc86419c2a8361bfea473</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>FrameInfo</name>
<filename>structFrameInfo.html</filename>
<member kind="variable">
<type>std::string</type>
<name>name</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>abb53a7f93ed7abc0ea1ae4a8ccafcdcb</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>canId</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>af470b0742c05bfbffc31c51a68f5c05e</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>isExtended</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>a34b726afaad2ac5c697fdb2ac070cdaf</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>pgn</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>aee518b33f1000bf0b7f6e4a87474c943</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>hasPgn</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>a4737a5420213ad4304724e39f3a4e55d</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint8_t</type>
<name>dlc</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>aa2b198ea0f55e560c123d35e7b3ecab9</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>transmitter</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>a92749ec3798d4211a505860fb389a9e8</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>comment</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>ace75121294f9d89b762080ab5643293c</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; SignalInfo &gt;</type>
<name>public</name>
<anchorfile>structFrameInfo.html</anchorfile>
<anchor>a3f7e25d67ddae22f2ed50823a5a26084</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>FrameKey</name>
<filename>structFrameKey.html</filename>
</compound>
<compound kind="struct">
<name>FrameKeyHasher</name>
<filename>structFrameKeyHasher.html</filename>
</compound>
<compound kind="struct">
<name>RawCanFrame</name>
<filename>structRawCanFrame.html</filename>
<member kind="variable">
<type>std::uint32_t</type>
<name>canId</name>
<anchorfile>structRawCanFrame.html</anchorfile>
<anchor>a2d0e7fa0e3d5c20bbed55ed8f7888ff4</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>isExtended</name>
<anchorfile>structRawCanFrame.html</anchorfile>
<anchor>a462193d275adc1dba8bd18ffa0e36bb7</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; std::uint8_t &gt;</type>
<name>data</name>
<anchorfile>structRawCanFrame.html</anchorfile>
<anchor>a0acb487612104c99c9907344c035df83</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="struct">
<name>SignalInfo</name>
<filename>structSignalInfo.html</filename>
<member kind="variable">
<type>std::string</type>
<name>name</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>a379e422a00cad56f896cacf60455b088</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>startBit</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>ace290724f9801521609aedaa946d61f1</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::uint32_t</type>
<name>length</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>a1008b5201f71848177217bd52fb84baa</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>isLittleEndian</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>af363b1563fb4c7cc8973f9a80c06846c</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>bool</type>
<name>isSigned</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>a52a52b320eef92fbcb4626307f9a498f</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>factor</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>ae4f78d99a2750aa564d7eba860171499</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>offset</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>ab7d0769f47aa540656b22e4e49db517e</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>minimum</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>ada7bf94fbeaa26bd08c73982b5af255b</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>double</type>
<name>maximum</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>adf1c4331b9eabced0d7fdda40ff0eb52</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>unit</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>a1f214f03e94ef5794de2d3367bfcbd01</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::vector&lt; std::string &gt;</type>
<name>receivers</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>a2c95562fd0b29327a7fd7b1e6feee7f3</anchor>
<arglist></arglist>
</member>
<member kind="variable">
<type>std::string</type>
<name>comment</name>
<anchorfile>structSignalInfo.html</anchorfile>
<anchor>ac99ba7563a5dad01e39c4257216953f5</anchor>
<arglist></arglist>
</member>
</compound>
<compound kind="class">
<name>TreeNode</name>
<filename>classTreeNode.html</filename>
<member kind="function">
<type></type>
<name>TreeNode</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a984a98d5ccf7ef1f5a18094c6821f35d</anchor>
<arglist>()</arglist>
</member>
<member kind="function">
<type></type>
<name>TreeNode</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a8e38dd591d8801d7ee3a7dbad90c67fc</anchor>
<arglist>(const FrameInfo &amp;frame)</arglist>
</member>
<member kind="function">
<type></type>
<name>TreeNode</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>ab9f00f5253d56461bb2d420fd639c5ae</anchor>
<arglist>(const SignalInfo &amp;signal)</arglist>
</member>
<member kind="function">
<type>void</type>
<name>AddChild</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a6161f2ebb92184eab4215d121870e788</anchor>
<arglist>(std::unique_ptr&lt; TreeNode &gt; child)</arglist>
</member>
<member kind="function">
<type>std::size_t</type>
<name>GetChildCount</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>abdd82460187dca8d3e5d66f5d5c529ea</anchor>
<arglist>() const</arglist>
</member>
<member kind="function">
<type>const TreeNode *</type>
<name>GetChild</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a4727ff801a2d1b9323c5ae50a35457a6</anchor>
<arglist>(std::size_t index) const</arglist>
</member>
<member kind="function">
<type>TreeNode *</type>
<name>GetChild</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a81047bd7d2a4cc96b9ef5e20d0d63b5f</anchor>
<arglist>(std::size_t index)</arglist>
</member>
<member kind="function">
<type>NodeType</type>
<name>GetType</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>afa2f4b0aafa12d3d41ed00df8e0250c9</anchor>
<arglist>() const</arglist>
</member>
<member kind="function">
<type>const std::string &amp;</type>
<name>GetName</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>aaac5b8d9dc9e5ae1f367d1adbcf20e18</anchor>
<arglist>() const</arglist>
</member>
<member kind="function">
<type>const FrameInfo *</type>
<name>GetFrame</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>afc503b40004764163605d6dbdb4ef811</anchor>
<arglist>() const</arglist>
</member>
<member kind="function">
<type>const SignalInfo *</type>
<name>GetSignal</name>
<anchorfile>classTreeNode.html</anchorfile>
<anchor>a226518612d0d00b5988a2c44fc21d3f1</anchor>
<arglist>() const</arglist>
</member>
</compound>
<compound kind="page">
<name>md_README</name>
<title>DBC Parser and Runtime Decode Module Documentation</title>
<filename>md_README.html</filename>
</compound>
</tagfile>

10
docs/doxygen_warnings.log Normal file
View File

@@ -0,0 +1,10 @@
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/main.cpp:97: warning: Member main(int argc, char *argv[]) (function) of file main.cpp is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:133: warning: Member frames (variable) of struct DecodeDatabase is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:134: warning: Member frameIndexByKey (variable) of struct DecodeDatabase is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:108: warning: Member FrameKey(std::uint32_t id, bool extended) (function) of struct FrameKey is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:113: warning: Member operator==(const FrameKey &other) const (function) of struct FrameKey is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:100: warning: Member canId (variable) of struct FrameKey is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:101: warning: Member isExtended (variable) of struct FrameKey is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/decode_database.h:122: warning: Member operator()(const FrameKey &key) const (function) of struct FrameKeyHasher is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/tree_node.h:59: warning: Member TreeNode(TreeNode &&)=default (function) of class TreeNode is not documented.
/home/deeaitch/work/3.projects/git.himro.ca/automotive/dbc/tree_node.h:60: warning: Member operator=(TreeNode &&)=default (function) of class TreeNode is not documented.

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Class List</title>
<title>DBC Framework: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li class="current"><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('annotated.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">Class List</div></div>
</div><!--header-->
@@ -69,9 +107,12 @@
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,19 @@
var annotated_dup =
[
[ "DbcDatabase", "structDbcDatabase.html", "structDbcDatabase" ],
[ "DbcDecodeBuilder", "classDbcDecodeBuilder.html", "classDbcDecodeBuilder" ],
[ "DbcDecoder", "classDbcDecoder.html", "classDbcDecoder" ],
[ "DbcParser", "classDbcParser.html", "classDbcParser" ],
[ "DbcTreeBuilder", "classDbcTreeBuilder.html", "classDbcTreeBuilder" ],
[ "DecodeDatabase", "structDecodeDatabase.html", null ],
[ "DecodedFrameValue", "structDecodedFrameValue.html", "structDecodedFrameValue" ],
[ "DecodedSignalValue", "structDecodedSignalValue.html", "structDecodedSignalValue" ],
[ "DecodeFrame", "structDecodeFrame.html", "structDecodeFrame" ],
[ "DecodeSignal", "structDecodeSignal.html", "structDecodeSignal" ],
[ "FrameInfo", "structFrameInfo.html", "structFrameInfo" ],
[ "FrameKey", "structFrameKey.html", null ],
[ "FrameKeyHasher", "structFrameKeyHasher.html", null ],
[ "RawCanFrame", "structRawCanFrame.html", "structRawCanFrame" ],
[ "SignalInfo", "structSignalInfo.html", "structSignalInfo" ],
[ "TreeNode", "classTreeNode.html", "classTreeNode" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Member List</title>
<title>DBC Framework: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcDecodeBuilder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">DbcDecodeBuilder Member List</div></div>
</div><!--header-->
@@ -53,9 +91,12 @@
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">Build</a>(const DbcDatabase &amp;source) const</td><td class="entry"><a class="el" href="classDbcDecodeBuilder.html">DbcDecodeBuilder</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: DbcDecodeBuilder Class Reference</title>
<title>DBC Framework: DbcDecodeBuilder Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcDecodeBuilder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
@@ -95,9 +133,7 @@ Public Member Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="dbc__decode__builder_8cpp_source.html#l00014">14</a> of file <a class="el" href="dbc__decode__builder_8cpp_source.html">dbc_decode_builder.cpp</a>.</p>
<p class="reference">References <a class="el" href="decode__database_8h_source.html#l00043">DecodeSignal::byteOrder</a>, <a class="el" href="decode__database_8h_source.html#l00074">DecodeFrame::canId</a>, <a class="el" href="frame__info_8h_source.html#l00026">FrameInfo::canId</a>, <a class="el" href="decode__database_8h_source.html#l00051">DecodeSignal::comment</a>, <a class="el" href="decode__database_8h_source.html#l00080">DecodeFrame::comment</a>, <a class="el" href="frame__info_8h_source.html#l00032">FrameInfo::comment</a>, <a class="el" href="signal__info_8h_source.html#l00034">SignalInfo::comment</a>, <a class="el" href="decode__database_8h_source.html#l00076">DecodeFrame::dlc</a>, <a class="el" href="frame__info_8h_source.html#l00030">FrameInfo::dlc</a>, <a class="el" href="decode__database_8h_source.html#l00045">DecodeSignal::factor</a>, <a class="el" href="signal__info_8h_source.html#l00028">SignalInfo::factor</a>, <a class="el" href="decode__database_8h_source.html#l00134">DecodeDatabase::frameIndexByKey</a>, <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>, <a class="el" href="decode__database_8h_source.html#l00133">DecodeDatabase::frames</a>, <a class="el" href="decode__database_8h_source.html#l00078">DecodeFrame::hasPgn</a>, <a class="el" href="frame__info_8h_source.html#l00029">FrameInfo::hasPgn</a>, <a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</a>, <a class="el" href="decode__database_8h_source.html#l00075">DecodeFrame::isExtended</a>, <a class="el" href="frame__info_8h_source.html#l00027">FrameInfo::isExtended</a>, <a class="el" href="signal__info_8h_source.html#l00026">SignalInfo::isLittleEndian</a>, <a class="el" href="signal__info_8h_source.html#l00027">SignalInfo::isSigned</a>, <a class="el" href="decode__database_8h_source.html#l00042">DecodeSignal::length</a>, <a class="el" href="signal__info_8h_source.html#l00025">SignalInfo::length</a>, <a class="el" href="decode__database_8h_source.html#l00048">DecodeSignal::maximum</a>, <a class="el" href="signal__info_8h_source.html#l00031">SignalInfo::maximum</a>, <a class="el" href="decode__database_8h_source.html#l00047">DecodeSignal::minimum</a>, <a class="el" href="signal__info_8h_source.html#l00030">SignalInfo::minimum</a>, <a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">Motorola</a>, <a class="el" href="decode__database_8h_source.html#l00040">DecodeSignal::name</a>, <a class="el" href="decode__database_8h_source.html#l00073">DecodeFrame::name</a>, <a class="el" href="frame__info_8h_source.html#l00025">FrameInfo::name</a>, <a class="el" href="signal__info_8h_source.html#l00023">SignalInfo::name</a>, <a class="el" href="decode__database_8h_source.html#l00046">DecodeSignal::offset</a>, <a class="el" href="signal__info_8h_source.html#l00029">SignalInfo::offset</a>, <a class="el" href="decode__database_8h_source.html#l00077">DecodeFrame::pgn</a>, <a class="el" href="frame__info_8h_source.html#l00028">FrameInfo::pgn</a>, <a class="el" href="decode__database_8h_source.html#l00050">DecodeSignal::receivers</a>, <a class="el" href="signal__info_8h_source.html#l00033">SignalInfo::receivers</a>, <a class="el" href="decode__database_8h_source.html#l00081">DecodeFrame::signals</a>, <a class="el" href="frame__info_8h_source.html#l00033">FrameInfo::signals</a>, <a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">Signed</a>, <a class="el" href="decode__database_8h_source.html#l00041">DecodeSignal::startBit</a>, <a class="el" href="signal__info_8h_source.html#l00024">SignalInfo::startBit</a>, <a class="el" href="decode__database_8h_source.html#l00079">DecodeFrame::transmitter</a>, <a class="el" href="frame__info_8h_source.html#l00031">FrameInfo::transmitter</a>, <a class="el" href="decode__database_8h_source.html#l00049">DecodeSignal::unit</a>, <a class="el" href="signal__info_8h_source.html#l00032">SignalInfo::unit</a>, <a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">Unsigned</a>, and <a class="el" href="decode__database_8h_source.html#l00044">DecodeSignal::valueType</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>.</p>
<p class="reference">References <a class="el" href="decode__database_8h_source.html#l00043">DecodeSignal::byteOrder</a>, <a class="el" href="decode__database_8h_source.html#l00074">DecodeFrame::canId</a>, <a class="el" href="frame__info_8h_source.html#l00026">FrameInfo::canId</a>, <a class="el" href="decode__database_8h_source.html#l00080">DecodeFrame::comment</a>, <a class="el" href="frame__info_8h_source.html#l00032">FrameInfo::comment</a>, <a class="el" href="decode__database_8h_source.html#l00076">DecodeFrame::dlc</a>, <a class="el" href="frame__info_8h_source.html#l00030">FrameInfo::dlc</a>, <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>, <a class="el" href="decode__database_8h_source.html#l00078">DecodeFrame::hasPgn</a>, <a class="el" href="frame__info_8h_source.html#l00029">FrameInfo::hasPgn</a>, <a class="el" href="decode__database_8h_source.html#l00075">DecodeFrame::isExtended</a>, <a class="el" href="frame__info_8h_source.html#l00027">FrameInfo::isExtended</a>, <a class="el" href="signal__info_8h_source.html#l00026">SignalInfo::isLittleEndian</a>, <a class="el" href="decode__database_8h_source.html#l00042">DecodeSignal::length</a>, <a class="el" href="signal__info_8h_source.html#l00025">SignalInfo::length</a>, <a class="el" href="decode__database_8h_source.html#l00040">DecodeSignal::name</a>, <a class="el" href="decode__database_8h_source.html#l00073">DecodeFrame::name</a>, <a class="el" href="frame__info_8h_source.html#l00025">FrameInfo::name</a>, <a class="el" href="signal__info_8h_source.html#l00023">SignalInfo::name</a>, <a class="el" href="decode__database_8h_source.html#l00077">DecodeFrame::pgn</a>, <a class="el" href="frame__info_8h_source.html#l00028">FrameInfo::pgn</a>, <a class="el" href="decode__database_8h_source.html#l00041">DecodeSignal::startBit</a>, <a class="el" href="signal__info_8h_source.html#l00024">SignalInfo::startBit</a>, <a class="el" href="decode__database_8h_source.html#l00079">DecodeFrame::transmitter</a>, and <a class="el" href="frame__info_8h_source.html#l00031">FrameInfo::transmitter</a>.</p>
</div>
</div>
@@ -106,9 +142,13 @@ Public Member Functions</h2></td></tr>
<li><a class="el" href="dbc__decode__builder_8cpp_source.html">dbc_decode_builder.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classDbcDecodeBuilder.html">DbcDecodeBuilder</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var classDbcDecodeBuilder =
[
[ "Build", "classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b", null ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Member List</title>
<title>DBC Framework: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcDecoder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">DbcDecoder Member List</div></div>
</div><!--header-->
@@ -52,15 +90,14 @@
<p>This is the complete list of members for <a class="el" href="classDbcDecoder.html">DbcDecoder</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">Decode</a>(const DecodeDatabase &amp;database, const RawCanFrame &amp;frame) const</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">ExtractIntel</a>(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">ExtractMotorola</a>(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">ExtractUnsigned</a>(const std::vector&lt; std::uint8_t &gt; &amp;data, const DecodeSignal &amp;signal, std::uint64_t &amp;value)</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">FindFrame</a>(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">SignExtend</a>(std::uint64_t value, std::uint32_t bitLength)</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">FindFrame</a>(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const</td><td class="entry"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: DbcDecoder Class Reference</title>
<title>DBC Framework: DbcDecoder Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,27 +35,56 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcDecoder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="classDbcDecoder-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">DbcDecoder Class Reference</div></div>
</div><!--header-->
@@ -66,219 +103,12 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a345951ffe5d943a70d3a1ea1f39e74f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDecodedFrameValue.html">DecodedFrameValue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">Decode</a> (const <a class="el" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;database, const <a class="el" href="structRawCanFrame.html">RawCanFrame</a> &amp;frame) const</td></tr>
<tr class="memdesc:a345951ffe5d943a70d3a1ea1f39e74f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decode one raw CAN frame. <a href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">More...</a><br /></td></tr>
<tr class="separator:a345951ffe5d943a70d3a1ea1f39e74f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-methods" name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:a2a8a99b1107543be6fd1b3f891130bf5"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">ExtractUnsigned</a> (const std::vector&lt; std::uint8_t &gt; &amp;data, const <a class="el" href="structDecodeSignal.html">DecodeSignal</a> &amp;signal, std::uint64_t &amp;value)</td></tr>
<tr class="separator:a2a8a99b1107543be6fd1b3f891130bf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba130165c1a73bb4cd3a0454f415d872"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">ExtractIntel</a> (const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</td></tr>
<tr class="separator:aba130165c1a73bb4cd3a0454f415d872"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aede690734148c3d538105d5a2f7ee0a9"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">ExtractMotorola</a> (const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</td></tr>
<tr class="separator:aede690734148c3d538105d5a2f7ee0a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41e89e343338088d27e46773fa52df42"><td class="memItemLeft" align="right" valign="top">static std::int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">SignExtend</a> (std::uint64_t value, std::uint32_t bitLength)</td></tr>
<tr class="separator:a41e89e343338088d27e46773fa52df42"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p >Runtime CAN decoder using prebuilt decode database. </p>
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8h_source.html#l00070">70</a> of file <a class="el" href="dbc__decoder_8h_source.html">dbc_decoder.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a345951ffe5d943a70d3a1ea1f39e74f7" name="a345951ffe5d943a70d3a1ea1f39e74f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a345951ffe5d943a70d3a1ea1f39e74f7">&#9670;&nbsp;</a></span>Decode()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDecodedFrameValue.html">DecodedFrameValue</a> DbcDecoder::Decode </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;&#160;</td>
<td class="paramname"><em>database</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structRawCanFrame.html">RawCanFrame</a> &amp;&#160;</td>
<td class="paramname"><em>frame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Decode one raw CAN frame. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">database</td><td>Runtime decode database. </td></tr>
<tr><td class="paramname">frame</td><td>Raw CAN frame. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Decoded frame value. </dd></dl>
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00031">31</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__decoder_8h_source.html#l00024">RawCanFrame::canId</a>, <a class="el" href="dbc__decoder_8h_source.html#l00026">RawCanFrame::data</a>, <a class="el" href="dbc__decoder_8h_source.html#l00039">DecodedSignalValue::definition</a>, <a class="el" href="dbc__decoder_8h_source.html#l00056">DecodedFrameValue::definition</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00070">ExtractUnsigned()</a>, <a class="el" href="decode__database_8h_source.html#l00045">DecodeSignal::factor</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00014">FindFrame()</a>, <a class="el" href="dbc__decoder_8h_source.html#l00025">RawCanFrame::isExtended</a>, <a class="el" href="decode__database_8h_source.html#l00042">DecodeSignal::length</a>, <a class="el" href="decode__database_8h_source.html#l00046">DecodeSignal::offset</a>, <a class="el" href="dbc__decoder_8h_source.html#l00041">DecodedSignalValue::physicalValue</a>, <a class="el" href="dbc__decoder_8h_source.html#l00040">DecodedSignalValue::rawValue</a>, <a class="el" href="dbc__decoder_8h_source.html#l00057">DecodedFrameValue::signals</a>, <a class="el" href="decode__database_8h_source.html#l00081">DecodeFrame::signals</a>, <a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">Signed</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00144">SignExtend()</a>, <a class="el" href="dbc__decoder_8h_source.html#l00042">DecodedSignalValue::valid</a>, <a class="el" href="dbc__decoder_8h_source.html#l00058">DecodedFrameValue::valid</a>, and <a class="el" href="decode__database_8h_source.html#l00044">DecodeSignal::valueType</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>.</p>
</div>
</div>
<a id="aba130165c1a73bb4cd3a0454f415d872" name="aba130165c1a73bb4cd3a0454f415d872"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba130165c1a73bb4cd3a0454f415d872">&#9670;&nbsp;</a></span>ExtractIntel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcDecoder::ExtractIntel </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; std::uint8_t &gt; &amp;&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>startBit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint64_t &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00082">82</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__decoder_8cpp_source.html#l00070">ExtractUnsigned()</a>.</p>
</div>
</div>
<a id="aede690734148c3d538105d5a2f7ee0a9" name="aede690734148c3d538105d5a2f7ee0a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aede690734148c3d538105d5a2f7ee0a9">&#9670;&nbsp;</a></span>ExtractMotorola()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcDecoder::ExtractMotorola </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; std::uint8_t &gt; &amp;&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>startBit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint64_t &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00105">105</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__decoder_8cpp_source.html#l00070">ExtractUnsigned()</a>.</p>
</div>
</div>
<a id="a2a8a99b1107543be6fd1b3f891130bf5" name="a2a8a99b1107543be6fd1b3f891130bf5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a8a99b1107543be6fd1b3f891130bf5">&#9670;&nbsp;</a></span>ExtractUnsigned()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcDecoder::ExtractUnsigned </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; std::uint8_t &gt; &amp;&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDecodeSignal.html">DecodeSignal</a> &amp;&#160;</td>
<td class="paramname"><em>signal</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint64_t &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00070">70</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">References <a class="el" href="decode__database_8h_source.html#l00043">DecodeSignal::byteOrder</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00082">ExtractIntel()</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00105">ExtractMotorola()</a>, <a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</a>, <a class="el" href="decode__database_8h_source.html#l00042">DecodeSignal::length</a>, and <a class="el" href="decode__database_8h_source.html#l00041">DecodeSignal::startBit</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__decoder_8cpp_source.html#l00031">Decode()</a>.</p>
</div>
</div>
<a id="ab2cfb2fb711c95d3a29365546b89f3da" name="ab2cfb2fb711c95d3a29365546b89f3da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2cfb2fb711c95d3a29365546b89f3da">&#9670;&nbsp;</a></span>FindFrame()</h2>
@@ -324,49 +154,49 @@ Static Private Member Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00014">14</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">References <a class="el" href="decode__database_8h_source.html#l00134">DecodeDatabase::frameIndexByKey</a>, and <a class="el" href="decode__database_8h_source.html#l00133">DecodeDatabase::frames</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__decoder_8cpp_source.html#l00031">Decode()</a>.</p>
</div>
</div>
<a id="a41e89e343338088d27e46773fa52df42" name="a41e89e343338088d27e46773fa52df42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41e89e343338088d27e46773fa52df42">&#9670;&nbsp;</a></span>SignExtend()</h2>
<a id="a345951ffe5d943a70d3a1ea1f39e74f7" name="a345951ffe5d943a70d3a1ea1f39e74f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a345951ffe5d943a70d3a1ea1f39e74f7">&#9670;&nbsp;</a></span>Decode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::int64_t DbcDecoder::SignExtend </td>
<td class="memname"><a class="el" href="structDecodedFrameValue.html">DecodedFrameValue</a> DbcDecoder::Decode </td>
<td>(</td>
<td class="paramtype">std::uint64_t&#160;</td>
<td class="paramname"><em>value</em>, </td>
<td class="paramtype">const <a class="el" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;&#160;</td>
<td class="paramname"><em>database</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>bitLength</em>&#160;</td>
<td class="paramtype">const <a class="el" href="structRawCanFrame.html">RawCanFrame</a> &amp;&#160;</td>
<td class="paramname"><em>frame</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00144">144</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p>Decode one raw CAN frame. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">database</td><td>Runtime decode database. </td></tr>
<tr><td class="paramname">frame</td><td>Raw CAN frame. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Decoded frame value. </dd></dl>
<p class="reference">Referenced by <a class="el" href="dbc__decoder_8cpp_source.html#l00031">Decode()</a>.</p>
<p class="definition">Definition at line <a class="el" href="dbc__decoder_8cpp_source.html#l00031">31</a> of file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__decoder_8h_source.html#l00024">RawCanFrame::canId</a>, <a class="el" href="dbc__decoder_8h_source.html#l00026">RawCanFrame::data</a>, <a class="el" href="dbc__decoder_8h_source.html#l00039">DecodedSignalValue::definition</a>, <a class="el" href="dbc__decoder_8h_source.html#l00056">DecodedFrameValue::definition</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00014">FindFrame()</a>, <a class="el" href="dbc__decoder_8h_source.html#l00025">RawCanFrame::isExtended</a>, <a class="el" href="dbc__decoder_8h_source.html#l00042">DecodedSignalValue::valid</a>, <a class="el" href="dbc__decoder_8h_source.html#l00058">DecodedFrameValue::valid</a>, and <a class="el" href="decode__database_8h_source.html#l00044">DecodeSignal::valueType</a>.</p>
</div>
</div>
@@ -375,9 +205,13 @@ Static Private Member Functions</h2></td></tr>
<li><a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classDbcDecoder.html">DbcDecoder</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var classDbcDecoder =
[
[ "FindFrame", "classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da", null ],
[ "Decode", "classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7", null ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Member List</title>
<title>DBC Framework: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcParser.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">DbcParser Member List</div></div>
</div><!--header-->
@@ -51,23 +89,14 @@
<p>This is the complete list of members for <a class="el" href="classDbcParser.html">DbcParser</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">FindFrameById</a>(DbcDatabase &amp;database, std::uint32_t canId, bool isExtended)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">FindSignalByName</a>(FrameInfo &amp;frame, const std::string &amp;signalName)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">IsCommentLine</a>(const std::string &amp;line)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">IsFrameLine</a>(const std::string &amp;line)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">IsSignalLine</a>(const std::string &amp;line)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a>(std::uint32_t rawCanId, std::uint32_t &amp;normalizedCanId, bool &amp;isExtended)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">ParseCommentLine</a>(const std::string &amp;line, DbcDatabase &amp;database)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">ParseFile</a>(const std::string &amp;filePath) const</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">ParseFrameLine</a>(const std::string &amp;line)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">ParseSignalLine</a>(const std::string &amp;line)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">SplitReceivers</a>(const std::string &amp;text)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">Trim</a>(const std::string &amp;text)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">TryExtractPgn</a>(std::uint32_t canId, bool isExtended, bool &amp;hasPgn)</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"><span class="mlabel">private</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">ParseFile</a>(const std::string &amp;filePath) const</td><td class="entry"><a class="el" href="classDbcParser.html">DbcParser</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: DbcParser Class Reference</title>
<title>DBC Framework: DbcParser Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,27 +35,56 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcParser.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="classDbcParser-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">DbcParser Class Reference</div></div>
</div><!--header-->
@@ -63,33 +100,6 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:aef72826942c9095d653fafa435855e56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDbcDatabase.html">DbcDatabase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">ParseFile</a> (const std::string &amp;filePath) const</td></tr>
<tr class="memdesc:aef72826942c9095d653fafa435855e56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parse DBC file. <a href="classDbcParser.html#aef72826942c9095d653fafa435855e56">More...</a><br /></td></tr>
<tr class="separator:aef72826942c9095d653fafa435855e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-methods" name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:ada086584d371c08dd93b75fb7965f13b"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">IsFrameLine</a> (const std::string &amp;line)</td></tr>
<tr class="separator:ada086584d371c08dd93b75fb7965f13b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace3d3432a55707bc286a994aa205fed1"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">IsSignalLine</a> (const std::string &amp;line)</td></tr>
<tr class="separator:ace3d3432a55707bc286a994aa205fed1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3488a0a6c64dc95e4ed289e77579feb"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">IsCommentLine</a> (const std::string &amp;line)</td></tr>
<tr class="separator:ae3488a0a6c64dc95e4ed289e77579feb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ae77c4c356af3d7b01a30044366f02b"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">Trim</a> (const std::string &amp;text)</td></tr>
<tr class="separator:a1ae77c4c356af3d7b01a30044366f02b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c1cc3c58f33473bf426a77b7a25c529"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">SplitReceivers</a> (const std::string &amp;text)</td></tr>
<tr class="separator:a0c1cc3c58f33473bf426a77b7a25c529"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a7e8fc517e40beab87a8a1dbad2b324"><td class="memItemLeft" align="right" valign="top">static std::uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">TryExtractPgn</a> (std::uint32_t canId, bool isExtended, bool &amp;hasPgn)</td></tr>
<tr class="separator:a8a7e8fc517e40beab87a8a1dbad2b324"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94d140d9442e4989b5b2ea7662c2debf"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a> (std::uint32_t rawCanId, std::uint32_t &amp;normalizedCanId, bool &amp;isExtended)</td></tr>
<tr class="separator:a94d140d9442e4989b5b2ea7662c2debf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d73bb1885e59aecd8202e93a7cd392a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structFrameInfo.html">FrameInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">ParseFrameLine</a> (const std::string &amp;line)</td></tr>
<tr class="separator:a6d73bb1885e59aecd8202e93a7cd392a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cbce88d08b1f72903ecf1bce41de5d2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structSignalInfo.html">SignalInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">ParseSignalLine</a> (const std::string &amp;line)</td></tr>
<tr class="separator:a4cbce88d08b1f72903ecf1bce41de5d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa662b34694fd8b3edd757f36cb064c5c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">ParseCommentLine</a> (const std::string &amp;line, <a class="el" href="structDbcDatabase.html">DbcDatabase</a> &amp;database)</td></tr>
<tr class="separator:aa662b34694fd8b3edd757f36cb064c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1fee32cb845573ce10949b4bec721f9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structFrameInfo.html">FrameInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">FindFrameById</a> (<a class="el" href="structDbcDatabase.html">DbcDatabase</a> &amp;database, std::uint32_t canId, bool isExtended)</td></tr>
<tr class="separator:ab1fee32cb845573ce10949b4bec721f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7b95be4433c56cc855bedb08b96a71a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structSignalInfo.html">SignalInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">FindSignalByName</a> (<a class="el" href="structFrameInfo.html">FrameInfo</a> &amp;frame, const std::string &amp;signalName)</td></tr>
<tr class="separator:ab7b95be4433c56cc855bedb08b96a71a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p >Minimal DBC parser. </p>
@@ -107,274 +117,6 @@ Static Private Member Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="dbc__parser_8h_source.html#l00035">35</a> of file <a class="el" href="dbc__parser_8h_source.html">dbc_parser.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="ab1fee32cb845573ce10949b4bec721f9" name="ab1fee32cb845573ce10949b4bec721f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1fee32cb845573ce10949b4bec721f9">&#9670;&nbsp;</a></span>FindFrameById()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structFrameInfo.html">FrameInfo</a> * DbcParser::FindFrameById </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDbcDatabase.html">DbcDatabase</a> &amp;&#160;</td>
<td class="paramname"><em>database</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>canId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>isExtended</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00337">337</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00274">ParseCommentLine()</a>.</p>
</div>
</div>
<a id="ab7b95be4433c56cc855bedb08b96a71a" name="ab7b95be4433c56cc855bedb08b96a71a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7b95be4433c56cc855bedb08b96a71a">&#9670;&nbsp;</a></span>FindSignalByName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structSignalInfo.html">SignalInfo</a> * DbcParser::FindSignalByName </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structFrameInfo.html">FrameInfo</a> &amp;&#160;</td>
<td class="paramname"><em>frame</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>signalName</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00349">349</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="frame__info_8h_source.html#l00033">FrameInfo::signals</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00274">ParseCommentLine()</a>.</p>
</div>
</div>
<a id="ae3488a0a6c64dc95e4ed289e77579feb" name="ae3488a0a6c64dc95e4ed289e77579feb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3488a0a6c64dc95e4ed289e77579feb">&#9670;&nbsp;</a></span>IsCommentLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcParser::IsCommentLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00079">79</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="ada086584d371c08dd93b75fb7965f13b" name="ada086584d371c08dd93b75fb7965f13b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada086584d371c08dd93b75fb7965f13b">&#9670;&nbsp;</a></span>IsFrameLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcParser::IsFrameLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00071">71</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="ace3d3432a55707bc286a994aa205fed1" name="ace3d3432a55707bc286a994aa205fed1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace3d3432a55707bc286a994aa205fed1">&#9670;&nbsp;</a></span>IsSignalLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool DbcParser::IsSignalLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00075">75</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="a94d140d9442e4989b5b2ea7662c2debf" name="a94d140d9442e4989b5b2ea7662c2debf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94d140d9442e4989b5b2ea7662c2debf">&#9670;&nbsp;</a></span>NormalizeCanId()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void DbcParser::NormalizeCanId </td>
<td>(</td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>rawCanId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::uint32_t &amp;&#160;</td>
<td class="paramname"><em>normalizedCanId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool &amp;&#160;</td>
<td class="paramname"><em>isExtended</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00101">101</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00274">ParseCommentLine()</a>, and <a class="el" href="dbc__parser_8cpp_source.html#l00142">ParseFrameLine()</a>.</p>
</div>
</div>
<a id="aa662b34694fd8b3edd757f36cb064c5c" name="aa662b34694fd8b3edd757f36cb064c5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa662b34694fd8b3edd757f36cb064c5c">&#9670;&nbsp;</a></span>ParseCommentLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void DbcParser::ParseCommentLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDbcDatabase.html">DbcDatabase</a> &amp;&#160;</td>
<td class="paramname"><em>database</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00274">274</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="frame__info_8h_source.html#l00032">FrameInfo::comment</a>, <a class="el" href="signal__info_8h_source.html#l00034">SignalInfo::comment</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00337">FindFrameById()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00349">FindSignalByName()</a>, and <a class="el" href="dbc__parser_8cpp_source.html#l00101">NormalizeCanId()</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="aef72826942c9095d653fafa435855e56" name="aef72826942c9095d653fafa435855e56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef72826942c9095d653fafa435855e56">&#9670;&nbsp;</a></span>ParseFile()</h2>
@@ -408,183 +150,7 @@ Static Private Member Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00040">40</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00079">IsCommentLine()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00071">IsFrameLine()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00075">IsSignalLine()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00274">ParseCommentLine()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00142">ParseFrameLine()</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00181">ParseSignalLine()</a>, <a class="el" href="frame__info_8h_source.html#l00033">FrameInfo::signals</a>, and <a class="el" href="dbc__parser_8cpp_source.html#l00083">Trim()</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>.</p>
</div>
</div>
<a id="a6d73bb1885e59aecd8202e93a7cd392a" name="a6d73bb1885e59aecd8202e93a7cd392a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d73bb1885e59aecd8202e93a7cd392a">&#9670;&nbsp;</a></span>ParseFrameLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structFrameInfo.html">FrameInfo</a> DbcParser::ParseFrameLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00142">142</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="frame__info_8h_source.html#l00026">FrameInfo::canId</a>, <a class="el" href="frame__info_8h_source.html#l00030">FrameInfo::dlc</a>, <a class="el" href="frame__info_8h_source.html#l00029">FrameInfo::hasPgn</a>, <a class="el" href="frame__info_8h_source.html#l00027">FrameInfo::isExtended</a>, <a class="el" href="frame__info_8h_source.html#l00025">FrameInfo::name</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00101">NormalizeCanId()</a>, <a class="el" href="frame__info_8h_source.html#l00028">FrameInfo::pgn</a>, <a class="el" href="frame__info_8h_source.html#l00031">FrameInfo::transmitter</a>, and <a class="el" href="dbc__parser_8cpp_source.html#l00118">TryExtractPgn()</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="a4cbce88d08b1f72903ecf1bce41de5d2" name="a4cbce88d08b1f72903ecf1bce41de5d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4cbce88d08b1f72903ecf1bce41de5d2">&#9670;&nbsp;</a></span>ParseSignalLine()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structSignalInfo.html">SignalInfo</a> DbcParser::ParseSignalLine </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00181">181</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="signal__info_8h_source.html#l00028">SignalInfo::factor</a>, <a class="el" href="signal__info_8h_source.html#l00026">SignalInfo::isLittleEndian</a>, <a class="el" href="signal__info_8h_source.html#l00027">SignalInfo::isSigned</a>, <a class="el" href="signal__info_8h_source.html#l00025">SignalInfo::length</a>, <a class="el" href="signal__info_8h_source.html#l00031">SignalInfo::maximum</a>, <a class="el" href="signal__info_8h_source.html#l00030">SignalInfo::minimum</a>, <a class="el" href="signal__info_8h_source.html#l00023">SignalInfo::name</a>, <a class="el" href="signal__info_8h_source.html#l00029">SignalInfo::offset</a>, <a class="el" href="signal__info_8h_source.html#l00033">SignalInfo::receivers</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00087">SplitReceivers()</a>, <a class="el" href="signal__info_8h_source.html#l00024">SignalInfo::startBit</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00025">anonymous_namespace{dbc_parser.cpp}::TrimText()</a>, and <a class="el" href="signal__info_8h_source.html#l00032">SignalInfo::unit</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="a0c1cc3c58f33473bf426a77b7a25c529" name="a0c1cc3c58f33473bf426a77b7a25c529"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c1cc3c58f33473bf426a77b7a25c529">&#9670;&nbsp;</a></span>SplitReceivers()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; std::string &gt; DbcParser::SplitReceivers </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>text</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00087">87</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__parser_8cpp_source.html#l00025">anonymous_namespace{dbc_parser.cpp}::TrimText()</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00181">ParseSignalLine()</a>.</p>
</div>
</div>
<a id="a1ae77c4c356af3d7b01a30044366f02b" name="a1ae77c4c356af3d7b01a30044366f02b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ae77c4c356af3d7b01a30044366f02b">&#9670;&nbsp;</a></span>Trim()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string DbcParser::Trim </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>text</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00083">83</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__parser_8cpp_source.html#l00025">anonymous_namespace{dbc_parser.cpp}::TrimText()</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00040">ParseFile()</a>.</p>
</div>
</div>
<a id="a8a7e8fc517e40beab87a8a1dbad2b324" name="a8a7e8fc517e40beab87a8a1dbad2b324"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a7e8fc517e40beab87a8a1dbad2b324">&#9670;&nbsp;</a></span>TryExtractPgn()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::uint32_t DbcParser::TryExtractPgn </td>
<td>(</td>
<td class="paramtype">std::uint32_t&#160;</td>
<td class="paramname"><em>canId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>isExtended</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool &amp;&#160;</td>
<td class="paramname"><em>hasPgn</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="dbc__parser_8cpp_source.html#l00118">118</a> of file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
<p class="reference">Referenced by <a class="el" href="dbc__parser_8cpp_source.html#l00142">ParseFrameLine()</a>.</p>
<p class="reference">References <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>.</p>
</div>
</div>
@@ -593,9 +159,13 @@ Static Private Member Functions</h2></td></tr>
<li><a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classDbcParser.html">DbcParser</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var classDbcParser =
[
[ "ParseFile", "classDbcParser.html#aef72826942c9095d653fafa435855e56", null ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Member List</title>
<title>DBC Framework: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcTreeBuilder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">DbcTreeBuilder Member List</div></div>
</div><!--header-->
@@ -53,9 +91,12 @@
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b">Build</a>(const DbcDatabase &amp;database) const</td><td class="entry"><a class="el" href="classDbcTreeBuilder.html">DbcTreeBuilder</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: DbcTreeBuilder Class Reference</title>
<title>DBC Framework: DbcTreeBuilder Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classDbcTreeBuilder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
@@ -95,9 +133,7 @@ Public Member Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="dbc__tree__builder_8cpp_source.html#l00014">14</a> of file <a class="el" href="dbc__tree__builder_8cpp_source.html">dbc_tree_builder.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>, and <a class="el" href="frame__info_8h_source.html#l00033">FrameInfo::signals</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>.</p>
<p class="reference">References <a class="el" href="dbc__database_8h_source.html#l00023">DbcDatabase::frames</a>.</p>
</div>
</div>
@@ -106,9 +142,13 @@ Public Member Functions</h2></td></tr>
<li><a class="el" href="dbc__tree__builder_8cpp_source.html">dbc_tree_builder.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classDbcTreeBuilder.html">DbcTreeBuilder</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var classDbcTreeBuilder =
[
[ "Build", "classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b", null ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Member List</title>
<title>DBC Framework: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classTreeNode.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">TreeNode Member List</div></div>
</div><!--header-->
@@ -59,23 +97,21 @@
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18">GetName</a>() const</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1">GetSignal</a>() const</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9">GetType</a>() const</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351">m_children</a></td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2">m_frame</a></td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8">m_name</a></td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386">m_signal</a></td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224">m_type</a></td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa">operator=</a>(const TreeNode &amp;)=delete</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a88fbcbec9c64d888b19c5edb95059a95">operator=</a>(TreeNode &amp;&amp;)=default</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d">TreeNode</a>()</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc">TreeNode</a>(const FrameInfo &amp;frame)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae">TreeNode</a>(const SignalInfo &amp;signal)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a4d3054a033accf3e38ea132002fc35ff">TreeNode</a>(const TreeNode &amp;)=delete</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#a35724af755b5d0c43de40a723ef81ec1">TreeNode</a>(TreeNode &amp;&amp;)=default</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570">~TreeNode</a>()=default</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const TreeNode &amp;)=delete (defined in <a class="el" href="classTreeNode.html">TreeNode</a>)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(TreeNode &amp;&amp;)=default (defined in <a class="el" href="classTreeNode.html">TreeNode</a>)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d">TreeNode</a>()</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc">TreeNode</a>(const FrameInfo &amp;frame)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae">TreeNode</a>(const SignalInfo &amp;signal)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>TreeNode</b>(const TreeNode &amp;)=delete (defined in <a class="el" href="classTreeNode.html">TreeNode</a>)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>TreeNode</b>(TreeNode &amp;&amp;)=default (defined in <a class="el" href="classTreeNode.html">TreeNode</a>)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~TreeNode</b>()=default (defined in <a class="el" href="classTreeNode.html">TreeNode</a>)</td><td class="entry"><a class="el" href="classTreeNode.html">TreeNode</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: TreeNode Class Reference</title>
<title>DBC Framework: TreeNode Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,27 +35,56 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classTreeNode.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classTreeNode-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">TreeNode Class Reference</div></div>
</div><!--header-->
@@ -69,15 +106,17 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:ab9f00f5253d56461bb2d420fd639c5ae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae">TreeNode</a> (const <a class="el" href="structSignalInfo.html">SignalInfo</a> &amp;signal)</td></tr>
<tr class="memdesc:ab9f00f5253d56461bb2d420fd639c5ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create signal node. <a href="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae">More...</a><br /></td></tr>
<tr class="separator:ab9f00f5253d56461bb2d420fd639c5ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89eb1eb0e25fccaa83c780b85f95b570"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570">~TreeNode</a> ()=default</td></tr>
<tr class="separator:a89eb1eb0e25fccaa83c780b85f95b570"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d3054a033accf3e38ea132002fc35ff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a4d3054a033accf3e38ea132002fc35ff">TreeNode</a> (const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;)=delete</td></tr>
<tr class="memitem:a4d3054a033accf3e38ea132002fc35ff"><td class="memItemLeft" align="right" valign="top"><a id="a4d3054a033accf3e38ea132002fc35ff" name="a4d3054a033accf3e38ea132002fc35ff"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>TreeNode</b> (const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;)=delete</td></tr>
<tr class="separator:a4d3054a033accf3e38ea132002fc35ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6ce97dcf532b452d520452b6d000daa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa">operator=</a> (const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;)=delete</td></tr>
<tr class="memitem:ad6ce97dcf532b452d520452b6d000daa"><td class="memItemLeft" align="right" valign="top"><a id="ad6ce97dcf532b452d520452b6d000daa" name="ad6ce97dcf532b452d520452b6d000daa"></a>
<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;)=delete</td></tr>
<tr class="separator:ad6ce97dcf532b452d520452b6d000daa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35724af755b5d0c43de40a723ef81ec1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a35724af755b5d0c43de40a723ef81ec1">TreeNode</a> (<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;)=default</td></tr>
<tr class="memitem:a35724af755b5d0c43de40a723ef81ec1"><td class="memItemLeft" align="right" valign="top"><a id="a35724af755b5d0c43de40a723ef81ec1" name="a35724af755b5d0c43de40a723ef81ec1"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>TreeNode</b> (<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a35724af755b5d0c43de40a723ef81ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88fbcbec9c64d888b19c5edb95059a95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a88fbcbec9c64d888b19c5edb95059a95">operator=</a> (<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;)=default</td></tr>
<tr class="memitem:a88fbcbec9c64d888b19c5edb95059a95"><td class="memItemLeft" align="right" valign="top"><a id="a88fbcbec9c64d888b19c5edb95059a95" name="a88fbcbec9c64d888b19c5edb95059a95"></a>
<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a88fbcbec9c64d888b19c5edb95059a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6161f2ebb92184eab4215d121870e788"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a6161f2ebb92184eab4215d121870e788">AddChild</a> (std::unique_ptr&lt; <a class="el" href="classTreeNode.html">TreeNode</a> &gt; child)</td></tr>
<tr class="memdesc:a6161f2ebb92184eab4215d121870e788"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add child node. <a href="classTreeNode.html#a6161f2ebb92184eab4215d121870e788">More...</a><br /></td></tr>
@@ -103,19 +142,6 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a226518612d0d00b5988a2c44fc21d3f1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structSignalInfo.html">SignalInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1">GetSignal</a> () const</td></tr>
<tr class="memdesc:a226518612d0d00b5988a2c44fc21d3f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get signal payload if node is signal. <a href="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1">More...</a><br /></td></tr>
<tr class="separator:a226518612d0d00b5988a2c44fc21d3f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a04bccab9e60a6a78777cd7dfec52d224"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16">NodeType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224">m_type</a></td></tr>
<tr class="separator:a04bccab9e60a6a78777cd7dfec52d224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0ddcb8370e6b51e2d3de6b8211a47f8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8">m_name</a></td></tr>
<tr class="separator:ac0ddcb8370e6b51e2d3de6b8211a47f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bd61f40df6d36e61021063e3816a351"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classTreeNode.html">TreeNode</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351">m_children</a></td></tr>
<tr class="separator:a1bd61f40df6d36e61021063e3816a351"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77ee6aa80774d67ba442a66b45c798c2"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="structFrameInfo.html">FrameInfo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2">m_frame</a></td></tr>
<tr class="separator:a77ee6aa80774d67ba442a66b45c798c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae658355007bc9303f7bfae3bb3ec8386"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="structSignalInfo.html">SignalInfo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386">m_signal</a></td></tr>
<tr class="separator:ae658355007bc9303f7bfae3bb3ec8386"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p >Tree node for later use in model/view or other hierarchy consumers. </p>
@@ -123,7 +149,7 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00035">35</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a984a98d5ccf7ef1f5a18094c6821f35d" name="a984a98d5ccf7ef1f5a18094c6821f35d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a984a98d5ccf7ef1f5a18094c6821f35d">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[1/5]</span></h2>
<h2 class="memtitle"><span class="permalink"><a href="#a984a98d5ccf7ef1f5a18094c6821f35d">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -141,12 +167,10 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00014">14</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad">Root</a>.</p>
</div>
</div>
<a id="a8e38dd591d8801d7ee3a7dbad90c67fc" name="a8e38dd591d8801d7ee3a7dbad90c67fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e38dd591d8801d7ee3a7dbad90c67fc">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[2/5]</span></h2>
<h2 class="memtitle"><span class="permalink"><a href="#a8e38dd591d8801d7ee3a7dbad90c67fc">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -179,12 +203,10 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00022">22</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a">Frame</a>.</p>
</div>
</div>
<a id="ab9f00f5253d56461bb2d420fd639c5ae" name="ab9f00f5253d56461bb2d420fd639c5ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9f00f5253d56461bb2d420fd639c5ae">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[3/5]</span></h2>
<h2 class="memtitle"><span class="permalink"><a href="#ab9f00f5253d56461bb2d420fd639c5ae">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -217,85 +239,6 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00030">30</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398">Signal</a>.</p>
</div>
</div>
<a id="a89eb1eb0e25fccaa83c780b85f95b570" name="a89eb1eb0e25fccaa83c780b85f95b570"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89eb1eb0e25fccaa83c780b85f95b570">&#9670;&nbsp;</a></span>~TreeNode()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TreeNode::~TreeNode </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4d3054a033accf3e38ea132002fc35ff" name="a4d3054a033accf3e38ea132002fc35ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d3054a033accf3e38ea132002fc35ff">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[4/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TreeNode::TreeNode </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a35724af755b5d0c43de40a723ef81ec1" name="a35724af755b5d0c43de40a723ef81ec1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35724af755b5d0c43de40a723ef81ec1">&#9670;&nbsp;</a></span>TreeNode() <span class="overload">[5/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">TreeNode::TreeNode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
@@ -325,43 +268,32 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00038">38</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00115">m_children</a>.</p>
</div>
</div>
<a id="a81047bd7d2a4cc96b9ef5e20d0d63b5f" name="a81047bd7d2a4cc96b9ef5e20d0d63b5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81047bd7d2a4cc96b9ef5e20d0d63b5f">&#9670;&nbsp;</a></span>GetChild() <span class="overload">[1/2]</span></h2>
<a id="abdd82460187dca8d3e5d66f5d5c529ea" name="abdd82460187dca8d3e5d66f5d5c529ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdd82460187dca8d3e5d66f5d5c529ea">&#9670;&nbsp;</a></span>GetChildCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classTreeNode.html">TreeNode</a> * TreeNode::GetChild </td>
<td class="memname">std::size_t TreeNode::GetChildCount </td>
<td>(</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get mutable child by index. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">index</td><td>Child index. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Child pointer or nullptr if index is invalid. </dd></dl>
<p>Get child count. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of children. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00054">54</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00115">m_children</a>.</p>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00043">43</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
</div>
</div>
<a id="a4727ff801a2d1b9323c5ae50a35457a6" name="a4727ff801a2d1b9323c5ae50a35457a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4727ff801a2d1b9323c5ae50a35457a6">&#9670;&nbsp;</a></span>GetChild() <span class="overload">[2/2]</span></h2>
<h2 class="memtitle"><span class="permalink"><a href="#a4727ff801a2d1b9323c5ae50a35457a6">&#9670;&nbsp;</a></span>GetChild() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -387,113 +319,34 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00047">47</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00115">m_children</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="abdd82460187dca8d3e5d66f5d5c529ea" name="abdd82460187dca8d3e5d66f5d5c529ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdd82460187dca8d3e5d66f5d5c529ea">&#9670;&nbsp;</a></span>GetChildCount()</h2>
<a id="a81047bd7d2a4cc96b9ef5e20d0d63b5f" name="a81047bd7d2a4cc96b9ef5e20d0d63b5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81047bd7d2a4cc96b9ef5e20d0d63b5f">&#9670;&nbsp;</a></span>GetChild() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::size_t TreeNode::GetChildCount </td>
<td class="memname"><a class="el" href="classTreeNode.html">TreeNode</a> * TreeNode::GetChild </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get child count. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of children. </dd></dl>
<p>Get mutable child by index. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">index</td><td>Child index. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Child pointer or nullptr if index is invalid. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00043">43</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00115">m_children</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="afc503b40004764163605d6dbdb4ef811" name="afc503b40004764163605d6dbdb4ef811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc503b40004764163605d6dbdb4ef811">&#9670;&nbsp;</a></span>GetFrame()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structFrameInfo.html">FrameInfo</a> * TreeNode::GetFrame </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get frame payload if node is frame. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to frame info or nullptr. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00069">69</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00116">m_frame</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="aaac5b8d9dc9e5ae1f367d1adbcf20e18" name="aaac5b8d9dc9e5ae1f367d1adbcf20e18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaac5b8d9dc9e5ae1f367d1adbcf20e18">&#9670;&nbsp;</a></span>GetName()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::string &amp; TreeNode::GetName </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get display name. </p>
<dl class="section return"><dt>Returns</dt><dd>Node name. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00065">65</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00114">m_name</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="a226518612d0d00b5988a2c44fc21d3f1" name="a226518612d0d00b5988a2c44fc21d3f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a226518612d0d00b5988a2c44fc21d3f1">&#9670;&nbsp;</a></span>GetSignal()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structSignalInfo.html">SignalInfo</a> * TreeNode::GetSignal </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get signal payload if node is signal. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to signal info or nullptr. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00073">73</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00117">m_signal</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00054">54</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
</div>
</div>
@@ -517,192 +370,71 @@ Private Attributes</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00061">61</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
<p class="reference">References <a class="el" href="tree__node_8h_source.html#l00113">m_type</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="ad6ce97dcf532b452d520452b6d000daa" name="ad6ce97dcf532b452d520452b6d000daa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6ce97dcf532b452d520452b6d000daa">&#9670;&nbsp;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<a id="aaac5b8d9dc9e5ae1f367d1adbcf20e18" name="aaac5b8d9dc9e5ae1f367d1adbcf20e18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaac5b8d9dc9e5ae1f367d1adbcf20e18">&#9670;&nbsp;</a></span>GetName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classTreeNode.html">TreeNode</a> &amp; TreeNode::operator= </td>
<td class="memname">const std::string &amp; TreeNode::GetName </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classTreeNode.html">TreeNode</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get display name. </p>
<dl class="section return"><dt>Returns</dt><dd>Node name. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00065">65</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
</div>
</div>
<a id="a88fbcbec9c64d888b19c5edb95059a95" name="a88fbcbec9c64d888b19c5edb95059a95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88fbcbec9c64d888b19c5edb95059a95">&#9670;&nbsp;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<a id="afc503b40004764163605d6dbdb4ef811" name="afc503b40004764163605d6dbdb4ef811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc503b40004764163605d6dbdb4ef811">&#9670;&nbsp;</a></span>GetFrame()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classTreeNode.html">TreeNode</a> &amp; TreeNode::operator= </td>
<td class="memname">const <a class="el" href="structFrameInfo.html">FrameInfo</a> * TreeNode::GetFrame </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classTreeNode.html">TreeNode</a> &amp;&amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get frame payload if node is frame. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to frame info or nullptr. </dd></dl>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00069">69</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a1bd61f40df6d36e61021063e3816a351" name="a1bd61f40df6d36e61021063e3816a351"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bd61f40df6d36e61021063e3816a351">&#9670;&nbsp;</a></span>m_children</h2>
<a id="a226518612d0d00b5988a2c44fc21d3f1" name="a226518612d0d00b5988a2c44fc21d3f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a226518612d0d00b5988a2c44fc21d3f1">&#9670;&nbsp;</a></span>GetSignal()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::unique_ptr&lt;<a class="el" href="classTreeNode.html">TreeNode</a>&gt; &gt; TreeNode::m_children</td>
<td class="memname">const <a class="el" href="structSignalInfo.html">SignalInfo</a> * TreeNode::GetSignal </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00115">115</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
<p>Get signal payload if node is signal. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to signal info or nullptr. </dd></dl>
<p class="reference">Referenced by <a class="el" href="tree__node_8cpp_source.html#l00038">AddChild()</a>, <a class="el" href="tree__node_8cpp_source.html#l00047">GetChild()</a>, and <a class="el" href="tree__node_8cpp_source.html#l00043">GetChildCount()</a>.</p>
</div>
</div>
<a id="a77ee6aa80774d67ba442a66b45c798c2" name="a77ee6aa80774d67ba442a66b45c798c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77ee6aa80774d67ba442a66b45c798c2">&#9670;&nbsp;</a></span>m_frame</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;<a class="el" href="structFrameInfo.html">FrameInfo</a>&gt; TreeNode::m_frame</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00116">116</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="tree__node_8cpp_source.html#l00069">GetFrame()</a>.</p>
</div>
</div>
<a id="ac0ddcb8370e6b51e2d3de6b8211a47f8" name="ac0ddcb8370e6b51e2d3de6b8211a47f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0ddcb8370e6b51e2d3de6b8211a47f8">&#9670;&nbsp;</a></span>m_name</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string TreeNode::m_name</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00114">114</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="tree__node_8cpp_source.html#l00065">GetName()</a>.</p>
</div>
</div>
<a id="ae658355007bc9303f7bfae3bb3ec8386" name="ae658355007bc9303f7bfae3bb3ec8386"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae658355007bc9303f7bfae3bb3ec8386">&#9670;&nbsp;</a></span>m_signal</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;<a class="el" href="structSignalInfo.html">SignalInfo</a>&gt; TreeNode::m_signal</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00117">117</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="tree__node_8cpp_source.html#l00073">GetSignal()</a>.</p>
</div>
</div>
<a id="a04bccab9e60a6a78777cd7dfec52d224" name="a04bccab9e60a6a78777cd7dfec52d224"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04bccab9e60a6a78777cd7dfec52d224">&#9670;&nbsp;</a></span>m_type</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16">NodeType</a> TreeNode::m_type</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="tree__node_8h_source.html#l00113">113</a> of file <a class="el" href="tree__node_8h_source.html">tree_node.h</a>.</p>
<p class="reference">Referenced by <a class="el" href="tree__node_8cpp_source.html#l00061">GetType()</a>.</p>
<p class="definition">Definition at line <a class="el" href="tree__node_8cpp_source.html#l00073">73</a> of file <a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a>.</p>
</div>
</div>
@@ -711,9 +443,13 @@ Private Attributes</h2></td></tr>
<li><a class="el" href="tree__node_8cpp_source.html">tree_node.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classTreeNode.html">TreeNode</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,14 @@
var classTreeNode =
[
[ "TreeNode", "classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d", null ],
[ "TreeNode", "classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc", null ],
[ "TreeNode", "classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae", null ],
[ "AddChild", "classTreeNode.html#a6161f2ebb92184eab4215d121870e788", null ],
[ "GetChildCount", "classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea", null ],
[ "GetChild", "classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6", null ],
[ "GetChild", "classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f", null ],
[ "GetType", "classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9", null ],
[ "GetName", "classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18", null ],
[ "GetFrame", "classTreeNode.html#afc503b40004764163605d6dbdb4ef811", null ],
[ "GetSignal", "classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1", null ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Class Index</title>
<title>DBC Framework: Class Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,23 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li class="current"><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classes.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">Class Index</div></div>
</div><!--header-->
@@ -67,9 +105,12 @@
<dd><a class="el" href="classTreeNode.html">TreeNode</a></dd></dl>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

Binary file not shown.

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_database.h File Reference</title>
<title>DBC Framework: dbc_database.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__database_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -69,9 +108,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="dbc__database_8h_source.html">dbc_database.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__database_8h.html">dbc_database.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var dbc__database_8h =
[
[ "DbcDatabase", "structDbcDatabase.html", "structDbcDatabase" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_database.h Source File</title>
<title>DBC Framework: dbc_database.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,49 +35,67 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__database_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_database.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__database_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_database.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__database_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DBC_DATABASE_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DBC_DATABASE_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &quot;<a class="code" href="frame__info_8h.html">frame_info.h</a>&quot;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment"></span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment">/**</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> * @brief Parsed DBC content stored in a simple internal form.</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> */</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="structDbcDatabase.html"> 22</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> {</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b"> 23</a></span> std::vector&lt;FrameInfo&gt; <a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>; <span class="comment">/**&lt; All frames found in the DBC file. */</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b"> 23</a></span> std::vector&lt;FrameInfo&gt; <a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>; </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>};</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="preprocessor">#endif </span><span class="comment">/* DBC_DATABASE_H */</span><span class="preprocessor"></span></div>
@@ -77,9 +103,13 @@
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDbcDatabase_html_a2cade5d0234ee816132127542f8c612b"><div class="ttname"><a href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase::frames</a></div><div class="ttdeci">std::vector&lt; FrameInfo &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00023">dbc_database.h:23</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__database_8h.html">dbc_database.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decode_builder.cpp File Reference</title>
<title>DBC Framework: dbc_decode_builder.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decode__builder_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decode_builder.cpp File Reference</div></div>
</div><!--header-->
@@ -59,9 +98,13 @@
<p class="definition">Definition in file <a class="el" href="dbc__decode__builder_8cpp_source.html">dbc_decode_builder.cpp</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decode__builder_8cpp.html">dbc_decode_builder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decode_builder.cpp Source File</title>
<title>DBC Framework: dbc_decode_builder.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decode__builder_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decode_builder.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__decode__builder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_decode_builder.cpp</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__decode__builder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__decode__builder_8h.html">dbc_decode_builder.h</a>&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b"> 14</a></span><a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> <a class="code hl_function" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">DbcDecodeBuilder::Build</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;source)<span class="keyword"> const </span>{</div>
@@ -76,15 +105,15 @@
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">transmitter</a> = sourceFrame.<a class="code hl_variable" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">transmitter</a>;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">comment</a> = sourceFrame.<a class="code hl_variable" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">comment</a>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; sourceFrame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>.size(); ++signalIndex) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">const</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> &amp;sourceSignal = sourceFrame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>[signalIndex];</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; sourceFrame.signals.size(); ++signalIndex) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">const</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> &amp;sourceSignal = sourceFrame.signals[signalIndex];</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> targetSignal;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">name</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#a379e422a00cad56f896cacf60455b088">name</a>;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#ace290724f9801521609aedaa946d61f1">startBit</a>;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa">length</a>;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">isLittleEndian</a> ? <a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">ByteOrder::Intel</a> : <a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">ByteOrder::Motorola</a>;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f">isSigned</a> ? <a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">ValueType::Signed</a> : <a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">ValueType::Unsigned</a>;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">isLittleEndian</a> ? ByteOrder::Intel : ByteOrder::Motorola;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f">isSigned</a> ? ValueType::Signed : ValueType::Unsigned;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">factor</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">factor</a>;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">offset</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e">offset</a>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">minimum</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b">minimum</a>;</div>
@@ -93,32 +122,25 @@
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa">receivers</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3">receivers</a>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> targetSignal.<a class="code hl_variable" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">comment</a> = sourceSignal.<a class="code hl_variable" href="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5">comment</a>;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">signals</a>.push_back (targetSignal);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> targetFrame.signals.push_back (targetSignal);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> }</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> result.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>.push_back (targetFrame);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> result.<a class="code hl_variable" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">frameIndexByKey</a>[<a class="code hl_struct" href="structFrameKey.html">FrameKey</a> (targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">canId</a>, targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">isExtended</a>)] =</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> result.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>.size() - 1U;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> result.frames.push_back (targetFrame);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> result.frameIndexByKey[<a class="code hl_struct" href="structFrameKey.html">FrameKey</a> (targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">canId</a>, targetFrame.<a class="code hl_variable" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">isExtended</a>)] =</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> result.frames.size() - 1U;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> }</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>}</div>
<div class="ttc" id="aclassDbcDecodeBuilder_html_a2bc6386dfb5e58976c42e22c19ec471b"><div class="ttname"><a href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">DbcDecodeBuilder::Build</a></div><div class="ttdeci">DecodeDatabase Build(const DbcDatabase &amp;source) const</div><div class="ttdoc">Build runtime decode database.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decode__builder_8cpp_source.html#l00014">dbc_decode_builder.cpp:14</a></div></div>
<div class="ttc" id="adbc__decode__builder_8h_html"><div class="ttname"><a href="dbc__decode__builder_8h.html">dbc_decode_builder.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">ByteOrder::Motorola</a></div><div class="ttdeci">@ Motorola</div></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">ByteOrder::Intel</a></div><div class="ttdeci">@ Intel</div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">ValueType::Signed</a></div><div class="ttdeci">@ Signed</div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">ValueType::Unsigned</a></div><div class="ttdeci">@ Unsigned</div></div>
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDbcDatabase_html_a2cade5d0234ee816132127542f8c612b"><div class="ttname"><a href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase::frames</a></div><div class="ttdeci">std::vector&lt; FrameInfo &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00023">dbc_database.h:23</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_a2bd4ddfc2602c1de4e12a373bfc93072"><div class="ttname"><a href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase::frames</a></div><div class="ttdeci">std::vector&lt; DecodeFrame &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00133">decode_database.h:133</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_ae4fd1351008bb0dce337821a849100c5"><div class="ttname"><a href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">DecodeDatabase::frameIndexByKey</a></div><div class="ttdeci">std::unordered_map&lt; FrameKey, std::size_t, FrameKeyHasher &gt; frameIndexByKey</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00134">decode_database.h:134</a></div></div>
<div class="ttc" id="astructDecodeFrame_html"><div class="ttname"><a href="structDecodeFrame.html">DecodeFrame</a></div><div class="ttdoc">Runtime-ready frame definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00072">decode_database.h:72</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a1d3c54055c0cbceb73adf551f7067f23"><div class="ttname"><a href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">DecodeFrame::pgn</a></div><div class="ttdeci">std::uint32_t pgn</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00077">decode_database.h:77</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a2551102670c4a540fced4c71da0b369d"><div class="ttname"><a href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d">DecodeFrame::hasPgn</a></div><div class="ttdeci">bool hasPgn</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00078">decode_database.h:78</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a25819ef907a32391af5c9f7cae9cdb22"><div class="ttname"><a href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">DecodeFrame::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00080">decode_database.h:80</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a372afd9e74f1ae33f85cb4acfd3e2036"><div class="ttname"><a href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">DecodeFrame::signals</a></div><div class="ttdeci">std::vector&lt; DecodeSignal &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00081">decode_database.h:81</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a3ee2348d781f8f15aaf87e8dcf57ec41"><div class="ttname"><a href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00075">decode_database.h:75</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a51111ac13988be372d5673d12cf3e060"><div class="ttname"><a href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060">DecodeFrame::dlc</a></div><div class="ttdeci">std::uint8_t dlc</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00076">decode_database.h:76</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a52e10215388db7df8b541b9d9909edcf"><div class="ttname"><a href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00074">decode_database.h:74</a></div></div>
@@ -141,7 +163,6 @@
<div class="ttc" id="astructFrameInfo_html_a34b726afaad2ac5c697fdb2ac070cdaf"><div class="ttname"><a href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00027">frame_info.h:27</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a4737a5420213ad4304724e39f3a4e55d"><div class="ttname"><a href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">FrameInfo::hasPgn</a></div><div class="ttdeci">bool hasPgn</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00029">frame_info.h:29</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a92749ec3798d4211a505860fb389a9e8"><div class="ttname"><a href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">FrameInfo::transmitter</a></div><div class="ttdeci">std::string transmitter</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00031">frame_info.h:31</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a942937027f1af06536f98cc23b2bf6ce"><div class="ttname"><a href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo::signals</a></div><div class="ttdeci">std::vector&lt; SignalInfo &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00033">frame_info.h:33</a></div></div>
<div class="ttc" id="astructFrameInfo_html_aa2b198ea0f55e560c123d35e7b3ecab9"><div class="ttname"><a href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">FrameInfo::dlc</a></div><div class="ttdeci">std::uint8_t dlc</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00030">frame_info.h:30</a></div></div>
<div class="ttc" id="astructFrameInfo_html_abb53a7f93ed7abc0ea1ae4a8ccafcdcb"><div class="ttname"><a href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">FrameInfo::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00025">frame_info.h:25</a></div></div>
<div class="ttc" id="astructFrameInfo_html_ace75121294f9d89b762080ab5643293c"><div class="ttname"><a href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">FrameInfo::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00032">frame_info.h:32</a></div></div>
@@ -162,9 +183,13 @@
<div class="ttc" id="astructSignalInfo_html_ae4f78d99a2750aa564d7eba860171499"><div class="ttname"><a href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">SignalInfo::factor</a></div><div class="ttdeci">double factor</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00028">signal_info.h:28</a></div></div>
<div class="ttc" id="astructSignalInfo_html_af363b1563fb4c7cc8973f9a80c06846c"><div class="ttname"><a href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">SignalInfo::isLittleEndian</a></div><div class="ttdeci">bool isLittleEndian</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00026">signal_info.h:26</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decode__builder_8cpp.html">dbc_decode_builder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decode_builder.h File Reference</title>
<title>DBC Framework: dbc_decode_builder.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decode__builder_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -69,9 +108,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="dbc__decode__builder_8h_source.html">dbc_decode_builder.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decode__builder_8h.html">dbc_decode_builder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var dbc__decode__builder_8h =
[
[ "DbcDecodeBuilder", "classDbcDecodeBuilder.html", "classDbcDecodeBuilder" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decode_builder.h Source File</title>
<title>DBC Framework: dbc_decode_builder.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,53 +35,66 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decode__builder_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decode_builder.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__decode__builder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_decode_builder.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__decode__builder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DBC_DECODE_BUILDER_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DBC_DECODE_BUILDER_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__database_8h.html">dbc_database.h</a>&quot;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &quot;<a class="code" href="decode__database_8h.html">decode_database.h</a>&quot;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"></span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment">/**</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"> * @brief Converts parsed DBC data into runtime decode database.</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> */</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="classDbcDecodeBuilder.html"> 21</a></span><span class="keyword">class </span><a class="code hl_class" href="classDbcDecodeBuilder.html">DbcDecodeBuilder</a> {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> * @brief Build runtime decode database.</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> * @param source Parsed DBC database.</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * @return Runtime-ready decode database.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> */</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> <a class="code hl_function" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">Build</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;source) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>};</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
@@ -85,9 +106,13 @@
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decode__builder_8h.html">dbc_decode_builder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decoder.cpp File Reference</title>
<title>DBC Framework: dbc_decoder.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decoder_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decoder.cpp File Reference</div></div>
</div><!--header-->
@@ -59,9 +98,13 @@
<p class="definition">Definition in file <a class="el" href="dbc__decoder_8cpp_source.html">dbc_decoder.cpp</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decoder_8cpp.html">dbc_decoder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decoder.cpp Source File</title>
<title>DBC Framework: dbc_decoder.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decoder_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decoder.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__decoder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_decoder.cpp</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__decoder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__decoder_8h.html">dbc_decoder.h</a>&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da"> 14</a></span><span class="keyword">const</span> <a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a> *<a class="code hl_function" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">DbcDecoder::FindFrame</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;database,</div>
@@ -65,16 +94,16 @@
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">bool</span> isExtended)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keyword">const</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> key (canId, isExtended);</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">const</span> std::unordered_map&lt;FrameKey, std::size_t, FrameKeyHasher&gt;::const_iterator it =</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> database.<a class="code hl_variable" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">frameIndexByKey</a>.find (key);</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> database.frameIndexByKey.find (key);</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">if</span> (it == database.<a class="code hl_variable" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">frameIndexByKey</a>.end())</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">if</span> (it == database.frameIndexByKey.end())</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">const</span> std::size_t index = it-&gt;second;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">if</span> (index &gt;= database.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>.size())</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">if</span> (index &gt;= database.frames.size())</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">return</span> &amp;database.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>[index];</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">return</span> &amp;database.frames[index];</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>}</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"> 31</a></span><a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> <a class="code hl_function" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">DbcDecoder::Decode</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;database,</div>
@@ -88,21 +117,21 @@
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> result.<a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a> = definition;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> result.<a class="code hl_variable" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">valid</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; definition-&gt;<a class="code hl_variable" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">signals</a>.size(); ++signalIndex) {</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> &amp;signal = definition-&gt;<a class="code hl_variable" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">signals</a>[signalIndex];</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; definition-&gt;signals.size(); ++signalIndex) {</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> &amp;signal = definition-&gt;signals[signalIndex];</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <a class="code hl_struct" href="structDecodedSignalValue.html">DecodedSignalValue</a> decoded;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> std::uint64_t unsignedValue = 0U;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">definition</a> = &amp;signal;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">if</span> (!<a class="code hl_function" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">ExtractUnsigned</a> (frame.<a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>, signal, unsignedValue)) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">if</span> (!ExtractUnsigned (frame.<a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>, signal, unsignedValue)) {</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> result.<a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>.push_back (decoded);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> result.signals.push_back (decoded);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> }</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">if</span> (signal.<a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> == <a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">ValueType::Signed</a>)</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a> = <a class="code hl_function" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">SignExtend</a> (unsignedValue, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">if</span> (signal.<a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> == ValueType::Signed)</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a> = SignExtend (unsignedValue, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a> = <span class="keyword">static_cast&lt;</span>std::int64_t<span class="keyword">&gt;</span> (unsignedValue);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
@@ -110,25 +139,25 @@
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> (<span class="keyword">static_cast&lt;</span><span class="keywordtype">double</span><span class="keyword">&gt;</span> (decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a>) * signal.<a class="code hl_variable" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">factor</a>) + signal.<a class="code hl_variable" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">offset</a>;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> decoded.<a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> result.<a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>.push_back (decoded);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> result.signals.push_back (decoded);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> }</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>}</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5"> 70</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">DbcDecoder::ExtractUnsigned</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="keywordtype">bool</span> DbcDecoder::ExtractUnsigned (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> &amp;signal,</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> std::uint64_t &amp;value) {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">if</span> ((signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a> == 0U) || (signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a> &gt; 64U))</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (signal.<a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> == <a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">ByteOrder::Intel</a>)</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> <a class="code hl_function" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">ExtractIntel</a> (data, signal.<a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>, value);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (signal.<a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> == ByteOrder::Intel)</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> ExtractIntel (data, signal.<a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>, value);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> <a class="code hl_function" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">ExtractMotorola</a> (data, signal.<a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>, value);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> ExtractMotorola (data, signal.<a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>, signal.<a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>, value);</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span>}</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872"> 82</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">DbcDecoder::ExtractIntel</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="keywordtype">bool</span> DbcDecoder::ExtractIntel (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> std::uint32_t startBit,</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> std::uint32_t length,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> std::uint64_t &amp;value) {</div>
@@ -151,7 +180,7 @@
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span>}</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9"> 105</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">DbcDecoder::ExtractMotorola</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span><span class="keywordtype">bool</span> DbcDecoder::ExtractMotorola (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> std::uint32_t startBit,</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> std::uint32_t length,</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> std::uint64_t &amp;value) {</div>
@@ -190,7 +219,7 @@
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span>}</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> </div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"><a class="line" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42"> 144</a></span>std::int64_t <a class="code hl_function" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">DbcDecoder::SignExtend</a> (std::uint64_t value, std::uint32_t bitLength) {</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span>std::int64_t DbcDecoder::SignExtend (std::uint64_t value, std::uint32_t bitLength) {</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> ((bitLength == 0U) || (bitLength &gt;= 64U))</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>std::int64_t<span class="keyword">&gt;</span> (value);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
@@ -204,20 +233,11 @@
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>std::int64_t<span class="keyword">&gt;</span> (value | (~valueMask));</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span>}</div>
<div class="ttc" id="aclassDbcDecoder_html_a2a8a99b1107543be6fd1b3f891130bf5"><div class="ttname"><a href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">DbcDecoder::ExtractUnsigned</a></div><div class="ttdeci">static bool ExtractUnsigned(const std::vector&lt; std::uint8_t &gt; &amp;data, const DecodeSignal &amp;signal, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00070">dbc_decoder.cpp:70</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_a345951ffe5d943a70d3a1ea1f39e74f7"><div class="ttname"><a href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">DbcDecoder::Decode</a></div><div class="ttdeci">DecodedFrameValue Decode(const DecodeDatabase &amp;database, const RawCanFrame &amp;frame) const</div><div class="ttdoc">Decode one raw CAN frame.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00031">dbc_decoder.cpp:31</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_a41e89e343338088d27e46773fa52df42"><div class="ttname"><a href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">DbcDecoder::SignExtend</a></div><div class="ttdeci">static std::int64_t SignExtend(std::uint64_t value, std::uint32_t bitLength)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00144">dbc_decoder.cpp:144</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_ab2cfb2fb711c95d3a29365546b89f3da"><div class="ttname"><a href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">DbcDecoder::FindFrame</a></div><div class="ttdeci">const DecodeFrame * FindFrame(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const</div><div class="ttdoc">Find frame definition by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00014">dbc_decoder.cpp:14</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_aba130165c1a73bb4cd3a0454f415d872"><div class="ttname"><a href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">DbcDecoder::ExtractIntel</a></div><div class="ttdeci">static bool ExtractIntel(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00082">dbc_decoder.cpp:82</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_aede690734148c3d538105d5a2f7ee0a9"><div class="ttname"><a href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">DbcDecoder::ExtractMotorola</a></div><div class="ttdeci">static bool ExtractMotorola(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00105">dbc_decoder.cpp:105</a></div></div>
<div class="ttc" id="adbc__decoder_8h_html"><div class="ttname"><a href="dbc__decoder_8h.html">dbc_decoder.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">ByteOrder::Intel</a></div><div class="ttdeci">@ Intel</div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">ValueType::Signed</a></div><div class="ttdeci">@ Signed</div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_a2bd4ddfc2602c1de4e12a373bfc93072"><div class="ttname"><a href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase::frames</a></div><div class="ttdeci">std::vector&lt; DecodeFrame &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00133">decode_database.h:133</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_ae4fd1351008bb0dce337821a849100c5"><div class="ttname"><a href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">DecodeDatabase::frameIndexByKey</a></div><div class="ttdeci">std::unordered_map&lt; FrameKey, std::size_t, FrameKeyHasher &gt; frameIndexByKey</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00134">decode_database.h:134</a></div></div>
<div class="ttc" id="astructDecodeFrame_html"><div class="ttname"><a href="structDecodeFrame.html">DecodeFrame</a></div><div class="ttdoc">Runtime-ready frame definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00072">decode_database.h:72</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a372afd9e74f1ae33f85cb4acfd3e2036"><div class="ttname"><a href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">DecodeFrame::signals</a></div><div class="ttdeci">std::vector&lt; DecodeSignal &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00081">decode_database.h:81</a></div></div>
<div class="ttc" id="astructDecodeSignal_html"><div class="ttname"><a href="structDecodeSignal.html">DecodeSignal</a></div><div class="ttdoc">Runtime-ready signal definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00039">decode_database.h:39</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a428c39913a366a8476dd291061354391"><div class="ttname"><a href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">DecodeSignal::factor</a></div><div class="ttdeci">double factor</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00045">decode_database.h:45</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a92db637af4e224a0ae70173050dc3f74"><div class="ttname"><a href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">DecodeSignal::offset</a></div><div class="ttdeci">double offset</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00046">decode_database.h:46</a></div></div>
@@ -228,7 +248,6 @@
<div class="ttc" id="astructDecodedFrameValue_html"><div class="ttname"><a href="structDecodedFrameValue.html">DecodedFrameValue</a></div><div class="ttdoc">Fully decoded frame.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00055">dbc_decoder.h:55</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a4f51c31110dba1f73a763c596372beb0"><div class="ttname"><a href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">DecodedFrameValue::valid</a></div><div class="ttdeci">bool valid</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00058">dbc_decoder.h:58</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a60dda1cc352d2c8087f0bdbc81dd266c"><div class="ttname"><a href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">DecodedFrameValue::definition</a></div><div class="ttdeci">const DecodeFrame * definition</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00056">dbc_decoder.h:56</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a8440e0e5d7953102095b029f522022d3"><div class="ttname"><a href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">DecodedFrameValue::signals</a></div><div class="ttdeci">std::vector&lt; DecodedSignalValue &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00057">dbc_decoder.h:57</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html"><div class="ttname"><a href="structDecodedSignalValue.html">DecodedSignalValue</a></div><div class="ttdoc">One decoded signal value.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00038">dbc_decoder.h:38</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a5138b825940e34689f7b3891627ee9ec"><div class="ttname"><a href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">DecodedSignalValue::rawValue</a></div><div class="ttdeci">std::int64_t rawValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00040">dbc_decoder.h:40</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a6847d05b3cb00d5e0f6c611968f57978"><div class="ttname"><a href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">DecodedSignalValue::physicalValue</a></div><div class="ttdeci">double physicalValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00041">dbc_decoder.h:41</a></div></div>
@@ -240,9 +259,13 @@
<div class="ttc" id="astructRawCanFrame_html_a2d0e7fa0e3d5c20bbed55ed8f7888ff4"><div class="ttname"><a href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00024">dbc_decoder.h:24</a></div></div>
<div class="ttc" id="astructRawCanFrame_html_a462193d275adc1dba8bd18ffa0e36bb7"><div class="ttname"><a href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00025">dbc_decoder.h:25</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decoder_8cpp.html">dbc_decoder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decoder.h File Reference</title>
<title>DBC Framework: dbc_decoder.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decoder_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -79,9 +118,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="dbc__decoder_8h_source.html">dbc_decoder.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decoder_8h.html">dbc_decoder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,7 @@
var dbc__decoder_8h =
[
[ "RawCanFrame", "structRawCanFrame.html", "structRawCanFrame" ],
[ "DecodedSignalValue", "structDecodedSignalValue.html", "structDecodedSignalValue" ],
[ "DecodedFrameValue", "structDecodedFrameValue.html", "structDecodedFrameValue" ],
[ "DbcDecoder", "classDbcDecoder.html", "classDbcDecoder" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_decoder.h Source File</title>
<title>DBC Framework: dbc_decoder.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__decoder_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_decoder.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__decoder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_decoder.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__decoder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DBC_DECODER_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DBC_DECODER_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
@@ -65,129 +94,97 @@
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &quot;<a class="code" href="decode__database_8h.html">decode_database.h</a>&quot;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"></span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment">/**</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * @brief Raw CAN frame used for runtime or trace decoding.</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> */</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="structRawCanFrame.html"> 23</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structRawCanFrame.html">RawCanFrame</a> {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4"> 24</a></span> std::uint32_t <a class="code hl_variable" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">canId</a>; <span class="comment">/**&lt; Normalized CAN ID. */</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7"> 25</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">isExtended</a>; <span class="comment">/**&lt; true for extended frame. */</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"> 26</a></span> std::vector&lt;std::uint8_t&gt; <a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>; <span class="comment">/**&lt; Payload bytes. */</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7"> 28</a></span> <a class="code hl_function" href="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7">RawCanFrame</a>()</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4"> 24</a></span> std::uint32_t <a class="code hl_variable" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">canId</a>; </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7"> 25</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">isExtended</a>; </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"> 26</a></span> std::vector&lt;std::uint8_t&gt; <a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>; </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_struct" href="structRawCanFrame.html">RawCanFrame</a>()</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> : <a class="code hl_variable" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">canId</a> (0U)</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> , <a class="code hl_variable" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">isExtended</a> (false)</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> , <a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>() {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> }</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>};</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment"></span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">/**</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment"> * @brief One decoded signal value.</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment"> */</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html"> 38</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDecodedSignalValue.html">DecodedSignalValue</a> {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7"> 39</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> *<a class="code hl_variable" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">definition</a>; <span class="comment">/**&lt; Signal definition. */</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec"> 40</a></span> std::int64_t <a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a>; <span class="comment">/**&lt; Extracted raw integer value. */</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"> 41</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">physicalValue</a>; <span class="comment">/**&lt; Converted physical value. */</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686"> 42</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a>; <span class="comment">/**&lt; true if decoding succeeded. */</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf"> 44</a></span> <a class="code hl_function" href="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf">DecodedSignalValue</a>()</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7"> 39</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> *<a class="code hl_variable" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">definition</a>; </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec"> 40</a></span> std::int64_t <a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a>; </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"> 41</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">physicalValue</a>; </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686"> 42</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a>; </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <a class="code hl_struct" href="structDecodedSignalValue.html">DecodedSignalValue</a>()</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> : <a class="code hl_variable" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">definition</a> (nullptr)</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> , <a class="code hl_variable" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">rawValue</a> (0)</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> , <a class="code hl_variable" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">physicalValue</a> (0.0)</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> , <a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a> (false) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>};</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="comment"></span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="comment">/**</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="comment"> * @brief Fully decoded frame.</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="comment"> */</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html"> 55</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> {</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c"> 56</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a> *<a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a>; <span class="comment">/**&lt; Frame definition. */</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3"> 57</a></span> std::vector&lt;DecodedSignalValue&gt; <a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>; <span class="comment">/**&lt; Decoded signal values. */</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0"> 58</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">valid</a>; <span class="comment">/**&lt; true if frame was matched. */</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b"> 60</a></span> <a class="code hl_function" href="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b">DecodedFrameValue</a>()</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c"> 56</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a> *<a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a>; </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8"> 57</a></span> std::vector&lt;DecodedSignalValue&gt; signals; </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0"> 58</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">valid</a>; </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a>()</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> : <a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a> (nullptr)</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> , <a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>()</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> , signals()</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> , <a class="code hl_variable" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">valid</a> (false) {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span>};</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="comment"></span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="comment">/**</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span><span class="comment"> * @brief Runtime CAN decoder using prebuilt decode database.</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="comment"> */</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="classDbcDecoder.html"> 70</a></span><span class="keyword">class </span><a class="code hl_class" href="classDbcDecoder.html">DbcDecoder</a> {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="comment"> * @brief Find frame definition by CAN ID.</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span><span class="comment"> * @param database Runtime decode database.</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="comment"> * @param canId Normalized CAN ID.</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><span class="comment"> * @param isExtended true for extended frame.</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="comment"> * @return Pointer to frame definition or nullptr.</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="comment"> */</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a> *<a class="code hl_function" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">FindFrame</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;database,</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> std::uint32_t canId,</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">bool</span> isExtended) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="comment"></span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span><span class="comment"> * @brief Decode one raw CAN frame.</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span><span class="comment"> * @param database Runtime decode database.</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span><span class="comment"> * @param frame Raw CAN frame.</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span><span class="comment"> * @return Decoded frame value.</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="comment"> */</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> <a class="code hl_function" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">Decode</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> &amp;database,</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keyword">const</span> <a class="code hl_struct" href="structRawCanFrame.html">RawCanFrame</a> &amp;frame) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">ExtractUnsigned</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> ExtractUnsigned (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> &amp;signal,</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> std::uint64_t &amp;value);</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">ExtractIntel</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> ExtractIntel (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> std::uint32_t startBit,</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> std::uint32_t length,</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> std::uint64_t &amp;value);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">ExtractMotorola</a> (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> ExtractMotorola (<span class="keyword">const</span> std::vector&lt;std::uint8_t&gt; &amp;data,</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> std::uint32_t startBit,</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> std::uint32_t length,</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> std::uint64_t &amp;value);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keyword">static</span> std::int64_t <a class="code hl_function" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">SignExtend</a> (std::uint64_t value, std::uint32_t bitLength);</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keyword">static</span> std::int64_t SignExtend (std::uint64_t value, std::uint32_t bitLength);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>};</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="preprocessor">#endif </span><span class="comment">/* DBC_DECODER_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="aclassDbcDecoder_html"><div class="ttname"><a href="classDbcDecoder.html">DbcDecoder</a></div><div class="ttdoc">Runtime CAN decoder using prebuilt decode database.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00070">dbc_decoder.h:70</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_a2a8a99b1107543be6fd1b3f891130bf5"><div class="ttname"><a href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">DbcDecoder::ExtractUnsigned</a></div><div class="ttdeci">static bool ExtractUnsigned(const std::vector&lt; std::uint8_t &gt; &amp;data, const DecodeSignal &amp;signal, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00070">dbc_decoder.cpp:70</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_a345951ffe5d943a70d3a1ea1f39e74f7"><div class="ttname"><a href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">DbcDecoder::Decode</a></div><div class="ttdeci">DecodedFrameValue Decode(const DecodeDatabase &amp;database, const RawCanFrame &amp;frame) const</div><div class="ttdoc">Decode one raw CAN frame.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00031">dbc_decoder.cpp:31</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_a41e89e343338088d27e46773fa52df42"><div class="ttname"><a href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">DbcDecoder::SignExtend</a></div><div class="ttdeci">static std::int64_t SignExtend(std::uint64_t value, std::uint32_t bitLength)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00144">dbc_decoder.cpp:144</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_ab2cfb2fb711c95d3a29365546b89f3da"><div class="ttname"><a href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">DbcDecoder::FindFrame</a></div><div class="ttdeci">const DecodeFrame * FindFrame(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const</div><div class="ttdoc">Find frame definition by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00014">dbc_decoder.cpp:14</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_aba130165c1a73bb4cd3a0454f415d872"><div class="ttname"><a href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">DbcDecoder::ExtractIntel</a></div><div class="ttdeci">static bool ExtractIntel(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00082">dbc_decoder.cpp:82</a></div></div>
<div class="ttc" id="aclassDbcDecoder_html_aede690734148c3d538105d5a2f7ee0a9"><div class="ttname"><a href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">DbcDecoder::ExtractMotorola</a></div><div class="ttdeci">static bool ExtractMotorola(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8cpp_source.html#l00105">dbc_decoder.cpp:105</a></div></div>
<div class="ttc" id="adecode__database_8h_html"><div class="ttname"><a href="decode__database_8h.html">decode_database.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
<div class="ttc" id="astructDecodeFrame_html"><div class="ttname"><a href="structDecodeFrame.html">DecodeFrame</a></div><div class="ttdoc">Runtime-ready frame definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00072">decode_database.h:72</a></div></div>
<div class="ttc" id="astructDecodeSignal_html"><div class="ttname"><a href="structDecodeSignal.html">DecodeSignal</a></div><div class="ttdoc">Runtime-ready signal definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00039">decode_database.h:39</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html"><div class="ttname"><a href="structDecodedFrameValue.html">DecodedFrameValue</a></div><div class="ttdoc">Fully decoded frame.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00055">dbc_decoder.h:55</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a19f754bb84e67e6ae71ea93b9ae6382b"><div class="ttname"><a href="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b">DecodedFrameValue::DecodedFrameValue</a></div><div class="ttdeci">DecodedFrameValue()</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00060">dbc_decoder.h:60</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a4f51c31110dba1f73a763c596372beb0"><div class="ttname"><a href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">DecodedFrameValue::valid</a></div><div class="ttdeci">bool valid</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00058">dbc_decoder.h:58</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a60dda1cc352d2c8087f0bdbc81dd266c"><div class="ttname"><a href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">DecodedFrameValue::definition</a></div><div class="ttdeci">const DecodeFrame * definition</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00056">dbc_decoder.h:56</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a8440e0e5d7953102095b029f522022d3"><div class="ttname"><a href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">DecodedFrameValue::signals</a></div><div class="ttdeci">std::vector&lt; DecodedSignalValue &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00057">dbc_decoder.h:57</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html"><div class="ttname"><a href="structDecodedSignalValue.html">DecodedSignalValue</a></div><div class="ttdoc">One decoded signal value.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00038">dbc_decoder.h:38</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a1481b122a7ce5a618012b1133c6adedf"><div class="ttname"><a href="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf">DecodedSignalValue::DecodedSignalValue</a></div><div class="ttdeci">DecodedSignalValue()</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00044">dbc_decoder.h:44</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a5138b825940e34689f7b3891627ee9ec"><div class="ttname"><a href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">DecodedSignalValue::rawValue</a></div><div class="ttdeci">std::int64_t rawValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00040">dbc_decoder.h:40</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a6847d05b3cb00d5e0f6c611968f57978"><div class="ttname"><a href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">DecodedSignalValue::physicalValue</a></div><div class="ttdeci">double physicalValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00041">dbc_decoder.h:41</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_aac0ed361af545cde48d0e6f41a859686"><div class="ttname"><a href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">DecodedSignalValue::valid</a></div><div class="ttdeci">bool valid</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00042">dbc_decoder.h:42</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_acadc3b3bb21dd6b0412d342c7e6b20d7"><div class="ttname"><a href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">DecodedSignalValue::definition</a></div><div class="ttdeci">const DecodeSignal * definition</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00039">dbc_decoder.h:39</a></div></div>
<div class="ttc" id="astructRawCanFrame_html"><div class="ttname"><a href="structRawCanFrame.html">RawCanFrame</a></div><div class="ttdoc">Raw CAN frame used for runtime or trace decoding.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00023">dbc_decoder.h:23</a></div></div>
<div class="ttc" id="astructRawCanFrame_html_a0acb487612104c99c9907344c035df83"><div class="ttname"><a href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">RawCanFrame::data</a></div><div class="ttdeci">std::vector&lt; std::uint8_t &gt; data</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00026">dbc_decoder.h:26</a></div></div>
<div class="ttc" id="astructRawCanFrame_html_a17d18b39bed45e69f4e17ae2838f07f7"><div class="ttname"><a href="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7">RawCanFrame::RawCanFrame</a></div><div class="ttdeci">RawCanFrame()</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00028">dbc_decoder.h:28</a></div></div>
<div class="ttc" id="astructRawCanFrame_html_a2d0e7fa0e3d5c20bbed55ed8f7888ff4"><div class="ttname"><a href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00024">dbc_decoder.h:24</a></div></div>
<div class="ttc" id="astructRawCanFrame_html_a462193d275adc1dba8bd18ffa0e36bb7"><div class="ttname"><a href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00025">dbc_decoder.h:25</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__decoder_8h.html">dbc_decoder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_parser.cpp File Reference</title>
<title>DBC Framework: dbc_parser.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,26 +35,54 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__parser_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">dbc_parser.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
@@ -60,27 +96,19 @@
<code>#include &lt;cctype&gt;</code><br />
</div>
<p><a href="dbc__parser_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespaceanonymous__namespace_02dbc__parser_8cpp_03"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html">anonymous_namespace{dbc_parser.cpp}</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a5850f07ce5f4e5c4f3bf385ebcfcebbb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">anonymous_namespace{dbc_parser.cpp}::TrimText</a> (const std::string &amp;text)</td></tr>
<tr class="memdesc:a5850f07ce5f4e5c4f3bf385ebcfcebbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove leading and trailing spaces. <a href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">More...</a><br /></td></tr>
<tr class="separator:a5850f07ce5f4e5c4f3bf385ebcfcebbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p >Created: 2026-03-13 Author: Deeaitch (Dim. Himro) </p>
<p >Licensed under the MIT License. See LICENSE file in the project root for full license text. </p>
<p class="definition">Definition in file <a class="el" href="dbc__parser_8cpp_source.html">dbc_parser.cpp</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__parser_8cpp.html">dbc_parser.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_parser.cpp Source File</title>
<title>DBC Framework: dbc_parser.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__parser_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_parser.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__parser_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_parser.cpp</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__parser_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__parser_8h.html">dbc_parser.h</a>&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
@@ -65,13 +94,8 @@
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;stdexcept&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;cctype&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html"> 19</a></span><span class="keyword">namespace </span>{<span class="comment"></span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * @brief Remove leading and trailing spaces.</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * @param text Input text.</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> * @return Trimmed text.</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> */</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb"> 25</a></span> std::string <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keyword">namespace </span>{</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> std::string TrimText (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> std::string::size_type begin = 0U;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">while</span> ((begin &lt; text.size()) &amp;&amp;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> std::isspace (<span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span><span class="keyword">&gt;</span> (text[begin])))</div>
@@ -96,50 +120,50 @@
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> std::string line;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">while</span> (std::getline (input, line)) {</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> line = <a class="code hl_function" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">Trim</a> (line);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> line = Trim (line);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span> (line.empty())</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">IsFrameLine</a> (line)) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> frame = <a class="code hl_function" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">ParseFrameLine</a> (line);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (IsFrameLine (line)) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> frame = ParseFrameLine (line);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> database.<a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>.push_back (frame);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> currentFrame = &amp;database.<a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>.back();</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">IsSignalLine</a> (line)) {</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsSignalLine (line)) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">if</span> (currentFrame == <span class="keyword">nullptr</span>)</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">throw</span> std::runtime_error (<span class="stringliteral">&quot;Signal found before any frame definition.&quot;</span>);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> signal = <a class="code hl_function" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">ParseSignalLine</a> (line);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> currentFrame-&gt;<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>.push_back (signal);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">IsCommentLine</a> (line))</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_function" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">ParseCommentLine</a> (line, database);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> signal = ParseSignalLine (line);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> currentFrame-&gt;signals.push_back (signal);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsCommentLine (line))</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> ParseCommentLine (line, database);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> }</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span> database;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>}</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b"> 71</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">DbcParser::IsFrameLine</a> (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="keywordtype">bool</span> DbcParser::IsFrameLine (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">return</span> (line.size() &gt;= 4U) &amp;&amp; (line.compare (0U, 4U, <span class="stringliteral">&quot;BO_ &quot;</span>) == 0);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>}</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1"> 75</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">DbcParser::IsSignalLine</a> (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="keywordtype">bool</span> DbcParser::IsSignalLine (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span> (line.size() &gt;= 4U) &amp;&amp; (line.compare (0U, 4U, <span class="stringliteral">&quot;SG_ &quot;</span>) == 0);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span>}</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb"> 79</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">DbcParser::IsCommentLine</a> (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span><span class="keywordtype">bool</span> DbcParser::IsCommentLine (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">return</span> (line.size() &gt;= 4U) &amp;&amp; (line.compare (0U, 4U, <span class="stringliteral">&quot;CM_ &quot;</span>) == 0);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span>}</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b"> 83</a></span>std::string <a class="code hl_function" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">DbcParser::Trim</a> (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (text);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span>std::string DbcParser::Trim (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> TrimText (text);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529"> 87</a></span>std::vector&lt;std::string&gt; <a class="code hl_function" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">DbcParser::SplitReceivers</a> (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>std::vector&lt;std::string&gt; DbcParser::SplitReceivers (<span class="keyword">const</span> std::string &amp;text) {</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> std::vector&lt;std::string&gt; receivers;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> std::string token;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> std::istringstream stream (text);</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">while</span> (std::getline (stream, token, <span class="charliteral">&#39;,&#39;</span>)) {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> token = <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (token);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> token = TrimText (token);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">if</span> (!token.empty())</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> receivers.push_back (token);</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> }</div>
@@ -147,7 +171,7 @@
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">return</span> receivers;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span>}</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf"> 101</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">DbcParser::NormalizeCanId</a> (std::uint32_t rawCanId,</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><span class="keywordtype">void</span> DbcParser::NormalizeCanId (std::uint32_t rawCanId,</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> std::uint32_t &amp;normalizedCanId,</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">bool</span> &amp;isExtended) {</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/*</span></div>
@@ -164,7 +188,7 @@
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> }</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>}</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324"> 118</a></span>std::uint32_t <a class="code hl_function" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">DbcParser::TryExtractPgn</a> (std::uint32_t canId, <span class="keywordtype">bool</span> isExtended, <span class="keywordtype">bool</span> &amp;hasPgn) {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span>std::uint32_t DbcParser::TryExtractPgn (std::uint32_t canId, <span class="keywordtype">bool</span> isExtended, <span class="keywordtype">bool</span> &amp;hasPgn) {</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> hasPgn = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> </div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span> (!isExtended)</div>
@@ -188,7 +212,7 @@
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">return</span> pgn;</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span>}</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"><a class="line" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a"> 142</a></span><a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> <a class="code hl_function" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">DbcParser::ParseFrameLine</a> (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span><a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> DbcParser::ParseFrameLine (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="comment">/*</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span><span class="comment"> * Example:</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="comment"> * BO_ 256 EngineData: 8 EEC1</span></div>
@@ -204,7 +228,7 @@
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">throw</span> std::runtime_error (<span class="stringliteral">&quot;Invalid frame line: &quot;</span> + line);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> stream &gt;&gt; rawCanId;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <a class="code hl_function" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a> (rawCanId, frame.<a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>);</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> NormalizeCanId (rawCanId, frame.<a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>);</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> stream &gt;&gt; token;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">if</span> (token.empty())</div>
@@ -222,12 +246,12 @@
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> }</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> </div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> stream &gt;&gt; frame.<a class="code hl_variable" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">transmitter</a>;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> frame.<a class="code hl_variable" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">pgn</a> = <a class="code hl_function" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">TryExtractPgn</a> (frame.<a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">hasPgn</a>);</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> frame.<a class="code hl_variable" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">pgn</a> = TryExtractPgn (frame.<a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>, frame.<a class="code hl_variable" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">hasPgn</a>);</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">return</span> frame;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span>}</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"><a class="line" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2"> 181</a></span><a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> <a class="code hl_function" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">DbcParser::ParseSignalLine</a> (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span><a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> DbcParser::ParseSignalLine (<span class="keyword">const</span> std::string &amp;line) {</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="comment">/*</span></div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span><span class="comment"> * Example:</span></div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span><span class="comment"> * SG_ EngineSpeed : 0|16@1+ (0.125,0) [0|8000] &quot;rpm&quot; ECU1,ECU2</span></div>
@@ -235,7 +259,7 @@
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> signal;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> std::string work = <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (line);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> std::string work = TrimText (line);</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">if</span> (work.compare (0U, 4U, <span class="stringliteral">&quot;SG_ &quot;</span>) != 0)</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">throw</span> std::runtime_error (<span class="stringliteral">&quot;Invalid signal line: &quot;</span> + line);</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
@@ -245,8 +269,8 @@
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">if</span> (colonPos == std::string::npos)</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">throw</span> std::runtime_error (<span class="stringliteral">&quot;Signal line missing &#39;:&#39; : &quot;</span> + line);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a379e422a00cad56f896cacf60455b088">name</a> = <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (work.substr (0U, colonPos));</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> std::string rest = <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (work.substr (colonPos + 1U));</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a379e422a00cad56f896cacf60455b088">name</a> = TrimText (work.substr (0U, colonPos));</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> std::string rest = TrimText (work.substr (colonPos + 1U));</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> </div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="keyword">const</span> std::string::size_type pipePos = rest.find (<span class="charliteral">&#39;|&#39;</span>);</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <span class="keyword">const</span> std::string::size_type atPos = rest.find (<span class="charliteral">&#39;@&#39;</span>);</div>
@@ -274,11 +298,11 @@
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">throw</span> std::runtime_error (<span class="stringliteral">&quot;Unsupported signal syntax: &quot;</span> + line);</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> </div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> signal.<a class="code hl_variable" href="structSignalInfo.html#ace290724f9801521609aedaa946d61f1">startBit</a> = <span class="keyword">static_cast&lt;</span>std::uint32_t<span class="keyword">&gt;</span> (</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> std::stoul (<a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (0U, pipePos)))</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> std::stoul (TrimText (rest.substr (0U, pipePos)))</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> );</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> </div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa">length</a> = <span class="keyword">static_cast&lt;</span>std::uint32_t<span class="keyword">&gt;</span> (</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> std::stoul (<a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (pipePos + 1U, atPos - pipePos - 1U)))</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> std::stoul (TrimText (rest.substr (pipePos + 1U, atPos - pipePos - 1U)))</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> );</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> </div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> {</div>
@@ -295,32 +319,32 @@
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> }</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> </div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> signal.<a class="code hl_variable" href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">factor</a> = std::stod (</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (factorBegin + 1U, factorComma - factorBegin - 1U))</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> TrimText (rest.substr (factorBegin + 1U, factorComma - factorBegin - 1U))</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> );</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> </div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> signal.<a class="code hl_variable" href="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e">offset</a> = std::stod (</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (factorComma + 1U, factorEnd - factorComma - 1U))</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> TrimText (rest.substr (factorComma + 1U, factorEnd - factorComma - 1U))</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> );</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> </div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> signal.<a class="code hl_variable" href="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b">minimum</a> = std::stod (</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (rangeBegin + 1U, rangeSep - rangeBegin - 1U))</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> TrimText (rest.substr (rangeBegin + 1U, rangeSep - rangeBegin - 1U))</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> );</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> </div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> signal.<a class="code hl_variable" href="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52">maximum</a> = std::stod (</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (rangeSep + 1U, rangeEnd - rangeSep - 1U))</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> TrimText (rest.substr (rangeSep + 1U, rangeEnd - rangeSep - 1U))</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> );</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> </div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01">unit</a> = rest.substr (unitBegin + 1U, unitEnd - unitBegin - 1U);</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> {</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="keyword">const</span> std::string receiversText = <a class="code hl_function" href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">TrimText</a> (rest.substr (unitEnd + 1U));</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3">receivers</a> = <a class="code hl_function" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">SplitReceivers</a> (receiversText);</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="keyword">const</span> std::string receiversText = TrimText (rest.substr (unitEnd + 1U));</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> signal.<a class="code hl_variable" href="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3">receivers</a> = SplitReceivers (receiversText);</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> }</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> </div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">return</span> signal;</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span>}</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> </div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"><a class="line" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c"> 274</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">DbcParser::ParseCommentLine</a> (<span class="keyword">const</span> std::string &amp;line, <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database) {</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span><span class="keywordtype">void</span> DbcParser::ParseCommentLine (<span class="keyword">const</span> std::string &amp;line, <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database) {</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> <span class="comment">/*</span></div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span><span class="comment"> * Examples:</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span><span class="comment"> * CM_ BO_ 256 &quot;Frame comment&quot;;</span></div>
@@ -342,7 +366,7 @@
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> <span class="keywordtype">bool</span> isExtended = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> </div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> stream &gt;&gt; rawCanId;</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <a class="code hl_function" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a> (rawCanId, canId, isExtended);</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> NormalizeCanId (rawCanId, canId, isExtended);</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> </div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <span class="keyword">const</span> std::string::size_type quoteBegin = line.find (<span class="charliteral">&#39;&quot;&#39;</span>);</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> <span class="keyword">const</span> std::string::size_type quoteEnd = line.rfind (<span class="charliteral">&#39;&quot;&#39;</span>);</div>
@@ -352,7 +376,7 @@
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> (quoteEnd &lt;= quoteBegin))</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> </div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *frame = <a class="code hl_function" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">FindFrameById</a> (database, canId, isExtended);</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *frame = FindFrameById (database, canId, isExtended);</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> <span class="keywordflow">if</span> (frame != <span class="keyword">nullptr</span>)</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> frame-&gt;<a class="code hl_variable" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">comment</a> = line.substr (quoteBegin + 1U, quoteEnd - quoteBegin - 1U);</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (token == <span class="stringliteral">&quot;SG_&quot;</span>) {</div>
@@ -364,7 +388,7 @@
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> stream &gt;&gt; rawCanId;</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> stream &gt;&gt; signalName;</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> </div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> <a class="code hl_function" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a> (rawCanId, canId, isExtended);</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> NormalizeCanId (rawCanId, canId, isExtended);</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> </div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> <span class="keyword">const</span> std::string::size_type quoteBegin = line.find (<span class="charliteral">&#39;&quot;&#39;</span>);</div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="keyword">const</span> std::string::size_type quoteEnd = line.rfind (<span class="charliteral">&#39;&quot;&#39;</span>);</div>
@@ -374,16 +398,16 @@
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> (quoteEnd &lt;= quoteBegin))</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> </div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *frame = <a class="code hl_function" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">FindFrameById</a> (database, canId, isExtended);</div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *frame = FindFrameById (database, canId, isExtended);</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">if</span> (frame != <span class="keyword">nullptr</span>) {</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *signal = <a class="code hl_function" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">FindSignalByName</a> (*frame, signalName);</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *signal = FindSignalByName (*frame, signalName);</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">if</span> (signal != <span class="keyword">nullptr</span>)</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> signal-&gt;<a class="code hl_variable" href="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5">comment</a> = line.substr (quoteBegin + 1U, quoteEnd - quoteBegin - 1U);</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> }</div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> }</div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span>}</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> </div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"><a class="line" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9"> 337</a></span><a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *<a class="code hl_function" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">DbcParser::FindFrameById</a> (<a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database,</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span><a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *DbcParser::FindFrameById (<a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database,</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> std::uint32_t canId,</div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span> <span class="keywordtype">bool</span> isExtended) {</div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">for</span> (std::size_t index = 0U; index &lt; database.<a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>.size(); ++index) {</div>
@@ -395,36 +419,22 @@
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span>}</div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> </div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"><a class="line" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a"> 349</a></span><a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *<a class="code hl_function" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">DbcParser::FindSignalByName</a> (<a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> &amp;frame, <span class="keyword">const</span> std::string &amp;signalName) {</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">for</span> (std::size_t index = 0U; index &lt; frame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>.size(); ++index) {</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <span class="keywordflow">if</span> (frame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>[index].name == signalName)</div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">return</span> &amp;frame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>[index];</div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span><a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *DbcParser::FindSignalByName (<a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> &amp;frame, <span class="keyword">const</span> std::string &amp;signalName) {</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">for</span> (std::size_t index = 0U; index &lt; frame.signals.size(); ++index) {</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <span class="keywordflow">if</span> (frame.signals[index].<a class="code hl_variable" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">name</a> == signalName)</div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">return</span> &amp;frame.signals[index];</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> }</div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> </div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span>}</div>
<div class="ttc" id="aclassDbcParser_html_a0c1cc3c58f33473bf426a77b7a25c529"><div class="ttname"><a href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">DbcParser::SplitReceivers</a></div><div class="ttdeci">static std::vector&lt; std::string &gt; SplitReceivers(const std::string &amp;text)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00087">dbc_parser.cpp:87</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a1ae77c4c356af3d7b01a30044366f02b"><div class="ttname"><a href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">DbcParser::Trim</a></div><div class="ttdeci">static std::string Trim(const std::string &amp;text)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00083">dbc_parser.cpp:83</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a4cbce88d08b1f72903ecf1bce41de5d2"><div class="ttname"><a href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">DbcParser::ParseSignalLine</a></div><div class="ttdeci">static SignalInfo ParseSignalLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00181">dbc_parser.cpp:181</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a6d73bb1885e59aecd8202e93a7cd392a"><div class="ttname"><a href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">DbcParser::ParseFrameLine</a></div><div class="ttdeci">static FrameInfo ParseFrameLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00142">dbc_parser.cpp:142</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a8a7e8fc517e40beab87a8a1dbad2b324"><div class="ttname"><a href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">DbcParser::TryExtractPgn</a></div><div class="ttdeci">static std::uint32_t TryExtractPgn(std::uint32_t canId, bool isExtended, bool &amp;hasPgn)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00118">dbc_parser.cpp:118</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a94d140d9442e4989b5b2ea7662c2debf"><div class="ttname"><a href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">DbcParser::NormalizeCanId</a></div><div class="ttdeci">static void NormalizeCanId(std::uint32_t rawCanId, std::uint32_t &amp;normalizedCanId, bool &amp;isExtended)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00101">dbc_parser.cpp:101</a></div></div>
<div class="ttc" id="aclassDbcParser_html_aa662b34694fd8b3edd757f36cb064c5c"><div class="ttname"><a href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">DbcParser::ParseCommentLine</a></div><div class="ttdeci">static void ParseCommentLine(const std::string &amp;line, DbcDatabase &amp;database)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00274">dbc_parser.cpp:274</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ab1fee32cb845573ce10949b4bec721f9"><div class="ttname"><a href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">DbcParser::FindFrameById</a></div><div class="ttdeci">static FrameInfo * FindFrameById(DbcDatabase &amp;database, std::uint32_t canId, bool isExtended)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00337">dbc_parser.cpp:337</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ab7b95be4433c56cc855bedb08b96a71a"><div class="ttname"><a href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">DbcParser::FindSignalByName</a></div><div class="ttdeci">static SignalInfo * FindSignalByName(FrameInfo &amp;frame, const std::string &amp;signalName)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00349">dbc_parser.cpp:349</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ace3d3432a55707bc286a994aa205fed1"><div class="ttname"><a href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">DbcParser::IsSignalLine</a></div><div class="ttdeci">static bool IsSignalLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00075">dbc_parser.cpp:75</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ada086584d371c08dd93b75fb7965f13b"><div class="ttname"><a href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">DbcParser::IsFrameLine</a></div><div class="ttdeci">static bool IsFrameLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00071">dbc_parser.cpp:71</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ae3488a0a6c64dc95e4ed289e77579feb"><div class="ttname"><a href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">DbcParser::IsCommentLine</a></div><div class="ttdeci">static bool IsCommentLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00079">dbc_parser.cpp:79</a></div></div>
<div class="ttc" id="aclassDbcParser_html_aef72826942c9095d653fafa435855e56"><div class="ttname"><a href="classDbcParser.html#aef72826942c9095d653fafa435855e56">DbcParser::ParseFile</a></div><div class="ttdeci">DbcDatabase ParseFile(const std::string &amp;filePath) const</div><div class="ttdoc">Parse DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00040">dbc_parser.cpp:40</a></div></div>
<div class="ttc" id="adbc__parser_8h_html"><div class="ttname"><a href="dbc__parser_8h.html">dbc_parser.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="anamespaceanonymous__namespace_02dbc__parser_8cpp_03_html_a5850f07ce5f4e5c4f3bf385ebcfcebbb"><div class="ttname"><a href="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb">anonymous_namespace{dbc_parser.cpp}::TrimText</a></div><div class="ttdeci">std::string TrimText(const std::string &amp;text)</div><div class="ttdoc">Remove leading and trailing spaces.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00025">dbc_parser.cpp:25</a></div></div>
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDbcDatabase_html_a2cade5d0234ee816132127542f8c612b"><div class="ttname"><a href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase::frames</a></div><div class="ttdeci">std::vector&lt; FrameInfo &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00023">dbc_database.h:23</a></div></div>
<div class="ttc" id="astructFrameInfo_html"><div class="ttname"><a href="structFrameInfo.html">FrameInfo</a></div><div class="ttdoc">Describes one CAN frame from a DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00024">frame_info.h:24</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a34b726afaad2ac5c697fdb2ac070cdaf"><div class="ttname"><a href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00027">frame_info.h:27</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a4737a5420213ad4304724e39f3a4e55d"><div class="ttname"><a href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">FrameInfo::hasPgn</a></div><div class="ttdeci">bool hasPgn</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00029">frame_info.h:29</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a92749ec3798d4211a505860fb389a9e8"><div class="ttname"><a href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">FrameInfo::transmitter</a></div><div class="ttdeci">std::string transmitter</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00031">frame_info.h:31</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a942937027f1af06536f98cc23b2bf6ce"><div class="ttname"><a href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo::signals</a></div><div class="ttdeci">std::vector&lt; SignalInfo &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00033">frame_info.h:33</a></div></div>
<div class="ttc" id="astructFrameInfo_html_aa2b198ea0f55e560c123d35e7b3ecab9"><div class="ttname"><a href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">FrameInfo::dlc</a></div><div class="ttdeci">std::uint8_t dlc</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00030">frame_info.h:30</a></div></div>
<div class="ttc" id="astructFrameInfo_html_abb53a7f93ed7abc0ea1ae4a8ccafcdcb"><div class="ttname"><a href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">FrameInfo::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00025">frame_info.h:25</a></div></div>
<div class="ttc" id="astructFrameInfo_html_ace75121294f9d89b762080ab5643293c"><div class="ttname"><a href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">FrameInfo::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00032">frame_info.h:32</a></div></div>
@@ -444,9 +454,13 @@
<div class="ttc" id="astructSignalInfo_html_ae4f78d99a2750aa564d7eba860171499"><div class="ttname"><a href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">SignalInfo::factor</a></div><div class="ttdeci">double factor</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00028">signal_info.h:28</a></div></div>
<div class="ttc" id="astructSignalInfo_html_af363b1563fb4c7cc8973f9a80c06846c"><div class="ttname"><a href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">SignalInfo::isLittleEndian</a></div><div class="ttdeci">bool isLittleEndian</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00026">signal_info.h:26</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__parser_8cpp.html">dbc_parser.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_parser.h File Reference</title>
<title>DBC Framework: dbc_parser.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__parser_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -71,9 +110,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="dbc__parser_8h_source.html">dbc_parser.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__parser_8h.html">dbc_parser.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var dbc__parser_8h =
[
[ "DbcParser", "classDbcParser.html", "classDbcParser" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_parser.h Source File</title>
<title>DBC Framework: dbc_parser.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__parser_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_parser.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_parser.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DBC_PARSER_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DBC_PARSER_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
@@ -66,78 +95,50 @@
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__database_8h.html">dbc_database.h</a>&quot;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"></span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment">/**</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * @brief Minimal DBC parser.</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> *</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> * Supports:</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> * - BO_</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * - SG_</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * - CM_ BO_</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> * - CM_ SG_</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> *</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"> * Ignores:</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment"> * - attributes</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="comment"> * - multiplexing</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment"> * - value tables</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment"> */</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="classDbcParser.html"> 35</a></span><span class="keyword">class </span><a class="code hl_class" href="classDbcParser.html">DbcParser</a> {</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment"> * @brief Parse DBC file.</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment"> * @param filePath Path to input file.</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment"> * @return Parsed database.</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment"> * @throws std::runtime_error on file or parse errors.</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="comment"> */</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> <a class="code hl_function" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">ParseFile</a> (<span class="keyword">const</span> std::string &amp;filePath) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">IsFrameLine</a> (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">IsSignalLine</a> (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">IsCommentLine</a> (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">static</span> std::string <a class="code hl_function" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">Trim</a> (<span class="keyword">const</span> std::string &amp;text);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">static</span> std::vector&lt;std::string&gt; <a class="code hl_function" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">SplitReceivers</a> (<span class="keyword">const</span> std::string &amp;text);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">static</span> std::uint32_t <a class="code hl_function" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">TryExtractPgn</a> (std::uint32_t canId, <span class="keywordtype">bool</span> isExtended, <span class="keywordtype">bool</span> &amp;hasPgn);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> IsFrameLine (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> IsSignalLine (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> IsCommentLine (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">static</span> std::string Trim (<span class="keyword">const</span> std::string &amp;text);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">static</span> std::vector&lt;std::string&gt; SplitReceivers (<span class="keyword">const</span> std::string &amp;text);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">static</span> std::uint32_t TryExtractPgn (std::uint32_t canId, <span class="keywordtype">bool</span> isExtended, <span class="keywordtype">bool</span> &amp;hasPgn);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">NormalizeCanId</a> (std::uint32_t rawCanId,</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">static</span> <span class="keywordtype">void</span> NormalizeCanId (std::uint32_t rawCanId,</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> std::uint32_t &amp;normalizedCanId,</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">bool</span> &amp;isExtended);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">static</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> <a class="code hl_function" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">ParseFrameLine</a> (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">static</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> <a class="code hl_function" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">ParseSignalLine</a> (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">static</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> ParseFrameLine (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">static</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> ParseSignalLine (<span class="keyword">const</span> std::string &amp;line);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">ParseCommentLine</a> (<span class="keyword">const</span> std::string &amp;line, <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">static</span> <span class="keywordtype">void</span> ParseCommentLine (<span class="keyword">const</span> std::string &amp;line, <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">static</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *<a class="code hl_function" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">FindFrameById</a> (<a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database,</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">static</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *FindFrameById (<a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database,</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> std::uint32_t canId,</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">bool</span> isExtended);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">static</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *<a class="code hl_function" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">FindSignalByName</a> (<a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> &amp;frame, <span class="keyword">const</span> std::string &amp;signalName);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">static</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *FindSignalByName (<a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> &amp;frame, <span class="keyword">const</span> std::string &amp;signalName);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>};</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="preprocessor">#endif </span><span class="comment">/* DBC_PARSER_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="aclassDbcParser_html"><div class="ttname"><a href="classDbcParser.html">DbcParser</a></div><div class="ttdoc">Minimal DBC parser.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8h_source.html#l00035">dbc_parser.h:35</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a0c1cc3c58f33473bf426a77b7a25c529"><div class="ttname"><a href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">DbcParser::SplitReceivers</a></div><div class="ttdeci">static std::vector&lt; std::string &gt; SplitReceivers(const std::string &amp;text)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00087">dbc_parser.cpp:87</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a1ae77c4c356af3d7b01a30044366f02b"><div class="ttname"><a href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">DbcParser::Trim</a></div><div class="ttdeci">static std::string Trim(const std::string &amp;text)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00083">dbc_parser.cpp:83</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a4cbce88d08b1f72903ecf1bce41de5d2"><div class="ttname"><a href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">DbcParser::ParseSignalLine</a></div><div class="ttdeci">static SignalInfo ParseSignalLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00181">dbc_parser.cpp:181</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a6d73bb1885e59aecd8202e93a7cd392a"><div class="ttname"><a href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">DbcParser::ParseFrameLine</a></div><div class="ttdeci">static FrameInfo ParseFrameLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00142">dbc_parser.cpp:142</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a8a7e8fc517e40beab87a8a1dbad2b324"><div class="ttname"><a href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">DbcParser::TryExtractPgn</a></div><div class="ttdeci">static std::uint32_t TryExtractPgn(std::uint32_t canId, bool isExtended, bool &amp;hasPgn)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00118">dbc_parser.cpp:118</a></div></div>
<div class="ttc" id="aclassDbcParser_html_a94d140d9442e4989b5b2ea7662c2debf"><div class="ttname"><a href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">DbcParser::NormalizeCanId</a></div><div class="ttdeci">static void NormalizeCanId(std::uint32_t rawCanId, std::uint32_t &amp;normalizedCanId, bool &amp;isExtended)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00101">dbc_parser.cpp:101</a></div></div>
<div class="ttc" id="aclassDbcParser_html_aa662b34694fd8b3edd757f36cb064c5c"><div class="ttname"><a href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">DbcParser::ParseCommentLine</a></div><div class="ttdeci">static void ParseCommentLine(const std::string &amp;line, DbcDatabase &amp;database)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00274">dbc_parser.cpp:274</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ab1fee32cb845573ce10949b4bec721f9"><div class="ttname"><a href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">DbcParser::FindFrameById</a></div><div class="ttdeci">static FrameInfo * FindFrameById(DbcDatabase &amp;database, std::uint32_t canId, bool isExtended)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00337">dbc_parser.cpp:337</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ab7b95be4433c56cc855bedb08b96a71a"><div class="ttname"><a href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">DbcParser::FindSignalByName</a></div><div class="ttdeci">static SignalInfo * FindSignalByName(FrameInfo &amp;frame, const std::string &amp;signalName)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00349">dbc_parser.cpp:349</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ace3d3432a55707bc286a994aa205fed1"><div class="ttname"><a href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">DbcParser::IsSignalLine</a></div><div class="ttdeci">static bool IsSignalLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00075">dbc_parser.cpp:75</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ada086584d371c08dd93b75fb7965f13b"><div class="ttname"><a href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">DbcParser::IsFrameLine</a></div><div class="ttdeci">static bool IsFrameLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00071">dbc_parser.cpp:71</a></div></div>
<div class="ttc" id="aclassDbcParser_html_ae3488a0a6c64dc95e4ed289e77579feb"><div class="ttname"><a href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">DbcParser::IsCommentLine</a></div><div class="ttdeci">static bool IsCommentLine(const std::string &amp;line)</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00079">dbc_parser.cpp:79</a></div></div>
<div class="ttc" id="aclassDbcParser_html_aef72826942c9095d653fafa435855e56"><div class="ttname"><a href="classDbcParser.html#aef72826942c9095d653fafa435855e56">DbcParser::ParseFile</a></div><div class="ttdeci">DbcDatabase ParseFile(const std::string &amp;filePath) const</div><div class="ttdoc">Parse DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__parser_8cpp_source.html#l00040">dbc_parser.cpp:40</a></div></div>
<div class="ttc" id="adbc__database_8h_html"><div class="ttname"><a href="dbc__database_8h.html">dbc_database.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructFrameInfo_html"><div class="ttname"><a href="structFrameInfo.html">FrameInfo</a></div><div class="ttdoc">Describes one CAN frame from a DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00024">frame_info.h:24</a></div></div>
<div class="ttc" id="astructSignalInfo_html"><div class="ttname"><a href="structSignalInfo.html">SignalInfo</a></div><div class="ttdoc">Describes one signal inside a DBC frame.</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00022">signal_info.h:22</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__parser_8h.html">dbc_parser.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_tree_builder.cpp File Reference</title>
<title>DBC Framework: dbc_tree_builder.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__tree__builder_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_tree_builder.cpp File Reference</div></div>
</div><!--header-->
@@ -59,9 +98,13 @@
<p class="definition">Definition in file <a class="el" href="dbc__tree__builder_8cpp_source.html">dbc_tree_builder.cpp</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__tree__builder_8cpp.html">dbc_tree_builder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_tree_builder.cpp Source File</title>
<title>DBC Framework: dbc_tree_builder.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__tree__builder_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_tree_builder.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__tree__builder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_tree_builder.cpp</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__tree__builder_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__tree__builder_8h.html">dbc_tree_builder.h</a>&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b"> 14</a></span>std::unique_ptr&lt;TreeNode&gt; <a class="code hl_function" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b">DbcTreeBuilder::Build</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database)<span class="keyword"> const </span>{</div>
@@ -67,8 +96,8 @@
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">const</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> &amp;frame = database.<a class="code hl_variable" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">frames</a>[frameIndex];</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> std::unique_ptr&lt;TreeNode&gt; frameNode (<span class="keyword">new</span> <a class="code hl_class" href="classTreeNode.html">TreeNode</a> (frame));</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; frame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>.size(); ++signalIndex) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">const</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> &amp;signal = frame.<a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>[signalIndex];</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">for</span> (std::size_t signalIndex = 0U; signalIndex &lt; frame.signals.size(); ++signalIndex) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">const</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> &amp;signal = frame.signals[signalIndex];</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> std::unique_ptr&lt;TreeNode&gt; signalNode (<span class="keyword">new</span> <a class="code hl_class" href="classTreeNode.html">TreeNode</a> (signal));</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> frameNode-&gt;AddChild (std::move (signalNode));</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> }</div>
@@ -84,12 +113,15 @@
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDbcDatabase_html_a2cade5d0234ee816132127542f8c612b"><div class="ttname"><a href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase::frames</a></div><div class="ttdeci">std::vector&lt; FrameInfo &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00023">dbc_database.h:23</a></div></div>
<div class="ttc" id="astructFrameInfo_html"><div class="ttname"><a href="structFrameInfo.html">FrameInfo</a></div><div class="ttdoc">Describes one CAN frame from a DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00024">frame_info.h:24</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a942937027f1af06536f98cc23b2bf6ce"><div class="ttname"><a href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo::signals</a></div><div class="ttdeci">std::vector&lt; SignalInfo &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00033">frame_info.h:33</a></div></div>
<div class="ttc" id="astructSignalInfo_html"><div class="ttname"><a href="structSignalInfo.html">SignalInfo</a></div><div class="ttdoc">Describes one signal inside a DBC frame.</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00022">signal_info.h:22</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__tree__builder_8cpp.html">dbc_tree_builder.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_tree_builder.h File Reference</title>
<title>DBC Framework: dbc_tree_builder.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__tree__builder_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -70,9 +109,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="dbc__tree__builder_8h_source.html">dbc_tree_builder.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__tree__builder_8h.html">dbc_tree_builder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var dbc__tree__builder_8h =
[
[ "DbcTreeBuilder", "classDbcTreeBuilder.html", "classDbcTreeBuilder" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: dbc_tree_builder.h Source File</title>
<title>DBC Framework: dbc_tree_builder.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('dbc__tree__builder_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">dbc_tree_builder.h</div></div>
</div><!--header-->
<div class="contents">
<a href="dbc__tree__builder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file dbc_tree_builder.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="dbc__tree__builder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DBC_TREE_BUILDER_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DBC_TREE_BUILDER_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
@@ -65,17 +94,9 @@
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__database_8h.html">dbc_database.h</a>&quot;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &quot;<a class="code" href="tree__node_8h.html">tree_node.h</a>&quot;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"></span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment">/**</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * @brief Builds a simple tree from parsed DBC database.</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> */</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="classDbcTreeBuilder.html"> 23</a></span><span class="keyword">class </span><a class="code hl_class" href="classDbcTreeBuilder.html">DbcTreeBuilder</a> {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> /**</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * @brief Build tree representation of parsed DBC data.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * @param database Parsed database.</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> * @return Root node of the tree.</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> */</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> std::unique_ptr&lt;TreeNode&gt; <a class="code hl_function" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b">Build</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDbcDatabase.html">DbcDatabase</a> &amp;database) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>};</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
@@ -86,9 +107,13 @@
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="atree__node_8h_html"><div class="ttname"><a href="tree__node_8h.html">tree_node.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dbc__tree__builder_8h.html">dbc_tree_builder.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: decode_database.h File Reference</title>
<title>DBC Framework: decode_database.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('decode__database_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
@@ -80,13 +119,13 @@ Classes</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:aaeb92d42f5a6e27b8ba19f18d69d142b"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a> { <a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</a>
, <a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">Motorola</a>
<tr class="memitem:aaeb92d42f5a6e27b8ba19f18d69d142b"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a> { <b>Intel</b>
, <b>Motorola</b>
}</td></tr>
<tr class="memdesc:aaeb92d42f5a6e27b8ba19f18d69d142b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signal byte order used for runtime decoding. <a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">More...</a><br /></td></tr>
<tr class="separator:aaeb92d42f5a6e27b8ba19f18d69d142b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9971b6ef33e02ba2c75d19c1d2518a1"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a> { <a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">Unsigned</a>
, <a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">Signed</a>
<tr class="memitem:ad9971b6ef33e02ba2c75d19c1d2518a1"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a> { <b>Unsigned</b>
, <b>Signed</b>
}</td></tr>
<tr class="memdesc:ad9971b6ef33e02ba2c75d19c1d2518a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signal numeric type. <a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">More...</a><br /></td></tr>
<tr class="separator:ad9971b6ef33e02ba2c75d19c1d2518a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -118,10 +157,6 @@ Enumerations</h2></td></tr>
</div><div class="memdoc">
<p>Signal byte order used for runtime decoding. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5" name="aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"></a>Intel&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31" name="aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31"></a>Motorola&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="decode__database_8h_source.html#l00023">23</a> of file <a class="el" href="decode__database_8h_source.html">decode_database.h</a>.</p>
@@ -148,19 +183,19 @@ Enumerations</h2></td></tr>
</div><div class="memdoc">
<p>Signal numeric type. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a" name="ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a"></a>Unsigned&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379" name="ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"></a>Signed&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="decode__database_8h_source.html#l00031">31</a> of file <a class="el" href="decode__database_8h_source.html">decode_database.h</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="decode__database_8h.html">decode_database.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,16 @@
var decode__database_8h =
[
[ "DecodeSignal", "structDecodeSignal.html", "structDecodeSignal" ],
[ "DecodeFrame", "structDecodeFrame.html", "structDecodeFrame" ],
[ "FrameKey", "structFrameKey.html", null ],
[ "FrameKeyHasher", "structFrameKeyHasher.html", null ],
[ "DecodeDatabase", "structDecodeDatabase.html", null ],
[ "ByteOrder", "decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b", [
[ "Intel", "decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5", null ],
[ "Motorola", "decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31", null ]
] ],
[ "ValueType", "decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1", [
[ "Unsigned", "decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a", null ],
[ "Signed", "decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379", null ]
] ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: decode_database.h Source File</title>
<title>DBC Framework: decode_database.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('decode__database_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">decode_database.h</div></div>
</div><!--header-->
<div class="contents">
<a href="decode__database_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file decode_database.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="decode__database_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef DECODE_DATABASE_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define DECODE_DATABASE_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
@@ -65,46 +94,36 @@
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;unordered_map&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"></span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment">/**</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * @brief Signal byte order used for runtime decoding.</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> */</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b"> 23</a></span><span class="keyword">enum class</span> <a class="code hl_enumeration" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a> {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</a>,</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">Motorola</a></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> Intel,</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> Motorola</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>};</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"></span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment">/**</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> * @brief Signal numeric type.</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"> */</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1"> 31</a></span><span class="keyword">enum class</span> <a class="code hl_enumeration" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a> {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">Unsigned</a>,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">Signed</a></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> Unsigned,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> Signed</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>};</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment"></span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">/**</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment"> * @brief Runtime-ready signal definition.</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment"> */</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="structDecodeSignal.html"> 39</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a> {</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780"> 40</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">name</a>; <span class="comment">/**&lt; Signal name. */</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d"> 41</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>; <span class="comment">/**&lt; DBC start bit. */</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"> 42</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>; <span class="comment">/**&lt; Signal length in bits. */</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"> 43</a></span> <a class="code hl_enumeration" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a> <a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a>; <span class="comment">/**&lt; Intel or Motorola. */</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8"> 44</a></span> <a class="code hl_enumeration" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a> <a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a>; <span class="comment">/**&lt; Signed or unsigned. */</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391"> 45</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">factor</a>; <span class="comment">/**&lt; Scaling factor. */</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"> 46</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">offset</a>; <span class="comment">/**&lt; Physical offset. */</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"> 47</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">minimum</a>; <span class="comment">/**&lt; Minimum physical value. */</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"> 48</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7">maximum</a>; <span class="comment">/**&lt; Maximum physical value. */</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"> 49</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092">unit</a>; <span class="comment">/**&lt; Physical unit. */</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"> 50</a></span> std::vector&lt;std::string&gt; <a class="code hl_variable" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa">receivers</a>; <span class="comment">/**&lt; Receivers. */</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"> 51</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">comment</a>; <span class="comment">/**&lt; Comment. */</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a93fd97267e2614979440261628e493f5"> 53</a></span> <a class="code hl_function" href="structDecodeSignal.html#a93fd97267e2614979440261628e493f5">DecodeSignal</a>()</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780"> 40</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">name</a>; </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d"> 41</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a>; </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"> 42</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a>; </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"> 43</a></span> <a class="code hl_enumeration" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a> <a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a>; </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8"> 44</a></span> <a class="code hl_enumeration" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a> <a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a>; </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391"> 45</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">factor</a>; </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"> 46</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">offset</a>; </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"> 47</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">minimum</a>; </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"> 48</a></span> <span class="keywordtype">double</span> <a class="code hl_variable" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7">maximum</a>; </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"> 49</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092">unit</a>; </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"> 50</a></span> std::vector&lt;std::string&gt; <a class="code hl_variable" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa">receivers</a>; </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"> 51</a></span> std::string <a class="code hl_variable" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">comment</a>; </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_struct" href="structDecodeSignal.html">DecodeSignal</a>()</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> : <a class="code hl_variable" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">name</a>()</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> , <a class="code hl_variable" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">startBit</a> (0U)</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> , <a class="code hl_variable" href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">length</a> (0U)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> , <a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> (<a class="code hl_enumeration" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a>::<a class="code hl_enumvalue" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">Intel</a>)</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> , <a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> (<a class="code hl_enumeration" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a>::<a class="code hl_enumvalue" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">Unsigned</a>)</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> , <a class="code hl_variable" href="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d">byteOrder</a> (<a class="code hl_enumeration" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a>::Intel)</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> , <a class="code hl_variable" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">valueType</a> (<a class="code hl_enumeration" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a>::Unsigned)</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> , <a class="code hl_variable" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">factor</a> (1.0)</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> , <a class="code hl_variable" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">offset</a> (0.0)</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> , <a class="code hl_variable" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">minimum</a> (0.0)</div>
@@ -114,22 +133,18 @@
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> , <a class="code hl_variable" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">comment</a>() {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> }</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>};</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span><span class="comment"></span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="comment">/**</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="comment"> * @brief Runtime-ready frame definition.</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="comment"> */</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="structDecodeFrame.html"> 72</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a> {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579"> 73</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">name</a>; <span class="comment">/**&lt; Frame name. */</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"> 74</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">canId</a>; <span class="comment">/**&lt; Normalized CAN ID. */</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"> 75</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">isExtended</a>; <span class="comment">/**&lt; true for extended frame. */</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"> 76</a></span> std::uint8_t <a class="code hl_variable" href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060">dlc</a>; <span class="comment">/**&lt; Payload length. */</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23"> 77</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">pgn</a>; <span class="comment">/**&lt; PGN if available. */</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"> 78</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d">hasPgn</a>; <span class="comment">/**&lt; true if PGN is valid. */</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9"> 79</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">transmitter</a>; <span class="comment">/**&lt; Transmitter ECU. */</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"> 80</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">comment</a>; <span class="comment">/**&lt; Frame comment. */</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036"> 81</a></span> std::vector&lt;DecodeSignal&gt; <a class="code hl_variable" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">signals</a>; <span class="comment">/**&lt; Signal definitions. */</span></div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4"> 83</a></span> <a class="code hl_function" href="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4">DecodeFrame</a>()</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579"> 73</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">name</a>; </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"> 74</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">canId</a>; </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"> 75</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">isExtended</a>; </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"> 76</a></span> std::uint8_t <a class="code hl_variable" href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060">dlc</a>; </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23"> 77</a></span> std::uint32_t <a class="code hl_variable" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">pgn</a>; </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"> 78</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d">hasPgn</a>; </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9"> 79</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">transmitter</a>; </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"> 80</a></span> std::string <a class="code hl_variable" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">comment</a>; </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14"> 81</a></span> std::vector&lt;DecodeSignal&gt; signals; </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <a class="code hl_struct" href="structDecodeFrame.html">DecodeFrame</a>()</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> : <a class="code hl_variable" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">name</a>()</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> , <a class="code hl_variable" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">canId</a> (0U)</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> , <a class="code hl_variable" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">isExtended</a> (false)</div>
@@ -138,72 +153,55 @@
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> , <a class="code hl_variable" href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d">hasPgn</a> (false)</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> , <a class="code hl_variable" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">transmitter</a>()</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> , <a class="code hl_variable" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">comment</a>()</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> , <a class="code hl_variable" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">signals</a>() {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> , signals() {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> }</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span>};</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span><span class="comment"></span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="comment">/**</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="comment"> * @brief Key for fast frame lookup.</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><span class="comment"> */</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="structFrameKey.html"> 99</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structFrameKey.html">FrameKey</a> {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"><a class="line" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4"> 100</a></span> std::uint32_t <a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a>;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145"> 101</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a>;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> std::uint32_t canId;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">bool</span> isExtended;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14"> 103</a></span> <a class="code hl_function" href="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14">FrameKey</a>()</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> : <a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a> (0U)</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> , <a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a> (false) {</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a>()</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> : canId (0U)</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> , isExtended (<span class="keyword">false</span>) {</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> }</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670"> 108</a></span> <a class="code hl_function" href="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670">FrameKey</a> (std::uint32_t <span class="keywordtype">id</span>, <span class="keywordtype">bool</span> extended)</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> : <a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a> (id)</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> , <a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a> (extended) {</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> (std::uint32_t <span class="keywordtype">id</span>, <span class="keywordtype">bool</span> extended)</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> : canId (<span class="keywordtype">id</span>)</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> , isExtended (extended) {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> }</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"><a class="line" href="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f"> 113</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f">operator== </a>(<span class="keyword">const</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> &amp;other)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> (<a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a> == other.<a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a>) &amp;&amp; (<a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a> == other.<a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a>);</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">bool</span> operator== (<span class="keyword">const</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> &amp;other)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> (canId == other.canId) &amp;&amp; (isExtended == other.isExtended);</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> }</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>};</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span><span class="comment"></span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="comment">/**</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span><span class="comment"> * @brief Hasher for frame key.</span></div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span><span class="comment"> */</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"><a class="line" href="structFrameKeyHasher.html"> 121</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structFrameKeyHasher.html">FrameKeyHasher</a> {</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"><a class="line" href="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f"> 122</a></span> std::size_t <a class="code hl_function" href="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f">operator() </a>(<span class="keyword">const</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> &amp;key)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keyword">const</span> std::size_t a = <span class="keyword">static_cast&lt;</span>std::size_t<span class="keyword">&gt;</span> (key.<a class="code hl_variable" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">canId</a>);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">const</span> std::size_t b = key.<a class="code hl_variable" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">isExtended</a> ? 1U : 0U;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> std::size_t operator() (<span class="keyword">const</span> <a class="code hl_struct" href="structFrameKey.html">FrameKey</a> &amp;key)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keyword">const</span> std::size_t a = <span class="keyword">static_cast&lt;</span>std::size_t<span class="keyword">&gt;</span> (key.canId);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">const</span> std::size_t b = key.isExtended ? 1U : 0U;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">return</span> (a * 1315423911U) ^ b;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> }</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span>};</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span><span class="comment"></span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span><span class="comment">/**</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span><span class="comment"> * @brief Runtime decode database with fast lookup by CAN ID.</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span><span class="comment"> */</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"><a class="line" href="structDecodeDatabase.html"> 132</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> {</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"><a class="line" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072"> 133</a></span> std::vector&lt;DecodeFrame&gt; <a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"><a class="line" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5"> 134</a></span> std::unordered_map&lt;FrameKey, std::size_t, FrameKeyHasher&gt; <a class="code hl_variable" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">frameIndexByKey</a>;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> std::vector&lt;DecodeFrame&gt; frames;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> std::unordered_map&lt;FrameKey, std::size_t, FrameKeyHasher&gt; frameIndexByKey;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span>};</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span><span class="preprocessor">#endif </span><span class="comment">/* DECODE_DATABASE_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142b"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">ByteOrder</a></div><div class="ttdeci">ByteOrder</div><div class="ttdoc">Signal byte order used for runtime decoding.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00023">decode_database.h:23</a></div></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31">ByteOrder::Motorola</a></div><div class="ttdeci">@ Motorola</div></div>
<div class="ttc" id="adecode__database_8h_html_aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"><div class="ttname"><a href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5">ByteOrder::Intel</a></div><div class="ttdeci">@ Intel</div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">ValueType</a></div><div class="ttdeci">ValueType</div><div class="ttdoc">Signal numeric type.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00031">decode_database.h:31</a></div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379">ValueType::Signed</a></div><div class="ttdeci">@ Signed</div></div>
<div class="ttc" id="adecode__database_8h_html_ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a"><div class="ttname"><a href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a">ValueType::Unsigned</a></div><div class="ttdeci">@ Unsigned</div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_a2bd4ddfc2602c1de4e12a373bfc93072"><div class="ttname"><a href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase::frames</a></div><div class="ttdeci">std::vector&lt; DecodeFrame &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00133">decode_database.h:133</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_ae4fd1351008bb0dce337821a849100c5"><div class="ttname"><a href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">DecodeDatabase::frameIndexByKey</a></div><div class="ttdeci">std::unordered_map&lt; FrameKey, std::size_t, FrameKeyHasher &gt; frameIndexByKey</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00134">decode_database.h:134</a></div></div>
<div class="ttc" id="astructDecodeFrame_html"><div class="ttname"><a href="structDecodeFrame.html">DecodeFrame</a></div><div class="ttdoc">Runtime-ready frame definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00072">decode_database.h:72</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a1d3c54055c0cbceb73adf551f7067f23"><div class="ttname"><a href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">DecodeFrame::pgn</a></div><div class="ttdeci">std::uint32_t pgn</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00077">decode_database.h:77</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a2551102670c4a540fced4c71da0b369d"><div class="ttname"><a href="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d">DecodeFrame::hasPgn</a></div><div class="ttdeci">bool hasPgn</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00078">decode_database.h:78</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a25819ef907a32391af5c9f7cae9cdb22"><div class="ttname"><a href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">DecodeFrame::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00080">decode_database.h:80</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a372afd9e74f1ae33f85cb4acfd3e2036"><div class="ttname"><a href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">DecodeFrame::signals</a></div><div class="ttdeci">std::vector&lt; DecodeSignal &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00081">decode_database.h:81</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a3ee2348d781f8f15aaf87e8dcf57ec41"><div class="ttname"><a href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00075">decode_database.h:75</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a51111ac13988be372d5673d12cf3e060"><div class="ttname"><a href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060">DecodeFrame::dlc</a></div><div class="ttdeci">std::uint8_t dlc</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00076">decode_database.h:76</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_a52e10215388db7df8b541b9d9909edcf"><div class="ttname"><a href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00074">decode_database.h:74</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_aa0a7f8fd5bfde2148dfd0d838328f579"><div class="ttname"><a href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">DecodeFrame::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00073">decode_database.h:73</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_ad78241dc40c793aabb8495b6989b81a9"><div class="ttname"><a href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">DecodeFrame::transmitter</a></div><div class="ttdeci">std::string transmitter</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00079">decode_database.h:79</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_ae6ae88ee29bcaff936e7c7b2380f96b4"><div class="ttname"><a href="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4">DecodeFrame::DecodeFrame</a></div><div class="ttdeci">DecodeFrame()</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00083">decode_database.h:83</a></div></div>
<div class="ttc" id="astructDecodeSignal_html"><div class="ttname"><a href="structDecodeSignal.html">DecodeSignal</a></div><div class="ttdoc">Runtime-ready signal definition.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00039">decode_database.h:39</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a0fb84e19a0ab3bd50b6f65c1075ebc25"><div class="ttname"><a href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">DecodeSignal::minimum</a></div><div class="ttdeci">double minimum</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00047">decode_database.h:47</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a38eed9ca7581423fd8bfbedcffc12092"><div class="ttname"><a href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092">DecodeSignal::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00049">decode_database.h:49</a></div></div>
@@ -211,7 +209,6 @@
<div class="ttc" id="astructDecodeSignal_html_a4a6ba87142a9badbf0ca830e9e709cb7"><div class="ttname"><a href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7">DecodeSignal::maximum</a></div><div class="ttdeci">double maximum</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00048">decode_database.h:48</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a58cf5844f2272a23dcb9687d912e4780"><div class="ttname"><a href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">DecodeSignal::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00040">decode_database.h:40</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a92db637af4e224a0ae70173050dc3f74"><div class="ttname"><a href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">DecodeSignal::offset</a></div><div class="ttdeci">double offset</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00046">decode_database.h:46</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a93fd97267e2614979440261628e493f5"><div class="ttname"><a href="structDecodeSignal.html#a93fd97267e2614979440261628e493f5">DecodeSignal::DecodeSignal</a></div><div class="ttdeci">DecodeSignal()</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00053">decode_database.h:53</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a9d37638129263b8902ba5be59baf39a8"><div class="ttname"><a href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">DecodeSignal::valueType</a></div><div class="ttdeci">ValueType valueType</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00044">decode_database.h:44</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_aaf5d7527ddf65b6355c2b4f3626df22d"><div class="ttname"><a href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">DecodeSignal::startBit</a></div><div class="ttdeci">std::uint32_t startBit</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00041">decode_database.h:41</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_abdbae62a64d2df716bf60c6b67b30eaa"><div class="ttname"><a href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa">DecodeSignal::receivers</a></div><div class="ttdeci">std::vector&lt; std::string &gt; receivers</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00050">decode_database.h:50</a></div></div>
@@ -219,17 +216,15 @@
<div class="ttc" id="astructDecodeSignal_html_acd4ef5ee30421d117b5756854302debb"><div class="ttname"><a href="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb">DecodeSignal::length</a></div><div class="ttdeci">std::uint32_t length</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00042">decode_database.h:42</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_ae28c905d4a2bc86419c2a8361bfea473"><div class="ttname"><a href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">DecodeSignal::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00051">decode_database.h:51</a></div></div>
<div class="ttc" id="astructFrameKeyHasher_html"><div class="ttname"><a href="structFrameKeyHasher.html">FrameKeyHasher</a></div><div class="ttdoc">Hasher for frame key.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00121">decode_database.h:121</a></div></div>
<div class="ttc" id="astructFrameKeyHasher_html_a1612ce56b513790e3ed4c06ec7d28b9f"><div class="ttname"><a href="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f">FrameKeyHasher::operator()</a></div><div class="ttdeci">std::size_t operator()(const FrameKey &amp;key) const</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00122">decode_database.h:122</a></div></div>
<div class="ttc" id="astructFrameKey_html"><div class="ttname"><a href="structFrameKey.html">FrameKey</a></div><div class="ttdoc">Key for fast frame lookup.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00099">decode_database.h:99</a></div></div>
<div class="ttc" id="astructFrameKey_html_a022917652b4d3c2f2dfcc5a13ab7caa4"><div class="ttname"><a href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">FrameKey::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00100">decode_database.h:100</a></div></div>
<div class="ttc" id="astructFrameKey_html_a0e9aad56b251cdf802d45a9c19050b14"><div class="ttname"><a href="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14">FrameKey::FrameKey</a></div><div class="ttdeci">FrameKey()</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00103">decode_database.h:103</a></div></div>
<div class="ttc" id="astructFrameKey_html_a33bde405c7ea53000d54b3dd6e058670"><div class="ttname"><a href="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670">FrameKey::FrameKey</a></div><div class="ttdeci">FrameKey(std::uint32_t id, bool extended)</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00108">decode_database.h:108</a></div></div>
<div class="ttc" id="astructFrameKey_html_aa3179b709d02ef70cf0e736f040a2145"><div class="ttname"><a href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">FrameKey::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00101">decode_database.h:101</a></div></div>
<div class="ttc" id="astructFrameKey_html_aaaec9f914e127787247fcda5e183b01f"><div class="ttname"><a href="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f">FrameKey::operator==</a></div><div class="ttdeci">bool operator==(const FrameKey &amp;other) const</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00113">decode_database.h:113</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="decode__database_8h.html">decode_database.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: File List</title>
<title>DBC Framework: File List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,27 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('files.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">File List</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="dbc__database_8h_source.html"><span class="icondoc"></span></a><a class="el" href="dbc__database_8h.html" target="_self">dbc_database.h</a></td><td class="desc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro) </td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="dbc__decode__builder_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="dbc__decode__builder_8cpp.html" target="_self">dbc_decode_builder.cpp</a></td><td class="desc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro) </td></tr>
@@ -67,9 +106,12 @@
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

18
docs/html/files_dup.js Normal file
View File

@@ -0,0 +1,18 @@
var files_dup =
[
[ "dbc_database.h", "dbc__database_8h.html", "dbc__database_8h" ],
[ "dbc_decode_builder.cpp", "dbc__decode__builder_8cpp.html", null ],
[ "dbc_decode_builder.h", "dbc__decode__builder_8h.html", "dbc__decode__builder_8h" ],
[ "dbc_decoder.cpp", "dbc__decoder_8cpp.html", null ],
[ "dbc_decoder.h", "dbc__decoder_8h.html", "dbc__decoder_8h" ],
[ "dbc_parser.cpp", "dbc__parser_8cpp.html", null ],
[ "dbc_parser.h", "dbc__parser_8h.html", "dbc__parser_8h" ],
[ "dbc_tree_builder.cpp", "dbc__tree__builder_8cpp.html", null ],
[ "dbc_tree_builder.h", "dbc__tree__builder_8h.html", "dbc__tree__builder_8h" ],
[ "decode_database.h", "decode__database_8h.html", "decode__database_8h" ],
[ "frame_info.h", "frame__info_8h.html", "frame__info_8h" ],
[ "main.cpp", "main_8cpp.html", null ],
[ "signal_info.h", "signal__info_8h.html", "signal__info_8h" ],
[ "tree_node.cpp", "tree__node_8cpp.html", null ],
[ "tree_node.h", "tree__node_8h.html", "tree__node_8h" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: frame_info.h File Reference</title>
<title>DBC Framework: frame_info.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('frame__info_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> </div>
@@ -71,9 +110,13 @@ Classes</h2></td></tr>
<p class="definition">Definition in file <a class="el" href="frame__info_8h_source.html">frame_info.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="frame__info_8h.html">frame_info.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var frame__info_8h =
[
[ "FrameInfo", "structFrameInfo.html", "structFrameInfo" ]
];

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: frame_info.h Source File</title>
<title>DBC Framework: frame_info.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('frame__info_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">frame_info.h</div></div>
</div><!--header-->
<div class="contents">
<a href="frame__info_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file frame_info.h</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="frame__info_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef FRAME_INFO_H</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#define FRAME_INFO_H</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
@@ -66,22 +95,18 @@
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &lt;cstdint&gt;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &quot;<a class="code" href="signal__info_8h.html">signal_info.h</a>&quot;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"></span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment">/**</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * @brief Describes one CAN frame from a DBC file.</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> */</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="structFrameInfo.html"> 24</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb"> 25</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">name</a>; <span class="comment">/**&lt; Frame name. */</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"> 26</a></span> std::uint32_t <a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>; <span class="comment">/**&lt; Normalized CAN identifier. */</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"> 27</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>; <span class="comment">/**&lt; true for extended frame. */</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943"> 28</a></span> std::uint32_t <a class="code hl_variable" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">pgn</a>; <span class="comment">/**&lt; J1939 PGN if applicable. */</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"> 29</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">hasPgn</a>; <span class="comment">/**&lt; true if PGN was derived. */</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"> 30</a></span> std::uint8_t <a class="code hl_variable" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">dlc</a>; <span class="comment">/**&lt; Frame payload length. */</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8"> 31</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">transmitter</a>; <span class="comment">/**&lt; Transmitter ECU name. */</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"> 32</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">comment</a>; <span class="comment">/**&lt; Optional frame comment. */</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce"> 33</a></span> std::vector&lt;SignalInfo&gt; <a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>; <span class="comment">/**&lt; Signals contained in the frame. */</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61"> 35</a></span> <a class="code hl_function" href="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61">FrameInfo</a>()</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb"> 25</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">name</a>; </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"> 26</a></span> std::uint32_t <a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a>; </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"> 27</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a>; </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943"> 28</a></span> std::uint32_t <a class="code hl_variable" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">pgn</a>; </div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"> 29</a></span> <span class="keywordtype">bool</span> <a class="code hl_variable" href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">hasPgn</a>; </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"> 30</a></span> std::uint8_t <a class="code hl_variable" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">dlc</a>; </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8"> 31</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">transmitter</a>; </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"> 32</a></span> std::string <a class="code hl_variable" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">comment</a>; </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084"> 33</a></span> std::vector&lt;SignalInfo&gt; signals; </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a>()</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> : <a class="code hl_variable" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">name</a>()</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> , <a class="code hl_variable" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">canId</a> (0U)</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> , <a class="code hl_variable" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">isExtended</a> (false)</div>
@@ -90,7 +115,7 @@
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> , <a class="code hl_variable" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">dlc</a> (0U)</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> , <a class="code hl_variable" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">transmitter</a>()</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> , <a class="code hl_variable" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">comment</a>()</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> , <a class="code hl_variable" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">signals</a>() {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> , signals() {</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> }</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>};</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
@@ -99,18 +124,20 @@
<div class="ttc" id="astructFrameInfo_html"><div class="ttname"><a href="structFrameInfo.html">FrameInfo</a></div><div class="ttdoc">Describes one CAN frame from a DBC file.</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00024">frame_info.h:24</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a34b726afaad2ac5c697fdb2ac070cdaf"><div class="ttname"><a href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo::isExtended</a></div><div class="ttdeci">bool isExtended</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00027">frame_info.h:27</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a4737a5420213ad4304724e39f3a4e55d"><div class="ttname"><a href="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d">FrameInfo::hasPgn</a></div><div class="ttdeci">bool hasPgn</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00029">frame_info.h:29</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a7f2d192b7969f7b60479a48e1f7eba61"><div class="ttname"><a href="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61">FrameInfo::FrameInfo</a></div><div class="ttdeci">FrameInfo()</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00035">frame_info.h:35</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a92749ec3798d4211a505860fb389a9e8"><div class="ttname"><a href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">FrameInfo::transmitter</a></div><div class="ttdeci">std::string transmitter</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00031">frame_info.h:31</a></div></div>
<div class="ttc" id="astructFrameInfo_html_a942937027f1af06536f98cc23b2bf6ce"><div class="ttname"><a href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo::signals</a></div><div class="ttdeci">std::vector&lt; SignalInfo &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00033">frame_info.h:33</a></div></div>
<div class="ttc" id="astructFrameInfo_html_aa2b198ea0f55e560c123d35e7b3ecab9"><div class="ttname"><a href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">FrameInfo::dlc</a></div><div class="ttdeci">std::uint8_t dlc</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00030">frame_info.h:30</a></div></div>
<div class="ttc" id="astructFrameInfo_html_abb53a7f93ed7abc0ea1ae4a8ccafcdcb"><div class="ttname"><a href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">FrameInfo::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00025">frame_info.h:25</a></div></div>
<div class="ttc" id="astructFrameInfo_html_ace75121294f9d89b762080ab5643293c"><div class="ttname"><a href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">FrameInfo::comment</a></div><div class="ttdeci">std::string comment</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00032">frame_info.h:32</a></div></div>
<div class="ttc" id="astructFrameInfo_html_aee518b33f1000bf0b7f6e4a87474c943"><div class="ttname"><a href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">FrameInfo::pgn</a></div><div class="ttdeci">std::uint32_t pgn</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00028">frame_info.h:28</a></div></div>
<div class="ttc" id="astructFrameInfo_html_af470b0742c05bfbffc31c51a68f5c05e"><div class="ttname"><a href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">FrameInfo::canId</a></div><div class="ttdeci">std::uint32_t canId</div><div class="ttdef"><b>Definition:</b> <a href="frame__info_8h_source.html#l00026">frame_info.h:26</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="frame__info_8h.html">frame_info.h</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Class Members</title>
<title>DBC Framework: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,56 +35,55 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li class="current"><a href="functions.html"><span>All</span></a></li>
<li><a href="functions_func.html"><span>Functions</span></a></li>
<li><a href="functions_vars.html"><span>Variables</span></a></li>
</ul>
</div>
<div id="navrow4" class="tabs3">
<ul class="tablist">
<li><a href="#index_a"><span>a</span></a></li>
<li><a href="#index_b"><span>b</span></a></li>
<li><a href="#index_c"><span>c</span></a></li>
<li><a href="#index_d"><span>d</span></a></li>
<li><a href="#index_e"><span>e</span></a></li>
<li><a href="#index_f"><span>f</span></a></li>
<li><a href="#index_g"><span>g</span></a></li>
<li><a href="#index_h"><span>h</span></a></li>
<li><a href="#index_i"><span>i</span></a></li>
<li><a href="#index_l"><span>l</span></a></li>
<li><a href="#index_m"><span>m</span></a></li>
<li><a href="#index_n"><span>n</span></a></li>
<li><a href="#index_o"><span>o</span></a></li>
<li><a href="#index_p"><span>p</span></a></li>
<li><a href="#index_r"><span>r</span></a></li>
<li><a href="#index_s"><span>s</span></a></li>
<li><a href="#index_t"><span>t</span></a></li>
<li><a href="#index_u"><span>u</span></a></li>
<li><a href="#index_v"><span>v</span></a></li>
<li class="current"><a href="#index__7E"><span>~</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('functions.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
<div class="textblock">Here is a list of all documented class members with links to the class documentation for each member:</div>
<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
<li>AddChild()&#160;:&#160;<a class="el" href="classTreeNode.html#a6161f2ebb92184eab4215d121870e788">TreeNode</a></li>
@@ -90,7 +97,7 @@
<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
<li>canId&#160;:&#160;<a class="el" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">FrameInfo</a>, <a class="el" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">FrameKey</a>, <a class="el" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame</a></li>
<li>canId&#160;:&#160;<a class="el" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">FrameInfo</a>, <a class="el" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame</a></li>
<li>comment&#160;:&#160;<a class="el" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">DecodeFrame</a>, <a class="el" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">DecodeSignal</a>, <a class="el" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">FrameInfo</a>, <a class="el" href="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5">SignalInfo</a></li>
</ul>
@@ -98,31 +105,15 @@
<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
<li>data&#160;:&#160;<a class="el" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">RawCanFrame</a></li>
<li>Decode()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">DbcDecoder</a></li>
<li>DecodedFrameValue()&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b">DecodedFrameValue</a></li>
<li>DecodedSignalValue()&#160;:&#160;<a class="el" href="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf">DecodedSignalValue</a></li>
<li>DecodeFrame()&#160;:&#160;<a class="el" href="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4">DecodeFrame</a></li>
<li>DecodeSignal()&#160;:&#160;<a class="el" href="structDecodeSignal.html#a93fd97267e2614979440261628e493f5">DecodeSignal</a></li>
<li>definition&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">DecodedFrameValue</a>, <a class="el" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">DecodedSignalValue</a></li>
<li>dlc&#160;:&#160;<a class="el" href="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9">FrameInfo</a></li>
</ul>
<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
<li>ExtractIntel()&#160;:&#160;<a class="el" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">DbcDecoder</a></li>
<li>ExtractMotorola()&#160;:&#160;<a class="el" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">DbcDecoder</a></li>
<li>ExtractUnsigned()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">DbcDecoder</a></li>
</ul>
<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
<li>factor&#160;:&#160;<a class="el" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">SignalInfo</a></li>
<li>FindFrame()&#160;:&#160;<a class="el" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">DbcDecoder</a></li>
<li>FindFrameById()&#160;:&#160;<a class="el" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">DbcParser</a></li>
<li>FindSignalByName()&#160;:&#160;<a class="el" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">DbcParser</a></li>
<li>frameIndexByKey&#160;:&#160;<a class="el" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">DecodeDatabase</a></li>
<li>FrameInfo()&#160;:&#160;<a class="el" href="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61">FrameInfo</a></li>
<li>FrameKey()&#160;:&#160;<a class="el" href="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14">FrameKey</a></li>
<li>frames&#160;:&#160;<a class="el" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase</a>, <a class="el" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase</a></li>
<li>frames&#160;:&#160;<a class="el" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase</a></li>
</ul>
@@ -142,11 +133,8 @@
<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
<li>IsCommentLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">DbcParser</a></li>
<li>isExtended&#160;:&#160;<a class="el" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo</a>, <a class="el" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">FrameKey</a>, <a class="el" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame</a></li>
<li>IsFrameLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">DbcParser</a></li>
<li>isExtended&#160;:&#160;<a class="el" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo</a>, <a class="el" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame</a></li>
<li>isLittleEndian&#160;:&#160;<a class="el" href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">SignalInfo</a></li>
<li>IsSignalLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">DbcParser</a></li>
<li>isSigned&#160;:&#160;<a class="el" href="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f">SignalInfo</a></li>
</ul>
@@ -157,11 +145,6 @@
<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
<li>m_children&#160;:&#160;<a class="el" href="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351">TreeNode</a></li>
<li>m_frame&#160;:&#160;<a class="el" href="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2">TreeNode</a></li>
<li>m_name&#160;:&#160;<a class="el" href="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8">TreeNode</a></li>
<li>m_signal&#160;:&#160;<a class="el" href="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386">TreeNode</a></li>
<li>m_type&#160;:&#160;<a class="el" href="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224">TreeNode</a></li>
<li>maximum&#160;:&#160;<a class="el" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52">SignalInfo</a></li>
<li>minimum&#160;:&#160;<a class="el" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b">SignalInfo</a></li>
</ul>
@@ -169,40 +152,29 @@
<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
<li>name&#160;:&#160;<a class="el" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">DecodeFrame</a>, <a class="el" href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">DecodeSignal</a>, <a class="el" href="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb">FrameInfo</a>, <a class="el" href="structSignalInfo.html#a379e422a00cad56f896cacf60455b088">SignalInfo</a></li>
<li>NormalizeCanId()&#160;:&#160;<a class="el" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">DbcParser</a></li>
</ul>
<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
<li>offset&#160;:&#160;<a class="el" href="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e">SignalInfo</a></li>
<li>operator()()&#160;:&#160;<a class="el" href="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f">FrameKeyHasher</a></li>
<li>operator=()&#160;:&#160;<a class="el" href="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa">TreeNode</a></li>
<li>operator==()&#160;:&#160;<a class="el" href="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f">FrameKey</a></li>
</ul>
<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
<li>ParseCommentLine()&#160;:&#160;<a class="el" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">DbcParser</a></li>
<li>ParseFile()&#160;:&#160;<a class="el" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">DbcParser</a></li>
<li>ParseFrameLine()&#160;:&#160;<a class="el" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">DbcParser</a></li>
<li>ParseSignalLine()&#160;:&#160;<a class="el" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">DbcParser</a></li>
<li>pgn&#160;:&#160;<a class="el" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">FrameInfo</a></li>
<li>physicalValue&#160;:&#160;<a class="el" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">DecodedSignalValue</a></li>
<li>public&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8">DecodedFrameValue</a>, <a class="el" href="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084">FrameInfo</a></li>
</ul>
<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
<li>RawCanFrame()&#160;:&#160;<a class="el" href="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7">RawCanFrame</a></li>
<li>rawValue&#160;:&#160;<a class="el" href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">DecodedSignalValue</a></li>
<li>receivers&#160;:&#160;<a class="el" href="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3">SignalInfo</a></li>
</ul>
<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
<li>SignalInfo()&#160;:&#160;<a class="el" href="structSignalInfo.html#aa2d2cd238118015258e271dce92a971e">SignalInfo</a></li>
<li>signals&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">DecodedFrameValue</a>, <a class="el" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo</a></li>
<li>SignExtend()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">DbcDecoder</a></li>
<li>SplitReceivers()&#160;:&#160;<a class="el" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">DbcParser</a></li>
<li>startBit&#160;:&#160;<a class="el" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ace290724f9801521609aedaa946d61f1">SignalInfo</a></li>
</ul>
@@ -210,8 +182,6 @@
<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
<li>transmitter&#160;:&#160;<a class="el" href="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8">FrameInfo</a></li>
<li>TreeNode()&#160;:&#160;<a class="el" href="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d">TreeNode</a></li>
<li>Trim()&#160;:&#160;<a class="el" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">DbcParser</a></li>
<li>TryExtractPgn()&#160;:&#160;<a class="el" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">DbcParser</a></li>
</ul>
@@ -224,15 +194,13 @@
<li>valid&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">DecodedFrameValue</a>, <a class="el" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">DecodedSignalValue</a></li>
<li>valueType&#160;:&#160;<a class="el" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">DecodeSignal</a></li>
</ul>
<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
<li>~TreeNode()&#160;:&#160;<a class="el" href="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570">TreeNode</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Class Members - Functions</title>
<title>DBC Framework: Class Members - Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,149 +35,75 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li><a href="functions.html"><span>All</span></a></li>
<li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
<li><a href="functions_vars.html"><span>Variables</span></a></li>
</ul>
</div>
<div id="navrow4" class="tabs3">
<ul class="tablist">
<li><a href="#index_a"><span>a</span></a></li>
<li><a href="#index_b"><span>b</span></a></li>
<li><a href="#index_d"><span>d</span></a></li>
<li><a href="#index_e"><span>e</span></a></li>
<li><a href="#index_f"><span>f</span></a></li>
<li><a href="#index_g"><span>g</span></a></li>
<li><a href="#index_i"><span>i</span></a></li>
<li><a href="#index_n"><span>n</span></a></li>
<li><a href="#index_o"><span>o</span></a></li>
<li><a href="#index_p"><span>p</span></a></li>
<li><a href="#index_r"><span>r</span></a></li>
<li><a href="#index_s"><span>s</span></a></li>
<li><a href="#index_t"><span>t</span></a></li>
<li class="current"><a href="#index__7E"><span>~</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('functions_func.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;
<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
&#160;<ul>
<li>AddChild()&#160;:&#160;<a class="el" href="classTreeNode.html#a6161f2ebb92184eab4215d121870e788">TreeNode</a></li>
</ul>
<h3><a id="index_b" name="index_b"></a>- b -</h3><ul>
<li>Build()&#160;:&#160;<a class="el" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">DbcDecodeBuilder</a>, <a class="el" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b">DbcTreeBuilder</a></li>
</ul>
<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
<li>Decode()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">DbcDecoder</a></li>
<li>DecodedFrameValue()&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b">DecodedFrameValue</a></li>
<li>DecodedSignalValue()&#160;:&#160;<a class="el" href="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf">DecodedSignalValue</a></li>
<li>DecodeFrame()&#160;:&#160;<a class="el" href="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4">DecodeFrame</a></li>
<li>DecodeSignal()&#160;:&#160;<a class="el" href="structDecodeSignal.html#a93fd97267e2614979440261628e493f5">DecodeSignal</a></li>
</ul>
<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
<li>ExtractIntel()&#160;:&#160;<a class="el" href="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872">DbcDecoder</a></li>
<li>ExtractMotorola()&#160;:&#160;<a class="el" href="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9">DbcDecoder</a></li>
<li>ExtractUnsigned()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5">DbcDecoder</a></li>
</ul>
<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
<li>FindFrame()&#160;:&#160;<a class="el" href="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da">DbcDecoder</a></li>
<li>FindFrameById()&#160;:&#160;<a class="el" href="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9">DbcParser</a></li>
<li>FindSignalByName()&#160;:&#160;<a class="el" href="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a">DbcParser</a></li>
<li>FrameInfo()&#160;:&#160;<a class="el" href="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61">FrameInfo</a></li>
<li>FrameKey()&#160;:&#160;<a class="el" href="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14">FrameKey</a></li>
</ul>
<h3><a id="index_g" name="index_g"></a>- g -</h3><ul>
<li>GetChild()&#160;:&#160;<a class="el" href="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6">TreeNode</a></li>
<li>GetChildCount()&#160;:&#160;<a class="el" href="classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea">TreeNode</a></li>
<li>GetFrame()&#160;:&#160;<a class="el" href="classTreeNode.html#afc503b40004764163605d6dbdb4ef811">TreeNode</a></li>
<li>GetName()&#160;:&#160;<a class="el" href="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18">TreeNode</a></li>
<li>GetSignal()&#160;:&#160;<a class="el" href="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1">TreeNode</a></li>
<li>GetType()&#160;:&#160;<a class="el" href="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9">TreeNode</a></li>
</ul>
<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
<li>IsCommentLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb">DbcParser</a></li>
<li>IsFrameLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b">DbcParser</a></li>
<li>IsSignalLine()&#160;:&#160;<a class="el" href="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1">DbcParser</a></li>
</ul>
<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
<li>NormalizeCanId()&#160;:&#160;<a class="el" href="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf">DbcParser</a></li>
</ul>
<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
<li>operator()()&#160;:&#160;<a class="el" href="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f">FrameKeyHasher</a></li>
<li>operator=()&#160;:&#160;<a class="el" href="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa">TreeNode</a></li>
<li>operator==()&#160;:&#160;<a class="el" href="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f">FrameKey</a></li>
</ul>
<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
<li>ParseCommentLine()&#160;:&#160;<a class="el" href="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c">DbcParser</a></li>
<li>ParseFile()&#160;:&#160;<a class="el" href="classDbcParser.html#aef72826942c9095d653fafa435855e56">DbcParser</a></li>
<li>ParseFrameLine()&#160;:&#160;<a class="el" href="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a">DbcParser</a></li>
<li>ParseSignalLine()&#160;:&#160;<a class="el" href="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2">DbcParser</a></li>
</ul>
<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
<li>RawCanFrame()&#160;:&#160;<a class="el" href="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7">RawCanFrame</a></li>
</ul>
<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
<li>SignalInfo()&#160;:&#160;<a class="el" href="structSignalInfo.html#aa2d2cd238118015258e271dce92a971e">SignalInfo</a></li>
<li>SignExtend()&#160;:&#160;<a class="el" href="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42">DbcDecoder</a></li>
<li>SplitReceivers()&#160;:&#160;<a class="el" href="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529">DbcParser</a></li>
</ul>
<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
<li>TreeNode()&#160;:&#160;<a class="el" href="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d">TreeNode</a></li>
<li>Trim()&#160;:&#160;<a class="el" href="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b">DbcParser</a></li>
<li>TryExtractPgn()&#160;:&#160;<a class="el" href="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324">DbcParser</a></li>
</ul>
<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
<li>~TreeNode()&#160;:&#160;<a class="el" href="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570">TreeNode</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Class Members - Variables</title>
<title>DBC Framework: Class Members - Variables</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,50 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li><a href="functions.html"><span>All</span></a></li>
<li><a href="functions_func.html"><span>Functions</span></a></li>
<li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
</ul>
</div>
<div id="navrow4" class="tabs3">
<ul class="tablist">
<li><a href="#index_b"><span>b</span></a></li>
<li><a href="#index_c"><span>c</span></a></li>
<li><a href="#index_d"><span>d</span></a></li>
<li><a href="#index_f"><span>f</span></a></li>
<li><a href="#index_h"><span>h</span></a></li>
<li><a href="#index_i"><span>i</span></a></li>
<li><a href="#index_l"><span>l</span></a></li>
<li><a href="#index_m"><span>m</span></a></li>
<li><a href="#index_n"><span>n</span></a></li>
<li><a href="#index_o"><span>o</span></a></li>
<li><a href="#index_p"><span>p</span></a></li>
<li><a href="#index_r"><span>r</span></a></li>
<li><a href="#index_s"><span>s</span></a></li>
<li><a href="#index_t"><span>t</span></a></li>
<li><a href="#index_u"><span>u</span></a></li>
<li class="current"><a href="#index_v"><span>v</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('functions_vars.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;
@@ -80,7 +91,7 @@
<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
<li>canId&#160;:&#160;<a class="el" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">FrameInfo</a>, <a class="el" href="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4">FrameKey</a>, <a class="el" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame</a></li>
<li>canId&#160;:&#160;<a class="el" href="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e">FrameInfo</a>, <a class="el" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">RawCanFrame</a></li>
<li>comment&#160;:&#160;<a class="el" href="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22">DecodeFrame</a>, <a class="el" href="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473">DecodeSignal</a>, <a class="el" href="structFrameInfo.html#ace75121294f9d89b762080ab5643293c">FrameInfo</a>, <a class="el" href="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5">SignalInfo</a></li>
</ul>
@@ -94,8 +105,7 @@
<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
<li>factor&#160;:&#160;<a class="el" href="structDecodeSignal.html#a428c39913a366a8476dd291061354391">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499">SignalInfo</a></li>
<li>frameIndexByKey&#160;:&#160;<a class="el" href="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5">DecodeDatabase</a></li>
<li>frames&#160;:&#160;<a class="el" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase</a>, <a class="el" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase</a></li>
<li>frames&#160;:&#160;<a class="el" href="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b">DbcDatabase</a></li>
</ul>
@@ -105,7 +115,7 @@
<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
<li>isExtended&#160;:&#160;<a class="el" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo</a>, <a class="el" href="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145">FrameKey</a>, <a class="el" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame</a></li>
<li>isExtended&#160;:&#160;<a class="el" href="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf">FrameInfo</a>, <a class="el" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">RawCanFrame</a></li>
<li>isLittleEndian&#160;:&#160;<a class="el" href="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c">SignalInfo</a></li>
<li>isSigned&#160;:&#160;<a class="el" href="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f">SignalInfo</a></li>
</ul>
@@ -117,11 +127,6 @@
<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
<li>m_children&#160;:&#160;<a class="el" href="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351">TreeNode</a></li>
<li>m_frame&#160;:&#160;<a class="el" href="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2">TreeNode</a></li>
<li>m_name&#160;:&#160;<a class="el" href="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8">TreeNode</a></li>
<li>m_signal&#160;:&#160;<a class="el" href="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386">TreeNode</a></li>
<li>m_type&#160;:&#160;<a class="el" href="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224">TreeNode</a></li>
<li>maximum&#160;:&#160;<a class="el" href="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52">SignalInfo</a></li>
<li>minimum&#160;:&#160;<a class="el" href="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b">SignalInfo</a></li>
</ul>
@@ -140,6 +145,7 @@
<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
<li>pgn&#160;:&#160;<a class="el" href="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943">FrameInfo</a></li>
<li>physicalValue&#160;:&#160;<a class="el" href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">DecodedSignalValue</a></li>
<li>public&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8">DecodedFrameValue</a>, <a class="el" href="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084">FrameInfo</a></li>
</ul>
@@ -150,7 +156,6 @@
<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
<li>signals&#160;:&#160;<a class="el" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">DecodedFrameValue</a>, <a class="el" href="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036">DecodeFrame</a>, <a class="el" href="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce">FrameInfo</a></li>
<li>startBit&#160;:&#160;<a class="el" href="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d">DecodeSignal</a>, <a class="el" href="structSignalInfo.html#ace290724f9801521609aedaa946d61f1">SignalInfo</a></li>
</ul>
@@ -170,9 +175,12 @@
<li>valueType&#160;:&#160;<a class="el" href="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8">DecodeSignal</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: File Members</title>
<title>DBC Framework: File Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,42 +35,66 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li class="current"><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li class="current"><a href="globals.html"><span>All</span></a></li>
<li><a href="globals_func.html"><span>Functions</span></a></li>
<li><a href="globals_enum.html"><span>Enumerations</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('globals.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
<div class="textblock">Here is a list of all file members with links to the files they belong to:</div><ul>
<div class="textblock">Here is a list of all documented file members with links to the documentation:</div><ul>
<li>ByteOrder&#160;:&#160;<a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">decode_database.h</a></li>
<li>main()&#160;:&#160;<a class="el" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main.cpp</a></li>
<li>NodeType&#160;:&#160;<a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16">tree_node.h</a></li>
<li>PrintDecodedFrame()&#160;:&#160;<a class="el" href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f">main.cpp</a></li>
<li>PrintTree()&#160;:&#160;<a class="el" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">main.cpp</a></li>
<li>ValueType&#160;:&#160;<a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">decode_database.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: File Members</title>
<title>DBC Framework: File Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,29 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li class="current"><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<div id="navrow3" class="tabs2">
<ul class="tablist">
<li><a href="globals.html"><span>All</span></a></li>
<li><a href="globals_func.html"><span>Functions</span></a></li>
<li class="current"><a href="globals_enum.html"><span>Enumerations</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('globals_enum.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="contents">
&#160;<ul>
<li>ByteOrder&#160;:&#160;<a class="el" href="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">decode_database.h</a></li>
@@ -57,9 +89,12 @@
<li>ValueType&#160;:&#160;<a class="el" href="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1">decode_database.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

158
docs/html/graph_legend.html Normal file
View File

@@ -0,0 +1,158 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC Framework: Graph Legend</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('graph_legend.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">Graph Legend</div></div>
</div><!--header-->
<div class="contents">
<p >This page explains how to interpret the graphs that are generated by doxygen.</p>
<p >Consider the following example: </p><div class="fragment"><div class="line"><span class="comment">/*! Invisible class because of truncation */</span></div>
<div class="line"><span class="keyword">class </span>Invisible { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Truncated class, inheritance relation is hidden */</span></div>
<div class="line"><span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };</div>
<div class="line"> </div>
<div class="line"><span class="comment">/* Class not documented with doxygen comments */</span></div>
<div class="line"><span class="keyword">class </span>Undocumented { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Class that is inherited using public inheritance */</span></div>
<div class="line"><span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! A template class */</span></div>
<div class="line"><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Class that is inherited using protected inheritance */</span></div>
<div class="line"><span class="keyword">class </span>ProtectedBase { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Class that is inherited using private inheritance */</span></div>
<div class="line"><span class="keyword">class </span>PrivateBase { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Class that is used by the Inherited class */</span></div>
<div class="line"><span class="keyword">class </span>Used { };</div>
<div class="line"><span class="comment"></span> </div>
<div class="line"><span class="comment">/*! Super class that inherits a number of other classes */</span></div>
<div class="line"><span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,</div>
<div class="line"> <span class="keyword">protected</span> ProtectedBase,</div>
<div class="line"> <span class="keyword">private</span> PrivateBase,</div>
<div class="line"> <span class="keyword">public</span> Undocumented,</div>
<div class="line"> <span class="keyword">public</span> Templ&lt;int&gt;</div>
<div class="line">{</div>
<div class="line"> <span class="keyword">private</span>:</div>
<div class="line"> Used *m_usedClass;</div>
<div class="line">};</div>
</div><!-- fragment --><p> This will result in the following graph:</p>
<center><iframe scrolling="no" frameborder="0" src="graph_legend.svg" width="726" height="212"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </center><p >The boxes in the above graph have the following meaning: </p>
<ul>
<li>
A filled gray box represents the struct or class for which the graph is generated. </li>
<li>
A box with a black border denotes a documented struct or class. </li>
<li>
A box with a gray border denotes an undocumented struct or class. </li>
<li>
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. </li>
</ul>
<p >The arrows have the following meaning: </p>
<ul>
<li>
A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
<li>
A dark green arrow is used for protected inheritance. </li>
<li>
A dark red arrow is used for private inheritance. </li>
<li>
A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible. </li>
<li>
A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance. </li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1 @@
2949d8d683b49299ad5e82dbf5d1be6c

117
docs/html/graph_legend.svg Normal file
View File

@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: Graph Legend Pages: 1 -->
<svg width="544pt" height="159pt"
viewBox="0.00 0.00 543.50 159.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 155)">
<title>Graph Legend</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-155 539.5,-155 539.5,4 -4,4"/>
<!-- Node9 -->
<g id="node1" class="node">
<title>Node9</title>
<polygon fill="#bfbfbf" stroke="black" points="311,-19 251,-19 251,0 311,0 311,-19"/>
<text text-anchor="middle" x="281" y="-7" font-family="Helvetica,sans-Serif" font-size="10.00">Inherited</text>
</g>
<!-- Node10 -->
<g id="node2" class="node">
<title>Node10</title>
<polygon fill="none" stroke="black" points="70,-85 0,-85 0,-66 70,-66 70,-85"/>
<text text-anchor="middle" x="35" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">PublicBase</text>
</g>
<!-- Node10&#45;&gt;Node9 -->
<g id="edge1" class="edge">
<title>Node10&#45;&gt;Node9</title>
<path fill="none" stroke="midnightblue" d="M77.7,-63.39C127.22,-50.51 207.6,-29.59 250.97,-18.31"/>
<polygon fill="midnightblue" stroke="midnightblue" points="76.72,-60.03 67.92,-65.94 78.48,-66.8 76.72,-60.03"/>
</g>
<!-- Node11 -->
<g id="node3" class="node">
<title>Node11</title>
<polygon fill="none" stroke="red" points="67,-151 3,-151 3,-132 67,-132 67,-151"/>
<text text-anchor="middle" x="35" y="-139" font-family="Helvetica,sans-Serif" font-size="10.00">Truncated</text>
</g>
<!-- Node11&#45;&gt;Node10 -->
<g id="edge2" class="edge">
<title>Node11&#45;&gt;Node10</title>
<path fill="none" stroke="midnightblue" d="M35,-121.58C35,-109.63 35,-94.72 35,-85.41"/>
<polygon fill="midnightblue" stroke="midnightblue" points="31.5,-121.87 35,-131.87 38.5,-121.87 31.5,-121.87"/>
</g>
<!-- Node13 -->
<g id="node4" class="node">
<title>Node13</title>
<polygon fill="none" stroke="black" points="175.5,-85 88.5,-85 88.5,-66 175.5,-66 175.5,-85"/>
<text text-anchor="middle" x="132" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">ProtectedBase</text>
</g>
<!-- Node13&#45;&gt;Node9 -->
<g id="edge3" class="edge">
<title>Node13&#45;&gt;Node9</title>
<path fill="none" stroke="darkgreen" d="M161.43,-61.86C190.79,-49.25 235.12,-30.21 260.75,-19.2"/>
<polygon fill="darkgreen" stroke="darkgreen" points="159.9,-58.71 152.09,-65.87 162.66,-65.14 159.9,-58.71"/>
</g>
<!-- Node14 -->
<g id="node5" class="node">
<title>Node14</title>
<polygon fill="none" stroke="black" points="268.5,-85 193.5,-85 193.5,-66 268.5,-66 268.5,-85"/>
<text text-anchor="middle" x="231" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">PrivateBase</text>
</g>
<!-- Node14&#45;&gt;Node9 -->
<g id="edge4" class="edge">
<title>Node14&#45;&gt;Node9</title>
<path fill="none" stroke="#8b1a1a" d="M244.07,-57.77C253.66,-45.49 266.31,-29.3 274.04,-19.41"/>
<polygon fill="#8b1a1a" stroke="#8b1a1a" points="241.14,-55.83 237.74,-65.87 246.66,-60.14 241.14,-55.83"/>
</g>
<!-- Node15 -->
<g id="node6" class="node">
<title>Node15</title>
<polygon fill="none" stroke="#bfbfbf" points="377.5,-85 286.5,-85 286.5,-66 377.5,-66 377.5,-85"/>
<text text-anchor="middle" x="332" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">Undocumented</text>
</g>
<!-- Node15&#45;&gt;Node9 -->
<g id="edge5" class="edge">
<title>Node15&#45;&gt;Node9</title>
<path fill="none" stroke="midnightblue" d="M318.67,-57.77C308.88,-45.49 295.98,-29.3 288.1,-19.41"/>
<polygon fill="midnightblue" stroke="midnightblue" points="316.15,-60.23 325.12,-65.87 321.63,-55.87 316.15,-60.23"/>
</g>
<!-- Node16 -->
<g id="node7" class="node">
<title>Node16</title>
<polygon fill="none" stroke="black" points="476.5,-85 395.5,-85 395.5,-66 476.5,-66 476.5,-85"/>
<text text-anchor="middle" x="436" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">Templ&lt; int &gt;</text>
</g>
<!-- Node16&#45;&gt;Node9 -->
<g id="edge6" class="edge">
<title>Node16&#45;&gt;Node9</title>
<path fill="none" stroke="midnightblue" d="M405.78,-62.02C375.24,-49.41 328.84,-30.25 302.07,-19.2"/>
<polygon fill="midnightblue" stroke="midnightblue" points="404.52,-65.29 415.1,-65.87 407.19,-58.82 404.52,-65.29"/>
</g>
<!-- Node17 -->
<g id="node8" class="node">
<title>Node17</title>
<polygon fill="none" stroke="black" points="473,-151 399,-151 399,-132 473,-132 473,-151"/>
<text text-anchor="middle" x="436" y="-139" font-family="Helvetica,sans-Serif" font-size="10.00">Templ&lt; T &gt;</text>
</g>
<!-- Node17&#45;&gt;Node16 -->
<g id="edge7" class="edge">
<title>Node17&#45;&gt;Node16</title>
<path fill="none" stroke="orange" stroke-dasharray="5,2" d="M436,-121.58C436,-109.63 436,-94.72 436,-85.41"/>
<polygon fill="orange" stroke="orange" points="432.5,-121.87 436,-131.87 439.5,-121.87 432.5,-121.87"/>
<text text-anchor="middle" x="454" y="-106" font-family="Helvetica,sans-Serif" font-size="10.00">&lt; int &gt;</text>
</g>
<!-- Node18 -->
<g id="node9" class="node">
<title>Node18</title>
<polygon fill="none" stroke="black" points="535.5,-85 494.5,-85 494.5,-66 535.5,-66 535.5,-85"/>
<text text-anchor="middle" x="515" y="-73" font-family="Helvetica,sans-Serif" font-size="10.00">Used</text>
</g>
<!-- Node18&#45;&gt;Node9 -->
<g id="edge8" class="edge">
<title>Node18&#45;&gt;Node9</title>
<path fill="none" stroke="#9a32cd" stroke-dasharray="5,2" d="M484.52,-65.62C417.32,-46.74 349.44,-28.6 311.27,-18.49"/>
<polygon fill="#9a32cd" stroke="#9a32cd" points="483.85,-69.07 494.42,-68.41 485.74,-62.33 483.85,-69.07"/>
<text text-anchor="middle" x="450.5" y="-40" font-family="Helvetica,sans-Serif" font-size="10.00">m_usedClass</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.7 KiB

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Main Page</title>
<title>DBC Framework: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,24 +35,64 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('index.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">DBC framework Documentation</div></div>
<div class="headertitle"><div class="title">DBC Framework Documentation</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -1,11 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<QtHelpProject version="1.0">
<namespace>org.doxygen.Project</namespace>
<namespace>ca.himro.dbcframework</namespace>
<virtualFolder>doc</virtualFolder>
<customFilter name="DBC Framework">
</customFilter>
<filterSection>
<filterAttribute>dbc</filterAttribute>
<filterAttribute>framework</filterAttribute>
<filterAttribute>c++</filterAttribute>
<filterAttribute>qt</filterAttribute>
<filterAttribute>doxygen</filterAttribute>
<toc>
<section title="DBC framework" ref="index.html">
<section title="DBC Framework" ref="index.html">
<section title="DBC Parser and Runtime Decode Module Documentation" ref="md_README.html">
<section title="Overview" ref="md_README.html#autotoc_md1"/>
<section title="High-Level Architecture" ref="md_README.html#autotoc_md3">
@@ -74,17 +80,6 @@
<section title="Runtime decode representation" ref="md_README.html#autotoc_md96"/>
</section>
</section>
<section title="Namespaces" ref="namespaces.html">
<section title="Namespace List" ref="namespaces.html">
<section title="anonymous_namespace{dbc_parser.cpp}" ref="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html">
<section title="TrimText" ref="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb"/>
</section>
</section>
<section title="Namespace Members" ref="namespacemembers.html">
<section title="All" ref="namespacemembers.html"/>
<section title="Functions" ref="namespacemembers_func.html"/>
</section>
</section>
<section title="Classes" ref="annotated.html">
<section title="Class List" ref="annotated.html">
<section title="DbcDatabase" ref="structDbcDatabase.html">
@@ -94,140 +89,99 @@
<section title="Build" ref="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b"/>
</section>
<section title="DbcDecoder" ref="classDbcDecoder.html">
<section title="Decode" ref="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"/>
<section title="ExtractIntel" ref="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872"/>
<section title="ExtractMotorola" ref="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9"/>
<section title="ExtractUnsigned" ref="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5"/>
<section title="FindFrame" ref="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da"/>
<section title="SignExtend" ref="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42"/>
<section title="Decode" ref="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"/>
</section>
<section title="DbcParser" ref="classDbcParser.html">
<section title="FindFrameById" ref="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9"/>
<section title="FindSignalByName" ref="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a"/>
<section title="IsCommentLine" ref="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb"/>
<section title="IsFrameLine" ref="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b"/>
<section title="IsSignalLine" ref="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1"/>
<section title="NormalizeCanId" ref="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf"/>
<section title="ParseCommentLine" ref="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c"/>
<section title="ParseFile" ref="classDbcParser.html#aef72826942c9095d653fafa435855e56"/>
<section title="ParseFrameLine" ref="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a"/>
<section title="ParseSignalLine" ref="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2"/>
<section title="SplitReceivers" ref="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529"/>
<section title="Trim" ref="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b"/>
<section title="TryExtractPgn" ref="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324"/>
</section>
<section title="DbcTreeBuilder" ref="classDbcTreeBuilder.html">
<section title="Build" ref="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b"/>
</section>
<section title="DecodeDatabase" ref="structDecodeDatabase.html">
<section title="frameIndexByKey" ref="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5"/>
<section title="frames" ref="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072"/>
</section>
<section title="DecodedFrameValue" ref="structDecodedFrameValue.html">
<section title="DecodedFrameValue" ref="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b"/>
<section title="definition" ref="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c"/>
<section title="signals" ref="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3"/>
<section title="public" ref="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8"/>
<section title="valid" ref="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0"/>
</section>
<section title="DecodedSignalValue" ref="structDecodedSignalValue.html">
<section title="DecodedSignalValue" ref="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf"/>
<section title="definition" ref="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7"/>
<section title="physicalValue" ref="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"/>
<section title="rawValue" ref="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec"/>
<section title="physicalValue" ref="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"/>
<section title="valid" ref="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686"/>
</section>
<section title="DecodeFrame" ref="structDecodeFrame.html">
<section title="DecodeFrame" ref="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4"/>
<section title="canId" ref="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"/>
<section title="comment" ref="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"/>
<section title="dlc" ref="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"/>
<section title="hasPgn" ref="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"/>
<section title="isExtended" ref="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"/>
<section title="name" ref="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579"/>
<section title="canId" ref="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"/>
<section title="isExtended" ref="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"/>
<section title="dlc" ref="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"/>
<section title="pgn" ref="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23"/>
<section title="signals" ref="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036"/>
<section title="hasPgn" ref="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"/>
<section title="transmitter" ref="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9"/>
<section title="comment" ref="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"/>
<section title="public" ref="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14"/>
</section>
<section title="DecodeSignal" ref="structDecodeSignal.html">
<section title="DecodeSignal" ref="structDecodeSignal.html#a93fd97267e2614979440261628e493f5"/>
<section title="byteOrder" ref="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"/>
<section title="comment" ref="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"/>
<section title="factor" ref="structDecodeSignal.html#a428c39913a366a8476dd291061354391"/>
<section title="length" ref="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"/>
<section title="maximum" ref="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"/>
<section title="minimum" ref="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"/>
<section title="name" ref="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780"/>
<section title="offset" ref="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"/>
<section title="receivers" ref="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"/>
<section title="startBit" ref="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d"/>
<section title="unit" ref="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"/>
<section title="length" ref="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"/>
<section title="byteOrder" ref="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"/>
<section title="valueType" ref="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8"/>
<section title="factor" ref="structDecodeSignal.html#a428c39913a366a8476dd291061354391"/>
<section title="offset" ref="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"/>
<section title="minimum" ref="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"/>
<section title="maximum" ref="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"/>
<section title="unit" ref="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"/>
<section title="receivers" ref="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"/>
<section title="comment" ref="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"/>
</section>
<section title="FrameInfo" ref="structFrameInfo.html">
<section title="FrameInfo" ref="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61"/>
<section title="canId" ref="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"/>
<section title="comment" ref="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"/>
<section title="dlc" ref="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"/>
<section title="hasPgn" ref="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"/>
<section title="isExtended" ref="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"/>
<section title="name" ref="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb"/>
<section title="canId" ref="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"/>
<section title="isExtended" ref="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"/>
<section title="pgn" ref="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943"/>
<section title="signals" ref="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce"/>
<section title="hasPgn" ref="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"/>
<section title="dlc" ref="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"/>
<section title="transmitter" ref="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8"/>
<section title="comment" ref="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"/>
<section title="public" ref="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084"/>
</section>
<section title="FrameKey" ref="structFrameKey.html">
<section title="FrameKey" ref="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14"/>
<section title="FrameKey" ref="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670"/>
<section title="operator==" ref="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f"/>
<section title="canId" ref="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4"/>
<section title="isExtended" ref="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145"/>
</section>
<section title="FrameKeyHasher" ref="structFrameKeyHasher.html">
<section title="operator()" ref="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f"/>
</section>
<section title="RawCanFrame" ref="structRawCanFrame.html">
<section title="RawCanFrame" ref="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7"/>
<section title="canId" ref="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4"/>
<section title="data" ref="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"/>
<section title="isExtended" ref="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7"/>
<section title="data" ref="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"/>
</section>
<section title="SignalInfo" ref="structSignalInfo.html">
<section title="SignalInfo" ref="structSignalInfo.html#aa2d2cd238118015258e271dce92a971e"/>
<section title="comment" ref="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5"/>
<section title="factor" ref="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499"/>
<section title="name" ref="structSignalInfo.html#a379e422a00cad56f896cacf60455b088"/>
<section title="startBit" ref="structSignalInfo.html#ace290724f9801521609aedaa946d61f1"/>
<section title="length" ref="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa"/>
<section title="isLittleEndian" ref="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c"/>
<section title="isSigned" ref="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f"/>
<section title="length" ref="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa"/>
<section title="maximum" ref="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52"/>
<section title="minimum" ref="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b"/>
<section title="name" ref="structSignalInfo.html#a379e422a00cad56f896cacf60455b088"/>
<section title="factor" ref="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499"/>
<section title="offset" ref="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e"/>
<section title="receivers" ref="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3"/>
<section title="startBit" ref="structSignalInfo.html#ace290724f9801521609aedaa946d61f1"/>
<section title="minimum" ref="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b"/>
<section title="maximum" ref="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52"/>
<section title="unit" ref="structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01"/>
<section title="receivers" ref="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3"/>
<section title="comment" ref="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5"/>
</section>
<section title="TreeNode" ref="classTreeNode.html">
<section title="TreeNode" ref="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d"/>
<section title="TreeNode" ref="classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc"/>
<section title="TreeNode" ref="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae"/>
<section title="~TreeNode" ref="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570"/>
<section title="TreeNode" ref="classTreeNode.html#a4d3054a033accf3e38ea132002fc35ff"/>
<section title="TreeNode" ref="classTreeNode.html#a35724af755b5d0c43de40a723ef81ec1"/>
<section title="AddChild" ref="classTreeNode.html#a6161f2ebb92184eab4215d121870e788"/>
<section title="GetChild" ref="classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f"/>
<section title="GetChild" ref="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6"/>
<section title="GetChildCount" ref="classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea"/>
<section title="GetFrame" ref="classTreeNode.html#afc503b40004764163605d6dbdb4ef811"/>
<section title="GetName" ref="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18"/>
<section title="GetSignal" ref="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1"/>
<section title="GetChild" ref="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6"/>
<section title="GetChild" ref="classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f"/>
<section title="GetType" ref="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9"/>
<section title="operator=" ref="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa"/>
<section title="operator=" ref="classTreeNode.html#a88fbcbec9c64d888b19c5edb95059a95"/>
<section title="m_children" ref="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351"/>
<section title="m_frame" ref="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2"/>
<section title="m_name" ref="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8"/>
<section title="m_signal" ref="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386"/>
<section title="m_type" ref="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224"/>
<section title="GetName" ref="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18"/>
<section title="GetFrame" ref="classTreeNode.html#afc503b40004764163605d6dbdb4ef811"/>
<section title="GetSignal" ref="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1"/>
</section>
</section>
<section title="Class Index" ref="classes.html"/>
@@ -253,51 +207,30 @@
<section title="dbc_decoder.cpp" ref="dbc__decoder_8cpp.html"/>
<section title="dbc_decoder.h" ref="dbc__decoder_8h.html">
<section title="RawCanFrame" ref="structRawCanFrame.html">
<section title="RawCanFrame" ref="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7"/>
<section title="canId" ref="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4"/>
<section title="data" ref="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"/>
<section title="isExtended" ref="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7"/>
<section title="data" ref="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"/>
</section>
<section title="DecodedSignalValue" ref="structDecodedSignalValue.html">
<section title="DecodedSignalValue" ref="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf"/>
<section title="definition" ref="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7"/>
<section title="physicalValue" ref="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"/>
<section title="rawValue" ref="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec"/>
<section title="physicalValue" ref="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"/>
<section title="valid" ref="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686"/>
</section>
<section title="DecodedFrameValue" ref="structDecodedFrameValue.html">
<section title="DecodedFrameValue" ref="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b"/>
<section title="definition" ref="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c"/>
<section title="signals" ref="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3"/>
<section title="public" ref="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8"/>
<section title="valid" ref="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0"/>
</section>
<section title="DbcDecoder" ref="classDbcDecoder.html">
<section title="Decode" ref="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"/>
<section title="ExtractIntel" ref="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872"/>
<section title="ExtractMotorola" ref="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9"/>
<section title="ExtractUnsigned" ref="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5"/>
<section title="FindFrame" ref="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da"/>
<section title="SignExtend" ref="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42"/>
<section title="Decode" ref="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"/>
</section>
</section>
<section title="dbc_parser.cpp" ref="dbc__parser_8cpp.html">
<section title="TrimText" ref="dbc__parser_8cpp.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb"/>
</section>
<section title="dbc_parser.cpp" ref="dbc__parser_8cpp.html"/>
<section title="dbc_parser.h" ref="dbc__parser_8h.html">
<section title="DbcParser" ref="classDbcParser.html">
<section title="FindFrameById" ref="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9"/>
<section title="FindSignalByName" ref="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a"/>
<section title="IsCommentLine" ref="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb"/>
<section title="IsFrameLine" ref="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b"/>
<section title="IsSignalLine" ref="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1"/>
<section title="NormalizeCanId" ref="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf"/>
<section title="ParseCommentLine" ref="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c"/>
<section title="ParseFile" ref="classDbcParser.html#aef72826942c9095d653fafa435855e56"/>
<section title="ParseFrameLine" ref="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a"/>
<section title="ParseSignalLine" ref="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2"/>
<section title="SplitReceivers" ref="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529"/>
<section title="Trim" ref="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b"/>
<section title="TryExtractPgn" ref="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324"/>
</section>
</section>
<section title="dbc_tree_builder.cpp" ref="dbc__tree__builder_8cpp.html"/>
@@ -308,45 +241,35 @@
</section>
<section title="decode_database.h" ref="decode__database_8h.html">
<section title="DecodeSignal" ref="structDecodeSignal.html">
<section title="DecodeSignal" ref="structDecodeSignal.html#a93fd97267e2614979440261628e493f5"/>
<section title="byteOrder" ref="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"/>
<section title="comment" ref="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"/>
<section title="factor" ref="structDecodeSignal.html#a428c39913a366a8476dd291061354391"/>
<section title="length" ref="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"/>
<section title="maximum" ref="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"/>
<section title="minimum" ref="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"/>
<section title="name" ref="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780"/>
<section title="offset" ref="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"/>
<section title="receivers" ref="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"/>
<section title="startBit" ref="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d"/>
<section title="unit" ref="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"/>
<section title="length" ref="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"/>
<section title="byteOrder" ref="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"/>
<section title="valueType" ref="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8"/>
<section title="factor" ref="structDecodeSignal.html#a428c39913a366a8476dd291061354391"/>
<section title="offset" ref="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"/>
<section title="minimum" ref="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"/>
<section title="maximum" ref="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"/>
<section title="unit" ref="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"/>
<section title="receivers" ref="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"/>
<section title="comment" ref="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"/>
</section>
<section title="DecodeFrame" ref="structDecodeFrame.html">
<section title="DecodeFrame" ref="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4"/>
<section title="canId" ref="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"/>
<section title="comment" ref="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"/>
<section title="dlc" ref="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"/>
<section title="hasPgn" ref="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"/>
<section title="isExtended" ref="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"/>
<section title="name" ref="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579"/>
<section title="canId" ref="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"/>
<section title="isExtended" ref="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"/>
<section title="dlc" ref="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"/>
<section title="pgn" ref="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23"/>
<section title="signals" ref="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036"/>
<section title="hasPgn" ref="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"/>
<section title="transmitter" ref="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9"/>
<section title="comment" ref="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"/>
<section title="public" ref="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14"/>
</section>
<section title="FrameKey" ref="structFrameKey.html">
<section title="FrameKey" ref="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14"/>
<section title="FrameKey" ref="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670"/>
<section title="operator==" ref="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f"/>
<section title="canId" ref="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4"/>
<section title="isExtended" ref="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145"/>
</section>
<section title="FrameKeyHasher" ref="structFrameKeyHasher.html">
<section title="operator()" ref="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f"/>
</section>
<section title="DecodeDatabase" ref="structDecodeDatabase.html">
<section title="frameIndexByKey" ref="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5"/>
<section title="frames" ref="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072"/>
</section>
<section title="ByteOrder" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b">
<section title="Intel" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"/>
@@ -359,38 +282,33 @@
</section>
<section title="frame_info.h" ref="frame__info_8h.html">
<section title="FrameInfo" ref="structFrameInfo.html">
<section title="FrameInfo" ref="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61"/>
<section title="canId" ref="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"/>
<section title="comment" ref="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"/>
<section title="dlc" ref="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"/>
<section title="hasPgn" ref="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"/>
<section title="isExtended" ref="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"/>
<section title="name" ref="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb"/>
<section title="canId" ref="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"/>
<section title="isExtended" ref="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"/>
<section title="pgn" ref="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943"/>
<section title="signals" ref="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce"/>
<section title="hasPgn" ref="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"/>
<section title="dlc" ref="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"/>
<section title="transmitter" ref="structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8"/>
<section title="comment" ref="structFrameInfo.html#ace75121294f9d89b762080ab5643293c"/>
<section title="public" ref="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084"/>
</section>
</section>
<section title="main.cpp" ref="main_8cpp.html">
<section title="main" ref="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97"/>
<section title="PrintDecodedFrame" ref="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f"/>
<section title="PrintTree" ref="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a"/>
</section>
<section title="signal_info.h" ref="signal__info_8h.html">
<section title="SignalInfo" ref="structSignalInfo.html">
<section title="SignalInfo" ref="structSignalInfo.html#aa2d2cd238118015258e271dce92a971e"/>
<section title="comment" ref="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5"/>
<section title="factor" ref="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499"/>
<section title="name" ref="structSignalInfo.html#a379e422a00cad56f896cacf60455b088"/>
<section title="startBit" ref="structSignalInfo.html#ace290724f9801521609aedaa946d61f1"/>
<section title="length" ref="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa"/>
<section title="isLittleEndian" ref="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c"/>
<section title="isSigned" ref="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f"/>
<section title="length" ref="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa"/>
<section title="maximum" ref="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52"/>
<section title="minimum" ref="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b"/>
<section title="name" ref="structSignalInfo.html#a379e422a00cad56f896cacf60455b088"/>
<section title="factor" ref="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499"/>
<section title="offset" ref="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e"/>
<section title="receivers" ref="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3"/>
<section title="startBit" ref="structSignalInfo.html#ace290724f9801521609aedaa946d61f1"/>
<section title="minimum" ref="structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b"/>
<section title="maximum" ref="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52"/>
<section title="unit" ref="structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01"/>
<section title="receivers" ref="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3"/>
<section title="comment" ref="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5"/>
</section>
</section>
<section title="tree_node.cpp" ref="tree__node_8cpp.html"/>
@@ -399,24 +317,14 @@
<section title="TreeNode" ref="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d"/>
<section title="TreeNode" ref="classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc"/>
<section title="TreeNode" ref="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae"/>
<section title="~TreeNode" ref="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570"/>
<section title="TreeNode" ref="classTreeNode.html#a4d3054a033accf3e38ea132002fc35ff"/>
<section title="TreeNode" ref="classTreeNode.html#a35724af755b5d0c43de40a723ef81ec1"/>
<section title="AddChild" ref="classTreeNode.html#a6161f2ebb92184eab4215d121870e788"/>
<section title="GetChild" ref="classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f"/>
<section title="GetChild" ref="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6"/>
<section title="GetChildCount" ref="classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea"/>
<section title="GetFrame" ref="classTreeNode.html#afc503b40004764163605d6dbdb4ef811"/>
<section title="GetName" ref="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18"/>
<section title="GetSignal" ref="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1"/>
<section title="GetChild" ref="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6"/>
<section title="GetChild" ref="classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f"/>
<section title="GetType" ref="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9"/>
<section title="operator=" ref="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa"/>
<section title="operator=" ref="classTreeNode.html#a88fbcbec9c64d888b19c5edb95059a95"/>
<section title="m_children" ref="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351"/>
<section title="m_frame" ref="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2"/>
<section title="m_name" ref="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8"/>
<section title="m_signal" ref="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386"/>
<section title="m_type" ref="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224"/>
<section title="GetName" ref="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18"/>
<section title="GetFrame" ref="classTreeNode.html#afc503b40004764163605d6dbdb4ef811"/>
<section title="GetSignal" ref="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1"/>
</section>
<section title="NodeType" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16">
<section title="Root" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad"/>
@@ -427,7 +335,6 @@
</section>
<section title="File Members" ref="globals.html">
<section title="All" ref="globals.html"/>
<section title="Functions" ref="globals_func.html"/>
<section title="Enumerations" ref="globals_enum.html"/>
</section>
</section>
@@ -450,7 +357,6 @@
<keyword name="RawCanFrame" id="RawCanFrame_" ref="structRawCanFrame.html"/>
<keyword name="SignalInfo" id="SignalInfo_" ref="structSignalInfo.html"/>
<keyword name="TreeNode" id="TreeNode_" ref="classTreeNode.html"/>
<keyword name="anonymous_namespace{dbc_parser.cpp}" id="anonymous_namespace{dbc_parser.cpp}_" ref="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html"/>
<keyword name="DBC Parser and Runtime Decode Module Documentation" id="DBC Parser and Runtime Decode Module Documentation_" ref="md_README.html"/>
<keyword name="AddChild(std::unique_ptr&lt; TreeNode &gt; child)" id="TreeNode::AddChild_a6161f2ebb92184eab4215d121870e788" ref="classTreeNode.html#a6161f2ebb92184eab4215d121870e788"/>
<keyword name="Build(const DbcDatabase &amp;source) const" id="DbcDecodeBuilder::Build_a2bc6386dfb5e58976c42e22c19ec471b" ref="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b"/>
@@ -458,7 +364,6 @@
<keyword name="byteOrder" id="DecodeSignal::byteOrder_abdc4c4bb4a67a6d61d6ca81e8a52833d" ref="structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d"/>
<keyword name="canId" id="RawCanFrame::canId_a2d0e7fa0e3d5c20bbed55ed8f7888ff4" ref="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4"/>
<keyword name="canId" id="DecodeFrame::canId_a52e10215388db7df8b541b9d9909edcf" ref="structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf"/>
<keyword name="canId" id="FrameKey::canId_a022917652b4d3c2f2dfcc5a13ab7caa4" ref="structFrameKey.html#a022917652b4d3c2f2dfcc5a13ab7caa4"/>
<keyword name="canId" id="FrameInfo::canId_af470b0742c05bfbffc31c51a68f5c05e" ref="structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e"/>
<keyword name="comment" id="DecodeSignal::comment_ae28c905d4a2bc86419c2a8361bfea473" ref="structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473"/>
<keyword name="comment" id="DecodeFrame::comment_a25819ef907a32391af5c9f7cae9cdb22" ref="structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22"/>
@@ -466,28 +371,14 @@
<keyword name="comment" id="SignalInfo::comment_ac99ba7563a5dad01e39c4257216953f5" ref="structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5"/>
<keyword name="data" id="RawCanFrame::data_a0acb487612104c99c9907344c035df83" ref="structRawCanFrame.html#a0acb487612104c99c9907344c035df83"/>
<keyword name="Decode(const DecodeDatabase &amp;database, const RawCanFrame &amp;frame) const" id="DbcDecoder::Decode_a345951ffe5d943a70d3a1ea1f39e74f7" ref="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7"/>
<keyword name="DecodedFrameValue()" id="DecodedFrameValue::DecodedFrameValue_a19f754bb84e67e6ae71ea93b9ae6382b" ref="structDecodedFrameValue.html#a19f754bb84e67e6ae71ea93b9ae6382b"/>
<keyword name="DecodedSignalValue()" id="DecodedSignalValue::DecodedSignalValue_a1481b122a7ce5a618012b1133c6adedf" ref="structDecodedSignalValue.html#a1481b122a7ce5a618012b1133c6adedf"/>
<keyword name="DecodeFrame()" id="DecodeFrame::DecodeFrame_ae6ae88ee29bcaff936e7c7b2380f96b4" ref="structDecodeFrame.html#ae6ae88ee29bcaff936e7c7b2380f96b4"/>
<keyword name="DecodeSignal()" id="DecodeSignal::DecodeSignal_a93fd97267e2614979440261628e493f5" ref="structDecodeSignal.html#a93fd97267e2614979440261628e493f5"/>
<keyword name="definition" id="DecodedSignalValue::definition_acadc3b3bb21dd6b0412d342c7e6b20d7" ref="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7"/>
<keyword name="definition" id="DecodedFrameValue::definition_a60dda1cc352d2c8087f0bdbc81dd266c" ref="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c"/>
<keyword name="dlc" id="DecodeFrame::dlc_a51111ac13988be372d5673d12cf3e060" ref="structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060"/>
<keyword name="dlc" id="FrameInfo::dlc_aa2b198ea0f55e560c123d35e7b3ecab9" ref="structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9"/>
<keyword name="ExtractIntel(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)" id="DbcDecoder::ExtractIntel_aba130165c1a73bb4cd3a0454f415d872" ref="classDbcDecoder.html#aba130165c1a73bb4cd3a0454f415d872"/>
<keyword name="ExtractMotorola(const std::vector&lt; std::uint8_t &gt; &amp;data, std::uint32_t startBit, std::uint32_t length, std::uint64_t &amp;value)" id="DbcDecoder::ExtractMotorola_aede690734148c3d538105d5a2f7ee0a9" ref="classDbcDecoder.html#aede690734148c3d538105d5a2f7ee0a9"/>
<keyword name="ExtractUnsigned(const std::vector&lt; std::uint8_t &gt; &amp;data, const DecodeSignal &amp;signal, std::uint64_t &amp;value)" id="DbcDecoder::ExtractUnsigned_a2a8a99b1107543be6fd1b3f891130bf5" ref="classDbcDecoder.html#a2a8a99b1107543be6fd1b3f891130bf5"/>
<keyword name="factor" id="DecodeSignal::factor_a428c39913a366a8476dd291061354391" ref="structDecodeSignal.html#a428c39913a366a8476dd291061354391"/>
<keyword name="factor" id="SignalInfo::factor_ae4f78d99a2750aa564d7eba860171499" ref="structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499"/>
<keyword name="FindFrame(const DecodeDatabase &amp;database, std::uint32_t canId, bool isExtended) const" id="DbcDecoder::FindFrame_ab2cfb2fb711c95d3a29365546b89f3da" ref="classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da"/>
<keyword name="FindFrameById(DbcDatabase &amp;database, std::uint32_t canId, bool isExtended)" id="DbcParser::FindFrameById_ab1fee32cb845573ce10949b4bec721f9" ref="classDbcParser.html#ab1fee32cb845573ce10949b4bec721f9"/>
<keyword name="FindSignalByName(FrameInfo &amp;frame, const std::string &amp;signalName)" id="DbcParser::FindSignalByName_ab7b95be4433c56cc855bedb08b96a71a" ref="classDbcParser.html#ab7b95be4433c56cc855bedb08b96a71a"/>
<keyword name="frameIndexByKey" id="DecodeDatabase::frameIndexByKey_ae4fd1351008bb0dce337821a849100c5" ref="structDecodeDatabase.html#ae4fd1351008bb0dce337821a849100c5"/>
<keyword name="FrameInfo()" id="FrameInfo::FrameInfo_a7f2d192b7969f7b60479a48e1f7eba61" ref="structFrameInfo.html#a7f2d192b7969f7b60479a48e1f7eba61"/>
<keyword name="FrameKey()" id="FrameKey::FrameKey_a0e9aad56b251cdf802d45a9c19050b14" ref="structFrameKey.html#a0e9aad56b251cdf802d45a9c19050b14"/>
<keyword name="FrameKey(std::uint32_t id, bool extended)" id="FrameKey::FrameKey_a33bde405c7ea53000d54b3dd6e058670" ref="structFrameKey.html#a33bde405c7ea53000d54b3dd6e058670"/>
<keyword name="frames" id="DbcDatabase::frames_a2cade5d0234ee816132127542f8c612b" ref="structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b"/>
<keyword name="frames" id="DecodeDatabase::frames_a2bd4ddfc2602c1de4e12a373bfc93072" ref="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072"/>
<keyword name="GetChild(std::size_t index) const" id="TreeNode::GetChild_a4727ff801a2d1b9323c5ae50a35457a6" ref="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6"/>
<keyword name="GetChild(std::size_t index)" id="TreeNode::GetChild_a81047bd7d2a4cc96b9ef5e20d0d63b5f" ref="classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f"/>
<keyword name="GetChildCount() const" id="TreeNode::GetChildCount_abdd82460187dca8d3e5d66f5d5c529ea" ref="classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea"/>
@@ -497,22 +388,13 @@
<keyword name="GetType() const" id="TreeNode::GetType_afa2f4b0aafa12d3d41ed00df8e0250c9" ref="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9"/>
<keyword name="hasPgn" id="DecodeFrame::hasPgn_a2551102670c4a540fced4c71da0b369d" ref="structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d"/>
<keyword name="hasPgn" id="FrameInfo::hasPgn_a4737a5420213ad4304724e39f3a4e55d" ref="structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d"/>
<keyword name="IsCommentLine(const std::string &amp;line)" id="DbcParser::IsCommentLine_ae3488a0a6c64dc95e4ed289e77579feb" ref="classDbcParser.html#ae3488a0a6c64dc95e4ed289e77579feb"/>
<keyword name="isExtended" id="RawCanFrame::isExtended_a462193d275adc1dba8bd18ffa0e36bb7" ref="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7"/>
<keyword name="isExtended" id="DecodeFrame::isExtended_a3ee2348d781f8f15aaf87e8dcf57ec41" ref="structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41"/>
<keyword name="isExtended" id="FrameKey::isExtended_aa3179b709d02ef70cf0e736f040a2145" ref="structFrameKey.html#aa3179b709d02ef70cf0e736f040a2145"/>
<keyword name="isExtended" id="FrameInfo::isExtended_a34b726afaad2ac5c697fdb2ac070cdaf" ref="structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf"/>
<keyword name="IsFrameLine(const std::string &amp;line)" id="DbcParser::IsFrameLine_ada086584d371c08dd93b75fb7965f13b" ref="classDbcParser.html#ada086584d371c08dd93b75fb7965f13b"/>
<keyword name="isLittleEndian" id="SignalInfo::isLittleEndian_af363b1563fb4c7cc8973f9a80c06846c" ref="structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c"/>
<keyword name="IsSignalLine(const std::string &amp;line)" id="DbcParser::IsSignalLine_ace3d3432a55707bc286a994aa205fed1" ref="classDbcParser.html#ace3d3432a55707bc286a994aa205fed1"/>
<keyword name="isSigned" id="SignalInfo::isSigned_a52a52b320eef92fbcb4626307f9a498f" ref="structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f"/>
<keyword name="length" id="DecodeSignal::length_acd4ef5ee30421d117b5756854302debb" ref="structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb"/>
<keyword name="length" id="SignalInfo::length_a1008b5201f71848177217bd52fb84baa" ref="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa"/>
<keyword name="m_children" id="TreeNode::m_children_a1bd61f40df6d36e61021063e3816a351" ref="classTreeNode.html#a1bd61f40df6d36e61021063e3816a351"/>
<keyword name="m_frame" id="TreeNode::m_frame_a77ee6aa80774d67ba442a66b45c798c2" ref="classTreeNode.html#a77ee6aa80774d67ba442a66b45c798c2"/>
<keyword name="m_name" id="TreeNode::m_name_ac0ddcb8370e6b51e2d3de6b8211a47f8" ref="classTreeNode.html#ac0ddcb8370e6b51e2d3de6b8211a47f8"/>
<keyword name="m_signal" id="TreeNode::m_signal_ae658355007bc9303f7bfae3bb3ec8386" ref="classTreeNode.html#ae658355007bc9303f7bfae3bb3ec8386"/>
<keyword name="m_type" id="TreeNode::m_type_a04bccab9e60a6a78777cd7dfec52d224" ref="classTreeNode.html#a04bccab9e60a6a78777cd7dfec52d224"/>
<keyword name="maximum" id="DecodeSignal::maximum_a4a6ba87142a9badbf0ca830e9e709cb7" ref="structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7"/>
<keyword name="maximum" id="SignalInfo::maximum_adf1c4331b9eabced0d7fdda40ff0eb52" ref="structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52"/>
<keyword name="minimum" id="DecodeSignal::minimum_a0fb84e19a0ab3bd50b6f65c1075ebc25" ref="structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25"/>
@@ -521,30 +403,18 @@
<keyword name="name" id="DecodeFrame::name_aa0a7f8fd5bfde2148dfd0d838328f579" ref="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579"/>
<keyword name="name" id="FrameInfo::name_abb53a7f93ed7abc0ea1ae4a8ccafcdcb" ref="structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb"/>
<keyword name="name" id="SignalInfo::name_a379e422a00cad56f896cacf60455b088" ref="structSignalInfo.html#a379e422a00cad56f896cacf60455b088"/>
<keyword name="NormalizeCanId(std::uint32_t rawCanId, std::uint32_t &amp;normalizedCanId, bool &amp;isExtended)" id="DbcParser::NormalizeCanId_a94d140d9442e4989b5b2ea7662c2debf" ref="classDbcParser.html#a94d140d9442e4989b5b2ea7662c2debf"/>
<keyword name="offset" id="DecodeSignal::offset_a92db637af4e224a0ae70173050dc3f74" ref="structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74"/>
<keyword name="offset" id="SignalInfo::offset_ab7d0769f47aa540656b22e4e49db517e" ref="structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e"/>
<keyword name="operator()(const FrameKey &amp;key) const" id="FrameKeyHasher::operator()_a1612ce56b513790e3ed4c06ec7d28b9f" ref="structFrameKeyHasher.html#a1612ce56b513790e3ed4c06ec7d28b9f"/>
<keyword name="operator=(const TreeNode &amp;)=delete" id="TreeNode::operator=_ad6ce97dcf532b452d520452b6d000daa" ref="classTreeNode.html#ad6ce97dcf532b452d520452b6d000daa"/>
<keyword name="operator=(TreeNode &amp;&amp;)=default" id="TreeNode::operator=_a88fbcbec9c64d888b19c5edb95059a95" ref="classTreeNode.html#a88fbcbec9c64d888b19c5edb95059a95"/>
<keyword name="operator==(const FrameKey &amp;other) const" id="FrameKey::operator==_aaaec9f914e127787247fcda5e183b01f" ref="structFrameKey.html#aaaec9f914e127787247fcda5e183b01f"/>
<keyword name="ParseCommentLine(const std::string &amp;line, DbcDatabase &amp;database)" id="DbcParser::ParseCommentLine_aa662b34694fd8b3edd757f36cb064c5c" ref="classDbcParser.html#aa662b34694fd8b3edd757f36cb064c5c"/>
<keyword name="ParseFile(const std::string &amp;filePath) const" id="DbcParser::ParseFile_aef72826942c9095d653fafa435855e56" ref="classDbcParser.html#aef72826942c9095d653fafa435855e56"/>
<keyword name="ParseFrameLine(const std::string &amp;line)" id="DbcParser::ParseFrameLine_a6d73bb1885e59aecd8202e93a7cd392a" ref="classDbcParser.html#a6d73bb1885e59aecd8202e93a7cd392a"/>
<keyword name="ParseSignalLine(const std::string &amp;line)" id="DbcParser::ParseSignalLine_a4cbce88d08b1f72903ecf1bce41de5d2" ref="classDbcParser.html#a4cbce88d08b1f72903ecf1bce41de5d2"/>
<keyword name="pgn" id="DecodeFrame::pgn_a1d3c54055c0cbceb73adf551f7067f23" ref="structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23"/>
<keyword name="pgn" id="FrameInfo::pgn_aee518b33f1000bf0b7f6e4a87474c943" ref="structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943"/>
<keyword name="physicalValue" id="DecodedSignalValue::physicalValue_a6847d05b3cb00d5e0f6c611968f57978" ref="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978"/>
<keyword name="RawCanFrame()" id="RawCanFrame::RawCanFrame_a17d18b39bed45e69f4e17ae2838f07f7" ref="structRawCanFrame.html#a17d18b39bed45e69f4e17ae2838f07f7"/>
<keyword name="public" id="DecodedFrameValue::public_adae123ac7fbb4a5c314b64b01109f4a8" ref="structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8"/>
<keyword name="public" id="DecodeFrame::public_a7f4e71bbdec3f424b625e724e3dfbf14" ref="structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14"/>
<keyword name="public" id="FrameInfo::public_a3f7e25d67ddae22f2ed50823a5a26084" ref="structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084"/>
<keyword name="rawValue" id="DecodedSignalValue::rawValue_a5138b825940e34689f7b3891627ee9ec" ref="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec"/>
<keyword name="receivers" id="DecodeSignal::receivers_abdbae62a64d2df716bf60c6b67b30eaa" ref="structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa"/>
<keyword name="receivers" id="SignalInfo::receivers_a2c95562fd0b29327a7fd7b1e6feee7f3" ref="structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3"/>
<keyword name="SignalInfo()" id="SignalInfo::SignalInfo_aa2d2cd238118015258e271dce92a971e" ref="structSignalInfo.html#aa2d2cd238118015258e271dce92a971e"/>
<keyword name="signals" id="DecodedFrameValue::signals_a8440e0e5d7953102095b029f522022d3" ref="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3"/>
<keyword name="signals" id="DecodeFrame::signals_a372afd9e74f1ae33f85cb4acfd3e2036" ref="structDecodeFrame.html#a372afd9e74f1ae33f85cb4acfd3e2036"/>
<keyword name="signals" id="FrameInfo::signals_a942937027f1af06536f98cc23b2bf6ce" ref="structFrameInfo.html#a942937027f1af06536f98cc23b2bf6ce"/>
<keyword name="SignExtend(std::uint64_t value, std::uint32_t bitLength)" id="DbcDecoder::SignExtend_a41e89e343338088d27e46773fa52df42" ref="classDbcDecoder.html#a41e89e343338088d27e46773fa52df42"/>
<keyword name="SplitReceivers(const std::string &amp;text)" id="DbcParser::SplitReceivers_a0c1cc3c58f33473bf426a77b7a25c529" ref="classDbcParser.html#a0c1cc3c58f33473bf426a77b7a25c529"/>
<keyword name="startBit" id="DecodeSignal::startBit_aaf5d7527ddf65b6355c2b4f3626df22d" ref="structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d"/>
<keyword name="startBit" id="SignalInfo::startBit_ace290724f9801521609aedaa946d61f1" ref="structSignalInfo.html#ace290724f9801521609aedaa946d61f1"/>
<keyword name="transmitter" id="DecodeFrame::transmitter_ad78241dc40c793aabb8495b6989b81a9" ref="structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9"/>
@@ -552,40 +422,23 @@
<keyword name="TreeNode()" id="TreeNode::TreeNode_a984a98d5ccf7ef1f5a18094c6821f35d" ref="classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d"/>
<keyword name="TreeNode(const FrameInfo &amp;frame)" id="TreeNode::TreeNode_a8e38dd591d8801d7ee3a7dbad90c67fc" ref="classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc"/>
<keyword name="TreeNode(const SignalInfo &amp;signal)" id="TreeNode::TreeNode_ab9f00f5253d56461bb2d420fd639c5ae" ref="classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae"/>
<keyword name="TreeNode(const TreeNode &amp;)=delete" id="TreeNode::TreeNode_a4d3054a033accf3e38ea132002fc35ff" ref="classTreeNode.html#a4d3054a033accf3e38ea132002fc35ff"/>
<keyword name="TreeNode(TreeNode &amp;&amp;)=default" id="TreeNode::TreeNode_a35724af755b5d0c43de40a723ef81ec1" ref="classTreeNode.html#a35724af755b5d0c43de40a723ef81ec1"/>
<keyword name="Trim(const std::string &amp;text)" id="DbcParser::Trim_a1ae77c4c356af3d7b01a30044366f02b" ref="classDbcParser.html#a1ae77c4c356af3d7b01a30044366f02b"/>
<keyword name="TryExtractPgn(std::uint32_t canId, bool isExtended, bool &amp;hasPgn)" id="DbcParser::TryExtractPgn_a8a7e8fc517e40beab87a8a1dbad2b324" ref="classDbcParser.html#a8a7e8fc517e40beab87a8a1dbad2b324"/>
<keyword name="unit" id="DecodeSignal::unit_a38eed9ca7581423fd8bfbedcffc12092" ref="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092"/>
<keyword name="unit" id="SignalInfo::unit_a1f214f03e94ef5794de2d3367bfcbd01" ref="structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01"/>
<keyword name="valid" id="DecodedSignalValue::valid_aac0ed361af545cde48d0e6f41a859686" ref="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686"/>
<keyword name="valid" id="DecodedFrameValue::valid_a4f51c31110dba1f73a763c596372beb0" ref="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0"/>
<keyword name="valueType" id="DecodeSignal::valueType_a9d37638129263b8902ba5be59baf39a8" ref="structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8"/>
<keyword name="~TreeNode()=default" id="TreeNode::~TreeNode_a89eb1eb0e25fccaa83c780b85f95b570" ref="classTreeNode.html#a89eb1eb0e25fccaa83c780b85f95b570"/>
<keyword name="ByteOrder" id="decode_database.h::ByteOrder_aaeb92d42f5a6e27b8ba19f18d69d142b" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b"/>
<keyword name="Intel" id="decode_database.h::Intel_aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"/>
<keyword name="Motorola" id="decode_database.h::Motorola_aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31"/>
<keyword name="Frame" id="tree_node.h::Frame_acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a"/>
<keyword name="Intel" id="decode_database.h::Intel_aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5"/>
<keyword name="main(int argc, char *argv[])" id="main.cpp::main_a0ddf1224851353fc92bfbff6f499fa97" ref="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97"/>
<keyword name="Motorola" id="decode_database.h::Motorola_aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31" ref="decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31"/>
<keyword name="NodeType" id="tree_node.h::NodeType_acac9cbaeea226ed297804c012dc12b16" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16"/>
<keyword name="Root" id="tree_node.h::Root_acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad"/>
<keyword name="Frame" id="tree_node.h::Frame_acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a"/>
<keyword name="Signal" id="tree_node.h::Signal_acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398"/>
<keyword name="PrintDecodedFrame(const DecodedFrameValue &amp;decoded)" id="main.cpp::PrintDecodedFrame_a26dbbea5b56e3fbc451b68f217d5063f" ref="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f"/>
<keyword name="PrintTree(const TreeNode *node, int indent)" id="main.cpp::PrintTree_a57aefef9cfd52a8190df002e12808e0a" ref="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a"/>
<keyword name="Root" id="tree_node.h::Root_acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad"/>
<keyword name="Signal" id="tree_node.h::Signal_acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398" ref="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398"/>
<keyword name="Signed" id="decode_database.h::Signed_ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379" ref="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"/>
<keyword name="TrimText(const std::string &amp;text)" id="anonymous_namespace{dbc_parser.cpp}::TrimText_a5850f07ce5f4e5c4f3bf385ebcfcebbb" ref="namespaceanonymous__namespace_02dbc__parser_8cpp_03.html#a5850f07ce5f4e5c4f3bf385ebcfcebbb"/>
<keyword name="Unsigned" id="decode_database.h::Unsigned_ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a" ref="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a"/>
<keyword name="ValueType" id="decode_database.h::ValueType_ad9971b6ef33e02ba2c75d19c1d2518a1" ref="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1"/>
<keyword name="Unsigned" id="decode_database.h::Unsigned_ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a" ref="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a"/>
<keyword name="Signed" id="decode_database.h::Signed_ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379" ref="decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379"/>
</keywords>
<files>
<file>README_8md.html</file>
<file>annotated.html</file>
<file>bc_s.png</file>
<file>bdwn.png</file>
@@ -635,21 +488,27 @@
<file>functions_vars.html</file>
<file>globals.html</file>
<file>globals_enum.html</file>
<file>globals_func.html</file>
<file>graph_legend.html</file>
<file>graph_legend.svg</file>
<file>index.html</file>
<file>jquery.js</file>
<file>main_8cpp.html</file>
<file>main_8cpp_source.html</file>
<file>md_README.html</file>
<file>namespaceanonymous__namespace_02dbc__parser_8cpp_03.html</file>
<file>namespacemembers.html</file>
<file>namespacemembers_func.html</file>
<file>namespaces.html</file>
<file>menu.js</file>
<file>menudata.js</file>
<file>nav_f.png</file>
<file>nav_g.png</file>
<file>nav_h.png</file>
<file>open.png</file>
<file>pages.html</file>
<file>search/close.svg</file>
<file>search/mag_sel.svg</file>
<file>search/search.css</file>
<file>search/search.js</file>
<file>search/search_l.png</file>
<file>search/search_m.png</file>
<file>search/search_r.png</file>
<file>signal__info_8h.html</file>
<file>signal__info_8h_source.html</file>
<file>splitbar.png</file>
@@ -675,6 +534,7 @@
<file>structRawCanFrame.html</file>
<file>structSignalInfo-members.html</file>
<file>structSignalInfo.html</file>
<file>svgpan.js</file>
<file>sync_off.png</file>
<file>sync_on.png</file>
<file>tab_a.png</file>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: main.cpp File Reference</title>
<title>DBC Framework: main.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,22 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('main_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
@@ -66,10 +105,6 @@
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a57aefef9cfd52a8190df002e12808e0a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">PrintTree</a> (const <a class="el" href="classTreeNode.html">TreeNode</a> *node, int indent)</td></tr>
<tr class="separator:a57aefef9cfd52a8190df002e12808e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26dbbea5b56e3fbc451b68f217d5063f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f">PrintDecodedFrame</a> (const <a class="el" href="structDecodedFrameValue.html">DecodedFrameValue</a> &amp;decoded)</td></tr>
<tr class="separator:a26dbbea5b56e3fbc451b68f217d5063f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ddf1224851353fc92bfbff6f499fa97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>
<tr class="separator:a0ddf1224851353fc92bfbff6f499fa97"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
@@ -107,88 +142,16 @@ Functions</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="main_8cpp_source.html#l00097">97</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__tree__builder_8cpp_source.html#l00014">DbcTreeBuilder::Build()</a>, <a class="el" href="dbc__decode__builder_8cpp_source.html#l00014">DbcDecodeBuilder::Build()</a>, <a class="el" href="dbc__decoder_8h_source.html#l00024">RawCanFrame::canId</a>, <a class="el" href="dbc__decoder_8h_source.html#l00026">RawCanFrame::data</a>, <a class="el" href="dbc__decoder_8cpp_source.html#l00031">DbcDecoder::Decode()</a>, <a class="el" href="decode__database_8h_source.html#l00133">DecodeDatabase::frames</a>, <a class="el" href="dbc__decoder_8h_source.html#l00025">RawCanFrame::isExtended</a>, <a class="el" href="dbc__parser_8cpp_source.html#l00040">DbcParser::ParseFile()</a>, <a class="el" href="main_8cpp_source.html#l00075">PrintDecodedFrame()</a>, and <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
<a id="a26dbbea5b56e3fbc451b68f217d5063f" name="a26dbbea5b56e3fbc451b68f217d5063f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26dbbea5b56e3fbc451b68f217d5063f">&#9670;&nbsp;</a></span>PrintDecodedFrame()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void PrintDecodedFrame </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structDecodedFrameValue.html">DecodedFrameValue</a> &amp;&#160;</td>
<td class="paramname"><em>decoded</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="main_8cpp_source.html#l00075">75</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p>
<p class="reference">References <a class="el" href="dbc__decoder_8h_source.html#l00039">DecodedSignalValue::definition</a>, <a class="el" href="dbc__decoder_8h_source.html#l00056">DecodedFrameValue::definition</a>, <a class="el" href="decode__database_8h_source.html#l00040">DecodeSignal::name</a>, <a class="el" href="decode__database_8h_source.html#l00073">DecodeFrame::name</a>, <a class="el" href="dbc__decoder_8h_source.html#l00041">DecodedSignalValue::physicalValue</a>, <a class="el" href="dbc__decoder_8h_source.html#l00040">DecodedSignalValue::rawValue</a>, <a class="el" href="dbc__decoder_8h_source.html#l00057">DecodedFrameValue::signals</a>, <a class="el" href="decode__database_8h_source.html#l00049">DecodeSignal::unit</a>, <a class="el" href="dbc__decoder_8h_source.html#l00042">DecodedSignalValue::valid</a>, and <a class="el" href="dbc__decoder_8h_source.html#l00058">DecodedFrameValue::valid</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>.</p>
</div>
</div>
<a id="a57aefef9cfd52a8190df002e12808e0a" name="a57aefef9cfd52a8190df002e12808e0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57aefef9cfd52a8190df002e12808e0a">&#9670;&nbsp;</a></span>PrintTree()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static void PrintTree </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classTreeNode.html">TreeNode</a> *&#160;</td>
<td class="paramname"><em>node</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>indent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="main_8cpp_source.html#l00023">23</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p>
<p class="reference">References <a class="el" href="frame__info_8h_source.html#l00026">FrameInfo::canId</a>, <a class="el" href="frame__info_8h_source.html#l00030">FrameInfo::dlc</a>, <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a">Frame</a>, <a class="el" href="tree__node_8cpp_source.html#l00047">TreeNode::GetChild()</a>, <a class="el" href="tree__node_8cpp_source.html#l00043">TreeNode::GetChildCount()</a>, <a class="el" href="tree__node_8cpp_source.html#l00069">TreeNode::GetFrame()</a>, <a class="el" href="tree__node_8cpp_source.html#l00065">TreeNode::GetName()</a>, <a class="el" href="tree__node_8cpp_source.html#l00073">TreeNode::GetSignal()</a>, <a class="el" href="tree__node_8cpp_source.html#l00061">TreeNode::GetType()</a>, <a class="el" href="frame__info_8h_source.html#l00029">FrameInfo::hasPgn</a>, <a class="el" href="frame__info_8h_source.html#l00027">FrameInfo::isExtended</a>, <a class="el" href="signal__info_8h_source.html#l00025">SignalInfo::length</a>, <a class="el" href="frame__info_8h_source.html#l00028">FrameInfo::pgn</a>, <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>, <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad">Root</a>, <a class="el" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398">Signal</a>, <a class="el" href="signal__info_8h_source.html#l00024">SignalInfo::startBit</a>, and <a class="el" href="signal__info_8h_source.html#l00032">SignalInfo::unit</a>.</p>
<p class="reference">Referenced by <a class="el" href="main_8cpp_source.html#l00097">main()</a>, and <a class="el" href="main_8cpp_source.html#l00023">PrintTree()</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="main_8cpp.html">main.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: main.cpp Source File</title>
<title>DBC Framework: main.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,37 +35,58 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('main_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">main.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="main_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/**</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * @file main.cpp</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * @brief</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * Created: 2026-03-13</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * Author: Deeaitch (Dim. Himro)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> *</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"> * Licensed under the MIT License.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> * See LICENSE file in the project root for full license text.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> */</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<a href="main_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &lt;iomanip&gt;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
@@ -69,7 +98,7 @@
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__decode__builder_8h.html">dbc_decode_builder.h</a>&quot;</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#include &quot;<a class="code" href="dbc__decoder_8h.html">dbc_decoder.h</a>&quot;</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a"> 23</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">PrintTree</a> (<span class="keyword">const</span> <a class="code hl_class" href="classTreeNode.html">TreeNode</a> *node, <span class="keywordtype">int</span> indent) {</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="keyword">static</span> <span class="keywordtype">void</span> PrintTree (<span class="keyword">const</span> <a class="code hl_class" href="classTreeNode.html">TreeNode</a> *node, <span class="keywordtype">int</span> indent) {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordflow">if</span> (node == <span class="keyword">nullptr</span>)</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
@@ -77,11 +106,11 @@
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> std::cout &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">switch</span> (node-&gt;<a class="code hl_function" href="classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9">GetType</a>()) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad">NodeType::Root</a>:</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">case</span> NodeType::Root:</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> std::cout &lt;&lt; <span class="stringliteral">&quot;[root] &quot;</span> &lt;&lt; node-&gt;<a class="code hl_function" href="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18">GetName</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a">NodeType::Frame</a>: {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">case</span> NodeType::Frame: {</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">const</span> <a class="code hl_struct" href="structFrameInfo.html">FrameInfo</a> *frame = node-&gt;<a class="code hl_function" href="classTreeNode.html#afc503b40004764163605d6dbdb4ef811">GetFrame</a>();</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> std::cout &lt;&lt; <span class="stringliteral">&quot;[frame] &quot;</span> &lt;&lt; node-&gt;<a class="code hl_function" href="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18">GetName</a>();</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> </div>
@@ -98,7 +127,7 @@
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> }</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">case</span> <a class="code hl_enumvalue" href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398">NodeType::Signal</a>: {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">case</span> NodeType::Signal: {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">const</span> <a class="code hl_struct" href="structSignalInfo.html">SignalInfo</a> *signal = node-&gt;<a class="code hl_function" href="classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1">GetSignal</a>();</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> std::cout &lt;&lt; <span class="stringliteral">&quot;[signal] &quot;</span> &lt;&lt; node-&gt;<a class="code hl_function" href="classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18">GetName</a>();</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
@@ -118,10 +147,10 @@
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (std::size_t i = 0U; i &lt; node-&gt;<a class="code hl_function" href="classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea">GetChildCount</a>(); ++i)</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_function" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">PrintTree</a> (node-&gt;<a class="code hl_function" href="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6">GetChild</a> (i), indent + 1);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> PrintTree (node-&gt;<a class="code hl_function" href="classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6">GetChild</a> (i), indent + 1);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>}</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f"> 75</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f">PrintDecodedFrame</a> (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> &amp;decoded) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="keyword">static</span> <span class="keywordtype">void</span> PrintDecodedFrame (<span class="keyword">const</span> <a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> &amp;decoded) {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (!decoded.<a class="code hl_variable" href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">valid</a> || (decoded.<a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a> == <span class="keyword">nullptr</span>)) {</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> std::cout &lt;&lt; <span class="stringliteral">&quot;No frame definition found.\n&quot;</span>;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span>;</div>
@@ -129,8 +158,8 @@
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Decoded frame: &quot;</span> &lt;&lt; decoded.<a class="code hl_variable" href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">definition</a>-&gt;<a class="code hl_variable" href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">name</a> &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">for</span> (std::size_t index = 0U; index &lt; decoded.<a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>.size(); ++index) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodedSignalValue.html">DecodedSignalValue</a> &amp;signal = decoded.<a class="code hl_variable" href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">signals</a>[index];</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">for</span> (std::size_t index = 0U; index &lt; decoded.signals.size(); ++index) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">const</span> <a class="code hl_struct" href="structDecodedSignalValue.html">DecodedSignalValue</a> &amp;signal = decoded.signals[index];</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">if</span> ((signal.<a class="code hl_variable" href="structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7">definition</a> == <span class="keyword">nullptr</span>) || !signal.<a class="code hl_variable" href="structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686">valid</a>)</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">continue</span>;</div>
@@ -143,7 +172,7 @@
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> }</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span>}</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"><a class="line" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97"> 97</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[]) {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="keywordtype">int</span> main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[]) {</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (argc &lt; 2) {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;Usage: dbc_demo &lt;file.dbc&gt;\n&quot;</span>;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">return</span> 1;</div>
@@ -157,7 +186,7 @@
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> std::unique_ptr&lt;TreeNode&gt; root = treeBuilder.<a class="code hl_function" href="classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b">Build</a> (database);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> std::cout &lt;&lt; <span class="stringliteral">&quot;=== Parsed tree ===\n&quot;</span>;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <a class="code hl_function" href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">PrintTree</a> (root.get(), 0);</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> PrintTree (root.get(), 0);</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <a class="code hl_class" href="classDbcDecodeBuilder.html">DbcDecodeBuilder</a> decodeBuilder;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <a class="code hl_struct" href="structDecodeDatabase.html">DecodeDatabase</a> decodeDatabase = decodeBuilder.<a class="code hl_function" href="classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b">Build</a> (database);</div>
@@ -167,15 +196,15 @@
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="comment"> * Replace with live CAN frame or trace record later.</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span><span class="comment"> */</span></div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <a class="code hl_struct" href="structRawCanFrame.html">RawCanFrame</a> rawFrame;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> rawFrame.<a class="code hl_variable" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">canId</a> = decodeDatabase.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>.empty() ? 0U : decodeDatabase.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>[0].canId;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> rawFrame.<a class="code hl_variable" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">isExtended</a> = decodeDatabase.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>.empty() ? false : decodeDatabase.<a class="code hl_variable" href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">frames</a>[0].isExtended;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> rawFrame.<a class="code hl_variable" href="structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4">canId</a> = decodeDatabase.frames.empty() ? 0U : decodeDatabase.frames[0].canId;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> rawFrame.<a class="code hl_variable" href="structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7">isExtended</a> = decodeDatabase.frames.empty() ? false : decodeDatabase.frames[0].isExtended;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> rawFrame.<a class="code hl_variable" href="structRawCanFrame.html#a0acb487612104c99c9907344c035df83">data</a>.resize (8U, 0U);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <a class="code hl_class" href="classDbcDecoder.html">DbcDecoder</a> decoder;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <a class="code hl_struct" href="structDecodedFrameValue.html">DecodedFrameValue</a> decoded = decoder.<a class="code hl_function" href="classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7">Decode</a> (decodeDatabase, rawFrame);</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> std::cout &lt;&lt; <span class="stringliteral">&quot;\n=== Decoded frame ===\n&quot;</span>;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <a class="code hl_function" href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f">PrintDecodedFrame</a> (decoded);</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> PrintDecodedFrame (decoded);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> std::exception &amp;ex) {</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;Error: &quot;</span> &lt;&lt; ex.what() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span>;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">return</span> 2;</div>
@@ -202,19 +231,14 @@
<div class="ttc" id="adbc__decoder_8h_html"><div class="ttname"><a href="dbc__decoder_8h.html">dbc_decoder.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="adbc__parser_8h_html"><div class="ttname"><a href="dbc__parser_8h.html">dbc_parser.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="adbc__tree__builder_8h_html"><div class="ttname"><a href="dbc__tree__builder_8h.html">dbc_tree_builder.h</a></div><div class="ttdoc">Created: 2026-03-13 Author: Deeaitch (Dim. Himro)</div></div>
<div class="ttc" id="amain_8cpp_html_a0ddf1224851353fc92bfbff6f499fa97"><div class="ttname"><a href="main_8cpp.html#a0ddf1224851353fc92bfbff6f499fa97">main</a></div><div class="ttdeci">int main(int argc, char *argv[])</div><div class="ttdef"><b>Definition:</b> <a href="main_8cpp_source.html#l00097">main.cpp:97</a></div></div>
<div class="ttc" id="amain_8cpp_html_a26dbbea5b56e3fbc451b68f217d5063f"><div class="ttname"><a href="main_8cpp.html#a26dbbea5b56e3fbc451b68f217d5063f">PrintDecodedFrame</a></div><div class="ttdeci">static void PrintDecodedFrame(const DecodedFrameValue &amp;decoded)</div><div class="ttdef"><b>Definition:</b> <a href="main_8cpp_source.html#l00075">main.cpp:75</a></div></div>
<div class="ttc" id="amain_8cpp_html_a57aefef9cfd52a8190df002e12808e0a"><div class="ttname"><a href="main_8cpp.html#a57aefef9cfd52a8190df002e12808e0a">PrintTree</a></div><div class="ttdeci">static void PrintTree(const TreeNode *node, int indent)</div><div class="ttdef"><b>Definition:</b> <a href="main_8cpp_source.html#l00023">main.cpp:23</a></div></div>
<div class="ttc" id="astructDbcDatabase_html"><div class="ttname"><a href="structDbcDatabase.html">DbcDatabase</a></div><div class="ttdoc">Parsed DBC content stored in a simple internal form.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__database_8h_source.html#l00022">dbc_database.h:22</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html"><div class="ttname"><a href="structDecodeDatabase.html">DecodeDatabase</a></div><div class="ttdoc">Runtime decode database with fast lookup by CAN ID.</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00132">decode_database.h:132</a></div></div>
<div class="ttc" id="astructDecodeDatabase_html_a2bd4ddfc2602c1de4e12a373bfc93072"><div class="ttname"><a href="structDecodeDatabase.html#a2bd4ddfc2602c1de4e12a373bfc93072">DecodeDatabase::frames</a></div><div class="ttdeci">std::vector&lt; DecodeFrame &gt; frames</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00133">decode_database.h:133</a></div></div>
<div class="ttc" id="astructDecodeFrame_html_aa0a7f8fd5bfde2148dfd0d838328f579"><div class="ttname"><a href="structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579">DecodeFrame::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00073">decode_database.h:73</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a38eed9ca7581423fd8bfbedcffc12092"><div class="ttname"><a href="structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092">DecodeSignal::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00049">decode_database.h:49</a></div></div>
<div class="ttc" id="astructDecodeSignal_html_a58cf5844f2272a23dcb9687d912e4780"><div class="ttname"><a href="structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780">DecodeSignal::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="decode__database_8h_source.html#l00040">decode_database.h:40</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html"><div class="ttname"><a href="structDecodedFrameValue.html">DecodedFrameValue</a></div><div class="ttdoc">Fully decoded frame.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00055">dbc_decoder.h:55</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a4f51c31110dba1f73a763c596372beb0"><div class="ttname"><a href="structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0">DecodedFrameValue::valid</a></div><div class="ttdeci">bool valid</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00058">dbc_decoder.h:58</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a60dda1cc352d2c8087f0bdbc81dd266c"><div class="ttname"><a href="structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c">DecodedFrameValue::definition</a></div><div class="ttdeci">const DecodeFrame * definition</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00056">dbc_decoder.h:56</a></div></div>
<div class="ttc" id="astructDecodedFrameValue_html_a8440e0e5d7953102095b029f522022d3"><div class="ttname"><a href="structDecodedFrameValue.html#a8440e0e5d7953102095b029f522022d3">DecodedFrameValue::signals</a></div><div class="ttdeci">std::vector&lt; DecodedSignalValue &gt; signals</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00057">dbc_decoder.h:57</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html"><div class="ttname"><a href="structDecodedSignalValue.html">DecodedSignalValue</a></div><div class="ttdoc">One decoded signal value.</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00038">dbc_decoder.h:38</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a5138b825940e34689f7b3891627ee9ec"><div class="ttname"><a href="structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec">DecodedSignalValue::rawValue</a></div><div class="ttdeci">std::int64_t rawValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00040">dbc_decoder.h:40</a></div></div>
<div class="ttc" id="astructDecodedSignalValue_html_a6847d05b3cb00d5e0f6c611968f57978"><div class="ttname"><a href="structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978">DecodedSignalValue::physicalValue</a></div><div class="ttdeci">double physicalValue</div><div class="ttdef"><b>Definition:</b> <a href="dbc__decoder_8h_source.html#l00041">dbc_decoder.h:41</a></div></div>
@@ -234,13 +258,14 @@
<div class="ttc" id="astructSignalInfo_html_a1008b5201f71848177217bd52fb84baa"><div class="ttname"><a href="structSignalInfo.html#a1008b5201f71848177217bd52fb84baa">SignalInfo::length</a></div><div class="ttdeci">std::uint32_t length</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00025">signal_info.h:25</a></div></div>
<div class="ttc" id="astructSignalInfo_html_a1f214f03e94ef5794de2d3367bfcbd01"><div class="ttname"><a href="structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01">SignalInfo::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00032">signal_info.h:32</a></div></div>
<div class="ttc" id="astructSignalInfo_html_ace290724f9801521609aedaa946d61f1"><div class="ttname"><a href="structSignalInfo.html#ace290724f9801521609aedaa946d61f1">SignalInfo::startBit</a></div><div class="ttdeci">std::uint32_t startBit</div><div class="ttdef"><b>Definition:</b> <a href="signal__info_8h_source.html#l00024">signal_info.h:24</a></div></div>
<div class="ttc" id="atree__node_8h_html_acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398"><div class="ttname"><a href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398">NodeType::Signal</a></div><div class="ttdeci">@ Signal</div></div>
<div class="ttc" id="atree__node_8h_html_acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a"><div class="ttname"><a href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a">NodeType::Frame</a></div><div class="ttdeci">@ Frame</div></div>
<div class="ttc" id="atree__node_8h_html_acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad"><div class="ttname"><a href="tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad">NodeType::Root</a></div><div class="ttdeci">@ Root</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="main_8cpp.html">main.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: DBC Parser and Runtime Decode Module Documentation</title>
<title>DBC Framework: DBC Parser and Runtime Decode Module Documentation</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,16 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('md_README.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div><div class="header">
<div class="headertitle"><div class="title">DBC Parser and Runtime Decode Module Documentation </div></div>
</div><!--header-->
@@ -732,9 +777,12 @@ Runtime decode representation</h2>
</div><!-- fragment --><p >This gives FrameTap a much better foundation for real use, because both browsing and decoding are supported without forcing one representation to do the other's job. </p>
</div></div><!-- contents -->
</div><!-- PageDoc -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

135
docs/html/menu.js Normal file
View File

@@ -0,0 +1,135 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
function makeTree(data,relPath) {
var result='';
if ('children' in data) {
result+='<ul>';
for (var i in data.children) {
var url;
var link;
link = data.children[i].url;
if (link.substring(0,1)=='^') {
url = link.substring(1);
} else {
url = relPath+link;
}
result+='<li><a href="'+url+'">'+
data.children[i].text+'</a>'+
makeTree(data.children[i],relPath)+'</li>';
}
result+='</ul>';
}
return result;
}
var searchBox;
if (searchEnabled) {
if (serverSide) {
searchBox='<div id="MSearchBox" class="MSearchBoxInactive">'+
'<div class="left">'+
'<form id="FSearchBox" action="'+relPath+searchPage+
'" method="get"><img id="MSearchSelect" src="'+
relPath+'search/mag.svg" alt=""/>'+
'<input type="text" id="MSearchField" name="query" value="'+search+
'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)"'+
' onblur="searchBox.OnSearchFieldFocus(false)">'+
'</form>'+
'</div>'+
'<div class="right"></div>'+
'</div>';
} else {
searchBox='<div id="MSearchBox" class="MSearchBoxInactive">'+
'<span class="left">'+
'<img id="MSearchSelect" src="'+relPath+
'search/mag_sel.svg" onmouseover="return searchBox.OnSearchSelectShow()"'+
' onmouseout="return searchBox.OnSearchSelectHide()" alt=""/>'+
'<input type="text" id="MSearchField" value="'+search+
'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" '+
'onblur="searchBox.OnSearchFieldFocus(false)" '+
'onkeyup="searchBox.OnSearchFieldChange(event)"/>'+
'</span>'+
'<span class="right"><a id="MSearchClose" '+
'href="javascript:searchBox.CloseResultsWindow()">'+
'<img id="MSearchCloseImg" border="0" src="'+relPath+
'search/close.svg" alt=""/></a>'
'</span>'
'</div>';
}
}
$('#main-nav').before('<div class="sm sm-dox"><input id="main-menu-state" type="checkbox"/>'+
'<label class="main-menu-btn" for="main-menu-state">'+
'<span class="main-menu-btn-icon"></span> '+
'Toggle main menu visibility</label>'+
'<span id="searchBoxPos1" style="position:absolute;right:8px;top:8px;height:36px;"></span>'+
'</div>');
$('#main-nav').append(makeTree(menudata,relPath));
$('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
if (searchBox) {
$('#main-menu').append('<li id="searchBoxPos2" style="float:right"></li>');
}
var $mainMenuState = $('#main-menu-state');
var prevWidth = 0;
if ($mainMenuState.length) {
function initResizableIfExists() {
if (typeof initResizable==='function') initResizable();
}
// animate mobile menu
$mainMenuState.change(function(e) {
var $menu = $('#main-menu');
var options = { duration: 250, step: initResizableIfExists };
if (this.checked) {
options['complete'] = function() { $menu.css('display', 'block') };
$menu.hide().slideDown(options);
} else {
options['complete'] = function() { $menu.css('display', 'none') };
$menu.show().slideUp(options);
}
});
// set default menu visibility
function resetState() {
var $menu = $('#main-menu');
var $mainMenuState = $('#main-menu-state');
var newWidth = $(window).outerWidth();
if (newWidth!=prevWidth) {
if ($(window).outerWidth()<768) {
$mainMenuState.prop('checked',false); $menu.hide();
$('#searchBoxPos1').html(searchBox);
$('#searchBoxPos2').hide();
} else {
$menu.show();
$('#searchBoxPos1').empty();
$('#searchBoxPos2').html(searchBox);
$('#searchBoxPos2').show();
}
prevWidth = newWidth;
}
}
$(window).ready(function() { resetState(); initResizableIfExists(); });
$(window).resize(resetState);
}
$('#main-menu').smartmenus();
}
/* @license-end */

View File

@@ -25,11 +25,6 @@
var menudata={children:[
{text:"Main Page",url:"index.html"},
{text:"Related Pages",url:"pages.html"},
{text:"Namespaces",url:"namespaces.html",children:[
{text:"Namespace List",url:"namespaces.html"},
{text:"Namespace Members",url:"namespacemembers.html",children:[
{text:"All",url:"namespacemembers.html"},
{text:"Functions",url:"namespacemembers_func.html"}]}]},
{text:"Classes",url:"annotated.html",children:[
{text:"Class List",url:"annotated.html"},
{text:"Class Index",url:"classes.html"},
@@ -39,7 +34,6 @@ var menudata={children:[
{text:"b",url:"functions.html#index_b"},
{text:"c",url:"functions.html#index_c"},
{text:"d",url:"functions.html#index_d"},
{text:"e",url:"functions.html#index_e"},
{text:"f",url:"functions.html#index_f"},
{text:"g",url:"functions.html#index_g"},
{text:"h",url:"functions.html#index_h"},
@@ -53,23 +47,8 @@ var menudata={children:[
{text:"s",url:"functions.html#index_s"},
{text:"t",url:"functions.html#index_t"},
{text:"u",url:"functions.html#index_u"},
{text:"v",url:"functions.html#index_v"},
{text:"~",url:"functions.html#index__7E"}]},
{text:"Functions",url:"functions_func.html",children:[
{text:"a",url:"functions_func.html#index_a"},
{text:"b",url:"functions_func.html#index_b"},
{text:"d",url:"functions_func.html#index_d"},
{text:"e",url:"functions_func.html#index_e"},
{text:"f",url:"functions_func.html#index_f"},
{text:"g",url:"functions_func.html#index_g"},
{text:"i",url:"functions_func.html#index_i"},
{text:"n",url:"functions_func.html#index_n"},
{text:"o",url:"functions_func.html#index_o"},
{text:"p",url:"functions_func.html#index_p"},
{text:"r",url:"functions_func.html#index_r"},
{text:"s",url:"functions_func.html#index_s"},
{text:"t",url:"functions_func.html#index_t"},
{text:"~",url:"functions_func.html#index__7E"}]},
{text:"v",url:"functions.html#index_v"}]},
{text:"Functions",url:"functions_func.html"},
{text:"Variables",url:"functions_vars.html",children:[
{text:"b",url:"functions_vars.html#index_b"},
{text:"c",url:"functions_vars.html#index_c"},
@@ -91,5 +70,4 @@ var menudata={children:[
{text:"File List",url:"files.html"},
{text:"File Members",url:"globals.html",children:[
{text:"All",url:"globals.html"},
{text:"Functions",url:"globals_func.html"},
{text:"Enumerations",url:"globals_enum.html"}]}]}]}

147
docs/html/navtree.css Normal file
View File

@@ -0,0 +1,147 @@
#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: 280px;
overflow : hidden;
}
.ui-resizable .ui-resizable-handle {
display:block;
}
.ui-resizable-e {
background-image:url("splitbar.png");
background-size:100%;
background-repeat:repeat-y;
background-attachment: scroll;
cursor:ew-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: #F9FAFC;
-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; }
}

549
docs/html/navtree.js Normal file
View File

@@ -0,0 +1,549 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
var navTreeSubIndices = new Array();
var arrowDown = '&#9660;';
var arrowRight = '&#9658;';
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';
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("span");
imgNode.className = 'arrow';
imgNode.style.paddingLeft=(16*level).toString()+'px';
imgNode.innerHTML=arrowRight;
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.innerHTML=arrowRight;
node.expanded = false;
} else {
expandNode(o, node, false, false);
}
}
node.expandToggle.appendChild(imgNode);
domNode.appendChild(node.expandToggle);
} else {
var span = document.createElement("span");
span.className = 'arrow';
span.style.width = 16*(level+1)+'px';
span.innerHTML = '&#160;';
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('memtitle') ||
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',100,{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);
}
$(node.getChildrenUL()).slideDown("fast");
node.plus_img.innerHTML = arrowDown;
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
}
}
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');
}
var topOffset=5;
if (typeof page_layout!=='undefined' && page_layout==1) {
topOffset+=$('#top').outerHeight();
}
if ($('#nav-tree-contents .item:first').hasClass('selected')) {
topOffset+=25;
}
$('#nav-sync').css('top',topOffset+'px');
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'});
node.plus_img.innerHTML = arrowDown;
node.expanded = true;
var n = node.children[o.breadcrumbs[index]];
if (index+1<o.breadcrumbs.length) {
showNode(o,n,index+1,hash);
} else {
if (typeof(n.childrenData)==='string') {
var varName = n.childrenData;
getScript(n.relpath+varName,function(){
n.childrenData = getData(varName);
node.expanded=false;
showNode(o,node,index,hash); // retry with child node expanded
},true);
} else {
var rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
if (rootBase=="index" || rootBase=="pages" || rootBase=="search") {
expandNode(o, n, true, true);
}
selectAndHighlight(hash,n);
}
}
}
} else {
selectAndHighlight(hash);
}
}
function removeToInsertLater(element) {
var parentNode = element.parentNode;
var nextSibling = element.nextSibling;
parentNode.removeChild(element);
return function() {
if (nextSibling) {
parentNode.insertBefore(element, nextSibling);
} else {
parentNode.appendChild(element);
}
};
}
function getNode(o, po)
{
var insertFunction = removeToInsertLater(po.li);
po.childrenVisited = true;
var l = po.childrenData.length-1;
for (var i in po.childrenData) {
var nodeData = po.childrenData[i];
po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2],
i==l);
}
insertFunction();
}
function gotoNode(o,subIndex,root,hash,relpath)
{
var nti = navTreeSubIndices[subIndex][root+hash];
o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
navTo(o,NAVTREE[0][1],"",relpath);
$('.item').removeClass('selected');
$('.item').removeAttr('id');
}
if (o.breadcrumbs) {
o.breadcrumbs.unshift(0); // add 0 for root node
showNode(o, o.node, 0, hash);
}
}
function navTo(o,root,hash,relpath)
{
var link = cachedLink();
if (link) {
var parts = link.split('#');
root = parts[0];
if (parts.length>1) 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('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
}
function showSyncOn(n,relpath)
{
n.html('<img src="'+relpath+'sync_on.png" title="'+SYNCONMSG+'"/>');
}
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();
}
}
var loadTriggered = false;
var readyTriggered = false;
var loadObject,loadToRoot,loadUrl,loadRelPath;
$(window).on('load',function(){
if (readyTriggered) { // ready first
navTo(loadObject,loadToRoot,loadUrl,loadRelPath);
showRoot();
}
loadTriggered=true;
});
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("span");
o.node.plus_img.className = 'arrow';
o.node.plus_img.innerHTML = arrowRight;
if (localStorageSupported()) {
var navSync = $('#nav-sync');
if (cachedLink()) {
showSyncOff(navSync,relpath);
navSync.removeClass('sync');
} else {
showSyncOn(navSync,relpath);
}
navSync.click(function(){ toggleSyncButton(relpath); });
}
if (loadTriggered) { // load before ready
navTo(o,toroot,hashUrl(),relpath);
showRoot();
} else { // ready before load
loadObject = o;
loadToRoot = toroot;
loadUrl = hashUrl();
loadRelPath = relpath;
readyTriggered=true;
}
$(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(/</g,'\\3c ')+'"]');
}
if (a==null || !$(a).parent().parent().hasClass('selected')){
$('.item').removeClass('selected');
$('.item').removeAttr('id');
}
var link=stripPath2(pathName());
navTo(o,link,hashUrl(),relpath);
} else if (!animationInProgress) {
$('#doc-content').scrollTop(0);
$('.item').removeClass('selected');
$('.item').removeAttr('id');
navTo(o,toroot,hashUrl(),relpath);
}
})
}
/* @license-end */

121
docs/html/navtreedata.js Normal file
View File

@@ -0,0 +1,121 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
var NAVTREE =
[
[ "DBC Framework", "index.html", [
[ "DBC Parser and Runtime Decode Module Documentation", "md_README.html", [
[ "Overview", "md_README.html#autotoc_md1", null ],
[ "High-Level Architecture", "md_README.html#autotoc_md3", [
[ "1. Parse and UI path", "md_README.html#autotoc_md4", null ],
[ "2. Runtime decode path", "md_README.html#autotoc_md5", null ]
] ],
[ "Why the Runtime Decode Layer Exists", "md_README.html#autotoc_md7", null ],
[ "Module Layout", "md_README.html#autotoc_md9", [
[ "Parsed DBC structures", "md_README.html#autotoc_md10", null ],
[ "UI tree structures", "md_README.html#autotoc_md11", null ],
[ "Runtime decode structures", "md_README.html#autotoc_md12", null ],
[ "Runtime decoder", "md_README.html#autotoc_md13", null ],
[ "Parser", "md_README.html#autotoc_md14", null ],
[ "Demo", "md_README.html#autotoc_md15", null ]
] ],
[ "Parsed Data Structures", "md_README.html#autotoc_md17", null ],
[ "<tt>SignalInfo</tt>", "md_README.html#autotoc_md18", null ],
[ "<tt>FrameInfo</tt>", "md_README.html#autotoc_md20", null ],
[ "<tt>DbcDatabase</tt>", "md_README.html#autotoc_md22", null ],
[ "UI Tree Layer", "md_README.html#autotoc_md24", null ],
[ "<tt>TreeNode</tt>", "md_README.html#autotoc_md25", null ],
[ "Runtime Decode Layer", "md_README.html#autotoc_md27", null ],
[ "Purpose", "md_README.html#autotoc_md28", null ],
[ "<tt>ByteOrder</tt>", "md_README.html#autotoc_md30", null ],
[ "<tt>ValueType</tt>", "md_README.html#autotoc_md32", null ],
[ "<tt>DecodeSignal</tt>", "md_README.html#autotoc_md34", null ],
[ "<tt>DecodeFrame</tt>", "md_README.html#autotoc_md36", null ],
[ "<tt>FrameKey</tt>", "md_README.html#autotoc_md38", null ],
[ "<tt>DecodeDatabase</tt>", "md_README.html#autotoc_md40", null ],
[ "Decoder Layer", "md_README.html#autotoc_md42", null ],
[ "<tt>RawCanFrame</tt>", "md_README.html#autotoc_md43", null ],
[ "<tt>DecodedSignalValue</tt>", "md_README.html#autotoc_md45", null ],
[ "<tt>DecodedFrameValue</tt>", "md_README.html#autotoc_md47", null ],
[ "<tt>DbcDecoder</tt>", "md_README.html#autotoc_md49", null ],
[ "Parser Support", "md_README.html#autotoc_md51", null ],
[ "Supported DBC Syntax", "md_README.html#autotoc_md53", null ],
[ "Frame definition", "md_README.html#autotoc_md54", null ],
[ "Signal definition", "md_README.html#autotoc_md56", null ],
[ "Comments", "md_README.html#autotoc_md58", null ],
[ "CAN ID Normalization", "md_README.html#autotoc_md60", null ],
[ "PGN Extraction", "md_README.html#autotoc_md62", null ],
[ "Decode Flow", "md_README.html#autotoc_md64", null ],
[ "Intel and Motorola Extraction", "md_README.html#autotoc_md66", null ],
[ "Example Usage", "md_README.html#autotoc_md68", null ],
[ "Parse DBC", "md_README.html#autotoc_md69", null ],
[ "Build UI tree", "md_README.html#autotoc_md70", null ],
[ "Build runtime decode database", "md_README.html#autotoc_md71", null ],
[ "Decode a raw frame", "md_README.html#autotoc_md72", null ],
[ "Unified Decode Strategy", "md_README.html#autotoc_md74", [
[ "live path", "md_README.html#autotoc_md75", null ],
[ "trace path", "md_README.html#autotoc_md76", null ]
] ],
[ "Intended Use in FrameTap", "md_README.html#autotoc_md78", null ],
[ "Why the Tree Is Not Enough", "md_README.html#autotoc_md80", null ],
[ "Why No Abstract Factory Is Used", "md_README.html#autotoc_md82", null ],
[ "Current Limitations", "md_README.html#autotoc_md84", null ],
[ "Recommended Next Steps", "md_README.html#autotoc_md86", [
[ "Stage 1 - already implemented", "md_README.html#autotoc_md87", null ],
[ "Stage 2", "md_README.html#autotoc_md88", null ],
[ "Stage 3", "md_README.html#autotoc_md89", null ],
[ "Stage 4", "md_README.html#autotoc_md90", null ]
] ],
[ "Build Integration", "md_README.html#autotoc_md92", null ],
[ "Summary", "md_README.html#autotoc_md94", [
[ "Parsed representation", "md_README.html#autotoc_md95", null ],
[ "Runtime decode representation", "md_README.html#autotoc_md96", null ]
] ]
] ],
[ "Classes", "annotated.html", [
[ "Class List", "annotated.html", "annotated_dup" ],
[ "Class Index", "classes.html", null ],
[ "Class Members", "functions.html", [
[ "All", "functions.html", null ],
[ "Functions", "functions_func.html", null ],
[ "Variables", "functions_vars.html", null ]
] ]
] ],
[ "Files", "files.html", [
[ "File List", "files.html", "files_dup" ],
[ "File Members", "globals.html", [
[ "All", "globals.html", null ],
[ "Enumerations", "globals_enum.html", null ]
] ]
] ]
] ]
];
var NAVTREEINDEX =
[
"annotated.html"
];
var SYNCONMSG = 'click to disable panel synchronisation';
var SYNCOFFMSG = 'click to enable panel synchronisation';

200
docs/html/navtreeindex0.js Normal file
View File

@@ -0,0 +1,200 @@
var NAVTREEINDEX0 =
{
"annotated.html":[1,0],
"classDbcDecodeBuilder.html":[1,0,1],
"classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b":[1,0,1,0],
"classDbcDecoder.html":[1,0,2],
"classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7":[1,0,2,1],
"classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da":[1,0,2,0],
"classDbcParser.html":[1,0,3],
"classDbcParser.html#aef72826942c9095d653fafa435855e56":[1,0,3,0],
"classDbcTreeBuilder.html":[1,0,4],
"classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b":[1,0,4,0],
"classTreeNode.html":[1,0,15],
"classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1":[1,0,15,10],
"classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6":[1,0,15,5],
"classTreeNode.html#a6161f2ebb92184eab4215d121870e788":[1,0,15,3],
"classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f":[1,0,15,6],
"classTreeNode.html#a8e38dd591d8801d7ee3a7dbad90c67fc":[1,0,15,1],
"classTreeNode.html#a984a98d5ccf7ef1f5a18094c6821f35d":[1,0,15,0],
"classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18":[1,0,15,8],
"classTreeNode.html#ab9f00f5253d56461bb2d420fd639c5ae":[1,0,15,2],
"classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea":[1,0,15,4],
"classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9":[1,0,15,7],
"classTreeNode.html#afc503b40004764163605d6dbdb4ef811":[1,0,15,9],
"classes.html":[1,1],
"dbc__database_8h.html":[2,0,0],
"dbc__database_8h_source.html":[2,0,0],
"dbc__decode__builder_8cpp.html":[2,0,1],
"dbc__decode__builder_8cpp_source.html":[2,0,1],
"dbc__decode__builder_8h.html":[2,0,2],
"dbc__decode__builder_8h_source.html":[2,0,2],
"dbc__decoder_8cpp.html":[2,0,3],
"dbc__decoder_8cpp_source.html":[2,0,3],
"dbc__decoder_8h.html":[2,0,4],
"dbc__decoder_8h_source.html":[2,0,4],
"dbc__parser_8cpp.html":[2,0,5],
"dbc__parser_8cpp_source.html":[2,0,5],
"dbc__parser_8h.html":[2,0,6],
"dbc__parser_8h_source.html":[2,0,6],
"dbc__tree__builder_8cpp.html":[2,0,7],
"dbc__tree__builder_8cpp_source.html":[2,0,7],
"dbc__tree__builder_8h.html":[2,0,8],
"dbc__tree__builder_8h_source.html":[2,0,8],
"decode__database_8h.html":[2,0,9],
"decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b":[2,0,9,5],
"decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142ba2ed1afe3c9215523e4272f46e6186b31":[2,0,9,5,1],
"decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142baff97a9fdede09eaf6e1c8ec9f6a61dd5":[2,0,9,5,0],
"decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1":[2,0,9,6],
"decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1a71fed0c3428bf1a2e19af257c4bac379":[2,0,9,6,1],
"decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1aa1a914735b205424ba6c40b85528d78a":[2,0,9,6,0],
"decode__database_8h_source.html":[2,0,9],
"files.html":[2,0],
"frame__info_8h.html":[2,0,10],
"frame__info_8h_source.html":[2,0,10],
"functions.html":[1,2,0],
"functions_func.html":[1,2,1],
"functions_vars.html":[1,2,2],
"globals.html":[2,1,0],
"globals_enum.html":[2,1,1],
"index.html":[],
"main_8cpp.html":[2,0,11],
"main_8cpp_source.html":[2,0,11],
"md_README.html":[0],
"md_README.html#autotoc_md1":[0,0],
"md_README.html#autotoc_md10":[0,3,0],
"md_README.html#autotoc_md11":[0,3,1],
"md_README.html#autotoc_md12":[0,3,2],
"md_README.html#autotoc_md13":[0,3,3],
"md_README.html#autotoc_md14":[0,3,4],
"md_README.html#autotoc_md15":[0,3,5],
"md_README.html#autotoc_md17":[0,4],
"md_README.html#autotoc_md18":[0,5],
"md_README.html#autotoc_md20":[0,6],
"md_README.html#autotoc_md22":[0,7],
"md_README.html#autotoc_md24":[0,8],
"md_README.html#autotoc_md25":[0,9],
"md_README.html#autotoc_md27":[0,10],
"md_README.html#autotoc_md28":[0,11],
"md_README.html#autotoc_md3":[0,1],
"md_README.html#autotoc_md30":[0,12],
"md_README.html#autotoc_md32":[0,13],
"md_README.html#autotoc_md34":[0,14],
"md_README.html#autotoc_md36":[0,15],
"md_README.html#autotoc_md38":[0,16],
"md_README.html#autotoc_md4":[0,1,0],
"md_README.html#autotoc_md40":[0,17],
"md_README.html#autotoc_md42":[0,18],
"md_README.html#autotoc_md43":[0,19],
"md_README.html#autotoc_md45":[0,20],
"md_README.html#autotoc_md47":[0,21],
"md_README.html#autotoc_md49":[0,22],
"md_README.html#autotoc_md5":[0,1,1],
"md_README.html#autotoc_md51":[0,23],
"md_README.html#autotoc_md53":[0,24],
"md_README.html#autotoc_md54":[0,25],
"md_README.html#autotoc_md56":[0,26],
"md_README.html#autotoc_md58":[0,27],
"md_README.html#autotoc_md60":[0,28],
"md_README.html#autotoc_md62":[0,29],
"md_README.html#autotoc_md64":[0,30],
"md_README.html#autotoc_md66":[0,31],
"md_README.html#autotoc_md68":[0,32],
"md_README.html#autotoc_md69":[0,33],
"md_README.html#autotoc_md7":[0,2],
"md_README.html#autotoc_md70":[0,34],
"md_README.html#autotoc_md71":[0,35],
"md_README.html#autotoc_md72":[0,36],
"md_README.html#autotoc_md74":[0,37],
"md_README.html#autotoc_md75":[0,37,0],
"md_README.html#autotoc_md76":[0,37,1],
"md_README.html#autotoc_md78":[0,38],
"md_README.html#autotoc_md80":[0,39],
"md_README.html#autotoc_md82":[0,40],
"md_README.html#autotoc_md84":[0,41],
"md_README.html#autotoc_md86":[0,42],
"md_README.html#autotoc_md87":[0,42,0],
"md_README.html#autotoc_md88":[0,42,1],
"md_README.html#autotoc_md89":[0,42,2],
"md_README.html#autotoc_md9":[0,3],
"md_README.html#autotoc_md90":[0,42,3],
"md_README.html#autotoc_md92":[0,43],
"md_README.html#autotoc_md94":[0,44],
"md_README.html#autotoc_md95":[0,44,0],
"md_README.html#autotoc_md96":[0,44,1],
"pages.html":[],
"signal__info_8h.html":[2,0,12],
"signal__info_8h_source.html":[2,0,12],
"structDbcDatabase.html":[1,0,0],
"structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b":[1,0,0,0],
"structDecodeDatabase.html":[1,0,5],
"structDecodeFrame.html":[1,0,8],
"structDecodeFrame.html#a1d3c54055c0cbceb73adf551f7067f23":[1,0,8,4],
"structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d":[1,0,8,5],
"structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22":[1,0,8,7],
"structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41":[1,0,8,2],
"structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060":[1,0,8,3],
"structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf":[1,0,8,1],
"structDecodeFrame.html#a7f4e71bbdec3f424b625e724e3dfbf14":[1,0,8,8],
"structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579":[1,0,8,0],
"structDecodeFrame.html#ad78241dc40c793aabb8495b6989b81a9":[1,0,8,6],
"structDecodeSignal.html":[1,0,9],
"structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25":[1,0,9,7],
"structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092":[1,0,9,9],
"structDecodeSignal.html#a428c39913a366a8476dd291061354391":[1,0,9,5],
"structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7":[1,0,9,8],
"structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780":[1,0,9,0],
"structDecodeSignal.html#a92db637af4e224a0ae70173050dc3f74":[1,0,9,6],
"structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8":[1,0,9,4],
"structDecodeSignal.html#aaf5d7527ddf65b6355c2b4f3626df22d":[1,0,9,1],
"structDecodeSignal.html#abdbae62a64d2df716bf60c6b67b30eaa":[1,0,9,10],
"structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d":[1,0,9,3],
"structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb":[1,0,9,2],
"structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473":[1,0,9,11],
"structDecodedFrameValue.html":[1,0,6],
"structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0":[1,0,6,2],
"structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c":[1,0,6,0],
"structDecodedFrameValue.html#adae123ac7fbb4a5c314b64b01109f4a8":[1,0,6,1],
"structDecodedSignalValue.html":[1,0,7],
"structDecodedSignalValue.html#a5138b825940e34689f7b3891627ee9ec":[1,0,7,1],
"structDecodedSignalValue.html#a6847d05b3cb00d5e0f6c611968f57978":[1,0,7,2],
"structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686":[1,0,7,3],
"structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7":[1,0,7,0],
"structFrameInfo.html":[1,0,10],
"structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf":[1,0,10,2],
"structFrameInfo.html#a3f7e25d67ddae22f2ed50823a5a26084":[1,0,10,8],
"structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d":[1,0,10,4],
"structFrameInfo.html#a92749ec3798d4211a505860fb389a9e8":[1,0,10,6],
"structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9":[1,0,10,5],
"structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb":[1,0,10,0],
"structFrameInfo.html#ace75121294f9d89b762080ab5643293c":[1,0,10,7],
"structFrameInfo.html#aee518b33f1000bf0b7f6e4a87474c943":[1,0,10,3],
"structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e":[1,0,10,1],
"structFrameKey.html":[1,0,11],
"structFrameKeyHasher.html":[1,0,12],
"structRawCanFrame.html":[1,0,13],
"structRawCanFrame.html#a0acb487612104c99c9907344c035df83":[1,0,13,2],
"structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4":[1,0,13,0],
"structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7":[1,0,13,1],
"structSignalInfo.html":[1,0,14],
"structSignalInfo.html#a1008b5201f71848177217bd52fb84baa":[1,0,14,2],
"structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01":[1,0,14,9],
"structSignalInfo.html#a2c95562fd0b29327a7fd7b1e6feee7f3":[1,0,14,10],
"structSignalInfo.html#a379e422a00cad56f896cacf60455b088":[1,0,14,0],
"structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f":[1,0,14,4],
"structSignalInfo.html#ab7d0769f47aa540656b22e4e49db517e":[1,0,14,6],
"structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5":[1,0,14,11],
"structSignalInfo.html#ace290724f9801521609aedaa946d61f1":[1,0,14,1],
"structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b":[1,0,14,7],
"structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52":[1,0,14,8],
"structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499":[1,0,14,5],
"structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c":[1,0,14,3],
"tree__node_8cpp.html":[2,0,13],
"tree__node_8cpp_source.html":[2,0,13],
"tree__node_8h.html":[2,0,14],
"tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16":[2,0,14,1],
"tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a085fea7abdc5d904fe69a3081efd7398":[2,0,14,1,2],
"tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16a3bb3e8c8a24891ba0f7608bcc96f8b0a":[2,0,14,1,1],
"tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16afa03eb688ad8aa1db593d33dabd89bad":[2,0,14,1,0],
"tree__node_8h_source.html":[2,0,14]
};

View File

@@ -5,10 +5,17 @@
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DBC framework: Related Pages</title>
<title>DBC Framework: Related Pages</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
@@ -18,8 +25,9 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">DBC framework
<div id="projectname">DBC Framework
</div>
<div id="projectbrief">DBC parsing and CAN signal decoding framework</div>
</td>
</tr>
</tbody>
@@ -27,16 +35,53 @@
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('pages.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle"><div class="title">Related Pages</div></div>
</div><!--header-->
@@ -47,9 +92,12 @@
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 14 2026 20:49:34 for DBC framework by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4
</small></address>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </li>
</ul>
</div>
</body>
</html>

150
docs/html/resize.js Normal file
View File

@@ -0,0 +1,150 @@
/*
@licstart The following is the entire license notice for the JavaScript code in this file.
The MIT License (MIT)
Copyright (C) 1997-2020 by Dimitri van Heesch
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@licend The above is the entire license notice for the JavaScript code in this file
*/
function initResizable()
{
var cookie_namespace = 'doxygen';
var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight;
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 + "; SameSite=Lax; expires=" + expiration+"; path=/";
}
function resizeWidth()
{
var windowWidth = $(window).width() + "px";
var sidenavWidth = $(sidenav).outerWidth();
content.css({marginLeft:parseInt(sidenavWidth)+"px"});
writeCookie('width',sidenavWidth-barWidth, null);
}
function restoreWidth(navWidth)
{
var windowWidth = $(window).width() + "px";
content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
sidenav.css({width:navWidth + "px"});
}
function resizeHeight()
{
var headerHeight = header.outerHeight();
var footerHeight = footer.outerHeight();
var windowHeight = $(window).height();
var contentHeight,navtreeHeight,sideNavHeight;
if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */
contentHeight = windowHeight - headerHeight - footerHeight;
navtreeHeight = contentHeight;
sideNavHeight = contentHeight;
} else if (page_layout==1) { /* DISABLE_INDEX=YES */
contentHeight = windowHeight - footerHeight;
navtreeHeight = windowHeight - headerHeight;
sideNavHeight = windowHeight;
}
content.css({height:contentHeight + "px"});
navtree.css({height:navtreeHeight + "px"});
sidenav.css({height:sideNavHeight + "px"});
var width=$(window).width();
if (width!=collapsedWidth) {
if (width<desktop_vp && collapsedWidth>=desktop_vp) {
if (!collapsed) {
collapseExpand();
}
} else if (width>desktop_vp && collapsedWidth<desktop_vp) {
if (collapsed) {
collapseExpand();
}
}
collapsedWidth=width;
}
if (location.hash.slice(1)) {
(document.getElementById(location.hash.slice(1))||document.body).scrollIntoView();
}
}
function collapseExpand()
{
if (sidenav.width()>0) {
restoreWidth(0);
collapsed=true;
}
else {
var width = readCookie('width');
if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); }
collapsed=false;
}
}
header = $("#top");
sidenav = $("#side-nav");
content = $("#doc-content");
navtree = $("#nav-tree");
footer = $("#nav-path");
$(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
$(sidenav).resizable({ minWidth: 0 });
$(window).resize(function() { resizeHeight(); });
var device = navigator.userAgent.toLowerCase();
var touch_device = device.match(/(iphone|ipod|ipad|android)/);
if (touch_device) { /* wider split bar for touch only devices */
$(sidenav).css({ paddingRight:'20px' });
$('.ui-resizable-e').css({ width:'20px' });
$('#nav-sync').css({ right:'34px' });
barWidth=20;
}
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);
$(".ui-resizable-handle").dblclick(collapseExpand);
$(window).on('load',resizeHeight);
}
/* @license-end */

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['addchild_0',['AddChild',['../classTreeNode.html#a6161f2ebb92184eab4215d121870e788',1,'TreeNode']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_1.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
var searchData=
[
['build_0',['Build',['../classDbcDecodeBuilder.html#a2bc6386dfb5e58976c42e22c19ec471b',1,'DbcDecodeBuilder::Build()'],['../classDbcTreeBuilder.html#a7e57d067d831b14b383947fd125edd4b',1,'DbcTreeBuilder::Build()']]],
['byteorder_1',['byteOrder',['../structDecodeSignal.html#abdc4c4bb4a67a6d61d6ca81e8a52833d',1,'DecodeSignal']]],
['byteorder_2',['ByteOrder',['../decode__database_8h.html#aaeb92d42f5a6e27b8ba19f18d69d142b',1,'decode_database.h']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_10.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['unit_0',['unit',['../structDecodeSignal.html#a38eed9ca7581423fd8bfbedcffc12092',1,'DecodeSignal::unit()'],['../structSignalInfo.html#a1f214f03e94ef5794de2d3367bfcbd01',1,'SignalInfo::unit()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_11.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
var searchData=
[
['valid_0',['valid',['../structDecodedSignalValue.html#aac0ed361af545cde48d0e6f41a859686',1,'DecodedSignalValue::valid()'],['../structDecodedFrameValue.html#a4f51c31110dba1f73a763c596372beb0',1,'DecodedFrameValue::valid()']]],
['valuetype_1',['valueType',['../structDecodeSignal.html#a9d37638129263b8902ba5be59baf39a8',1,'DecodeSignal']]],
['valuetype_2',['ValueType',['../decode__database_8h.html#ad9971b6ef33e02ba2c75d19c1d2518a1',1,'decode_database.h']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_2.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var searchData=
[
['canid_0',['canId',['../structRawCanFrame.html#a2d0e7fa0e3d5c20bbed55ed8f7888ff4',1,'RawCanFrame::canId()'],['../structDecodeFrame.html#a52e10215388db7df8b541b9d9909edcf',1,'DecodeFrame::canId()'],['../structFrameInfo.html#af470b0742c05bfbffc31c51a68f5c05e',1,'FrameInfo::canId()']]],
['comment_1',['comment',['../structDecodeSignal.html#ae28c905d4a2bc86419c2a8361bfea473',1,'DecodeSignal::comment()'],['../structDecodeFrame.html#a25819ef907a32391af5c9f7cae9cdb22',1,'DecodeFrame::comment()'],['../structFrameInfo.html#ace75121294f9d89b762080ab5643293c',1,'FrameInfo::comment()'],['../structSignalInfo.html#ac99ba7563a5dad01e39c4257216953f5',1,'SignalInfo::comment()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_3.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

28
docs/html/search/all_3.js Normal file
View File

@@ -0,0 +1,28 @@
var searchData=
[
['data_0',['data',['../structRawCanFrame.html#a0acb487612104c99c9907344c035df83',1,'RawCanFrame']]],
['dbc_20parser_20and_20runtime_20decode_20module_20documentation_1',['DBC Parser and Runtime Decode Module Documentation',['../md_README.html',1,'']]],
['dbc_5fdatabase_2eh_2',['dbc_database.h',['../dbc__database_8h.html',1,'']]],
['dbc_5fdecode_5fbuilder_2ecpp_3',['dbc_decode_builder.cpp',['../dbc__decode__builder_8cpp.html',1,'']]],
['dbc_5fdecode_5fbuilder_2eh_4',['dbc_decode_builder.h',['../dbc__decode__builder_8h.html',1,'']]],
['dbc_5fdecoder_2ecpp_5',['dbc_decoder.cpp',['../dbc__decoder_8cpp.html',1,'']]],
['dbc_5fdecoder_2eh_6',['dbc_decoder.h',['../dbc__decoder_8h.html',1,'']]],
['dbc_5fparser_2ecpp_7',['dbc_parser.cpp',['../dbc__parser_8cpp.html',1,'']]],
['dbc_5fparser_2eh_8',['dbc_parser.h',['../dbc__parser_8h.html',1,'']]],
['dbc_5ftree_5fbuilder_2ecpp_9',['dbc_tree_builder.cpp',['../dbc__tree__builder_8cpp.html',1,'']]],
['dbc_5ftree_5fbuilder_2eh_10',['dbc_tree_builder.h',['../dbc__tree__builder_8h.html',1,'']]],
['dbcdatabase_11',['DbcDatabase',['../structDbcDatabase.html',1,'']]],
['dbcdecodebuilder_12',['DbcDecodeBuilder',['../classDbcDecodeBuilder.html',1,'']]],
['dbcdecoder_13',['DbcDecoder',['../classDbcDecoder.html',1,'']]],
['dbcparser_14',['DbcParser',['../classDbcParser.html',1,'']]],
['dbctreebuilder_15',['DbcTreeBuilder',['../classDbcTreeBuilder.html',1,'']]],
['decode_16',['Decode',['../classDbcDecoder.html#a345951ffe5d943a70d3a1ea1f39e74f7',1,'DbcDecoder']]],
['decode_5fdatabase_2eh_17',['decode_database.h',['../decode__database_8h.html',1,'']]],
['decodedatabase_18',['DecodeDatabase',['../structDecodeDatabase.html',1,'']]],
['decodedframevalue_19',['DecodedFrameValue',['../structDecodedFrameValue.html',1,'']]],
['decodedsignalvalue_20',['DecodedSignalValue',['../structDecodedSignalValue.html',1,'']]],
['decodeframe_21',['DecodeFrame',['../structDecodeFrame.html',1,'']]],
['decodesignal_22',['DecodeSignal',['../structDecodeSignal.html',1,'']]],
['definition_23',['definition',['../structDecodedSignalValue.html#acadc3b3bb21dd6b0412d342c7e6b20d7',1,'DecodedSignalValue::definition()'],['../structDecodedFrameValue.html#a60dda1cc352d2c8087f0bdbc81dd266c',1,'DecodedFrameValue::definition()']]],
['dlc_24',['dlc',['../structDecodeFrame.html#a51111ac13988be372d5673d12cf3e060',1,'DecodeFrame::dlc()'],['../structFrameInfo.html#aa2b198ea0f55e560c123d35e7b3ecab9',1,'FrameInfo::dlc()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_4.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

10
docs/html/search/all_4.js Normal file
View File

@@ -0,0 +1,10 @@
var searchData=
[
['factor_0',['factor',['../structDecodeSignal.html#a428c39913a366a8476dd291061354391',1,'DecodeSignal::factor()'],['../structSignalInfo.html#ae4f78d99a2750aa564d7eba860171499',1,'SignalInfo::factor()']]],
['findframe_1',['FindFrame',['../classDbcDecoder.html#ab2cfb2fb711c95d3a29365546b89f3da',1,'DbcDecoder']]],
['frame_5finfo_2eh_2',['frame_info.h',['../frame__info_8h.html',1,'']]],
['frameinfo_3',['FrameInfo',['../structFrameInfo.html',1,'']]],
['framekey_4',['FrameKey',['../structFrameKey.html',1,'']]],
['framekeyhasher_5',['FrameKeyHasher',['../structFrameKeyHasher.html',1,'']]],
['frames_6',['frames',['../structDbcDatabase.html#a2cade5d0234ee816132127542f8c612b',1,'DbcDatabase']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_5.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,9 @@
var searchData=
[
['getchild_0',['GetChild',['../classTreeNode.html#a4727ff801a2d1b9323c5ae50a35457a6',1,'TreeNode::GetChild(std::size_t index) const'],['../classTreeNode.html#a81047bd7d2a4cc96b9ef5e20d0d63b5f',1,'TreeNode::GetChild(std::size_t index)']]],
['getchildcount_1',['GetChildCount',['../classTreeNode.html#abdd82460187dca8d3e5d66f5d5c529ea',1,'TreeNode']]],
['getframe_2',['GetFrame',['../classTreeNode.html#afc503b40004764163605d6dbdb4ef811',1,'TreeNode']]],
['getname_3',['GetName',['../classTreeNode.html#aaac5b8d9dc9e5ae1f367d1adbcf20e18',1,'TreeNode']]],
['getsignal_4',['GetSignal',['../classTreeNode.html#a226518612d0d00b5988a2c44fc21d3f1',1,'TreeNode']]],
['gettype_5',['GetType',['../classTreeNode.html#afa2f4b0aafa12d3d41ed00df8e0250c9',1,'TreeNode']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_6.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['haspgn_0',['hasPgn',['../structDecodeFrame.html#a2551102670c4a540fced4c71da0b369d',1,'DecodeFrame::hasPgn()'],['../structFrameInfo.html#a4737a5420213ad4304724e39f3a4e55d',1,'FrameInfo::hasPgn()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_7.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
var searchData=
[
['isextended_0',['isExtended',['../structRawCanFrame.html#a462193d275adc1dba8bd18ffa0e36bb7',1,'RawCanFrame::isExtended()'],['../structDecodeFrame.html#a3ee2348d781f8f15aaf87e8dcf57ec41',1,'DecodeFrame::isExtended()'],['../structFrameInfo.html#a34b726afaad2ac5c697fdb2ac070cdaf',1,'FrameInfo::isExtended()']]],
['islittleendian_1',['isLittleEndian',['../structSignalInfo.html#af363b1563fb4c7cc8973f9a80c06846c',1,'SignalInfo']]],
['issigned_2',['isSigned',['../structSignalInfo.html#a52a52b320eef92fbcb4626307f9a498f',1,'SignalInfo']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_8.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var searchData=
[
['length_0',['length',['../structDecodeSignal.html#acd4ef5ee30421d117b5756854302debb',1,'DecodeSignal::length()'],['../structSignalInfo.html#a1008b5201f71848177217bd52fb84baa',1,'SignalInfo::length()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_9.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,6 @@
var searchData=
[
['main_2ecpp_0',['main.cpp',['../main_8cpp.html',1,'']]],
['maximum_1',['maximum',['../structDecodeSignal.html#a4a6ba87142a9badbf0ca830e9e709cb7',1,'DecodeSignal::maximum()'],['../structSignalInfo.html#adf1c4331b9eabced0d7fdda40ff0eb52',1,'SignalInfo::maximum()']]],
['minimum_2',['minimum',['../structDecodeSignal.html#a0fb84e19a0ab3bd50b6f65c1075ebc25',1,'DecodeSignal::minimum()'],['../structSignalInfo.html#ada7bf94fbeaa26bd08c73982b5af255b',1,'SignalInfo::minimum()']]]
];

View File

@@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.9.4"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_a.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
createResults();
/* @license-end */
</script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
window.addEventListener("message", function(event) {
if (event.data == "take_focus") {
var elem = searchResults.NavNext(0);
if (elem) elem.focus();
}
});
/* @license-end */
</script>
</div>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var searchData=
[
['name_0',['name',['../structDecodeSignal.html#a58cf5844f2272a23dcb9687d912e4780',1,'DecodeSignal::name()'],['../structDecodeFrame.html#aa0a7f8fd5bfde2148dfd0d838328f579',1,'DecodeFrame::name()'],['../structFrameInfo.html#abb53a7f93ed7abc0ea1ae4a8ccafcdcb',1,'FrameInfo::name()'],['../structSignalInfo.html#a379e422a00cad56f896cacf60455b088',1,'SignalInfo::name()']]],
['nodetype_1',['NodeType',['../tree__node_8h.html#acac9cbaeea226ed297804c012dc12b16',1,'tree_node.h']]]
];

Some files were not shown because too many files have changed in this diff Show More