eRPC API Reference  Rev. 1.7.2
NXP Semiconductors
erpc_serial_transport.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014, Freescale Semiconductor, Inc.
3  * Copyright 2016 NXP
4  * All rights reserved.
5  *
6  *
7  * SPDX-License-Identifier: BSD-3-Clause
8  */
9 
10 #ifndef _EMBEDDED_RPC__SERIAL_TRANSPORT_H_
11 #define _EMBEDDED_RPC__SERIAL_TRANSPORT_H_
12 
13 #include "erpc_framed_transport.h"
14 #include <string>
15 #include <termios.h>
16 
23 // Classes
26 
27 namespace erpc {
34 {
35 public:
42  SerialTransport(const char *portName, speed_t baudRate);
43 
47  virtual ~SerialTransport(void);
48 
57  erpc_status_t init(uint8_t vtime, uint8_t vmin);
58 
59 private:
69  virtual erpc_status_t underlyingSend(const uint8_t *data, uint32_t size);
70 
80  virtual erpc_status_t underlyingReceive(uint8_t *data, uint32_t size);
81 
82 private:
83  int m_serialHandle;
84  const char *m_portName;
85  speed_t m_baudRate;
86 };
87 
88 } // namespace erpc
89 
92 #endif // _EMBEDDED_RPC__SERIAL_TRANSPORT_H_
int32_t erpc_status_t
Type used for all status and error return values.
Definition: erpc_common.h:86
Base class for framed transport layers.
Definition: erpc_framed_transport.h:54
erpc_status_t init(uint8_t vtime, uint8_t vmin)
Initialize Serial peripheral.
Definition: erpc_serial_transport.cpp:35
Definition: erpc_arbitrated_client_manager.h:25
Serial transport layer for host PC.
Definition: erpc_serial_transport.h:33
SerialTransport(const char *portName, speed_t baudRate)
Constructor.
Definition: erpc_serial_transport.cpp:23
virtual ~SerialTransport(void)
Destructor.
Definition: erpc_serial_transport.cpp:30