mirror of
https://github.com/nasa/fprime.git
synced 2025-12-10 00:44:37 -06:00
* Revise GenericHub model * Revise GenericHub model * Revise GenericHub model * Update spelling * Revise annotations * Revise annotations for GenericHub model * Revise annotations in GenericHub model * Revise GenericHub model * Revise GenericHub model * Revise GenericHub model * Revise GenericHub * Revise GenericHub * Revise GenericHub model * Revise GenericHub model * Revise GenericHub config * Revise GenericHub model * Revise GenericHub model * Clean up naming in GenericHub implementation * Revise GenericHub port names * Revise annotations in GenericHub model * Revise annotations in GenericHub model * Revise annotations in GenericHub model * Add ByteStreamDriverClient * Revise ByteStreamDriverClient * Revise ByteStreamDriverClient * Revise driver interfaces * Add PassiveByteStreamDriverClientSendAsync interface * Add PassiveAsyncByteStreamDriverClient interface * Add PassiveBufferDriver * Revise PassiveByteStreamDriverClient interfaces * Revise PassiveBufferDriver * Revise Drv interfaces * Revise PassiveBufferDriver * Add PassiveBufferDriverClient * Revise GenericHub model Use interfaces from Drv * Revise annotations in GenericHub model * Revise FPP models Point FPP to a non-released version with a bug fix * Add ByteStreamBufferAdapter * Revise ByteStreamBufferAdapter model * Revise ByteStreamBufferAdapter * Revise ByteStreamBufferAdapter * Add AsyncByteStreamBufferAdapter * Revise AsyncByteStreamBufferAdapter * Revsie AsyncByteStreamBufferAdapter * Revise AsyncByteStreamBufferAdapter * Revise annotations in FPP model * Revise ByteStreamBufferAdapter * Bump fpp version * Revise GenericHub model * Revise GenericHub interface * Revise GenericHub interface * Fix typo in FPP annotations * Revise Generic Hub model * Fix spelling and formatting * Review recommendations --------- Co-authored-by: Rob Bocchino <bocchino@jpl.nasa.gov> Co-authored-by: thomas-bc <thomas.boyerchammard@gmail.com>
73 lines
2.8 KiB
C++
73 lines
2.8 KiB
C++
// ======================================================================
|
|
// \title ByteStreamBufferAdapter.hpp
|
|
// \author bocchino
|
|
// \brief hpp file for ByteStreamBufferAdapter component implementation class
|
|
// ======================================================================
|
|
|
|
#ifndef Drv_ByteStreamBufferAdapter_HPP
|
|
#define Drv_ByteStreamBufferAdapter_HPP
|
|
|
|
#include "Drv/ByteStreamBufferAdapter/ByteStreamBufferAdapterComponentAc.hpp"
|
|
|
|
namespace Drv {
|
|
|
|
class ByteStreamBufferAdapter final : public ByteStreamBufferAdapterComponentBase {
|
|
public:
|
|
// ----------------------------------------------------------------------
|
|
// Component construction and destruction
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Construct ByteStreamBufferAdapter object
|
|
ByteStreamBufferAdapter(const char* const compName //!< The component name
|
|
);
|
|
|
|
//! Destroy ByteStreamBufferAdapter object
|
|
~ByteStreamBufferAdapter();
|
|
|
|
private:
|
|
// ----------------------------------------------------------------------
|
|
// Handler implementations for typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Handler implementation for bufferIn
|
|
//!
|
|
//! Port for receiving buffers
|
|
void bufferIn_handler(FwIndexType portNum, //!< The port number
|
|
Fw::Buffer& fwBuffer //!< The buffer
|
|
) override;
|
|
|
|
//! Handler implementation for bufferOutReturn
|
|
//!
|
|
//! Port for receiving buffers sent on bufferOut and then returned
|
|
void bufferOutReturn_handler(FwIndexType portNum, //!< The port number
|
|
Fw::Buffer& fwBuffer //!< The buffer
|
|
) override;
|
|
|
|
//! Handler implementation for byteStreamIn
|
|
//!
|
|
//! Port for receiving data from the driver
|
|
//! Sample connection: byteStreamDriver.$recv -> byteStreamDriverClient.byteStreamIn
|
|
void fromByteStreamDriver_handler(FwIndexType portNum, //!< The port number
|
|
Fw::Buffer& buffer,
|
|
const Drv::ByteStreamStatus& status) override;
|
|
|
|
//! Handler implementation for byteStreamReady
|
|
//!
|
|
//! Port for receiving ready signals from the driver
|
|
//! Sample connection: byteStreamDriver.ready -> byteStreamDriverClient.byteStreamDriverReady
|
|
void byteStreamDriverReady_handler(FwIndexType portNum //!< The port number
|
|
) override;
|
|
|
|
private:
|
|
// ----------------------------------------------------------------------
|
|
// Private member variables
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Whether the driver is ready
|
|
bool m_driverIsReady = false;
|
|
};
|
|
|
|
} // namespace Drv
|
|
|
|
#endif
|