Пример #1
0
//构造函数
CCardControl::CCardControl()
{
	//状态变量
	m_bPositively=false;
	m_bDisplayHead=false;
	m_nXOrgDistance=DEF_X_DISTANCE;
	m_nXDistance = DEF_X_DISTANCE;

	//
	m_bMoving = false;
	m_nYStep = 0;
	m_nYMove = 0;
	m_cbShowIndex = 0xff;

	//扑克数据
	m_wCardCount=0;
	ZeroMemory(m_CardItem,sizeof(m_CardItem));

	//位置变量
	m_YCollocateMode=enYTop;
	m_XCollocateMode=enXLeft;
	m_BenchmarkPos.SetPoint(0,0);

	//加载资源
	m_ImageCard.SetLoadInfo(IDB_CARD,AfxGetInstanceHandle());

	//获取大小
	CImageHandle HandleImage(&m_ImageCard);
	m_CardSize.SetSize(m_ImageCard.GetWidth()/13,m_ImageCard.GetHeight()/5);

	return;
}
Пример #2
0
/**
Function responsible to 
1. get the image names one by one. 
2. Identify the image type and Create respective Reader objects.
3. Identify the required validations and create respective Instances.
4. Identify the required Writers and create respective instances.

@internalComponent
@released
*/
void ImgCheckManager::CreateObjects(void)
{
	unsigned int imgCnt = iCmdLine->NoOfImages();
	String imgName;
	
	while(imgCnt > 0)
	{	
		imgName = iCmdLine->NextImageName();
		--imgCnt;
		HandleImage(imgName);
	}

	Checker* checkerPtr = KNull;
	unsigned int checks = iCmdLine->EnabledValidations();
	unsigned short int bitPos = 1;
	while(bitPos)
	{
		if(bitPos & checks)
		{
			switch(bitPos)
			{
			case EDep:
				checkerPtr = new DepChecker(iCmdLine, iImageReaderList,iNoRomImage);
				break;
			case ESid:
				checkerPtr = new SidChecker(iCmdLine, iImageReaderList);
				break;
			case EVid:
				checkerPtr = new VidChecker(iCmdLine, iImageReaderList);
				break;
			case EDbg:
				checkerPtr = new DbgFlagChecker(iCmdLine, iImageReaderList);
				break;
			}
			if(checkerPtr == KNull)
			{
				throw ExceptionReporter(NOMEMORY, __FILE__, __LINE__);
			}
			iCheckerList.push_back(checkerPtr);
		}
		bitPos <<= 1; //Shift one bit left
	}

	unsigned int rptFlag = iCmdLine->ReportFlag();
	ReportWriter* rptWriter = KNull;
	if(!( rptFlag & QuietMode))
	{
		rptWriter = new CmdLineWriter(rptFlag);
		InsertWriter(rptWriter);
	}
	if(iCmdLine->ReportFlag() & KXmlReport)
	{
		rptWriter = new XmlWriter(iCmdLine->XmlReportName(), iCmdLine->Command());
		InsertWriter(rptWriter);
	}
}