⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmicopaccept.cpp

📁 Soul的源代码,类似于劲舞团之类的游戏
💻 CPP
📖 第 1 页 / 共 2 页
字号:
{
	m_iBuffMaxSize = 0;
	m_pCurrPoint =	NULL;
	m_pStartPoint = NULL;
	m_TotalSize = 0;
	
	m_iBuffMaxSize = iBuffMaxSize;		//滚欺 劝寸 肮荐.

	//劝寸窍绊 酵篮 滚欺 荤捞令焊促 OVERLABBEDBUFFERSIZE农扁父怒 歹 皋葛府甫 棱绰促.
	m_pHeadPoint = m_pTailPoint = m_pDataPoint 
		= m_pCurrPoint = m_pStartPoint = (char *) new char[iBuffMaxSize+PACKETBUFFERSIZE];
	if(m_pStartPoint == NULL)
	{
		return ;
	}

	//皋葛府狼 场何盒..
	m_pEndPoint = m_pStartPoint + m_iBuffMaxSize + PACKETBUFFERSIZE;
	memset(m_pStartPoint,0,sizeof(char)*iBuffMaxSize);	//皋葛府 檬扁拳
}

CMMemoryManager::~CMMemoryManager()
{

}

///////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////

void CMMemoryManager::Reset()
{
	memset(m_pStartPoint,0,sizeof(char)*(m_iBuffMaxSize + PACKETBUFFERSIZE));	//皋葛府 檬扁拳
	m_pCurrPoint = m_pStartPoint;							//皋葛府 瘤矫磊甫 檬扁拳 矫挪促.
}

char * CMMemoryManager::GetMemoryBuf()
{
	return m_pDataPoint ;
}

//-------------------------------------------------------------------------------------------------------
//	Name		 :: int GetMemorySize(bool bContinue = false)
//	Create Date	 :: 2003/12/29
//	Description	 :: 泅犁 坷滚乏 备炼眉俊 皋葛府甫 吧荐 乐绰 荤捞令甫 舅酒辰促.
//					父距 单捞鸥啊 缔何盒俊辑 漏副版快 菊栏肺 单捞鸥甫 汗荤窍绊 抄饶 荤捞令甫 汗荤秦林绢具 茄促.
//	param		 ::	
//	Return Value :: int : 镜荐 乐绰 皋葛府狼 荤捞令.
//						  0 捞搁 歹捞惑 镜荐 乐绰 皋葛府啊 绝促. 努扼捞攫飘甫 肋矾滚副帛阑 辆侩..
//	Bug	Report	 ::	捞窃荐绰 postrecv()俊辑父 镜荐乐促. (官骸)
//					皋葛府 劝寸 窍扁困秦 荤捞令甫 备窍绰 何盒烙.. 
//					(捞 皋葛府 檬扁拳档 吝夸)
//-------------------------------------------------------------------------------------------------------
int CMMemoryManager::GetMemorySize(bool bContinue)
{
	int size;
	int	tempSize;
	//size = (m_pStartPoint + m_iBuffMaxSize + OVERLABBEDBUFFERSIZE) - m_pTailPoint ;

	//单捞鸥啊 
	if(m_pTailPoint >= m_pHeadPoint)
	{
		size = m_pEndPoint - m_pTailPoint ;

		if(size >= PACKETBUFFERSIZE)
		{
			return PACKETBUFFERSIZE;
		}
		else
		{
			//  荤侩磊 皋葛府甫 劝寸窍扁俊 巢篮 皋葛府 荤捞令啊 利促.
			//	皋葛府 场何盒俊 客乐促 促矫 皋葛府 贸澜何磐 荤侩且荐 乐霸 秦霖促.
			if(bContinue == true)
			{
				// 泅犁 罐篮 皋葛府剧.
				tempSize = m_pTailPoint - m_pCurrPoint;
				
				//	皋葛府啊 荤侩登绊 乐绰何盒傈鳖瘤 拌魂窍绊. 滚欺甫 劝寸且荐 乐绰瘤 八荤秦霖促.
				if(m_pHeadPoint - m_pStartPoint < tempSize + PACKETBUFFERSIZE )
				{
					//皋葛府啊 促 劝寸登绊 镜荐 乐绰何盒捞 绝促. 荤侩磊甫 谗绢 滚府磊.
					CMSingleton<CMDebug>::getInstance()->output("%s(%d)农府萍拿 俊矾(荤侩磊 皋葛府 何练)",__FILE__,__LINE__);
					return 0;
				}

				//	父距 皋葛府 场俊辑 单捞鸥啊 捞绢龙 版快俊绰 菊栏肺 单捞鸥甫 缠绊 啊辑 捞绢林绢具 茄促.
				memcpy(m_pStartPoint,m_pCurrPoint,tempSize);

				//	菊栏肺 单捞鸥甫 颗变饶 单捞鸥 官风 缔何盒俊 器牢磐甫 颗败霖促.
				m_pTailPoint = m_pStartPoint + tempSize;
				m_pCurrPoint = m_pStartPoint;

				return PACKETBUFFERSIZE;
			}
			else
			{
				
				

				//	皋葛府啊 荤侩登绊 乐绰何盒傈鳖瘤 拌魂窍绊. 滚欺甫 劝寸且荐 乐绰瘤 八荤秦霖促.
				if(m_pHeadPoint - m_pStartPoint < PACKETBUFFERSIZE )
				{
					//皋葛府啊 促 劝寸登绊 镜荐 乐绰何盒捞 绝促. 荤侩磊甫 谗绢 滚府磊.
					CMSingleton<CMDebug>::getInstance()->output("%s(%d)农府萍拿 俊矾(荤侩磊 皋葛府 何练)",__FILE__,__LINE__);
					return 0;
				}

				//	皋葛府 场何盒俊 客乐促 促矫 皋葛府 贸澜何磐 荤侩且荐 乐霸 秦霖促.
				m_pTailPoint = m_pStartPoint;
					
			}
		}
	}
	else
	{
		size = m_pHeadPoint - m_pTailPoint ;

		if(size >= PACKETBUFFERSIZE)
		{
			return PACKETBUFFERSIZE;
		}
		else
		{
			//  荤侩磊 皋葛府甫 劝寸窍扁俊 巢篮 皋葛府 荤捞令啊 利促.
			//	单捞鸥啊 菜蛮 惑怕 单捞鸥啊 力措肺 贸府 救瞪荐档 乐促
			//	发 泅惑老荐档 乐促.
			//	皋葛府啊 促 劝寸登绊 镜荐 乐绰何盒捞 绝促. 荤侩磊甫 谗绢 滚府磊.
			CMSingleton<CMDebug>::getInstance()->output("%s(%d)农府萍拿 俊矾(荤侩磊 皋葛府 何练)",__FILE__,__LINE__);

			return 0;
		}

	}

	return size;

}

//-------------------------------------------------------------------------------------------------------
//	Name		 :: GetMemoryPoint()
//	Create Date	 :: 2003/12/29
//	Description	 :: 泅犁 坷滚乏 备炼眉俊 皋葛府甫 吧荐 乐绰何盒阑 啊福挪促. 
//					父距 单捞鸥甫 罐篮 版快俊绰 单捞鸥甫 盒籍窍绰 累诀俊 静牢促.
//	param		 ::	
//	Return Value :: char * : 镜荐 乐绰 皋葛府狼 林家蔼.
//	Bug	Report	 ::
//-------------------------------------------------------------------------------------------------------
char * CMMemoryManager::GetMemoryPoint()
{
//	char * pOldMem;

	return m_pCurrPoint;
}

	//if(m_CurrPoint->bUsed == FALSE)
	//{
	//	pOldMem = m_CurrPoint;
	//	m_CurrPoint++;
	//	
	//	if(m_CurrPoint->iNum == m_iBuffMaxSize - 1)
	//	{
	//		//颇老 瘤矫磊啊 皋葛府狼 场何盒 林家蔼阑 逞栏搁 促矫 霉锅掳 皋葛府甫 啊福挪促.. (盔屈钮 皋葛府)
	//		m_CurrPoint = m_pStartPoint;
 //       }
	//}
	//else
	//{
	//	for(int i = 0; i < m_iBuffMaxSize ; i++)
	//	{
	//		//瘤矫磊甫 促澜锅瘤 皋葛府肺 颗变促.
	//		m_CurrPoint++;
	//		
	//		if(m_CurrPoint->iNum == m_iBuffMaxSize - 1)
	//		{
	//			//颇老 瘤矫磊啊 皋葛府狼 场何盒 林家蔼阑 逞栏搁 促矫 霉锅掳 皋葛府甫 啊福挪促.. (盔屈钮 皋葛府)
	//			m_CurrPoint = m_pStartPoint;
	//		}
	//		
	//		if(m_CurrPoint->bUsed == FALSE)
	//		{
	//			pOldMem = m_CurrPoint;
	//			break;
	//		}
	//	}

	//	m_CurrPoint++;

	//	if(m_CurrPoint->iNum == m_iBuffMaxSize - 1)
	//	{
	//		//颇老 瘤矫磊啊 皋葛府狼 场何盒 林家蔼阑 逞栏搁 促矫 霉锅掳 皋葛府甫 啊福挪促.. (盔屈钮 皋葛府)
	//		m_CurrPoint = m_pStartPoint;
	//	}
	//}



	//pOldMem->bUsed = TRUE;
	//InterlockedIncrement(&m_TotalSize);
	//return pOldMem;
//}



//-------------------------------------------------------------------------------------------------------
//	Name		 :: BOOL ReturnMemoryPoint(char* RtnPoint)
//	Create Date	 :: 2004/01/05
//	Description	 :: .
//	param		 ::	
//			char* RtnPoint : 皋葛府 林家蔼
//	Return Value :: BOOL 屈: 府畔 己傍?
//	Bug	Report	 ::	捞何盒篮 促弗 静饭靛客 况农 静饭靛啊 父唱绰 何盒捞促.
//					农府萍拿 冀记捞 鞘夸 且瘤档 葛福摆促.
//-------------------------------------------------------------------------------------------------------
BOOL CMMemoryManager::ReturnMemoryPoint(char* RtnPoint)
{
	unsigned short *sId = 0;

	//
	*sId = *(( unsigned short* )( ( char* )RtnPoint + HEAD_SIZE_POISTION ));

	m_pHeadPoint += (*sId + PACKETHEADERSIZE);
	//第俊 皋葛府甫 棱阑 傍埃捞 绝绰版快绰 盖贸澜栏肺 埃促.
	if(m_pHeadPoint + PACKETBUFFERSIZE  > m_pEndPoint )
		m_pHeadPoint = m_pStartPoint;

	return TRUE;
}


//-------------------------------------------------------------------------------------------------------
//	Name		 :: char * SetCurrBuf(int iPos)
//	Create Date	 :: 2003/12/30
//	Description	 :: .
//	param		 ::	
//			int iPos	:	皋葛府蔼阑 iPos父怒 捞悼矫难霖促.
//	Return Value :: char * : m_pCurrPoint 皋葛府狼 林家蔼
//	Bug	Report	 ::
//-------------------------------------------------------------------------------------------------------
char * CMMemoryManager::SetCurrBuf(int iPos)
{
	m_pCurrPoint += iPos;

	return m_pCurrPoint;
}


//-------------------------------------------------------------------------------------------------------
//	Name		 :: char * GetTailPoint()
//	Create Date	 :: 2003/12/30
//	Description	 :: .
//	param		 ::	
//	Return Value :: char * : m_pTailPoint 皋葛府狼 林家蔼
//	Bug	Report	 ::
//-------------------------------------------------------------------------------------------------------
char * CMMemoryManager::GetCurrBuf()
{
	return m_pCurrPoint;
}


//-------------------------------------------------------------------------------------------------------
//	Name		 :: char * SetTailPoint(int iPos)
//	Create Date	 :: 2003/12/30
//	Description	 :: .
//	param		 ::	
//			int iPos	:	皋葛府蔼阑 iPos父怒 捞悼矫难霖促.
//	Return Value :: char * : m_pTailPoint 皋葛府狼 林家蔼
//	Bug	Report	 ::
//-------------------------------------------------------------------------------------------------------
char * CMMemoryManager::SetTailPoint(int iPos)
{
	m_pTailPoint += iPos;

	return m_pTailPoint;
}


//-------------------------------------------------------------------------------------------------------
//	Name		 :: char * GetTailPoint()
//	Create Date	 :: 2003/12/30
//	Description	 :: .
//	param		 ::	
//	Return Value :: char * : m_pTailPoint 皋葛府狼 林家蔼
//	Bug	Report	 ::
//-------------------------------------------------------------------------------------------------------
char * CMMemoryManager::GetTailPoint()
{
	return m_pTailPoint;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -