/// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 internal static void ReceiveQueue_PacketLength(object sender, PacketLengthInfoEventArgs eventArgs)
 {
     if (eventArgs.BufferSize >= 2)   // 这是R.O.S.E的实现(因为是环绕环冲区,所以需要取模)
     {
         eventArgs.PacketLength = (ushort)((eventArgs.Buffer[(eventArgs.HeadIndex) % eventArgs.Buffer.Length]) | eventArgs.Buffer[(eventArgs.HeadIndex + 1) % eventArgs.Buffer.Length] << 8);
     }
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 private static void RealmReceiveQueue_PacketLength(object sender, PacketLengthInfoEventArgs eventArgs)
 {
     if (eventArgs.BufferSize >= 3)   // 这是W.O.W协议的实现(因为是环绕环冲区,所以需要取模)
     {
         eventArgs.PacketLength = (ushort)((eventArgs.Buffer[(eventArgs.HeadIndex + 1) % eventArgs.Buffer.Length]) | eventArgs.Buffer[(eventArgs.HeadIndex + 2) % eventArgs.Buffer.Length] << 8);
     }
 }
Exemple #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 private void GetPacketLength(object sender, PacketLengthInfoEventArgs eventArgs)
 {
     if (eventArgs.BufferSize >= 2)   // 这是ZoneCluster的实现(因为是环绕环冲区,所以需要取模)
     {
         eventArgs.PacketLength = (ushort)((eventArgs.Buffer[(eventArgs.HeadIndex) % eventArgs.Buffer.Length]) | eventArgs.Buffer[(eventArgs.HeadIndex + 1) % eventArgs.Buffer.Length] << 8);
     }
 }
        public void PacketLengthInfoEventArgsConstructorTest()
        {
            byte[] byteBuffer = null; // TODO: 初始化为适当的值
            long   bufferSize = 0;    // TODO: 初始化为适当的值
            long   iHeadIndex = 0;    // TODO: 初始化为适当的值
            PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs(byteBuffer, bufferSize, iHeadIndex);

            Assert.Inconclusive("TODO: 实现用来验证目标的代码");
        }
 public void HeadIndexTest()
 {
     byte[] byteBuffer = null; // TODO: 初始化为适当的值
     long bufferSize = 0; // TODO: 初始化为适当的值
     long iHeadIndex = 0; // TODO: 初始化为适当的值
     PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs( byteBuffer, bufferSize, iHeadIndex ); // TODO: 初始化为适当的值
     long actual;
     actual = target.HeadIndex;
     Assert.Inconclusive( "验证此测试方法的正确性。" );
 }
Exemple #6
0
        /// <summary>
        ///GetPacketLength 的测试
        ///</summary>
        public void GetPacketLengthTestHelper <T>()
            where T : BaseWorld, new()
        {
            Domain_Accessor <T> target = new Domain_Accessor <T>(); // TODO: 初始化为适当的值
            object sender = null;                                   // TODO: 初始化为适当的值
            PacketLengthInfoEventArgs eventArgs = null;             // TODO: 初始化为适当的值

            target.GetPacketLength(sender, eventArgs);
            Assert.Inconclusive("无法验证不返回值的方法。");
        }
        public void BufferSizeTest()
        {
            byte[] byteBuffer = null;                                                                             // TODO: 初始化为适当的值
            long   bufferSize = 0;                                                                                // TODO: 初始化为适当的值
            long   iHeadIndex = 0;                                                                                // TODO: 初始化为适当的值
            PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs(byteBuffer, bufferSize, iHeadIndex); // TODO: 初始化为适当的值
            long actual;

            actual = target.BufferSize;
            Assert.Inconclusive("验证此测试方法的正确性。");
        }
 public void PacketLengthTest()
 {
     byte[] byteBuffer = null; // TODO: 初始化为适当的值
     long bufferSize = 0; // TODO: 初始化为适当的值
     long iHeadIndex = 0; // TODO: 初始化为适当的值
     PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs( byteBuffer, bufferSize, iHeadIndex ); // TODO: 初始化为适当的值
     long expected = 0; // TODO: 初始化为适当的值
     long actual;
     target.PacketLength = expected;
     actual = target.PacketLength;
     Assert.AreEqual( expected, actual );
     Assert.Inconclusive( "验证此测试方法的正确性。" );
 }
Exemple #9
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public long GetPacketLength()
        {
            long iReturn = 0;

            if (EventPacketLength != null)
            {
                PacketLengthInfoEventArgs packetLengthInfoEventArgs = new PacketLengthInfoEventArgs(m_Data, m_Size, 0);
                EventPacketLength(this, packetLengthInfoEventArgs);
                iReturn = packetLengthInfoEventArgs.PacketLength;
            }

            return(iReturn);
        }
        public void PacketLengthTest()
        {
            byte[] byteBuffer = null;                                                                             // TODO: 初始化为适当的值
            long   bufferSize = 0;                                                                                // TODO: 初始化为适当的值
            long   iHeadIndex = 0;                                                                                // TODO: 初始化为适当的值
            PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs(byteBuffer, bufferSize, iHeadIndex); // TODO: 初始化为适当的值
            long expected = 0;                                                                                    // TODO: 初始化为适当的值
            long actual;

            target.PacketLength = expected;
            actual = target.PacketLength;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("验证此测试方法的正确性。");
        }
Exemple #11
0
    /// <summary>
    /// 给出数据包的长度
    /// </summary>
    /// <returns></returns>
    public long GetPacketLength()
    {
        long iReturn = 0;

        m_LockBuffer.Enter();
        {
            EventHandler <PacketLengthInfoEventArgs> tempEvent = s_ThreadEventPacketLength;
            if (tempEvent != null)
            {
                PacketLengthInfoEventArgs packetLengthInfoEventArgs = new PacketLengthInfoEventArgs(m_Buffer, m_Size, m_Head);
                tempEvent(this, packetLengthInfoEventArgs);
                iReturn = packetLengthInfoEventArgs.PacketLength;
            }
        }
        m_LockBuffer.Exit();

        return(iReturn);
    }
 public void PacketLengthInfoEventArgsConstructorTest()
 {
     byte[] byteBuffer = null; // TODO: 初始化为适当的值
     long bufferSize = 0; // TODO: 初始化为适当的值
     long iHeadIndex = 0; // TODO: 初始化为适当的值
     PacketLengthInfoEventArgs target = new PacketLengthInfoEventArgs( byteBuffer, bufferSize, iHeadIndex );
     Assert.Inconclusive( "TODO: 实现用来验证目标的代码" );
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 private static void RealmGetPacketLength( object sender, PacketLengthInfoEventArgs eventArgs )
 {
     if ( eventArgs.BufferSize >= 3/*Packet ID + Length 大小*/ ) // 这是W.O.W协议的实现(因为是环绕环冲区,所以需要取模)
         eventArgs.PacketLength = (ushort)( ( eventArgs.Buffer[( eventArgs.HeadIndex + 1 ) % eventArgs.Buffer.Length] ) | eventArgs.Buffer[( eventArgs.HeadIndex + 2 ) % eventArgs.Buffer.Length] << 8 );
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="eventArgs"></param>
 internal static void ReceiveQueue_PacketLength( object sender, PacketLengthInfoEventArgs eventArgs )
 {
     if ( eventArgs.BufferSize >= 2 ) // 这是R.O.S.E的实现(因为是环绕环冲区,所以需要取模)
         eventArgs.PacketLength = (ushort)( ( eventArgs.Buffer[( eventArgs.HeadIndex ) % eventArgs.Buffer.Length] ) | eventArgs.Buffer[( eventArgs.HeadIndex + 1 ) % eventArgs.Buffer.Length] << 8 );
 }