/*
 * Copyright (C) 2005 Meilhaus Electronic GmbH (support@meilhaus.de)
 *
 * Source File	:mecommon.h
 * Author	:GG (Guenter Gebhardt)	<g.gebhardt@meilhaus.de>
 * Author	:KG (Krzysztof Gantzke)	<k.gantzke@meilhaus.de>
 */

#ifndef _MECOMMON_H_
#define _MECOMMON_H_

/*==================================================================
  The version of this release
  ================================================================*/

#ifndef ME_VERSION_DRIVER
/* Unknown version */
# define ME_VERSION_DRIVER	0xFFFFFFFF
#endif

#ifndef LIBMEDRIVER_VERSION
/* Unknown version */
# define LIBMEDRIVER_VERSION	0xFFFFFFFF
#endif

#endif
