| 73 | |
| 74 | |
| 75 | class Queue(QueueWrapper): |
| 76 | def __init__(self, capacity, schema=None, name='queue', |
| 77 | num_dequeue_records=1): |
| 78 | # find a unique blob name for the queue |
| 79 | net = core.Net(name) |
| 80 | queue_blob = net.AddExternalInput(net.NextName('handler')) |
| 81 | QueueWrapper.__init__( |
| 82 | self, queue_blob, schema, num_dequeue_records=num_dequeue_records) |
| 83 | self.capacity = capacity |
| 84 | self._setup_done = False |
| 85 | |
| 86 | def setup(self, global_init_net): |
| 87 | assert self._schema, 'This queue does not have a schema.' |
| 88 | self._setup_done = True |
| 89 | global_init_net.CreateBlobsQueue( |
| 90 | [], |
| 91 | [self._queue], |
| 92 | capacity=self.capacity, |
| 93 | num_blobs=len(self._schema.field_names()), |
| 94 | field_names=self._schema.field_names()) |
| 95 | |
| 96 | |
| 97 | def enqueue(net, queue, data_blobs, status=None): |
no outgoing calls
searching dependent graphs…