Subversion Repositories Kolibri OS

Rev

Rev 7286 | Rev 7771 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7286 Rev 7738
Line 14... Line 14...
14
	dword data_start;
14
	dword data_start;
15
	dword data_size;
15
	dword data_size;
16
	dword element_offset[4000];
16
	dword element_offset[4000];
17
	int add();
17
	int add();
18
	int addn();
18
	int addn();
-
 
19
	dword get(); //get_name_by_pos
19
	dword get();
20
	dword get_pos_by_name();
20
	void drop();
21
	void drop();
21
	void increase_data_size();
22
	void increase_data_size();
22
};
23
};
Line 23... Line 24...
23
 
24
 
Line 54... Line 55...
54
:dword collection::get(dword pos) {
55
:dword collection::get(dword pos) {
55
	if (pos<0) || (pos>=count) return 0;
56
	if (pos<0) || (pos>=count) return 0;
56
	return data_start + element_offset[pos];
57
	return data_start + element_offset[pos];
57
}
58
}
Line -... Line 59...
-
 
59
 
-
 
60
:dword collection::get_pos_by_name(dword name) {
-
 
61
	dword i;
-
 
62
	for (i=0; i
-
 
63
		if (strcmp(data_start + element_offset[i], name)==0) return i;
-
 
64
	}
-
 
65
	return -1;
-
 
66
}
58
 
67
 
59
:void collection::drop() {
68
:void collection::drop() {
60
	if (data_start) free(data_start);
69
	if (data_start) free(data_start);
61
	data_size = data_start = element_offset[count] = count = 0;
70
	data_size = data_start = element_offset[count] = count = 0;