update isl for introduction of isl_stat
[barvinok.git] / interface / isl.py.top
blobc9542a3bb6e8883dc5b1f43ffbe80a049db16cf9
1 from ctypes import *
3 isl = cdll.LoadLibrary("libbarvinok.so")
4 libc = cdll.LoadLibrary("libc.so.6")
6 class Error(Exception):
7     pass
9 class Context:
10     defaultInstance = None
12     def __init__(self):
13         ptr = isl.isl_ctx_alloc()
14         self.ptr = ptr
16     def __del__(self):
17         isl.isl_ctx_free(self)
19     def from_param(self):
20         return self.ptr
22     @staticmethod
23     def getDefaultInstance():
24         if Context.defaultInstance == None:
25             Context.defaultInstance = Context()
26         return Context.defaultInstance
28 isl.isl_ctx_alloc.restype = c_void_p
29 isl.isl_ctx_free.argtypes = [Context]