/*****************************************************************************
* Copyright (c) 1990-2000 Digi International Inc., All Rights Reserved
* 
* This software contains proprietary and confidential information of Digi
* International Inc.  By accepting transfer of this copy, Recipient agrees
* to retain this software in confidence, to prevent disclosure to others,
* and to make no use of this software other than that for which it was
* delivered.  This is an unpublished copyrighted work of Digi International
* Inc.  Except as permitted by federal law, 17 USC 117, copying is strictly
* prohibited.
* 
* Restricted Rights Legend
*
* Use, duplication, or disclosure by the Government is subject to
* restrictions set forth in sub-paragraph (c)(1)(ii) of The Rights in
* Technical Data and Computer Software clause at DFARS 252.227-7031 or
* subparagraphs (c)(1) and (2) of the Commercial Computer Software -
* Restricted Rights at 48 CFR 52.227-19, as applicable.
*
* Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343
*
*****************************************************************************/


// Port.h: interface for the CPort class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_PORT_H__5A90D8B1_C28E_11D1_BAA4_00805F9E3135__INCLUDED_)
#define AFX_PORT_H__5A90D8B1_C28E_11D1_BAA4_00805F9E3135__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#include "ConfigObject.h"

class FW_EXPORTED_CLASS CPort : public CConfigObject
{
	DECLARE_DYNAMIC(CPort)

public:
	virtual ~CPort();

   int GetPortNumber(void) const { return m_nPort; }
   void SetPortNumber(int const nPort) { m_nPort = nPort; }

   int GetLineNumber(void) const { return m_nLine; }
   void SetLineNumber(int const n) { m_nLine = n; }

   DWORD GetComNumber(void) const { return m_nComNumber; }
   void SetComNumber(DWORD const n) { m_nComNumber = n; }

   virtual BOOL SetParameters(void);

protected:
   //
   // Allow instantiations of derived classes only
	CPort(HKEY const hKeyRoot, CString const & strRegPath, CConfigObject const * const pParent);

   int m_nPort;
   int m_nLine;

   DWORD m_nComNumber;

   //
   // Method for getting parameters
   BOOL GetParameters(void);

   //
   // Method for getting static config data
   BOOL GetConfigData(void);
};

#endif // !defined(AFX_PORT_H__5A90D8B1_C28E_11D1_BAA4_00805F9E3135__INCLUDED_)
