# PySoy _internals Declarations # # Copyright (C) 2006,2007,2008 PySoy Group # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published # by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program; if not, see http://www.gnu.org/licenses # # $Id$ cimport glib cdef class AsyncQueue : cdef glib.GAsyncQueue* _asyncqueue cdef void _push ( self, void* ) nogil cdef object _pop ( self ) cdef class Children : # C variables cdef int _size cdef int _current cdef int _iters cdef void** _list cdef char* _name # Mutex locks cdef void* _lockMain cdef void* _lockIter # Internal C functions cdef int _offset ( self, void* ) nogil cdef void _swap ( self, int, int ) nogil # External C functions cdef void _append ( self, void* ) nogil cdef void _bottom ( self, void* ) nogil cdef void _empty ( self ) nogil cdef int _index ( self, void* ) nogil cdef void _iterDone ( self ) nogil cdef void _iterStart ( self ) nogil cdef void _lower ( self, void* ) nogil cdef void _raise ( self, void* ) nogil cdef void _remove ( self, void* ) nogil cdef void _top ( self, void* ) nogil cdef class Loadable : cdef object _source cdef int _state cdef int _load ( self, void*, int ) nogil cdef int _save ( self, void*, int ) nogil cdef int _ready ( self ) nogil cdef class Loopable : cdef int _loop ( self ) nogil cdef class LoopThread : cdef long _threadID cdef int _size cdef int _current cdef int _running cdef int _wake cdef void** _list cdef void * _listLock cdef void * _loopLock cdef object _name cdef object _active cdef object _active_limbo_lock cdef void _loop ( self ) nogil cdef void _append ( self, void* ) nogil cdef void _remove ( self, void* ) nogil cdef class PointerSet : cdef glib.GHashTable* _hashtable cdef void _insert ( self, void* ) nogil cdef int _has_key ( self, void* ) nogil cdef int _remove ( self, void* ) nogil cdef void _empty ( self ) nogil cdef void _foreach ( self, glib.GHFunc, void* ) nogil # Extension-level C functions cdef void _sleep ( unsigned int ) nogil cdef double _time ( ) nogil cdef AsyncQueue _getQueue ( )