1// Package glib was automatically generated by github.com/bnema/puregotk DO NOT EDIT
2package glib
3
4import (
5 "structs"
6 "unsafe"
7
8 "github.com/ebitengine/purego"
9
10 "github.com/bnema/puregotk/pkg/core"
11)
12
13type Allocator struct {
14 _ structs.HostLayout
15}
16
17func (x *Allocator) GoPointer() uintptr {
18 return uintptr(unsafe.Pointer(x))
19}
20
21var xAllocatorFree func(uintptr)
22
23func (x *Allocator) Free() {
24
25 xAllocatorFree(x.GoPointer())
26
27}
28
29type MemChunk struct {
30 _ structs.HostLayout
31}
32
33func (x *MemChunk) GoPointer() uintptr {
34 return uintptr(unsafe.Pointer(x))
35}
36
37var xMemChunkAlloc func(uintptr) uintptr
38
39func (x *MemChunk) Alloc() uintptr {
40
41 cret := xMemChunkAlloc(x.GoPointer())
42 return cret
43}
44
45var xMemChunkAlloc0 func(uintptr) uintptr
46
47func (x *MemChunk) Alloc0() uintptr {
48
49 cret := xMemChunkAlloc0(x.GoPointer())
50 return cret
51}
52
53var xMemChunkClean func(uintptr)
54
55func (x *MemChunk) Clean() {
56
57 xMemChunkClean(x.GoPointer())
58
59}
60
61var xMemChunkDestroy func(uintptr)
62
63func (x *MemChunk) Destroy() {
64
65 xMemChunkDestroy(x.GoPointer())
66
67}
68
69var xMemChunkFree func(uintptr, uintptr)
70
71func (x *MemChunk) Free(MemVar uintptr) {
72
73 xMemChunkFree(x.GoPointer(), MemVar)
74
75}
76
77var xMemChunkPrint func(uintptr)
78
79func (x *MemChunk) Print() {
80
81 xMemChunkPrint(x.GoPointer())
82
83}
84
85var xMemChunkReset func(uintptr)
86
87func (x *MemChunk) Reset() {
88
89 xMemChunkReset(x.GoPointer())
90
91}
92
93const (
94 ALLOCATOR_LIST int = 1
95
96 ALLOCATOR_NODE int = 3
97
98 ALLOCATOR_SLIST int = 2
99
100 ALLOC_AND_FREE int = 2
101
102 ALLOC_ONLY int = 1
103)
104
105var xBlowChunks func()
106
107func BlowChunks() {
108
109 xBlowChunks()
110
111}
112
113var xListPopAllocator func()
114
115func ListPopAllocator() {
116
117 xListPopAllocator()
118
119}
120
121var xListPushAllocator func(*Allocator)
122
123func ListPushAllocator(AllocatorVar *Allocator) {
124
125 xListPushAllocator(AllocatorVar)
126
127}
128
129var xMemChunkInfo func()
130
131func MemChunkInfo() {
132
133 xMemChunkInfo()
134
135}
136
137var xNodePopAllocator func()
138
139func NodePopAllocator() {
140
141 xNodePopAllocator()
142
143}
144
145var xNodePushAllocator func(*Allocator)
146
147func NodePushAllocator(AllocatorVar *Allocator) {
148
149 xNodePushAllocator(AllocatorVar)
150
151}
152
153var xSlistPopAllocator func()
154
155func SlistPopAllocator() {
156
157 xSlistPopAllocator()
158
159}
160
161var xSlistPushAllocator func(*Allocator)
162
163func SlistPushAllocator(AllocatorVar *Allocator) {
164
165 xSlistPushAllocator(AllocatorVar)
166
167}
168
169func init() {
170 core.SetPackageName("GLIB", "glib-2.0")
171 core.SetSharedLibraries("GLIB", []string{"libgobject-2.0.so.0", "libglib-2.0.so.0"})
172 var libs []uintptr
173 for _, libPath := range core.GetPaths("GLIB") {
174 lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
175 if err != nil {
176 panic(err)
177 }
178 libs = append(libs, lib)
179 }
180
181 core.PuregoSafeRegister(&xBlowChunks, libs, "g_blow_chunks")
182 core.PuregoSafeRegister(&xListPopAllocator, libs, "g_list_pop_allocator")
183 core.PuregoSafeRegister(&xListPushAllocator, libs, "g_list_push_allocator")
184 core.PuregoSafeRegister(&xMemChunkInfo, libs, "g_mem_chunk_info")
185 core.PuregoSafeRegister(&xNodePopAllocator, libs, "g_node_pop_allocator")
186 core.PuregoSafeRegister(&xNodePushAllocator, libs, "g_node_push_allocator")
187 core.PuregoSafeRegister(&xSlistPopAllocator, libs, "g_slist_pop_allocator")
188 core.PuregoSafeRegister(&xSlistPushAllocator, libs, "g_slist_push_allocator")
189
190 core.PuregoSafeRegister(&xAllocatorFree, libs, "g_allocator_free")
191
192 core.PuregoSafeRegister(&xMemChunkAlloc, libs, "g_mem_chunk_alloc")
193 core.PuregoSafeRegister(&xMemChunkAlloc0, libs, "g_mem_chunk_alloc0")
194 core.PuregoSafeRegister(&xMemChunkClean, libs, "g_mem_chunk_clean")
195 core.PuregoSafeRegister(&xMemChunkDestroy, libs, "g_mem_chunk_destroy")
196 core.PuregoSafeRegister(&xMemChunkFree, libs, "g_mem_chunk_free")
197 core.PuregoSafeRegister(&xMemChunkPrint, libs, "g_mem_chunk_print")
198 core.PuregoSafeRegister(&xMemChunkReset, libs, "g_mem_chunk_reset")
199
200}