diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-04-24 19:09:28 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-04-24 19:09:28 +0200 |
commit | 901a27b0631909647137f49ccf12f4e9bfe38817 (patch) | |
tree | 29f6ac7b6832c53e5b8ed472c8bcf29543382e03 /CAN-binder/low-can-binding/utils/socket.hpp | |
parent | 9e72f805168ae60919117c98dc1ab6c7441873ac (diff) |
Rename and handling write on socket using stream instead of specific method
Created special struct to handle bcm messages with can_frame and canfd_frame.
We can now just send both of them seamlessly.
Change-Id: Ia84e9cf2ab1dd0716cb09f6bb342a208e54f8e06
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'CAN-binder/low-can-binding/utils/socket.hpp')
-rw-r--r-- | CAN-binder/low-can-binding/utils/socket.hpp | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/CAN-binder/low-can-binding/utils/socket.hpp b/CAN-binder/low-can-binding/utils/socket.hpp deleted file mode 100644 index b981ad3e..00000000 --- a/CAN-binder/low-can-binding/utils/socket.hpp +++ /dev/null @@ -1,49 +0,0 @@ -#pragma once - -/* - * Copyright (C) 2015, 2016 ,2017 "IoT.bzh" - * Author "Romain Forlot" <romain.forlot@iot.bzh> - * Author "Loïc Collignon" <loic.collignon@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 <sys/socket.h> - -#define INVALID_SOCKET -1 - -namespace utils -{ - class socketcan_t - { - public: - socketcan_t(); - socketcan_t(const socketcan_t&) = delete; - socketcan_t(socketcan_t&&); - ~socketcan_t(); - - explicit operator bool() const; - - int socket() const; - int open(std::string device_name); - int setopt(int level, int optname, const void* optval, socklen_t optlen); - ssize_t send(const struct canfd_frame& f); - int close(); - private: - int socket_; - struct sockaddr_can txAddress_; /// < internal member using to bind to the socket - - int open(int domain, int type, int protocol); - int bind(const struct sockaddr* addr, socklen_t len); - int connect(const struct sockaddr* addr, socklen_t len); - }; -} |