Changeset 529
- Timestamp:
- 02/02/2012 03:50:14 PM (12 years ago)
- Location:
- SHX/trunk/SeismicHandler
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
SHX/trunk/SeismicHandler/basics/error.py
r469 r529 22 22 """module for SHX exceptions""" 23 23 24 from SeismicHandler.basics.messages import MessageSystem as msgs 24 from SeismicHandler.basics.messages import MessageSystem as msgs, setStatus 25 25 26 26 __all__ = ['ShxError'] … … 48 48 def __init__(self, value): 49 49 self.value = value 50 setStatus(1) 50 51 Error.__init__(self) 51 52 -
SHX/trunk/SeismicHandler/bin/SH
r496 r529 2 2 3 3 """ 4 Helper script for executing SH scripts. In future this will also offer an 5 interactive command line interface. 4 Helper script for executing SH scripts and interactive usage. 6 5 """ 7 6 -
SHX/trunk/SeismicHandler/config/runtime.py
r490 r529 33 33 import warnings 34 34 from SeismicHandler.basics import Property, Singleton, AttribDict 35 from SeismicHandler.basics.messages import msgs 35 from SeismicHandler.basics.messages import msgs, logMessage 36 36 37 37 … … 243 243 244 244 def _setRuntimeVar(self, name, value): 245 logMessage( 246 "debug.runtime", 247 "Received internal update for '%s' (%s)" % (name, str(value)) 248 ) 245 249 self.Runtime[name] = value 246 250 -
SHX/trunk/SeismicHandler/modules/parse.py
r491 r529 116 116 re_file = " (/\w+)+ ?" 117 117 118 def __init__(self, input , switches=None):118 def __init__(self, input_string, switches=None): 119 119 if switches is None: 120 120 switches = Switches() 121 121 122 122 self.switches = switches 123 self.input = input 123 # treat everything after ! as comment 124 input_string = input_string.split("!")[0] 125 self.input = input_string 124 126 125 127 converted = False … … 127 129 # If a command starts with @, no conversion to upper case is 128 130 # performed but the indicator char is removed. 129 if input .startswith("@"):130 input = input[1:]131 if input_string.startswith("@"): 132 input_string = input_string[1:] 131 133 else: 132 input = input.upper()134 input_string = input_string.upper() 133 135 converted = True 134 136 … … 137 139 f = re.compile(self.re_file) 138 140 139 cmd = c.search(input ).group(0)140 qual = q.findall(input )141 cmd = c.search(input_string).group(0) 142 qual = q.findall(input_string) 141 143 142 144 # guess file 143 145 try: 144 sfile = f.search(input ).group(0).strip()146 sfile = f.search(input_string).group(0).strip() 145 147 except: 146 148 sfile = None … … 148 150 qualifiers = {} 149 151 # remove cmd and qualifiers from string 150 cmd_par = input .replace(cmd, "")152 cmd_par = input_string.replace(cmd, "") 151 153 for qq in qual: 152 154 cmd_par = cmd_par.replace(qq, "") … … 179 181 self._parsed = { 180 182 "shx_input": self.input, 181 "shx_input_conv": input ,183 "shx_input_conv": input_string, 182 184 "shx_command": cmd.lower(), # command always in lower case 183 185 "shx_converted": converted, # indicates cap conversion … … 498 500 499 501 def commandQuit(self, *args): 502 if not args: 503 yesno = raw_input(" Leave program [yN]? ") 504 else: 505 yesno = args[0] 506 500 507 msgs.sendMessage("command.run", cmd="quit") 501 quit() 508 if yesno.lower() == "y": 509 quit() 502 510 503 511 def commandIf(self, cmd): … … 720 728 721 729 def __handleTrace(self, name): 722 raise NotImplementedError 730 try: 731 name, traceno = name.split("(") 732 traceno = int(traceno.split(")")[0]) 733 except: 734 traceno = 1 735 736 try: 737 # internal counting starts from zero 738 trace = Traces[traceno - 1] 739 except: 740 logMessage("error.parse", "Trace number %u not present" % traceno) 741 742 try: 743 res = trace._shxInfo(name) 744 return res 745 except NameError: 746 logMessage("error.trace", "undefined info entry name '%s'" % name) 723 747 724 748 def __handleOption(self, name): -
SHX/trunk/SeismicHandler/patches/ObsPy.py
r469 r529 31 31 from obspy.core import Stream, Trace 32 32 from obspy.core.util import AttribDict 33 from SeismicHandler.basics.messages import logMessage 33 from obspy.sh.core import fromUTCDateTime 34 from SeismicHandler.basics.messages import logMessage, setStatus 34 35 35 36 __all__ = [] … … 211 212 self.shx = AttribDict() 212 213 214 def traceGetStatusInfo(self, name): 215 """ 216 Mapping of Seismic Handler trace information entries to ObsPy status info. 217 """ 218 name = name.lower() 219 220 # identical name 221 if name in self.stats: 222 return self.stats[name] 223 224 # mapping 225 if name == "length": 226 return self.stats.npts 227 228 if name == "chan1": 229 return self.stats.channel[0] 230 231 if name == "chan2": 232 return self.stats.channel[1] 233 234 if name == "comp": 235 return self.stats.channel[2] 236 237 if name == "start": 238 return fromUTCDateTime(self.stats.starttime) 239 240 # finally look into self defined entries 241 if name in self.shx: 242 return self.shx[name] 243 244 raise NameError 245 213 246 # monkey patching obspy stream class: traces are merge automatically if stream 214 247 # get's altered. … … 223 256 Trace.__shx_init__, Trace.__init__ = Trace.__init__, traceAddShxInit 224 257 Trace._shxPrepareImageData = tracePrepareDataForImage 258 Trace._shxInfo = traceGetStatusInfo
Note: See TracChangeset
for help on using the changeset viewer.