Lines Matching refs:queue

3 PetscErrorCode DMPlexPointQueueCreate(PetscInt size, DMPlexPointQueue *queue)  in DMPlexPointQueueCreate()  argument
15 *queue = q; in DMPlexPointQueueCreate()
19 PetscErrorCode DMPlexPointQueueDestroy(DMPlexPointQueue *queue) in DMPlexPointQueueDestroy() argument
21 DMPlexPointQueue q = *queue; in DMPlexPointQueueDestroy()
26 *queue = NULL; in DMPlexPointQueueDestroy()
30 PetscErrorCode DMPlexPointQueueEnsureSize(DMPlexPointQueue queue) in DMPlexPointQueueEnsureSize() argument
33 if (queue->num < queue->size) PetscFunctionReturn(PETSC_SUCCESS); in DMPlexPointQueueEnsureSize()
34 queue->size *= 2; in DMPlexPointQueueEnsureSize()
35 PetscCall(PetscRealloc(queue->size * sizeof(PetscInt), &queue->points)); in DMPlexPointQueueEnsureSize()
39 PetscErrorCode DMPlexPointQueueEnqueue(DMPlexPointQueue queue, PetscInt p) in DMPlexPointQueueEnqueue() argument
42 PetscCall(DMPlexPointQueueEnsureSize(queue)); in DMPlexPointQueueEnqueue()
43 queue->back = (queue->back + 1) % queue->size; in DMPlexPointQueueEnqueue()
44 queue->points[queue->back] = p; in DMPlexPointQueueEnqueue()
45 ++queue->num; in DMPlexPointQueueEnqueue()
49 PetscErrorCode DMPlexPointQueueDequeue(DMPlexPointQueue queue, PetscInt *p) in DMPlexPointQueueDequeue() argument
52 …PetscCheck(queue->num, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONGSTATE, "Cannot dequeue from an empty qu… in DMPlexPointQueueDequeue()
53 *p = queue->points[queue->front]; in DMPlexPointQueueDequeue()
54 queue->front = (queue->front + 1) % queue->size; in DMPlexPointQueueDequeue()
55 --queue->num; in DMPlexPointQueueDequeue()
59 PetscErrorCode DMPlexPointQueueFront(DMPlexPointQueue queue, PetscInt *p) in DMPlexPointQueueFront() argument
62 …PetscCheck(queue->num, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONGSTATE, "Cannot get the front of an empt… in DMPlexPointQueueFront()
63 *p = queue->points[queue->front]; in DMPlexPointQueueFront()
67 PetscErrorCode DMPlexPointQueueBack(DMPlexPointQueue queue, PetscInt *p) in DMPlexPointQueueBack() argument
70 …PetscCheck(queue->num, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONGSTATE, "Cannot get the back of an empty… in DMPlexPointQueueBack()
71 *p = queue->points[queue->back]; in DMPlexPointQueueBack()
75 PetscBool DMPlexPointQueueEmpty(DMPlexPointQueue queue) in DMPlexPointQueueEmpty() argument
77 if (!queue->num) return PETSC_TRUE; in DMPlexPointQueueEmpty()
81 PetscErrorCode DMPlexPointQueueEmptyCollective(PetscObject obj, DMPlexPointQueue queue, PetscBool *… in DMPlexPointQueueEmptyCollective() argument
84 *empty = DMPlexPointQueueEmpty(queue); in DMPlexPointQueueEmptyCollective()