mirror of
https://notabug.org/scuti/lib3ddevil1
synced 2024-12-22 21:39:47 +05:30
Merge branch 'fix/pointerofpointer' of scuti/lib3ddevil1 into feature/pythonbinding
This commit is contained in:
commit
fc7558a0b6
@ -67,17 +67,20 @@ class Devil1TEX_FN(ctypes.Structure):
|
||||
ctypes.POINTER(TextureBatchDescriptor))),
|
||||
("getheader", ctypes.CFUNCTYPE(
|
||||
ctypes.c_bool,
|
||||
ctypes.POINTER(ctypes.POINTER(TexturePack)),
|
||||
ctypes.POINTER(
|
||||
ctypes.POINTER(TexturePack)),
|
||||
ctypes.c_char_p)),
|
||||
("getbatchdesc", ctypes.CFUNCTYPE(
|
||||
ctypes.c_bool,
|
||||
ctypes.POINTER(TextureBatchDescriptor),
|
||||
ctypes.POINTER(
|
||||
ctypes.POINTER(TextureBatchDescriptor)),
|
||||
ctypes.c_uint,
|
||||
ctypes.c_char_p,
|
||||
ctypes.c_uint)),
|
||||
("getbatch", ctypes.CFUNCTYPE(
|
||||
ctypes.c_bool,
|
||||
ctypes.POINTER(TextureBatch),
|
||||
ctypes.POINTER(
|
||||
ctypes.POINTER(TextureBatch)),
|
||||
ctypes.c_uint,
|
||||
ctypes.c_char_p,
|
||||
ctypes.c_uint)),
|
||||
@ -189,7 +192,7 @@ class Devil1GEO_FN(ctypes.Structure):
|
||||
ctypes.c_char_p)),
|
||||
("getmeshheader", ctypes.CFUNCTYPE(
|
||||
ctypes.c_bool,
|
||||
ctypes.POINTER(MeshHeader),
|
||||
ctypes.POINTER(ctypes.POINTER(MeshHeader)),
|
||||
ctypes.c_uint,
|
||||
ctypes.c_char_p)),
|
||||
("getbatch", ctypes.CFUNCTYPE(
|
||||
@ -218,14 +221,26 @@ if __name__ == "__main__":
|
||||
def textest(devil1tex, texheader):
|
||||
with open("pl01.pld_1.txp", "rb") as f:
|
||||
data = f.read()
|
||||
texheader = ctypes.cast(data, ctypes.POINTER(TexturePack))
|
||||
devil1tex.printheader(texheader)
|
||||
# texheader = ctypes.cast(data, ctypes.POINTER(TexturePack))
|
||||
th = ctypes.pointer(texheader)
|
||||
devil1tex.getheader(ctypes.byref(th), data)
|
||||
devil1tex.printheader(th)
|
||||
batchdesc = TextureBatchDescriptor()
|
||||
bd = ctypes.pointer(batchdesc)
|
||||
print("\nbatch descriptor:")
|
||||
devil1tex.getbatchdesc(ctypes.byref(bd), 1, data, len(data))
|
||||
|
||||
def geotest(devil1geo, geoheader):
|
||||
with open("pl00.pld_0", "rb") as f:
|
||||
data = f.read()
|
||||
geoheader = ctypes.cast(data, ctypes.POINTER(Header))
|
||||
# geoheader = ctypes.cast(data, ctypes.POINTER(Header))
|
||||
gh = ctypes.pointer(geoheader)
|
||||
devil1geo.getheader(ctypes.byref(gh), data)
|
||||
devil1geo.printheader(geoheader)
|
||||
meshheader = MeshHeader()
|
||||
mh = ctypes.pointer(meshheader)
|
||||
devil1geo.getmeshheader(ctypes.byref(mh), 1, data)
|
||||
devil1geo.printmeshheader(mh)
|
||||
|
||||
def main():
|
||||
sharedlib='./lib3ddevil1.so'
|
||||
|
Loading…
Reference in New Issue
Block a user