//---------------------------------------------------------------------------- /*! * @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)); }
//---------------------------------------------------------------------------- /*! * @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)); }
//---------------------------------------------------------------------------- /*! * @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; } }
//---------------------------------------------------------------------------- /*! * @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); }
//---------------------------------------------------------------------------- /*! * @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); }
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); }
public API_CODE m_Code; //!< APIリザルトコード区分情報:コード public ResultCodeType(API_CODE eCode, API_CODETYPE eCodeType) { m_Code = eCode; m_CodeType = eCodeType; }