예제 #1
0
DBManager::DBManager() {
	if (sqlite3_open(DB_PATH, &db)) {
		fprintf(stderr, "No se puede abrir la base de datos: %s\n", sqlite3_errmsg(db));
		sqlite3_close(db);
		exit(1);
	}
	db_status = true;

	// Instanciamos las estructuras de datos del posterior contenido de la BDJ
	enemies = new set<enemy_t>();
	npcs = new set<npc_t>();
	tools = new set<tool_t>();
	items = new set<item_t>();
	powUps = new set<item_t>();
	bosses = new set<boss_t>();
	blocks = new set<block_t>();
	graphics = new vector<gfx_t>();
	sounds = new vector<sfx_t>();
	essential_elems = new vector<essential_elem_t>();
	tileSets = new vector<gfx_t>();
	zones = new set<zone_t>;
	dungeons = new set<dungeon_t>();
	players = new set<player_t>;	
	puzzle_elems = new set<puzzle_elem_t>();

	tags = new vector<string>();

	gather_essential_elements();	// Obtenemos de la BDD los elementos comunes a todos los juegos
	
	read_tags();					// Leemos las tags que ha seleccionado Decidator
}
예제 #2
0
//======================
//	Lightwave Methods
//======================
long VFSPlugin_LWO::ReadChunk(void)
{
	long id		= ReadLong();
	long len	= ReadLong();

	switch(id)
	{
		case ID_TAGS:	{	read_tags(len);			}break;
		case ID_LAYR:	{	read_layr(len);			}break;
		case ID_PNTS:	{	read_pnts(len);			}break;
		case ID_BBOX:	{	read_bbox(len);			}break;
		case ID_POLS:	{	read_pols(len);			}break;
		case ID_PTAG:	{	read_ptag(len);			}break;
		case ID_SURF:	{	read_surf(len);			}break;
		case ID_CLIP:	{	read_clip(len);			}break;
		case ID_ENVL:	{	read_envl(len);			}break;
		case ID_VMAP:	{	read_vmap(len);			}break;
		default:			{	read_unkn(id,len);	}break;
	}

	return len+8;
}
예제 #3
0
// query4 $inputfile $datapath
int main(int argc, char *argv[]){
	
	// initialization
	input_file_name = argv[1];
	dir_name = argv[2];
	dir_name_len = (int)strlen(argv[2]);
	file_name_max_len = dir_name_len + 50;
	data_file_name = new char [file_name_max_len];
	
	cnt_data_lines("person.csv", &personcnt);
	cnt_data_lines("forum.csv", &forumcnt);
	cnt_data_lines("tag.csv", &tagcnt);
	person_in_induced_graph = new char[personcnt];

#if DEBUG
	printf("cnt done.\n");
#endif
	read_edges();
	convert2undirected();
#if DEBUG
	printf("start forums.\n");
#endif
	read_forums();
	read_tags();
	
	read_queries();
#if DEBUG
	printf("read Q done\n");
#endif
	
	// solve
	freopen("query4.out", "w", stdout);
	for (vector < pair<int, int> > :: iterator it=queries.begin(); it!=queries.end(); it++)
		query(it->first, it->second);
	fclose(stdout);
	
	free_memory();
	return 0;
}