MCPcopy Create free account
hub / github.com/HiLab-git/SimpleCRF / hash_init

Function hash_init

dependency/densecrf/examples/lodepng.cpp:1381–1406  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1379} Hash;
1380
1381static unsigned hash_init(Hash* hash, unsigned windowsize)
1382{
1383 unsigned i;
1384 hash->head = (int*)lodepng_malloc(sizeof(int) * HASH_NUM_VALUES);
1385 hash->val = (int*)lodepng_malloc(sizeof(int) * windowsize);
1386 hash->chain = (unsigned short*)lodepng_malloc(sizeof(unsigned short) * windowsize);
1387
1388 hash->zeros = (unsigned short*)lodepng_malloc(sizeof(unsigned short) * windowsize);
1389 hash->headz = (int*)lodepng_malloc(sizeof(int) * (MAX_SUPPORTED_DEFLATE_LENGTH + 1));
1390 hash->chainz = (unsigned short*)lodepng_malloc(sizeof(unsigned short) * windowsize);
1391
1392 if(!hash->head || !hash->chain || !hash->val || !hash->headz|| !hash->chainz || !hash->zeros)
1393 {
1394 return 83; /*alloc fail*/
1395 }
1396
1397 /*initialize hash table*/
1398 for(i = 0; i != HASH_NUM_VALUES; ++i) hash->head[i] = -1;
1399 for(i = 0; i != windowsize; ++i) hash->val[i] = -1;
1400 for(i = 0; i != windowsize; ++i) hash->chain[i] = i; /*same value as index indicates uninitialized*/
1401
1402 for(i = 0; i <= MAX_SUPPORTED_DEFLATE_LENGTH; ++i) hash->headz[i] = -1;
1403 for(i = 0; i != windowsize; ++i) hash->chainz[i] = i; /*same value as index indicates uninitialized*/
1404
1405 return 0;
1406}
1407
1408static void hash_cleanup(Hash* hash)
1409{

Callers 1

lodepng_deflatevFunction · 0.85

Calls 1

lodepng_mallocFunction · 0.85

Tested by

no test coverage detected