示例#1
0
 def initialise(self, settings):
     self.conveyer = Conveyer()
     builder = self.factory.getInstance(settings.packingMode)
     builder.build(self.conveyer, self.factory, settings)
     signal = Signal(SignalType.PREPARE_TO_PACK, None)
     self.conveyer.processSignal(signal)
     pass
示例#2
0
class Packing2D(object):
    def __init__(self):
        super(Packing2D, self).__init__()
        self.conveyer = None

        self.factory = packingFactory

        pass

    def initialise(self, settings):
        self.conveyer = Conveyer()
        builder = self.factory.getInstance(settings.packingMode)
        builder.build(self.conveyer, self.factory, settings)
        signal = Signal(SignalType.PREPARE_TO_PACK, None)
        self.conveyer.processSignal(signal)
        pass

    def pack(self):
        signal = Signal(SignalType.START_PACK, None)
        self.conveyer.processSignal(signal)
        pass

    def getResult(self):
        return self.conveyer.getResult()
        pass

    def getWaste(self):
        return self.conveyer.getWaste()
        pass
    
    def push(self, input):
        _input = input
        if isinstance(input, list) is False:
            _input = [input]
            pass

        signal = Signal(SignalType.PUSH_INPUT, _input)
        self.conveyer.processSignal(signal)
        pass
    pass