// Copyright (c) 2010, Peter Smith
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// Redistributions of source code must retain the above copyright notice, this list
// of conditions and the following disclaimer.
//
// Redistributions in binary form must reproduce the above copyright notice, this
// list of conditions and the following disclaimer in the documentation and/or
// other materials provided with the distribution.
//
// Neither the name of the Author nor the names of its contributors may be used to
// endorse or promote products derived from this software without specific prior
// written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
// IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
// OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
// OF THE POSSIBILITY OF SUCH DAMAGE.
namespace PS
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
class SiteHostEntityRadioFrequency
{
#region Fields
//Application ID
public ushort application;
//Entity ID
public ushort entity;
//Transmitter Frequency
public ulong frequency;
//Radio ID
public ushort radioID;
//Site ID
public ushort site;
#endregion Fields
#region Constructors
public SiteHostEntityRadioFrequency(ushort Site, ushort Application, ushort Entity, ushort RadioID, ulong Frequency)
{
site = Site;
application = Application;
entity = Entity;
radioID = RadioID;
frequency = Frequency;
}
#endregion Constructors
#region Methods
public override bool Equals(object obj)
{
SiteHostEntityRadioFrequency compareToObj = (SiteHostEntityRadioFrequency)obj;
//If both are null, or both are the same instance, return true;
if (System.Object.ReferenceEquals(this, obj))
{
return true;
}
//If one is null, but not both, return false;
if (((object)this == null) || ((object)obj == null))
{
return false;
}
if (this.application == compareToObj.application && this.entity == compareToObj.entity && this.frequency == compareToObj.frequency && this.radioID == compareToObj.radioID && this.site == compareToObj.site)
return true;
else
return false;
}
public override int GetHashCode()
{
if (Object.ReferenceEquals(this, null)) return 0;
int hashApplication = this.application.GetHashCode();
int hashEntity = this.entity.GetHashCode();
int hashFrequency = this.frequency.GetHashCode();
int hashRadioID = this.radioID.GetHashCode();
int hashSite = this.site.GetHashCode();
return hashApplication ^ hashEntity ^ hashFrequency ^ hashRadioID ^ hashSite;
}
#endregion Methods
}
}