/*******************************************************************************
** Copyright (c) 1997 MaK Technologies, Inc.
** All rights reserved.
*******************************************************************************/

//! \file hLcDec.h
//! \brief Contains DtLgrControlDecoder

#pragma once

#if DtHLA

#include "loggerControlDefines.h"
#include <vl/interactionDecoder.h>

class DtLgrControlInteraction;

//! Instances of DtLgrControlDecoder are used to decode LgrControl Interactions
//! from the network.
//! \ingroup loggerControlToolkit
class DT_DLL_LOGGERCONTROL DtLgrControlDecoder : public DtInteractionDecoder
{
public:

   //! constructor
   DtLgrControlDecoder( DtExerciseConn* conn, DtInterClassDesc* clsDsc );

   //! destructor
   virtual ~DtLgrControlDecoder();

   //! copy constructor
   DtLgrControlDecoder(const DtLgrControlDecoder& src );

   //! assignment operator
   DtLgrControlDecoder& operator=( const DtLgrControlDecoder& src );

protected:

   //! Individual parameter decoders
   static void decodeLgrControlPdu( DtLgrControlInteraction* inter,
      const RTI::ParameterHandleValuePairSet& params, int pairSetIndex );
};

#endif   //! DtHLA
