bool __cdecl CCalculateSink::InitCalculateSink(ITableFrame *pITableFrame, CTableFrameSink *pTableFrameSink) { m_pITableFrame=pITableFrame; if (m_pITableFrame==NULL) return false; m_pTableFrameSink = pTableFrameSink; GT_ASSERT(m_pTableFrameSink != NULL); //获取参数 m_pGameServiceAttrib=m_pITableFrame->GetGameServiceAttrib(); GT_ASSERT(m_pGameServiceAttrib!=NULL); m_pGameServiceOption=m_pITableFrame->GetGameServiceOption(); GT_ASSERT(m_pGameServiceOption!=NULL); m_pICalculateFrame = m_pITableFrame->GetICalculateFrame(); GT_ASSERT(m_pICalculateFrame != NULL); memset(&m_decAfterTax, 0, sizeof(DECIMAL)); DECIMAL decTemp; memset(&decTemp, 0, sizeof(DECIMAL)); VarDecFromI4(-1, &decTemp); VarDecMul(&decTemp,(DECIMAL*) &m_pGameServiceOption->decTaxRate, &m_decAfterTax); return true; }
void ccom_decimal_value_one (DECIMAL * a_value) { long one = 1; VarDecFromI4(one, a_value); };
void ccom_decimal_value_zero (DECIMAL * a_value) { long zero = 0; VarDecFromI4(zero, a_value); };