<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>cob_bms_driver_node.cpp</name>
    <path>/tmp/ws/src/cob_driver/cob_bms_driver/src/</path>
    <filename>cob__bms__driver__node_8cpp</filename>
    <includes id="cob__bms__driver__node_8h" name="cob_bms_driver_node.h" local="no" imported="no">cob_bms_driver/cob_bms_driver_node.h</includes>
    <class kind="struct">BooleanBmsParameter</class>
    <class kind="struct">FloatBmsParameter</class>
    <class kind="struct">IntBmsParameter</class>
    <class kind="struct">TypedBmsParameter</class>
    <class kind="struct">UIntBmsParameter</class>
    <member kind="function">
      <type>void</type>
      <name>big_endian_to_host</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a90b10f15484d3e37e60d702adfa7a0bf</anchor>
      <arglist>(const void *in, void *out)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>big_endian_to_host&lt; 1 &gt;</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a1f4aa90b98b6d44646d69a28c1e9ea16</anchor>
      <arglist>(const void *in, void *out)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>big_endian_to_host&lt; 2 &gt;</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a16171a27a89e468e999541478d0f89dd</anchor>
      <arglist>(const void *in, void *out)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>big_endian_to_host&lt; 4 &gt;</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a58cc4000d9e36fbdcc39f14f0cc31842</anchor>
      <arglist>(const void *in, void *out)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>big_endian_to_host&lt; 8 &gt;</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a7fcde49e7e1dd8b3c61449283dad52e0</anchor>
      <arglist>(const void *in, void *out)</arglist>
    </member>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
    <member kind="function">
      <type>T</type>
      <name>read_value</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>af7ee4650ed68244b07c5948c96261ffe</anchor>
      <arglist>(const can::Frame &amp;f, uint8_t offset)</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>readTypedValue</name>
      <anchorfile>cob__bms__driver__node_8cpp.html</anchorfile>
      <anchor>a1dbe9b8fd7764a833e8fa48217d7c010</anchor>
      <arglist>(const can::Frame &amp;f, const BmsParameter &amp;param, T &amp;data)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>cob_bms_driver_node.h</name>
    <path>/tmp/ws/src/cob_driver/cob_bms_driver/include/cob_bms_driver/</path>
    <filename>cob__bms__driver__node_8h</filename>
    <class kind="struct">BmsParameter</class>
    <class kind="class">CobBmsDriverNode</class>
  </compound>
  <compound kind="file">
    <name>fake_bms.py</name>
    <path>/tmp/ws/src/cob_driver/cob_bms_driver/src/</path>
    <filename>fake__bms_8py</filename>
    <class kind="class">fake_bms::FakeBMS</class>
    <namespace>fake_bms</namespace>
  </compound>
  <compound kind="file">
    <name>power_state_aggregator.py</name>
    <path>/tmp/ws/src/cob_driver/cob_bms_driver/src/</path>
    <filename>power__state__aggregator_8py</filename>
    <class kind="class">power_state_aggregator::PowerStateAggregator</class>
    <namespace>power_state_aggregator</namespace>
    <member kind="variable">
      <type></type>
      <name>PSA</name>
      <anchorfile>namespacepower__state__aggregator.html</anchorfile>
      <anchor>a0895e410e52b559d8bcd1f06e0064ae7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>rate</name>
      <anchorfile>namespacepower__state__aggregator.html</anchorfile>
      <anchor>a8d2d9c852d3aaf336243e35cd215a6ea</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>BmsParameter</name>
    <filename>structBmsParameter.html</filename>
    <member kind="typedef">
      <type>boost::shared_ptr&lt; BmsParameter &gt;</type>
      <name>Ptr</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>a672e0dbccdaf2bcd1bdedf6600542cec</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>ad48e3fb54d992d7cae5884173a44a4ee</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)=0</arglist>
    </member>
    <member kind="function" virtualness="pure">
      <type>virtual void</type>
      <name>update</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>a628c53eff3a094f3515363ba255aa9f1</anchor>
      <arglist>(const can::Frame &amp;f)=0</arglist>
    </member>
    <member kind="function" virtualness="virtual">
      <type>virtual</type>
      <name>~BmsParameter</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>a1face5a3ac188dc704c953cad42bdd87</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>bool</type>
      <name>is_signed</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>ac3cf179124d7b846277ef717e8b9b3a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>diagnostic_msgs::KeyValue</type>
      <name>kv</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>aa7b160b745ef04bfa566f4457c96840f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>length</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>a3285f5d143408cc7d478df4be328058e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>unsigned int</type>
      <name>offset</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>a7060f3669bbb6be18ae8ab5c6dab8997</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type>ros::Publisher</type>
      <name>publisher</name>
      <anchorfile>structBmsParameter.html</anchorfile>
      <anchor>ae692faf1aa7e3d449ba9ec2d135b01f9</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>BooleanBmsParameter</name>
    <filename>structBooleanBmsParameter.html</filename>
    <base>TypedBmsParameter&lt; std_msgs::Bool &gt;</base>
    <member kind="function">
      <type></type>
      <name>BooleanBmsParameter</name>
      <anchorfile>structBooleanBmsParameter.html</anchorfile>
      <anchor>abffa84523ac43a16a32dbaa2bc198589</anchor>
      <arglist>(int bit_mask)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>update</name>
      <anchorfile>structBooleanBmsParameter.html</anchorfile>
      <anchor>ab0ddf15ecd21a6fc629bfafeb37fab28</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable">
      <type>int</type>
      <name>bit_mask</name>
      <anchorfile>structBooleanBmsParameter.html</anchorfile>
      <anchor>a2654e3488a096870afe4332cb5c21569</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>CobBmsDriverNode</name>
    <filename>classCobBmsDriverNode.html</filename>
    <member kind="function">
      <type></type>
      <name>CobBmsDriverNode</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>aef38b4538752debb191c113c2e9bf30c</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>pollNextInLists</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>aab2c419b323cd111d7aeea491a41e5c6</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>prepare</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a7e7e15e3acca286833681c4da03ff95b</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>~CobBmsDriverNode</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>add8c52a698e44b9d6fa66904a367c2b7</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>diagnostic_updater::Updater</type>
      <name>updater_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>aa2d968f5f574da0b5435a53f4c5e6b8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="typedef" protection="private">
      <type>std::multimap&lt; uint8_t, BmsParameter::Ptr &gt;</type>
      <name>ConfigMap</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ad57053995d3e17211e8d3c49200b22f3</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>diagnosticsTimerCallback</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a4fea1b892709d83db24872a44a8be7d6</anchor>
      <arglist>(const ros::TimerEvent &amp;)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>evaluatePollPeriodFrom</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>af44a5ba1cc7f334097099de7348b090a</anchor>
      <arglist>(int poll_frequency)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>getParams</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a66a1e45f2140966934c5f4c9b0f3f87f</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>handleFrames</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a60f246765ef40b6520e067272f708901</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>loadConfigMap</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>af38ae97f43d1e992f7c8966b3e51187d</anchor>
      <arglist>(XmlRpc::XmlRpcValue &amp;diagnostics, std::vector&lt; std::string &gt; &amp;topics)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>optimizePollingLists</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ad4a973407fc1ba99654ede9bfed0e924</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>pollBmsForIds</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a6597069487f48afd7d09ab469c02abc3</anchor>
      <arglist>(const uint16_t first_id, const uint16_t second_id)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>produceDiagnostics</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ac44a4c442625ba13bd892c5050f19bb5</anchor>
      <arglist>(diagnostic_updater::DiagnosticStatusWrapper &amp;stat)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>bms_id_to_poll_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a0d5e0b2e74e07c1597ecda22ca4a576f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>can_device_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a566534e974c96afc194e7007a9e814c7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ConfigMap</type>
      <name>config_map_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a762d81f9e501b549f723108cad9602ed</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>data_mutex_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ac9d29d6943fa35be98d5755a5728f273</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::CommInterface::FrameListenerConstSharedPtr</type>
      <name>frame_listener_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a3d6f253be6acad932bdca5ff0660524a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a3e7c86b34e4db568052ab40a190a9402</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>nh_priv_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ac7eaf85ab2a75d1ac44360bce0275c8f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>poll_period_for_two_ids_in_ms_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>adadde855937691c56c5fae32a4463a88</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; uint8_t &gt;</type>
      <name>polling_list1_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>ac38f34d33c1b584ab9fac2bd48f08958</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; uint8_t &gt;::iterator</type>
      <name>polling_list1_it_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a2fa2e4729b68a97f436c4c816bbcfb7e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; uint8_t &gt;</type>
      <name>polling_list2_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a970fd31a8395592551bbbb72e66dfa35</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; uint8_t &gt;::iterator</type>
      <name>polling_list2_it_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a8dea71ef75c085bb6867f207663a808c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>can::ThreadedSocketCANInterface</type>
      <name>socketcan_interface_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a5987f48d44aa379fc393fe10276786a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>diagnostic_updater::DiagnosticStatusWrapper</type>
      <name>stat_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a62d642d3357f1fffe71f52ad055a1b16</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Timer</type>
      <name>updater_timer_</name>
      <anchorfile>classCobBmsDriverNode.html</anchorfile>
      <anchor>a30e2856732037313465a1aa30264a42b</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>fake_bms::FakeBMS</name>
    <filename>classfake__bms_1_1FakeBMS.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a98b952a7861ed0050810e94612759fb1</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>current_cb</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a40ca3438ce58757e19c81638bd59c2c1</anchor>
      <arglist>(self, req)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>produce_diagnostics</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a5781b85d1fa65100a5a36e127bca7d05</anchor>
      <arglist>(self, stat)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>publish_diagnostics</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a9693ee3eeaafc9d4a8454b8cc5a57496</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>relative_remaining_capacity_cb</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a58834eee4dd4d75a85cb998bf06f6ed0</anchor>
      <arglist>(self, req)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>timer_cb</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>aa0269d305e396300665d8632fab391c6</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>timer_consume_power_cb</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a77dad1ab87194c44ee779bb3e157420b</anchor>
      <arglist>(self, event)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_current</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a5b67e0ab1a5a35595f372fd932ee2aa6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_full_charge_capacity</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a4aeeb0238aae40a8495fa196634fff45</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_poll_frequency</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a49e11e88eec450d2219be64eac3a1ee0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_pub_current</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a859b43d2b413afe80089c580749d0580</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_pub_full_charge_capacity</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a47d3fe54fac6d3e93ac1e8fb39878f78</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_pub_remaining_capacity</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>aede9fe18cfe4b87a402242790c9c3256</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_pub_temparature</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>ad69b1dc114ad5166ca5dbb20a2975ef2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_pub_voltage</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>ab1a94af262d59081486315cdc66eee54</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_remaining_capacity</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a0061627f62b0cf8f66a38fe203a75694</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_srv_current</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>ab0f4fb20828584ee5789865621f21668</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_srv_relative_remaining_capacity</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a290bfd3c05c82966b9fcd582d6101abd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_temperature</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>a696bbc738be32074d5d61ff7d5d5db1d</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_updater</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>ab56f13c607bcd1a89b20070405d2d397</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type></type>
      <name>_voltage</name>
      <anchorfile>classfake__bms_1_1FakeBMS.html</anchorfile>
      <anchor>ace3b128910348d6c3da0aff579c57aef</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>FloatBmsParameter</name>
    <filename>structFloatBmsParameter.html</filename>
    <base>TypedBmsParameter&lt; std_msgs::Float64 &gt;</base>
    <member kind="function">
      <type></type>
      <name>FloatBmsParameter</name>
      <anchorfile>structFloatBmsParameter.html</anchorfile>
      <anchor>aa7675218bed52d22c82a65732bf19e3e</anchor>
      <arglist>(double factor)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>update</name>
      <anchorfile>structFloatBmsParameter.html</anchorfile>
      <anchor>a1fd10c899cd18026b97005a30c7e52dc</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
    <member kind="variable">
      <type>double</type>
      <name>factor</name>
      <anchorfile>structFloatBmsParameter.html</anchorfile>
      <anchor>a36a79a4a31515f2942defe3871ff8e68</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>IntBmsParameter</name>
    <filename>structIntBmsParameter.html</filename>
    <base>TypedBmsParameter&lt; std_msgs::Int64 &gt;</base>
    <member kind="function">
      <type></type>
      <name>IntBmsParameter</name>
      <anchorfile>structIntBmsParameter.html</anchorfile>
      <anchor>a0a413da6a0f2b202af0396385b140152</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>update</name>
      <anchorfile>structIntBmsParameter.html</anchorfile>
      <anchor>a568ea8b25e8afcb4d2547c2ca6353813</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>power_state_aggregator::PowerStateAggregator</name>
    <filename>classpower__state__aggregator_1_1PowerStateAggregator.html</filename>
    <member kind="function">
      <type>def</type>
      <name>__init__</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a9ec3793ed1ca2d0a8c922c06af07d8c8</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>calculate_power_consumption</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>ae9277dffc81c20402cce103eb0cbd01d</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>calculate_relative_remaining_capacity</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a3ece57d3369edca9b0ef314c1637590d</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>calculate_time_remaining</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a7384e144021dcc3ce4578e616f41441e</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>current_cb</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a76406c28acb8dfafe89845d01d0dcfa2</anchor>
      <arglist>(self, msg)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>full_charge_capacity_cb</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>ac1481555e41a170886d02c6c3e37f91b</anchor>
      <arglist>(self, msg)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>publish</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a040daead3063d5bf11540504f8979300</anchor>
      <arglist>(self)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>remaining_capacity_cb</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a6a9cdccd2747d4d2dcc1060c746ed697</anchor>
      <arglist>(self, msg)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>temperature_cb</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a2cd9cd39942392e77316e4555582ad00</anchor>
      <arglist>(self, msg)</arglist>
    </member>
    <member kind="function">
      <type>def</type>
      <name>voltage_cb</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>aea610d5a620ef3ae1f460c50be7d6c85</anchor>
      <arglist>(self, msg)</arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>charging</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a5c80f71fef97effa9a2d02098d672c67</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>connected</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>ac9bd7e5e4b7155bf8b75f65715e258d1</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>current</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a35a478be5b6aee72ce282915e95e81f9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>current_buffer_size</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>ab0fffde5e24fc0b552bd13fcbd42c811</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>full_charge_capacity</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a2e09317188c7a8f58ca5832f7aabbbd5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>last_currents</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a2b76822d06e10774d430012ea72d8227</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>last_update</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a5a9c0eb1582504be47ca0eb1a080e823</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>pub_battery_state</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a3cdf9e2282018d62730ce10d95674060</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>pub_power_state</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a9561622f2a958ec26a1334ebccad93d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>remaining_capacity</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>ad9c679f9707d19f31f854f3c9d15a614</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>temperature</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a3ab969310574ed0871d329c96ebb6ef7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>voltage</name>
      <anchorfile>classpower__state__aggregator_1_1PowerStateAggregator.html</anchorfile>
      <anchor>a7aec28cdf4f49951c4dce60cc7a4a8d4</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>TypedBmsParameter</name>
    <filename>structTypedBmsParameter.html</filename>
    <templarg>T</templarg>
    <base>BmsParameter</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a9ebfb2c7ba99666176d1b2804b33dc9c</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publish</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a1381bf95e1de7b7ad22757fea28f8fad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>T</type>
      <name>msg_</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a07150d5f06b23fa7c1ddb3c711d8d6dd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TypedBmsParameter&lt; std_msgs::Bool &gt;</name>
    <filename>structTypedBmsParameter.html</filename>
    <base>BmsParameter</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a9ebfb2c7ba99666176d1b2804b33dc9c</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publish</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a1381bf95e1de7b7ad22757fea28f8fad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std_msgs::Bool</type>
      <name>msg_</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a07150d5f06b23fa7c1ddb3c711d8d6dd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TypedBmsParameter&lt; std_msgs::Float64 &gt;</name>
    <filename>structTypedBmsParameter.html</filename>
    <base>BmsParameter</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a9ebfb2c7ba99666176d1b2804b33dc9c</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publish</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a1381bf95e1de7b7ad22757fea28f8fad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std_msgs::Float64</type>
      <name>msg_</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a07150d5f06b23fa7c1ddb3c711d8d6dd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TypedBmsParameter&lt; std_msgs::Int64 &gt;</name>
    <filename>structTypedBmsParameter.html</filename>
    <base>BmsParameter</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a9ebfb2c7ba99666176d1b2804b33dc9c</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publish</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a1381bf95e1de7b7ad22757fea28f8fad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std_msgs::Int64</type>
      <name>msg_</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a07150d5f06b23fa7c1ddb3c711d8d6dd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>TypedBmsParameter&lt; std_msgs::UInt64 &gt;</name>
    <filename>structTypedBmsParameter.html</filename>
    <base>BmsParameter</base>
    <member kind="function" virtualness="virtual">
      <type>virtual void</type>
      <name>advertise</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a9ebfb2c7ba99666176d1b2804b33dc9c</anchor>
      <arglist>(ros::NodeHandle &amp;nh, const std::string &amp;topic)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>publish</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a1381bf95e1de7b7ad22757fea28f8fad</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable">
      <type>std_msgs::UInt64</type>
      <name>msg_</name>
      <anchorfile>structTypedBmsParameter.html</anchorfile>
      <anchor>a07150d5f06b23fa7c1ddb3c711d8d6dd</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="struct">
    <name>UIntBmsParameter</name>
    <filename>structUIntBmsParameter.html</filename>
    <base>TypedBmsParameter&lt; std_msgs::UInt64 &gt;</base>
    <member kind="function">
      <type></type>
      <name>UIntBmsParameter</name>
      <anchorfile>structUIntBmsParameter.html</anchorfile>
      <anchor>a368f5f33003102428cc00daf5be96fd2</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>update</name>
      <anchorfile>structUIntBmsParameter.html</anchorfile>
      <anchor>acb67079d65bd92f0c0aa54e2bc4e81a9</anchor>
      <arglist>(const can::Frame &amp;f)</arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>fake_bms</name>
    <filename>namespacefake__bms.html</filename>
    <class kind="class">fake_bms::FakeBMS</class>
  </compound>
  <compound kind="namespace">
    <name>power_state_aggregator</name>
    <filename>namespacepower__state__aggregator.html</filename>
    <class kind="class">power_state_aggregator::PowerStateAggregator</class>
    <member kind="variable">
      <type></type>
      <name>PSA</name>
      <anchorfile>namespacepower__state__aggregator.html</anchorfile>
      <anchor>a0895e410e52b559d8bcd1f06e0064ae7</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable">
      <type></type>
      <name>rate</name>
      <anchorfile>namespacepower__state__aggregator.html</anchorfile>
      <anchor>a8d2d9c852d3aaf336243e35cd215a6ea</anchor>
      <arglist></arglist>
    </member>
  </compound>
</tagfile>
