types.h
Go to the documentation of this file.
#ifndef PROTON_TYPES_H
#define PROTON_TYPES_H 1
/*
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
#include <proton/import_export.h>
#include <stddef.h>
#include <proton/type_compat.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef int32_t pn_sequence_t;
typedef uint32_t pn_millis_t;
#define PN_MILLIS_MAX (~0U)
typedef uint32_t pn_seconds_t;
typedef int64_t pn_timestamp_t;
typedef uint32_t pn_char_t;
typedef uint32_t pn_decimal32_t;
typedef uint64_t pn_decimal64_t;
typedef struct {
char bytes[16];
} pn_decimal128_t;
typedef struct {
char bytes[16];
} pn_uuid_t;
typedef struct pn_bytes_t {
size_t size;
const char *start;
} pn_bytes_t;
PN_EXTERN pn_bytes_t pn_bytes(size_t size, const char *start);
static const pn_bytes_t pn_bytes_null = { 0, NULL };
typedef struct pn_rwbytes_t {
size_t size;
char *start;
} pn_rwbytes_t;
PN_EXTERN pn_rwbytes_t pn_rwbytes(size_t size, char *start);
static const pn_rwbytes_t pn_rwbytes_null = { 0, NULL };
typedef int pn_state_t;
typedef struct pn_connection_t pn_connection_t;
typedef struct pn_session_t pn_session_t;
typedef struct pn_link_t pn_link_t;
typedef struct pn_delivery_t pn_delivery_t;
typedef struct pn_collector_t pn_collector_t;
typedef struct pn_listener_t pn_listener_t;
typedef struct pn_transport_t pn_transport_t;
typedef struct pn_proactor_t pn_proactor_t;
typedef struct pn_handler_t pn_handler_t;
#ifdef __cplusplus
}
#endif
#endif /* types.h */
pn_decimal32_t
uint32_t pn_decimal32_t
A 32-bit decimal floating-point number.
Definition: types.h:180
pn_decimal64_t
uint64_t pn_decimal64_t
A 64-bit decimal floating-point number.
Definition: types.h:187
pn_char_t
uint32_t pn_char_t
A 32-bit Unicode code point.
Definition: types.h:173
pn_timestamp_t
int64_t pn_timestamp_t
A 64-bit timestamp in milliseconds since the Unix epoch.
Definition: types.h:166
pn_decimal128_t
A 128-bit decimal floating-point number.
Definition: types.h:194
pn_uuid_t
A 16-byte universally unique identifier.
Definition: types.h:203
pn_bytes_t
struct pn_bytes_t pn_bytes_t
A const byte buffer.
pn_rwbytes_t
struct pn_rwbytes_t pn_rwbytes_t
A non-const byte buffer.
pn_sequence_t
int32_t pn_sequence_t
A sequence number.
Definition: types.h:138
pn_millis_t
uint32_t pn_millis_t
A span of time in milliseconds.
Definition: types.h:145
pn_rwbytes
pn_rwbytes_t pn_rwbytes(size_t size, char *start)
Create a pn_rwbytes_t.
pn_bytes
pn_bytes_t pn_bytes(size_t size, const char *start)
Create a pn_bytes_t.
pn_seconds_t
uint32_t pn_seconds_t
A span of time in seconds.
Definition: types.h:159
pn_bytes_t
A const byte buffer.
Definition: types.h:212
pn_rwbytes_t
A non-const byte buffer.
Definition: types.h:231
pn_connection_t
struct pn_connection_t pn_connection_t
An AMQP Connection object.
Definition: types.h:281
pn_state_t
int pn_state_t
Holds the state flags for an AMQP endpoint.
Definition: types.h:267
pn_delivery_t
struct pn_delivery_t pn_delivery_t
An AMQP Delivery object.
Definition: types.h:401
pn_collector_t
struct pn_collector_t pn_collector_t
An event collector.
Definition: types.h:413
pn_link_t
struct pn_link_t pn_link_t
An AMQP Link object.
Definition: types.h:311
pn_listener_t
struct pn_listener_t pn_listener_t
A listener for incoming connections.
Definition: types.h:420
pn_proactor_t
struct pn_proactor_t pn_proactor_t
A harness for multithreaded IO.
Definition: types.h:438
pn_session_t
struct pn_session_t pn_session_t
An AMQP Session object.
Definition: types.h:292
pn_transport_t
struct pn_transport_t pn_transport_t
A network channel supporting an AMQP connection.
Definition: types.h:431