-# Copyright (C) 2010 W. Trevor King <wking@drexel.edu>
+# Copyright (C) 2010-2012 W. Trevor King <wking@tremily.us>
#
# This file is part of Hooke.
#
-# Hooke is free software: you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation, either
-# version 3 of the License, or (at your option) any later version.
+# Hooke is free software: you can redistribute it and/or modify it under the
+# terms of the GNU Lesser General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option) any
+# later version.
#
-# Hooke is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
+# Hooke is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+# details.
#
-# You should have received a copy of the GNU Lesser General Public
-# License along with Hooke. If not, see
-# <http://www.gnu.org/licenses/>.
+# You should have received a copy of the GNU Lesser General Public License
+# along with Hooke. If not, see <http://www.gnu.org/licenses/>.
"""Tutorial driver for Hooke.
that is, two plots with two datasets each.
"""
+import os.path
+
# The following are relative imports. See PEP 328 for details
# http://www.python.org/dev/peps/pep-0328/
from .. import curve as curve # this module defines data containers.
-from .. import experiment as experiment # this module defines expt. types
from ..config import Setting # configurable setting class
from . import Driver as Driver # this is the Driver base class
help='Set the units used for the x data.'),
]
- def is_me(self):
+ def is_me(self, path):
"""YOU MUST OVERRIDE Driver.is_me.
RETURNS: Boolean (`True` or `False`)
Hooke to understand what kind of files we're looking at
automatically.
"""
+ if os.path.isdir(path):
+ return False
- f = open(self.filename, 'r')
+ f = open(path, 'r')
header = f.readline() # we only need the first line
f.close()
return True
return False
- def read(self, path):
+ def read(self, path, info=None):
f = open(path,'r') # open the file for reading
"""In this case, we have a data format that is just a list of
ASCII values, so we can just divide that in rows, and generate
f.close() # remember to close the file
data = curve.Data()
- info = {'filetype':'tutorial', 'experiment':'generic'}
+ info = {}
return (data, info)