void DPReceiveReceiver_Free (DPReceiveReceiver *o) { DebugObject_Free(&o->d_obj); DebugCounter_Decrement(&o->peer->d_receivers_ctr); // free receive interface PacketPassInterface_Free(&o->recv_if); }
void BPending_Free (BPending *o) { DebugCounter_Decrement(&o->g->pending_ctr); DebugObject_Free(&o->d_obj); // remove from jobs list if (o->pending) { LinkedList1_Remove(&o->g->jobs, &o->pending_node); } }
void PacketPassFifoQueueFlow_Free (PacketPassFifoQueueFlow *o) { PacketPassFifoQueue *queue = o->queue; DebugObject_Free(&o->d_obj); DebugCounter_Decrement(&queue->d_flows_ctr); ASSERT(queue->freeing || o != queue->sending_flow) // remove from sending flow if (o == queue->sending_flow) { queue->sending_flow = NULL; } // remove from waiting flows list if (o->is_waiting) { LinkedList1_Remove(&queue->waiting_flows_list, &o->waiting_flows_list_node); } // free input PacketPassInterface_Free(&o->input); }