コード例 #1
0
    def __init__(self, options, logger):
        """Constructor for the INSintTester object.
        """

        # Invoke our base class constructor.
        INSintGUI.__init__(self)

        self.logger = logger
        self.insconfig = INSconfig()

        # Set up default connection parameters from command line
        self.obcpnum = options.obcpnum
        self.monunitnum = options.monunitnum
        if not options.obcphost:
            self.obcphost = SOSSrpc.get_myhost(short=True)
        else:
            self.obcphost = options.obcphost
        self.raidpath = options.fitsdir
        self.transfermethod = options.transfermethod
        self.username = options.username
        self.password = options.password

        self.ev_quit = threading.Event()
        self.ev_mainquit = threading.Event()
        self.soss = None

        # Did user specify a Gen2 status source?
        if options.statussvc:
            ro_status = ro.remoteObjectProxy(options.statussvc)
            statusObj = INSint.FetchStatusWrapper_Gen2(ro_status)

        # Did user specify a SOSS status source?
        elif options.statushost:
            from SOSS.status import cachedStatusObj

            statusDict = cachedStatusObj(options.statushost)
            statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)

        # Did user specify a SOSS status file?
        elif options.statusfile:
            try:
                in_f = open(options.statusfile, 'r')
                statusDict = eval(in_f.read())
                in_f.close()

            except Exception, e:
                self.showStatus("Error reading status file '%s': %s" % \
                                (options.statusfile, str(e)))
                statusDict = {}

            statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)
コード例 #2
0
 def __init__(self):
     self.insconfig = INSconfig()
     self.obcpnum = 18
     self.obcphost = 'fmos02'
     self.ev_quit = threading.Event()
     self.ev_mainquit = threading.Event()
     self.soss = None
     self.logger = logging.getLogger('INSintTesterCLI')
     statusDict = {}
     self.statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)
     self.cmdtag = 0
コード例 #3
0
    def setUp(self):
        self.env = environment.MockEnvironment()
        self.env.removeTestDirs()  # just in case
        self.env.makeDirs()

        self.obcpnum = 9
        self.ev_quit = threading.Event()

        # Create mini monitor for INSint
        self.minimon = Monitor.Minimon('monitor', logger)

        myhost = SOSSrpc.get_myhost(short=True)

        raidpath = self.env.INST_PATH
        statusObj = INSint.FetchStatusWrapper_SOSS({})

        # Create and start the instrument interface
        self.insint = INSint.ocsInsInt(self.obcpnum,
                                       myhost,
                                       raidpath,
                                       statusObj,
                                       db=self.minimon,
                                       logger=logger,
                                       ev_quit=self.ev_quit)
        self.insint.start(wait=True)

        # Create and start SIMCAM
        ocsint = DAQtk.ocsInt(self.obcpnum,
                              logger=logger,
                              ev_quit=self.ev_quit)
        self.simcam = SIMCAM.Instrument(logger,
                                        ev_quit=self.ev_quit,
                                        ocsint=ocsint,
                                        allowNoPara=False,
                                        env=self.env)
        self.simcam.loadPersonality('SIMCAM')
        self.simcam.loadParaBuf(('SIMCAM', 'FITS_FILE'), fits_file_para)
        # Wait until SIMCAM is up and running
        self.simcam.start(wait=True)
コード例 #4
0
        elif options.statusfile:
            try:
                in_f = open(options.statusfile, 'r')
                statusDict = eval(in_f.read())
                in_f.close()

            except Exception, e:
                self.showStatus("Error reading status file '%s': %s" % \
                                (options.statusfile, str(e)))
                statusDict = {}

            statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)

        else:
            statusDict = {}
            statusObj = INSint.FetchStatusWrapper_SOSS(statusDict)

        self.statusObj = statusObj
        self.mode = None
        self.cmdtag = 0
        self.cmdqueue = Queue.Queue()
        self.monitor = options.monitor

        # Set defaults for setup dialog
        sw = self.widgets['transfermethod']
        sw.set_active(1)
        #current default for this widget is 9, but it would be nice to set it here
        #self.widgets['obcpnum'].set_value_as_int(self.obcpnum)
        self.widgets['username'].set_text(self.username)
        self.widgets['password'].set_text(self.password)
        self.widgets['obcphost'].set_text(self.obcphost)