Changeset 143
- Timestamp:
- 08/20/2009 12:28:25 PM (13 years ago)
- Location:
- SHX/trunk/src/SeismicHandler
- Files:
-
- 3 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
SHX/trunk/src/SeismicHandler/core/error.py
r139 r143 79 79 return """info entry "%s" not writable!""" % self.name 80 80 81 class Vars InternalReadOnlyError(Error):81 class VarsSystemReadOnlyError(Error): 82 82 def __init__(self): 83 83 Error.__init__(self) -
SHX/trunk/src/SeismicHandler/core/modules/Variables.py
r139 r143 26 26 from SeismicHandler.core.shlib import shlib 27 27 from SeismicHandler.core.log import logging 28 from SeismicHandler.core. modules.Events import EventManager, Event29 from SeismicHandler.core.error import VarsInternalReadOnlyError 28 from SeismicHandler.core.error import VarsSystemReadOnlyError 29 import ctypes as C 30 30 31 class accessInternal(object): 31 class accessSystem(object): 32 def __init__(self): 33 self._logger = logging.getLogger("modules.variables") 34 self._sh = shlib().sh 35 36 def __getattr__(self, name): 37 if name in ["_logger", "_sh"]: 38 return self.__dict__[name] 39 40 res = C.create_string_buffer(1024) 41 status = C.c_int() 42 43 self._sh.tr_intern(name.upper(), "", len(res), C.byref(res), C.byref(status)) 44 45 if not status: 46 return res.value 47 else: 48 return False 49 50 def __setattr__(self, name, value): 51 if name in ["_logger", "_sh"]: 52 self.__dict__[name] = value 53 else: 54 raise VarsSystemReadOnlyError 55 56 class accessSymbols(object): 32 57 def __init__(self): 33 58 pass 34 35 class accessUserDefined(object): 36 def __init__(self): 59 60 def __getattr__(self, name): 61 pass 62 63 def __setattr__(self, name, value): 37 64 pass 38 65 39 Internal = accessInternal() 40 UserDefined = accessUserDefined() 66 SystemVars = accessSystem() 67 SymbolVars = accessSymbols() 68 69 if __name__ == "__main__": 70 print SystemVars.pi -
SHX/trunk/src/SeismicHandler/core/shlib.py
r139 r143 170 170 """set some start up parameters""" 171 171 172 # self.call(StringIO("SHSTRTUP")) 173 # return 174 172 175 self.call(StringIO("wdw/dc=s/ic=s/main")) 173 176 self.call(StringIO("wdw/ic=s")) -
SHX/trunk/src/SeismicHandler/tests/test_traces.py
r142 r143 191 191 self.fail("non existing failure") 192 192 193 def testSumCommand(self):194 # this test fails for some reason195 # the summed trace has *never* a length greater 100 seconds196 197 EventManager.block(Event(EventManager.REDRAW))198 199 seconds, delta = 110., 0.01200 201 Run("del 1")202 # create 2 identical synthetics with "seconds" length, 1/"delta" Hz203 for i in xrange(2):204 Run("CREATE SHARP %.2f %u 1. 15. .1 .5" % (delta, seconds))205 206 Run("sum all")207 208 # Run("fili f BP_2S_10HZ_4")209 # Run("filter f 1")210 211 EventManager.unblock(Event(EventManager.REDRAW))212 213 for i in range(len(self.traces)):214 print i215 trc = self.traces[i+1]216 self.assertAlmostEqual(trc.delta, delta, 6)217 self.assertEqual(trc.length, seconds/delta)218 self.assertAlmostEqual(len(trc)/1000., seconds, 1)219 220 193 def suite(): 221 194 return unittest.makeSuite(eventsTestCase, 'test')
Note: See TracChangeset
for help on using the changeset viewer.