aboutsummaryrefslogtreecommitdiffstats
path: root/low-can-binding/can/can-message-definition.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'low-can-binding/can/can-message-definition.cpp')
-rw-r--r--low-can-binding/can/can-message-definition.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/low-can-binding/can/can-message-definition.cpp b/low-can-binding/can/can-message-definition.cpp
new file mode 100644
index 0000000..206d0b0
--- /dev/null
+++ b/low-can-binding/can/can-message-definition.cpp
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2015, 2016 "IoT.bzh"
+ * Author "Romain Forlot" <romain.forlot@iot.bzh>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "can-message-definition.hpp"
+
+can_message_definition_t::can_message_definition_t(std::uint8_t message_set_id, const std::string bus)
+ : message_set_id_{message_set_id}, bus_{bus}, last_value_{CAN_MESSAGE_SIZE}
+{}
+
+can_message_definition_t::can_message_definition_t(std::uint8_t message_set_id,
+ const std::string bus,
+ uint32_t id,
+ frequency_clock_t frequency_clock,
+ bool force_send_changed)
+ : message_set_id_{message_set_id},
+ bus_{bus},
+ id_{id},
+ frequency_clock_{frequency_clock},
+ force_send_changed_{force_send_changed},
+ last_value_{CAN_MESSAGE_SIZE}
+{}
+
+can_message_definition_t::can_message_definition_t(std::uint8_t message_set_id,
+ const std::string bus,
+ uint32_t id,
+ can_message_format_t format,
+ frequency_clock_t frequency_clock,
+ bool force_send_changed)
+ : message_set_id_{message_set_id},
+ bus_{bus},
+ id_{id},
+ format_{format},
+ frequency_clock_{frequency_clock},
+ force_send_changed_{force_send_changed},
+ last_value_{CAN_MESSAGE_SIZE}
+{}
+
+uint32_t can_message_definition_t::get_id() const
+{
+ return id_;
+} \ No newline at end of file
nt */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
# WirePlumber daemon context configuration #

context.properties = {
  ## Properties to configure the PipeWire context and some modules

  application.name = "WirePlumber Policy"
  log.level = 2
  wireplumber.script-engine = lua-scripting
  wireplumber.export-core = false

  #mem.mlock-all = false
  #support.dbus  = true
}

context.spa-libs = {
  #<factory-name regex> = <library-name>
  #
  # Used to find spa factory names. It maps an spa factory name
  # regular expression to a library name that should contain
  # that factory.
  #
  audio.convert.* = audioconvert/libspa-audioconvert
  support.*       = support/libspa-support
}

context.modules = [
  #{   name = <module-name>
  #    [ args = { <key> = <value> ... } ]
  #    [ flags = [ [ ifexists ] [ nofail ] ]
  #}
  #
  # PipeWire modules to load.
  # If ifexists is given, the module is ignored when it is not found.
  # If nofail is given, module initialization failures are ignored.
  #

  # The native communication protocol.
  { name = libpipewire-module-protocol-native }

  # Allows creating nodes that run in the context of the
  # client. Is used by all clients that want to provide
  # data to PipeWire.
  { name = libpipewire-module-client-node }

  # Allows creating devices that run in the context of the
  # client. Is used by the session manager.
  { name = libpipewire-module-client-device }

  # Makes a factory for wrapping nodes in an adapter with a
  # converter and resampler.
  { name = libpipewire-module-adapter }

  # Allows applications to create metadata objects. It creates
  # a factory for Metadata objects.
  { name = libpipewire-module-metadata }

  # Provides factories to make session manager objects.
  { name = libpipewire-module-session-manager }
]

wireplumber.components = [
  #{ name = <component-name>, type = <component-type> }
  #
  # WirePlumber components to load
  #

  # The lua scripting engine
  { name = libwireplumber-module-lua-scripting, type = module }

  # The lua configuration file
  # Other components are loaded from there
  { name = policy.lua, type = config/lua }
]