aboutsummaryrefslogtreecommitdiffstats
path: root/low-can-binding/utils/socketcan-j1939.hpp
diff options
context:
space:
mode:
authorArthur Guyader <arthur.guyader@iot.bzh>2019-07-29 14:53:14 +0200
committerArthur Guyader <arthur.guyader@iot.bzh>2019-08-12 15:06:45 +0200
commit22e1fe8db6686ee6ae32cfe58a10aad9f7dfb3a7 (patch)
tree05c6a378a3ff2d846fc05141789e8225687d42a4 /low-can-binding/utils/socketcan-j1939.hpp
parent88077fb4b383cf7f35093b6cc0d2d9d86c6f1bf3 (diff)
Integrate the J1939 features : address claiming and write.
This commit allows to write J1939 messages and add the management of the address claiming. Bug-AGL: SPEC-2386 Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh> Change-Id: I1bb95a7ba6f6ebe463319c3972d9d46897181d51
Diffstat (limited to 'low-can-binding/utils/socketcan-j1939.hpp')
-rw-r--r--low-can-binding/utils/socketcan-j1939.hpp44
1 files changed, 0 insertions, 44 deletions
diff --git a/low-can-binding/utils/socketcan-j1939.hpp b/low-can-binding/utils/socketcan-j1939.hpp
deleted file mode 100644
index 2b370179..00000000
--- a/low-can-binding/utils/socketcan-j1939.hpp
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2018, 2019 "IoT.bzh"
- * Author "Arthur Guyader" <arthur.guyader@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.
- */
-
-#pragma once
-
-#include <linux/can/j1939.h>
-
-#include "./socketcan.hpp"
-#include "../can/message/j1939-message.hpp"
-
-namespace utils
-{
-
- class socketcan_j1939_t : public socketcan_t
- {
- public:
- using socketcan_t::socketcan_t;
- virtual int open(std::string device_name);
- int open(std::string device_name, name_t name, pgn_t pgn, uint8_t addr);
- virtual std::shared_ptr<message_t> read_message();
- virtual void write_message(std::shared_ptr<message_t> obj);
- virtual void write_message(std::vector<std::shared_ptr<message_t>>& vobj);
- virtual int write_message(message_t& obj);
-
- private:
- int connect(const struct sockaddr* addr, socklen_t len);
- int bind(const struct sockaddr* addr, socklen_t len);
- void filter(name_t name, pgn_t pgn, uint8_t addr, uint64_t name_mask=0, uint32_t pgn_mask=0, uint8_t addr_mask=0);
- };
-}