libptpmgmt  1.3
libptpmgmt library that provides the functionality of linuxptp pmc
Classes | Typedefs | Enumerations | Variables
ptp.h File Reference

Read network interface information and retrieve the PTP information. More...

#include <vector>
#include <ctime>
#include "types.h"
Include dependency graph for ptp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  IfInfo
 Network interface information. More...
 
struct  PtpCaps_t
 
struct  PtpPin_t
 
struct  PtpEvent_t
 
struct  PtpSample_t
 
struct  PtpSampleExt_t
 
struct  PtpSamplePrecise_t
 
struct  PtpPinPeriodDef_t
 
class  BaseClock
 
class  SysClock
 
class  PtpClock
 POSIX dynamic clock id generator. More...
 

Typedefs

typedef long double float_freq
 

Enumerations

enum  PtpPinFunc_e { PTP_PIN_UNUSED , PTP_PIN_EXTERNAL_TS , PTP_PIN_PERIODIC_OUT , PTP_PIN_PHY_SYNC }
 

Variables

__PTPMGMT_NAMESPACE_BEGIN const clockid_t CLOCK_INVALID = -1
 
const int NO_SUCH_IF = -1
 
const int NO_SUCH_PTP = -1
 
const uint8_t PTP_EXTERN_TS_RISING_EDGE = 1 << 1
 
const uint8_t PTP_EXTERN_TS_FALLING_EDGE = 1 << 2
 
const uint8_t PTP_EXTERN_TS_STRICT = 1 << 3
 
const uint8_t PTP_PERIOD_ONE_SHOT = 1 << 0
 
const uint8_t PTP_PERIOD_WIDTH = 1 << 1
 
const uint8_t PTP_PERIOD_PHASE = 1 << 2
 

Detailed Description

Read network interface information and retrieve the PTP information.

Author
Erez Geva <ErezGeva2@gmail.com>

A class to fetch network interface information and a class to fetch a dynamic clock ID for a PTP clock

Typedef Documentation

◆ float_freq

typedef long double float_freq

float frequancy

Enumeration Type Documentation

◆ PtpPinFunc_e

PHC hardware pin functional state value enumerator

Enumerator
PTP_PIN_UNUSED 

pin is currently unused

PTP_PIN_EXTERNAL_TS 

pin uses external time stamp

PTP_PIN_PERIODIC_OUT 

pin produce a periodic signal

PTP_PIN_PHY_SYNC 

pin calibrate by physical input

Variable Documentation

◆ CLOCK_INVALID

__PTPMGMT_NAMESPACE_BEGIN const clockid_t CLOCK_INVALID = -1

ivalid or not exist POSIX clock

◆ NO_SUCH_IF

const int NO_SUCH_IF = -1

No such network interface

◆ NO_SUCH_PTP

const int NO_SUCH_PTP = -1

No such PTP clock

◆ PTP_EXTERN_TS_FALLING_EDGE

const uint8_t PTP_EXTERN_TS_FALLING_EDGE = 1 << 2

Enable PHC pin events with falling edge flag Equal to Linux kernel flag PTP_FALLING_EDGE

◆ PTP_EXTERN_TS_RISING_EDGE

const uint8_t PTP_EXTERN_TS_RISING_EDGE = 1 << 1

Enable PHC pin events with rising edge flag Equal to Linux kernel flag PTP_RISING_EDGE

◆ PTP_EXTERN_TS_STRICT

const uint8_t PTP_EXTERN_TS_STRICT = 1 << 3

Enable PHC pin events with strict flag Equal to Linux kernel flag PTP_STRICT_FLAGS

◆ PTP_PERIOD_ONE_SHOT

const uint8_t PTP_PERIOD_ONE_SHOT = 1 << 0

Use PHC pin period signal once flag Equal to Linux kernel flag PTP_PEROUT_ONE_SHOT

◆ PTP_PERIOD_PHASE

const uint8_t PTP_PERIOD_PHASE = 1 << 2

Use PHC pin period phase flag Equal to Linux kernel flag PTP_PEROUT_PHASE

◆ PTP_PERIOD_WIDTH

const uint8_t PTP_PERIOD_WIDTH = 1 << 1

Use PHC pin period pulse width flag Equal to Linux kernel flag PTP_PEROUT_DUTY_CYCLE