Subversion Repositories pentevo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1186 savelij 1
#ifndef _CHUNKS_H
2
#define _CHUNKS_H
3
/* chunks.h */
4
/*****************************************************************************/
5
/* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only                     */
6
/*                                                                           */
7
/* AS-Portierung                                                             */
8
/*                                                                           */
9
/* Verwaltung von Adressbereichslisten                                       */
10
/*                                                                           */
11
/* Historie: 16. 5.1996 Grundsteinlegung                                     */
12
/*           16. 8.1998 Min/Max-Ausgabe                                      */
13
/*                                                                           */
14
/*****************************************************************************/
15
 
16
typedef struct
17
{
18
  LargeWord Start, Length;
19
} OneChunk;
20
 
21
typedef struct
22
{
23
  Word RealLen,AllocLen;
24
  OneChunk *Chunks;
25
} ChunkList;
26
 
27
 
28
extern Boolean AddChunk(ChunkList *NChunk, LargeWord NewStart, LargeWord NewLen, Boolean Warn);
29
 
30
extern void DeleteChunk(ChunkList *NChunk, LargeWord DelStart, LargeWord DelLen);
31
 
32
extern Boolean AddressInChunk(ChunkList *NChunk, LargeWord Address);
33
 
34
extern void SortChunks(ChunkList *NChunk);
35
 
36
extern void InitChunk(ChunkList *NChunk);
37
 
38
extern void ClearChunk(ChunkList *NChunk);
39
 
40
extern LargeWord ChunkMin(ChunkList *NChunk);
41
 
42
extern LargeWord ChunkMax(ChunkList *NChunk);
43
 
44
extern LargeWord ChunkSum(ChunkList *NChunk);
45
 
46
 
47
extern void chunks_init(void);
48
#endif /* _CHUNKS_H */