Пример #1
0
    //----------------------------------------------------------------------------

    /*!
     *          @brief	イレギュラーリザルトコード一覧の生成
     */
    //----------------------------------------------------------------------------
    public void ResultCodeAddIrregular(SERVER_API eAPI, API_CODE eCode, API_CODETYPE eCodeType)
    {
        if (m_ResultCodeTypeIrregular == null)
        {
            m_ResultCodeTypeIrregular = new TemplateList <ResultCodeTypeIrregular>();
        }
        m_ResultCodeTypeIrregular.Add(new ResultCodeTypeIrregular(eAPI, eCode, eCodeType));
    }
Пример #2
0
    //----------------------------------------------------------------------------

    /*!
     *          @brief	リザルトコード一覧の生成
     */
    //----------------------------------------------------------------------------
    public void ResultCodeAdd(API_CODE eCode, API_CODETYPE eCodeType)
    {
        if (m_ResultCodeType == null)
        {
            m_ResultCodeType = new TemplateList <ResultCodeType>();
        }
        m_ResultCodeType.Add(new ResultCodeType(eCode, eCodeType));
    }
Пример #3
0
    //----------------------------------------------------------------------------

    /*!
     *          @brief	イレギュラーリザルトコード一覧の破棄
     */
    //----------------------------------------------------------------------------
    public void ResultCodeDelIrregular(SERVER_API eAPI, API_CODE eCode)
    {
        for (int i = 0; i < m_ResultCodeTypeIrregular.m_BufferSize; i++)
        {
            if (m_ResultCodeTypeIrregular[i] == null ||
                m_ResultCodeTypeIrregular[i].m_APIType != eAPI ||
                m_ResultCodeTypeIrregular[i].m_ResultCodeType.m_Code != eCode
                )
            {
                continue;
            }

            m_ResultCodeTypeIrregular[i] = null;
            return;
        }
    }
Пример #4
0
    //----------------------------------------------------------------------------

    /*!
     *          @brief	リザルト操作:リザルト追加
     *          @note	リングバッファでリザルトデータを保持。古いデータは勝手に消えるので注意
     */
    //----------------------------------------------------------------------------
    private bool AddPacketResult(uint unPacketUniqueID, SERVER_API eAPI, API_CODE eAPICode)
    {
        //--------------------------------
        //
        //--------------------------------
        uint unAccess = m_PacketResultInput % (uint)m_PacketResult.Length;

        m_PacketResult[unAccess].m_PacketAPI  = eAPI;
        m_PacketResult[unAccess].m_PacketCode = eAPICode;
        //		m_PacketResult[ unAccess ].m_PacketResult	= eAPIResult;
        m_PacketResult[unAccess].m_PacketUniqueNum = unPacketUniqueID;
        m_PacketResultInput++;

        //		Debug.LogError( "" + m_PacketResult[ unAccess ].m_PacketAPI + " , " + m_PacketResult[ unAccess ].m_PacketUniqueNum + " , " + unAccess );

        return(true);
    }
Пример #5
0
    //----------------------------------------------------------------------------

    /*!
     *          @brief	リザルトコードからコードタイプを取得
     */
    //----------------------------------------------------------------------------
    public ResultCodeType ResultCodeToCodeType(SERVER_API eAPI, API_CODE eCode)
    {
        //--------------------------------
        // APIに依存したイレギュラーなコードタイプを優先判定
        //--------------------------------
        if (m_ResultCodeTypeIrregular != null)
        {
            for (int i = 0; i < m_ResultCodeTypeIrregular.m_BufferSize; i++)
            {
                if (m_ResultCodeTypeIrregular[i] == null ||
                    m_ResultCodeTypeIrregular[i].m_APIType != eAPI ||
                    m_ResultCodeTypeIrregular[i].m_ResultCodeType.m_Code != eCode)
                {
                    continue;
                }

                return(m_ResultCodeTypeIrregular[i].m_ResultCodeType);
            }
        }

        //--------------------------------
        // APIに依存しない汎用的なコードタイプを判定
        //--------------------------------
        if (m_ResultCodeType != null)
        {
            for (int i = 0; i < m_ResultCodeType.m_BufferSize; i++)
            {
                if (m_ResultCodeType[i].m_Code != eCode)
                {
                    continue;
                }

                return(m_ResultCodeType[i]);
            }
        }

#if DEBUG_LOG
        Debug.LogError("Result Code To Code Type Error! - " + eAPI + " , " + eCode);
#endif
        return(null);
    }
Пример #6
0
    public ResultCodeType m_ResultCodeType; //!< APIリザルトコード区分情報:コード区分

    public ResultCodeTypeIrregular(SERVER_API eAPI, API_CODE eCode, API_CODETYPE eCodeType)
    {
        m_APIType        = eAPI;
        m_ResultCodeType = new ResultCodeType(eCode, eCodeType);
    }
Пример #7
0
    public API_CODE m_Code;             //!< APIリザルトコード区分情報:コード

    public ResultCodeType(API_CODE eCode, API_CODETYPE eCodeType)
    {
        m_Code     = eCode;
        m_CodeType = eCodeType;
    }