/*
 * Copyright(c) 2006 to 2018 ADLINK Technology Limited and others
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
 * v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */
/****************************************************************

  Generated by Vortex Lite IDL to C Translator
  File name: testtype.h
  Source: testtype.idl
  Generated: Mon Jun 12 12:03:08 EDT 2017
  Vortex Lite: V2.1.0

*****************************************************************/
#include <stddef.h>
#include "dds/dds.h"

#ifndef _DDSL_TESTTYPE_H_
#define _DDSL_TESTTYPE_H_


#ifdef __cplusplus
extern "C" {
#endif


typedef struct OneULong
{
  uint32_t seq;
} OneULong;

extern const dds_topic_descriptor_t OneULong_desc;

#define OneULong__alloc() \
((OneULong*) dds_alloc (sizeof (OneULong)));

#define OneULong_free(d,o) \
dds_sample_free ((d), &OneULong_desc, (o))


typedef struct Keyed32
{
  uint32_t seq;
  int32_t keyval;
  uint8_t baggage[24];
} Keyed32;

extern const dds_topic_descriptor_t Keyed32_desc;

#define Keyed32__alloc() \
((Keyed32*) dds_alloc (sizeof (Keyed32)));

#define Keyed32_free(d,o) \
dds_sample_free ((d), &Keyed32_desc, (o))


typedef struct Keyed64
{
  uint32_t seq;
  int32_t keyval;
  uint8_t baggage[56];
} Keyed64;

extern const dds_topic_descriptor_t Keyed64_desc;

#define Keyed64__alloc() \
((Keyed64*) dds_alloc (sizeof (Keyed64)));

#define Keyed64_free(d,o) \
dds_sample_free ((d), &Keyed64_desc, (o))


typedef struct Keyed128
{
  uint32_t seq;
  int32_t keyval;
  uint8_t baggage[120];
} Keyed128;

extern const dds_topic_descriptor_t Keyed128_desc;

#define Keyed128__alloc() \
((Keyed128*) dds_alloc (sizeof (Keyed128)));

#define Keyed128_free(d,o) \
dds_sample_free ((d), &Keyed128_desc, (o))


typedef struct Keyed256
{
  uint32_t seq;
  int32_t keyval;
  uint8_t baggage[248];
} Keyed256;

extern const dds_topic_descriptor_t Keyed256_desc;

#define Keyed256__alloc() \
((Keyed256*) dds_alloc (sizeof (Keyed256)));

#define Keyed256_free(d,o) \
dds_sample_free ((d), &Keyed256_desc, (o))


typedef struct KeyedSeq
{
  uint32_t seq;
  int32_t keyval;
  dds_sequence_t baggage;
} KeyedSeq;

extern const dds_topic_descriptor_t KeyedSeq_desc;

#define KeyedSeq__alloc() \
((KeyedSeq*) dds_alloc (sizeof (KeyedSeq)));

#define KeyedSeq_free(d,o) \
dds_sample_free ((d), &KeyedSeq_desc, (o))

#ifdef __cplusplus
}
#endif
#endif /* _DDSL_TESTTYPE_H_ */
