Exemplo n.º 1
0
void testRead(ObjStoreContext* pContext,uint16_t maxid,uint16_t mask,size_t datasize)
{
    uint32_t* pdata = (uint32_t*) malloc(datasize);
    for(int i=0;i<maxid;++i) 
    {
        uint64_t readlen = datasize;
        if(ReadObjData(pContext,i,pdata,&readlen) != 0)
        {
            printf("obj %d test failed.readlen error\n",i);
            continue;
        }

        if(readlen == datasize)
        {
            int testok = 1;
            for(uint32_t j=0;j<datasize/4;++j)
            {
                if(pdata[j] != (((uint32_t)mask<<16) | i))
                {
                    testok = 0;
                    printf("obj %d test failed. %d byte error. %x\n",i,j,pdata[j]);
                    break;
                }    
            }
            if(testok)
            {
                printf("obj %d test ok.\n",i);
            }            
        }
    }
    free(pdata);
}
Exemplo n.º 2
0
void testCheck(ObjStoreContext* pContext, uint16_t maxid, size_t datasize)
{
	uint32_t* pdata = (uint32_t*)malloc(datasize+16);//作业,这是一次性能相关的权衡->解决方案:ReadFileContent要加一个带seek的实现
	for (int i = 0; i < maxid; ++i)
	{
		uint64_t readlen = datasize;
		if (ReadObjData(pContext, i, pdata, &readlen) != 0)
		{
			printf("obj %d test failed.readlen error\n", i);
			continue;
		}

		if (readlen == datasize)
		{
			for (uint32_t j = 0; j < datasize / 4; ++j)
			{
				if (j > 0)
				{
					if (pdata[j] != pdata[j - 1])
					{
						printf("obj %d check failed. %d byte error. %x\n", i, j, pdata[j]);
						break;
					}
				}
			}
			printf("obj %d check ok.\n", i);
		}
	}
	free(pdata);
}
Exemplo n.º 3
0
BOOL objrdr( LPSTR lpFileName, int outDepth, LPINT lpDataType,
			LPOBJECTLIST lpObjList)
/************************************************************************/
{
	return(ReadObjData(lpFileName, lpObjList, outDepth, lpDataType,
				NULL/*lpScaleRect*/,NULL /*lpFullFileX*/, NULL /*lpFullFileY*/, NULL /*lpFullResolution*/));
}
Exemplo n.º 4
0
int devtest()
{
	ObjStoreContext* pContext = (ObjStoreContext*)malloc(sizeof(ObjStoreContext));
	InitObjStore(pContext, "d:/tmp/objstore/");
	uint8_t buffer[256];
	uint64_t bufferlen = 256;
	UpdateObjData(pContext, 100, "123456", 6);
	ReadObjData(pContext, 100, buffer, &bufferlen);
	printf("%s\n", buffer);
	if (IsObjExist(pContext, 100) == 0)
	{
		printf("exist\n");
	}
	//RemoveObj(pContext,100);
	if (IsObjExist(pContext, 100) == 0)
	{
		printf("exist\n");
	}

	return 0;
}