# Path: pyrikura/ipyrikura.py
# class IPyrikuraPlugin(Interface):
# class ITrigger(Interface):
# class IImageProcessor(Interface):
# class IFileOp(Interface):
# class ICamera(Interface):
#     def trigger(self):
#     def process(self):
#     def process(self):


from twisted.plugin import IPlugin
from twisted.internet import threads
from zope.interface import implements
from pyrikura import ipyrikura
import subprocess32



class FileSpool(object):
    implements(ipyrikura.IFileOp)

    def __init__(self):
        self.print_command = 'lpr'

    def process(self, msg, sender=None):
        cmd = [self.print_command, msg]
        return threads.deferToThread(subprocess32.call, cmd)


class FileSpoolFactory(object):

# Path: pyrikura/ipyrikura.py
# class IPyrikuraPlugin(Interface):
# class ITrigger(Interface):
# class IImageProcessor(Interface):
# class IFileOp(Interface):
# class ICamera(Interface):
#     def trigger(self):
#     def process(self):
#     def process(self):


# Path: pyrikura/twisted/plugins/filespool.py
from twisted.plugin import IPlugin
from twisted.internet import threads
from zope.interface import implements
from pyrikura import ipyrikura
import subprocess32




class FileSpool(object):
    implements(ipyrikura.IFileOp)

    def __init__(self):
        self.print_command = 'lpr'

    def process(self, msg, sender=None):
        cmd = [self.print_command, msg]
        return threads.deferToThread(subprocess32.call, cmd)


class FileSpoolFactory(object):

    implements(IPlugin, ipyrikura.IPyrikuraPlugin)