ethercatcpp
EL1018.h
Go to the documentation of this file.
1 /* File: EL1018.h
2  * This file is part of the program ethercatcpp-core
3  * Program description : EtherCAT driver libraries for UNIX
4  * Copyright (C) 2017-2024 - Robin Passama (LIRMM / CNRS) Arnaud Meline
5  * (LIRMM / CNRS) Benjamin Navarro (LIRMM / CNRS). All Right reserved.
6  *
7  * This software is free software: you can redistribute it and/or modify
8  * it under the terms of the CeCILL-C license as published by
9  * the CEA CNRS INRIA, either version 1
10  * of the License, or (at your option) any later version.
11  * This software is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * CeCILL-C License for more details.
15  *
16  * You should have received a copy of the CeCILL-C License
17  * along with this software. If not, it can be found on the official
18  * website of the CeCILL licenses family (http://www.cecill.info/index.en.html).
19  */
32 #pragma once
33 
35 
40 namespace ethercatcpp {
41 
51 class EL1018 : public SlaveDevice {
52 public:
56  EL1018();
57  virtual ~EL1018();
58 
60  enum channel_id_t {
69  };
70 
77  bool channel_state(channel_id_t channel) const;
78 
82  void print_all_channels() const;
83 
84 private:
85  void unpack_status_buffer();
86 
87  uint8_t data_;
88 };
89 } // namespace ethercatcpp
ethercatcpp::EL1018
This class describe the EtherCAT driver for a beckhoff EL1018 device.
Definition: EL1018.h:51
slave_device.h
Header file for SlaveDevice class.
ethercatcpp::EL1018::print_all_channels
void print_all_channels() const
Print all available data.
ethercatcpp::EL1018::unpack_status_buffer
void unpack_status_buffer()
ethercatcpp::EL1018::EL1018
EL1018()
Constructor of EL1018 class.
ethercatcpp::EL1018::channel_6
@ channel_6
Channel 6.
Definition: EL1018.h:66
ethercatcpp::EL1018::channel_state
bool channel_state(channel_id_t channel) const
Get state of a channel.
ethercatcpp::EL1018::channel_5
@ channel_5
Channel 5.
Definition: EL1018.h:65
ethercatcpp::EL1018::data_
uint8_t data_
Definition: EL1018.h:87
ethercatcpp::EL1018::channel_id_t
channel_id_t
This enum define open circuit detection pin.
Definition: EL1018.h:60
ethercatcpp::EL1018::channel_3
@ channel_3
Channel 3.
Definition: EL1018.h:63
ethercatcpp::EL1018::channel_4
@ channel_4
Channel 4.
Definition: EL1018.h:64
ethercatcpp::EL1018::~EL1018
virtual ~EL1018()
ethercatcpp::EL1018::channel_7
@ channel_7
Channel 7.
Definition: EL1018.h:67
ethercatcpp::EL1018::channel_8
@ channel_8
Channel 8.
Definition: EL1018.h:68
ethercatcpp
ethercatcpp::SlaveDevice
This class define an EtherCAT unit device.
Definition: slave_device.h:53
ethercatcpp::EL1018::channel_1
@ channel_1
Channel 1.
Definition: EL1018.h:61
ethercatcpp::EL1018::channel_2
@ channel_2
Channel 2.
Definition: EL1018.h:62