// DO NOT MODIFY THIS FILE, IT HAS BEEN GENERATED.
// File generated by Quazal DDL Compiler, Version 4.1 [SP2] (Build 1224.83)
// Copyright (C) 1998-2004, Quazal Technologies Inc.

#ifndef _DSPathFollowerDDL_H_
#define _DSPathFollowerDDL_H_

#include <NetZ.h>
#include "Network/NetZ/AvalancheProperties.h"
BEGIN_NAMESPACE_QUAZAL;
class DATASET(DSPathFollower): public DataSet {
public:
	_DS_GENERAL_DECLARATIONS(DSPathFollower);
	DATASET(DSPathFollower)( const DATASET(DSPathFollower) &oOther ) :
		d_distance(oOther.d_distance), 
		d_flags(oOther.d_flags), 
		d_speedCurrent(oOther.d_speedCurrent), 
		d_speedTarget(oOther.d_speedTarget), 
		d_state(oOther.d_state)
	{
	}

	_DS_ASSIGN_OPERATOR(DSPathFollower){
		_DS_COPYDATASET_VAR(d_distance);
		_DS_COPYDATASET_VAR(d_flags);
		_DS_COPYDATASET_VAR(d_speedCurrent);
		_DS_COPYDATASET_VAR(d_speedTarget);
		_DS_COPYDATASET_VAR(d_state);
	}

	_DS_EQUAL_OPERATOR(DSPathFollower){
		_DS_EQUAL_VAR(d_distance);
		_DS_EQUAL_VAR(d_flags);
		_DS_EQUAL_VAR(d_speedCurrent);
		_DS_EQUAL_VAR(d_speedTarget);
		_DS_EQUAL_VAR(d_state);
		return true;
	}

	_DS_TMPL_EQUAL_OPERATOR(DSPathFollower)
	void ExtractFrom(Message* pMsg) {
		_MSG_EXTRACT_VARIABLE(Td_distance,d_distance);
		_MSG_EXTRACT_VARIABLE(Td_flags,d_flags);
		_MSG_EXTRACT_VARIABLE(Td_speedCurrent,d_speedCurrent);
		_MSG_EXTRACT_VARIABLE(Td_speedTarget,d_speedTarget);
		_MSG_EXTRACT_VARIABLE(Td_state,d_state);
	}

	DDLTYPE(int16)::CPPType d_distance;
	DDLTYPE(byte)::CPPType d_flags;
	DDLTYPE(int16)::CPPType d_speedCurrent;
	DDLTYPE(int16)::CPPType d_speedTarget;
	DDLTYPE(int8)::CPPType d_state;
	_PR_unreliable_pudecl();

protected:
	_PR_unreliable_prdecl();
private:
	typedef DDLTYPE(int16) Td_distance;
	typedef DDLTYPE(byte) Td_flags;
	typedef DDLTYPE(int16) Td_speedCurrent;
	typedef DDLTYPE(int16) Td_speedTarget;
	typedef DDLTYPE(int8) Td_state;
};

#define _DSDECL_DSPathFollower DeadReckoningDSDecl< DSPathFollower, _PR_DRPathFollower_model(DSPathFollower), _PR_DRPathFollower_modelpolicy(_PR_DRPathFollower_model(DSPathFollower)) >

END_NAMESPACE_QUAZAL;
// For convenience, this declaration is directly available outside the Quazal namespace
using NS_QUAZAL DATASET(DSPathFollower);


#endif // _DSPathFollowerDDL_H_
