private const int _RFIDCommunicationsTimeOut = 5000;            // in msec.
        //************************************************************************************************/
        /// <summary> Constructor for HWCRFIDRW. </summary>

        public HWCRFIDRW()
        {               // Create instance of HWCRobotGantrySetup object -- carries setup information.
            _Setup = new HWCRFIDRWSetup();
            // Load the setup information from the Registry.
            _Setup.LoadInformation();
            // Re-save the setup information to the registry again...in case some new keys were created in
            // this version of software or new software installation,....
            _Setup.SaveInformation();
            // Create the status message.
            _StatusMessage = "Creating the HWCRFIDRW () class....Done.";
        }
        //************************************************************************************************/
        /// <summary> Destructor for HWCRFIDRW. </summary>

        public void Dispose()
        {               // If serial port is open, close it first.
            if (_SerialPort != null)
            {
                if (_SerialPort.IsOpen)
                {
                    _SerialPort.Close();
                }
            }

            // De-allocate all memory allocated from the heap (with the "new" keyword).
            // The .NET garbage collector will purge it back to the stack and heap.
            _SerialPort   = null;
            _ASCIIEncoder = null;
            _Setup        = null;

            // Call the .NET garbage collector to purge memory back to stack and heap.
            GC.Collect();
        }