internal virtual void Add(RevObject c) { BlockObjQueue.Block b = tail; if (b == null) { b = free.NewBlock(); b.Add(c); head = b; tail = b; return; } else { if (b.IsFull()) { b = free.NewBlock(); tail.next = b; tail = b; } } b.Add(c); }