summaryrefslogtreecommitdiff
path: root/daemons/gptp/common/avbts_osipc.hpp
diff options
context:
space:
mode:
authorDavid Cemin <david.cemin@coveloz.com>2015-05-11 19:09:02 -0400
committerDavid Cemin <david.cemin@coveloz.com>2015-05-11 19:09:02 -0400
commit4c580f7b567a774604a7fed8f03936e6d5e05626 (patch)
treeca49ab3747f1b82b8806240fbc78e28fd4d6e730 /daemons/gptp/common/avbts_osipc.hpp
parentd382ddd72d952dbd034db4f7d1335d9be9efaf1e (diff)
downloadOpen-AVB-4c580f7b567a774604a7fed8f03936e6d5e05626.tar.gz
[gPTP doc]. linux_hal_common and submodules documented
Diffstat (limited to 'daemons/gptp/common/avbts_osipc.hpp')
-rw-r--r--daemons/gptp/common/avbts_osipc.hpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/daemons/gptp/common/avbts_osipc.hpp b/daemons/gptp/common/avbts_osipc.hpp
index 9cd53cbb..b605e002 100644
--- a/daemons/gptp/common/avbts_osipc.hpp
+++ b/daemons/gptp/common/avbts_osipc.hpp
@@ -38,6 +38,9 @@
#include <ptptypes.hpp>
#include <avbts_port.hpp>
+/*
+ * Generic interface for Inter Process Communication arguments
+ */
class OS_IPC_ARG {
public:
virtual ~OS_IPC_ARG() = 0;
@@ -45,14 +48,36 @@ public:
inline OS_IPC_ARG::~OS_IPC_ARG () { }
+/*
+ * Generic interface for Inter Process Communication
+ */
class OS_IPC {
public:
+ /**
+ * @brief Initializes the IPC
+ * @return Implementation dependent
+ */
virtual bool init( OS_IPC_ARG *arg = NULL ) = 0;
+
+ /**
+ * @brief Updates IPC values
+ * @param ml_phoffset Master to local phase offset
+ * @param ls_phoffset Local to slave phase offset
+ * @param ml_freqoffset Master to local frequency offset
+ * @param sync_count Count of syncs
+ * @param pdelay_count Count of pdelays
+ * @param port_state Port's state
+ * @return Implementation dependent.
+ */
virtual bool update
( int64_t ml_phoffset, int64_t ls_phoffset,
FrequencyRatio ml_freqoffset, FrequencyRatio ls_freq_offset,
uint64_t local_time, uint32_t sync_count, uint32_t pdelay_count,
PortState port_state ) = 0;
+
+ /*
+ * Destroys IPC
+ */
virtual ~OS_IPC() = 0;
};