Mercurial > hg > sv-dependency-builds
comparison src/zlib-1.2.7/contrib/ada/zlib-thin.adb @ 4:e13257ea84a4
Add bzip2, zlib, liblo, portaudio sources
author | Chris Cannam |
---|---|
date | Wed, 20 Mar 2013 13:59:52 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3:6c505a35919a | 4:e13257ea84a4 |
---|---|
1 ---------------------------------------------------------------- | |
2 -- ZLib for Ada thick binding. -- | |
3 -- -- | |
4 -- Copyright (C) 2002-2003 Dmitriy Anisimkov -- | |
5 -- -- | |
6 -- Open source license information is in the zlib.ads file. -- | |
7 ---------------------------------------------------------------- | |
8 | |
9 -- $Id: zlib-thin.adb,v 1.8 2003/12/14 18:27:31 vagul Exp $ | |
10 | |
11 package body ZLib.Thin is | |
12 | |
13 ZLIB_VERSION : constant Chars_Ptr := zlibVersion; | |
14 | |
15 Z_Stream_Size : constant Int := Z_Stream'Size / System.Storage_Unit; | |
16 | |
17 -------------- | |
18 -- Avail_In -- | |
19 -------------- | |
20 | |
21 function Avail_In (Strm : in Z_Stream) return UInt is | |
22 begin | |
23 return Strm.Avail_In; | |
24 end Avail_In; | |
25 | |
26 --------------- | |
27 -- Avail_Out -- | |
28 --------------- | |
29 | |
30 function Avail_Out (Strm : in Z_Stream) return UInt is | |
31 begin | |
32 return Strm.Avail_Out; | |
33 end Avail_Out; | |
34 | |
35 ------------------ | |
36 -- Deflate_Init -- | |
37 ------------------ | |
38 | |
39 function Deflate_Init | |
40 (strm : Z_Streamp; | |
41 level : Int; | |
42 method : Int; | |
43 windowBits : Int; | |
44 memLevel : Int; | |
45 strategy : Int) | |
46 return Int is | |
47 begin | |
48 return deflateInit2 | |
49 (strm, | |
50 level, | |
51 method, | |
52 windowBits, | |
53 memLevel, | |
54 strategy, | |
55 ZLIB_VERSION, | |
56 Z_Stream_Size); | |
57 end Deflate_Init; | |
58 | |
59 ------------------ | |
60 -- Inflate_Init -- | |
61 ------------------ | |
62 | |
63 function Inflate_Init (strm : Z_Streamp; windowBits : Int) return Int is | |
64 begin | |
65 return inflateInit2 (strm, windowBits, ZLIB_VERSION, Z_Stream_Size); | |
66 end Inflate_Init; | |
67 | |
68 ------------------------ | |
69 -- Last_Error_Message -- | |
70 ------------------------ | |
71 | |
72 function Last_Error_Message (Strm : in Z_Stream) return String is | |
73 use Interfaces.C.Strings; | |
74 begin | |
75 if Strm.msg = Null_Ptr then | |
76 return ""; | |
77 else | |
78 return Value (Strm.msg); | |
79 end if; | |
80 end Last_Error_Message; | |
81 | |
82 ------------ | |
83 -- Set_In -- | |
84 ------------ | |
85 | |
86 procedure Set_In | |
87 (Strm : in out Z_Stream; | |
88 Buffer : in Voidp; | |
89 Size : in UInt) is | |
90 begin | |
91 Strm.Next_In := Buffer; | |
92 Strm.Avail_In := Size; | |
93 end Set_In; | |
94 | |
95 ------------------ | |
96 -- Set_Mem_Func -- | |
97 ------------------ | |
98 | |
99 procedure Set_Mem_Func | |
100 (Strm : in out Z_Stream; | |
101 Opaque : in Voidp; | |
102 Alloc : in alloc_func; | |
103 Free : in free_func) is | |
104 begin | |
105 Strm.opaque := Opaque; | |
106 Strm.zalloc := Alloc; | |
107 Strm.zfree := Free; | |
108 end Set_Mem_Func; | |
109 | |
110 ------------- | |
111 -- Set_Out -- | |
112 ------------- | |
113 | |
114 procedure Set_Out | |
115 (Strm : in out Z_Stream; | |
116 Buffer : in Voidp; | |
117 Size : in UInt) is | |
118 begin | |
119 Strm.Next_Out := Buffer; | |
120 Strm.Avail_Out := Size; | |
121 end Set_Out; | |
122 | |
123 -------------- | |
124 -- Total_In -- | |
125 -------------- | |
126 | |
127 function Total_In (Strm : in Z_Stream) return ULong is | |
128 begin | |
129 return Strm.Total_In; | |
130 end Total_In; | |
131 | |
132 --------------- | |
133 -- Total_Out -- | |
134 --------------- | |
135 | |
136 function Total_Out (Strm : in Z_Stream) return ULong is | |
137 begin | |
138 return Strm.Total_Out; | |
139 end Total_Out; | |
140 | |
141 end ZLib.Thin; |