F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
Os::Posix::RawTime::PosixRawTime Class Reference

Posix implementation of Os::RawTime. More...

#include <Os/Posix/RawTime.hpp>

Inheritance diagram for Os::Posix::RawTime::PosixRawTime:
Os::RawTimeInterface Fw::Serializable

Public Member Functions

 PosixRawTime ()=default
 constructor
 
 ~PosixRawTime () override=default
 destructor
 
RawTimeHandlegetHandle () override
 return the underlying RawTime handle (implementation specific)
 
Status now () override
 Get the current time.
 
Status getTimeInterval (const Os::RawTime &other, Fw::TimeInterval &interval) const override
 Calculate the time interval between this and another raw time.
 
Fw::SerializeStatus serialize (Fw::SerializeBufferBase &buffer) const override
 Serialize the contents of the RawTimeInterface object into a buffer.
 
Fw::SerializeStatus deserialize (Fw::SerializeBufferBase &buffer) override
 Deserialize the contents of the RawTimeInterface object from a buffer.
 
- Public Member Functions inherited from Os::RawTimeInterface
 RawTimeInterface ()=default
 default constructor
 
virtual ~RawTimeInterface ()=default
 default virtual destructor
 

Additional Inherited Members

- Public Types inherited from Os::RawTimeInterface
enum  Status { OP_OK , OP_OVERFLOW , INVALID_PARAMS , OTHER_ERROR }
 
- Public Types inherited from Fw::Serializable
using SizeType = NATIVE_UINT_TYPE
 
- Static Public Member Functions inherited from Os::RawTimeInterface
static RawTimeInterfacegetDelegate (RawTimeHandleStorage &aligned_new_memory, const RawTimeInterface *to_copy=nullptr)
 provide a pointer to a RawTime delegate object
 
- Static Public Attributes inherited from Os::RawTimeInterface
static const FwSizeType SERIALIZED_SIZE = FW_RAW_TIME_SERIALIZATION_MAX_SIZE
 
- Protected Member Functions inherited from Fw::Serializable
 Serializable ()
 Default constructor.
 
virtual ~Serializable ()
 destructor
 

Detailed Description

Posix implementation of Os::RawTime.

Posix implementation of RawTimeInterface for use as a delegate class handling error-only file operations.

Definition at line 24 of file RawTime.hpp.

Constructor & Destructor Documentation

◆ PosixRawTime()

Os::Posix::RawTime::PosixRawTime::PosixRawTime ( )
default

constructor

◆ ~PosixRawTime()

Os::Posix::RawTime::PosixRawTime::~PosixRawTime ( )
overridedefault

destructor

Member Function Documentation

◆ deserialize()

Fw::SerializeStatus Os::Posix::RawTime::PosixRawTime::deserialize ( Fw::SerializeBufferBase buffer)
overridevirtual

Deserialize the contents of the RawTimeInterface object from a buffer.

This function deserializes the contents of the RawTimeInterface object from the provided buffer.

Note
The serialization must fit within FW_RAW_TIME_SERIALIZATION_MAX_SIZE bytes. This value is defined in FpConfig.h. For example, Posix systems use a pair of U32 (sec, nanosec) and can therefore serialize in 8 bytes. Should an OSAL implementation require more than this, the project must increase that value in its config/ folder.
Parameters
bufferThe buffer to deserialize the contents from.
Returns
Fw::SerializeStatus indicating the result of the deserialization.

Implements Os::RawTimeInterface.

Definition at line 57 of file RawTime.cpp.

◆ getHandle()

RawTimeHandle * Os::Posix::RawTime::PosixRawTime::getHandle ( )
overridevirtual

return the underlying RawTime handle (implementation specific)

Returns
internal RawTime handle representation

Implements Os::RawTimeInterface.

Definition at line 74 of file RawTime.cpp.

◆ getTimeInterval()

PosixRawTime::Status Os::Posix::RawTime::PosixRawTime::getTimeInterval ( const Os::RawTime other,
Fw::TimeInterval interval 
) const
overridevirtual

Calculate the time interval between this and another raw time.

This function calculates the time interval between the current raw time and another specified raw time. The result is stored in the provided (output) interval object.

Parameters
otherThe other RawTimeHandle to compare against.
intervalOutput parameter to store the calculated time interval.
Returns
Status indicating the result of the operation.

Implements Os::RawTimeInterface.

Definition at line 23 of file RawTime.cpp.

◆ now()

PosixRawTime::Status Os::Posix::RawTime::PosixRawTime::now ( )
overridevirtual

Get the current time.

This function retrieves the current time and stores it in the RawTime object. Each implementation should define its RawTimeHandle type for storing the time.

Returns
Status indicating the result of the operation.

Implements Os::RawTimeInterface.

Definition at line 15 of file RawTime.cpp.

◆ serialize()

Fw::SerializeStatus Os::Posix::RawTime::PosixRawTime::serialize ( Fw::SerializeBufferBase buffer) const
overridevirtual

Serialize the contents of the RawTimeInterface object into a buffer.

This function serializes the contents of the RawTimeInterface object into the provided buffer.

Note
The serialization must fit within FW_RAW_TIME_SERIALIZATION_MAX_SIZE bytes. This value is defined in FpConfig.h. For example, Posix systems use a pair of U32 (sec, nanosec) and can therefore serialize in 8 bytes. Should an OSAL implementation require more than this, the project must increase that value in its config/ folder.
Parameters
bufferThe buffer to serialize the contents into.
Returns
Fw::SerializeStatus indicating the result of the serialization.

Implements Os::RawTimeInterface.

Definition at line 47 of file RawTime.cpp.


The documentation for this class was generated from the following files: