]> git.ipfire.org Git - thirdparty/nqptp.git/blame - nqptp.h
Merge pull request #34 from heitbaum/patch-1
[thirdparty/nqptp.git] / nqptp.h
CommitLineData
68cae740
MB
1/*
2 * This file is part of the nqptp distribution (https://github.com/mikebrady/nqptp).
1c610279 3 * Copyright (c) 2021-2022 Mike Brady.
68cae740
MB
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, version 2.
8 *
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 *
17 * Commercial licensing is also available.
18 */
19
20#ifndef NQPTP_H
21#define NQPTP_H
22
01fa06a8
MB
23#include <inttypes.h>
24#include <pthread.h>
25
68cae740
MB
26#include "nqptp-shm-structures.h"
27
96dd6c2b
MB
28#define MAX_CLOCKS 64
29#define MAX_CLIENTS 16
4d699581
MB
30#define MAX_OPEN_SOCKETS 16
31
339e00f6 32// When a new timing peer group is created, one of the clocks in the
96dd6c2b 33// group may become the master and its native time becomes the "master time".
339e00f6
MB
34// This is what is provided to the client.
35
96dd6c2b
MB
36// An NQPTP client interface communicates through a shared memory interface named by the
37// shm_interface_name It provides the shm_interface_name at the start of every control message it
38// sends through port 9000. Following the name, the client can specify the members -- the "PTP
39// Instances" -- of a "PTP Network" it wishes to monitor. This is a "timing group" in AirPlay 2
40// parlance, it seems.
68cae740 41
bf4d7c3d
MB
42void send_awakening_announcement_sequence(const uint64_t clock_id, const char *clock_ip,
43 const int ip_family, const uint8_t priority1,
44 const uint8_t priority2);
45
c902de2d 46#endif