// 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 _DSRefereeMatchDDL_H_
#define _DSRefereeMatchDDL_H_

#include <NetZ.h>
BEGIN_NAMESPACE_QUAZAL;
class DATASET(DSRefereeMatch): public DataSet {
public:
	_DS_GENERAL_DECLARATIONS(DSRefereeMatch);
	DATASET(DSRefereeMatch)( const DATASET(DSRefereeMatch) &oOther ) :
		d_roundCount(oOther.d_roundCount), 
		d_roundsInMatch(oOther.d_roundsInMatch)
	{
		_DS_COPYDATASET_ARRAY(d_directPhaseExit,6);
		_DS_COPYDATASET_ARRAY(d_phaseEndTime,6);
		_DS_COPYDATASET_ARRAY(d_phaseLifetime,6);
	}

	_DS_ASSIGN_OPERATOR(DSRefereeMatch){
		_DS_COPYDATASET_ARRAY(d_directPhaseExit,6);
		_DS_COPYDATASET_ARRAY(d_phaseEndTime,6);
		_DS_COPYDATASET_ARRAY(d_phaseLifetime,6);
		_DS_COPYDATASET_VAR(d_roundCount);
		_DS_COPYDATASET_VAR(d_roundsInMatch);
	}

	_DS_EQUAL_OPERATOR(DSRefereeMatch){
		_DS_EQUAL_ARRAY(d_directPhaseExit,6);
		_DS_EQUAL_ARRAY(d_phaseEndTime,6);
		_DS_EQUAL_ARRAY(d_phaseLifetime,6);
		_DS_EQUAL_VAR(d_roundCount);
		_DS_EQUAL_VAR(d_roundsInMatch);
		return true;
	}

	_DS_TMPL_EQUAL_OPERATOR(DSRefereeMatch)
	void ExtractFrom(Message* pMsg) {
		_MSG_EXTRACT_VARIABLE_ARRAY(Td_directPhaseExit,d_directPhaseExit,6);
		_MSG_EXTRACT_VARIABLE_ARRAY(Td_phaseEndTime,d_phaseEndTime,6);
		_MSG_EXTRACT_VARIABLE_ARRAY(Td_phaseLifetime,d_phaseLifetime,6);
		_MSG_EXTRACT_VARIABLE(Td_roundCount,d_roundCount);
		_MSG_EXTRACT_VARIABLE(Td_roundsInMatch,d_roundsInMatch);
	}

	DDLTYPE(byte)::CPPType d_directPhaseExit[6];
	DDLTYPE(int32)::CPPType d_phaseEndTime[6];
	DDLTYPE(int32)::CPPType d_phaseLifetime[6];
	DDLTYPE(byte)::CPPType d_roundCount;
	DDLTYPE(byte)::CPPType d_roundsInMatch;
	_PR_upon_request_filter_pudecl();

protected:
	_PR_upon_request_filter_prdecl();
private:
	typedef DDLTYPE(byte) Td_directPhaseExit;
	typedef DDLTYPE(int32) Td_phaseEndTime;
	typedef DDLTYPE(int32) Td_phaseLifetime;
	typedef DDLTYPE(byte) Td_roundCount;
	typedef DDLTYPE(byte) Td_roundsInMatch;
};

#define _DSDECL_DSRefereeMatch DSRefereeMatch

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


#endif // _DSRefereeMatchDDL_H_
