uTL
micro Template library
|
An Abstract base class interface for the i2c bus. More...
Go to the source code of this file.
Classes | |
class | utl::i2c_i< impl_t > |
Abstract base class for i2c bus. More... | |
class | utl::i2c_i< virtual_tag > |
A virtual base class specialization. More... | |
struct | utl::i2c_i_details::is_i2c_< _Tp, typename > |
Primary template to catch any non I2C interface types. More... | |
struct | utl::i2c_i_details::is_i2c_< _Tp, meta::void_t< typename _Tp::Sequence, void > > |
template to catch a proper I2C interface type More... | |
Namespaces | |
utl | |
STL's core language concepts. | |
utl::i2c_i_details | |
Typedefs | |
template<class _Tp > | |
using | utl::i2c_i_details::try_cclk_t = decltype(declval< const _Tp >().clock()) |
template<class _Tp > | |
using | utl::i2c_i_details::try_clk_t = decltype(declval< _Tp >().clock(declval< uint32_t >())) |
template<class _Tp > | |
using | utl::i2c_i_details::try_start_t = decltype(declval< _Tp >().start()) |
template<class _Tp > | |
using | utl::i2c_i_details::try_stop_t = decltype(declval< _Tp >().stop()) |
template<class _Tp > | |
using | utl::i2c_i_details::try_rx_data_t = decltype(declval< _Tp >().rx_data(declval< bool >(), declval< typename _Tp::Sequence >())) |
template<class _Tp > | |
using | utl::i2c_i_details::try_tx_data_t = decltype(declval< _Tp >().tx_data(declval< byte_t >(), declval< typename _Tp::Sequence >())) |
An Abstract base class interface for the i2c bus.
Copyright (C) 2018 Christos Choutouridis
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Definition in file i2c.h.