def __init__(self, runPath):
		self.runPath = runPath
		self.runDate, self.runID = ultracamutils.separateRunNameAndDate(runPath)
		self.comment = ""
		self.ra = 0
		self.dec = 0
		self.target = "unknown"
		self.expose = 0
		self.num = 0
		self.comment = ""
 def __init__(self, runPath):
     self.runPath = runPath
     self.runDate, self.runID = ultracamutils.separateRunNameAndDate(runPath)
     self.comment = ""
     self.ra = 0
     self.dec = 0
     self.target = "unknown"
     self.expose = 0
     self.num = 0
     self.comment = ""
     self.windowInfo = []
     self.powerCycle = False
     self.flags = ""
	
	margins = 10
	
	runInfo = ultraspecClasses.runInfo(arg.runname)
	found = runInfo.loadFromJSON(config.RUNINFO)
	if not found:
		debug.write("Could not get info for this run from the ultra.json file.", level = 1)
		xmlRead = runInfo.loadFromXML(config.ULTRASPECRAW)
		
	debug.write(runInfo, 2)
		
	runFilename = ultracamutils.addPaths(config.ULTRASPECRAW, arg.runname)

	debug.write("Opening the Ultraspec raw file at: " + runFilename, level = 2)
	
	runDate, runID = ultracamutils.separateRunNameAndDate(arg.runname)
	
	""" Check that the working folders and the output folders are there
	"""
	(runDate, runNumber) = ultracamutils.separateRunNameAndDate(arg.runname)
	
	workingFolder = ultracamutils.addPaths(config.WORKINGDIR, runDate)
	ultracamutils.createFolder(workingFolder)
	
	startFrame = arg.startframe
	if startFrame<1:
		debug.error("startframe cannot be less than 1")
		sys.exit()

	rdat  = ultracam.Rdata(runFilename, startFrame, server=False)
Esempio n. 4
0
	if arg.numframes!=None:
		requestedNumFrames = arg.numframes
		if requestedNumFrames<(frameRange):
			frameRange = requestedNumFrames
	
	frameInfo = classes.FrameObject()
	channelTempCatalogs = {'r':[], 'g':[], 'b':[]}
	stackedImages = {'r':[], 'g':[], 'b':[]}
	""" Created a storage array for keeping the stacked images...
	"""
	for c in channelNames:
		stackedImageStore = classes.stackedImage()
		stackedImages[c] = stackedImageStore
		
	if (arg.fits):
		runDate = ultracamutils.separateRunNameAndDate(arg.runname)[0]
		newFolder = utils.addPaths('/tmp', runDate)
		subprocess.call(["mkdir", newFolder])
	
	startTime = datetime.datetime.now()
	timeLeftString = "??:??"
	""" Run through all the frames in the .dat file.
	"""
	for frameIndex in range(1, frameRange + 1):
		currentTime = datetime.datetime.now()
		trueFrameNumber = startFrame + frameIndex - 1
		wholeFrame = getNextFrame()
		completionPercent = (float(frameIndex) / float(frameRange) * 100.)
		if frameIndex>2:
			timePassed = ultracamutils.timedeltaTotalSeconds(currentTime - startTime)
			totalTime = timePassed * 100. / completionPercent
Esempio n. 5
0
	parser = argparse.ArgumentParser(description='Reads some meta data and builds the .html file for a particular run')
	parser.add_argument('runname', type=str, help='Ultracam run name  [eg 2013-07-21/run010]')
	parser.add_argument('-d', '--debuglevel', default = 1, type=int, help='Debug level: 3 - verbose, 2 - normal, 1 - warnings only')
	parser.add_argument('-c', '--configfile', default='ucambuilder.conf', help='The config file, usually ucambuilder.conf')
	parser.add_argument('-v', '--version', default='primary', help="Optional version string.")
	arg = parser.parse_args()

	config = ultracamutils.readConfigFile(arg.configfile)
	debug = classes.debugObject(config.DEBUG)
	debug.toggleTimeLog()
	if (arg.debuglevel!=None): debug.setLevel(arg.debuglevel);

	templateLoader = jinja2.FileSystemLoader(searchpath="/")
	templateEnv = jinja2.Environment( loader=templateLoader )
	
	date, runID = ultracamutils.separateRunNameAndDate(arg.runname)
	
	""" Get info about the run 
	"""
	runDate, runID = ultracamutils.separateRunNameAndDate(arg.runname)
	runInfo = classes.runObject(runDate, runID)
	runInfo.version = arg.version
	runInfo.loadSelf(config)
	if runInfo.comment=="":
		runInfo.checkForComments(config.ULTRACAMRAW)

	
	debug.write("Run Info:\n----------------------", level = 2)
	debug.write(runInfo, level = 2)
	debug.write("----------------------", level = 2)