/**
 * @file types.h
 *
 * @brief Types and constants specific to Win32.
 *
 * Copyright 2007-2008, Freie Universitaet Berlin. All rights reserved.
 * Please refer to the COPYING file for detailed licensing information.
 *
 * @author Georg Wittenburg
 *
 * $Id: types.h 2548 2008-02-13 19:20:58Z wittenbu $
 */

#ifndef WIN32_TYPES_H
#define WIN32_TYPES_H

#include <winsock2.h>



/**
 * @brief Constant for boolean false (instead of stdbool.h).
 */
#define false	0

/**
 * @brief Constant for boolean true (instead of stdbool.h).
 */
#define true	1

/**
 * @brief Boolean type (instead of stdbool.h).
 */
typedef int     bool;



/**
 * @brief Unsigned 8 bit type (instead of stdint.h).
 */
typedef UINT8	uint8_t;

/**
 * @brief Unsigned 16 bit type (instead of stdint.h).
 */
typedef UINT16	uint16_t;

/**
 * @brief Unsigned 32 bit type (instead of stdint.h).
 */
typedef UINT32	uint32_t;



/**
 * @brief Broadcast address.
 */
#define C_BROADCAST_ADDR	INADDR_BROADCAST

/**
 * @brief Type of the time.
 */
typedef double C_time_t;

/**
 * @brief Type of the node address.
 */
typedef u_long C_addr_t;

#endif	// WIN32_TYPES_H
