Index: DataLoader/loader.py
===================================================================
--- DataLoader/loader.py	(revision 3dd7cce4a558d0fc8b36bb5276e3f499f5f8a04c)
+++ DataLoader/loader.py	(revision 2fd516b3b48ecf8acd3ff3a9ec83eb52fb5b4685)
@@ -73,5 +73,5 @@
             
             
-        def __setitem__(self, ext=None, reader=None):
+        def __setitem__(self,dir=None, ext=None, reader=None):
             """
                 __setitem__  sets in a dictionary(self.readers) a given reader
@@ -79,4 +79,5 @@
                 @param ext: extension given of type string
                 @param reader:instance Reader class
+                @param dir: directory name where plugins readers will be saved
                 @raise : ValueError will be raise if a "plugins" directory is not found
                 and the user didn't add a reader as parameter or if the user didn't 
@@ -86,22 +87,30 @@
                 ext , a ValueError "missing extension" is raised.
                 @note: when called without parameters __setitem__ will try to load
-                readers inside a "plugins" directory 
-            """
-            import os
+                readers inside a "readers" directory 
+                if call with a directory name will try find readers 
+                from that directory "dir"
+            """
+            if dir==None:
+                dir='readers'
+            
             if reader==None and  ext==None:#1st load
                 plugReader=None
-                if os.path.isdir('plugins'):
-                    plugReader=_findReaders('plugins')# import all module in plugins
-                if os.path.isdir('../plugins'):
-                    plugReader=_findReaders('../plugins')
+                if os.path.isdir(dir):
+                    plugReader=_findReaders(dir)# import all module in plugins
+                if os.path.isdir('../'+dir):
+                    plugReader=_findReaders('../'+dir)
                 else:
-                    if os.path.isdir('..\DataLoader\plugins'):
-                        os.chdir(os.path.abspath('..\DataLoader\plugins'))# change the current 
-                        plugReader=_findReaders('plugins')
+                    if os.path.isdir('../DataLoader/'+dir):
+                        os.chdir(os.path.abspath('../DataLoader/'+dir))# change the current 
+                        plugReader=_findReaders(dir)
                        
                 if plugReader !=None:
                     for preader in plugReader:# for each modules takes list of extensions
-                        print preader,preader.ext
-                        for item in preader.ext:
+                        try:
+                            list=preader.ext
+                        except:
+                            raise AttributeError," %s instance has no attribute 'ext'"\
+                            %(preader.__class__)
+                        for item in list:
                             ext=item
                             if ext not in self.readers:#assign extension with its reader
@@ -115,12 +124,15 @@
             elif reader!=None:
                 #only reader is receive try to find a field ext
-                if reader.ext:
-                    for item in reader.ext:
-                        ext=item
-                        if ext not in self.readers:#assign extension with its reader
-                            self.readers[ext] = []
-                        self.readers[ext].insert(0,reader)
-                else:
-                    raise ValueError,"missing extension"
+                try:
+                    list=preader.ext
+                except:
+                    raise AttributeError," Reader instance has no attribute 'ext'"
+                for item in list:
+                
+                    ext=item
+                    if ext not in self.readers:#assign extension with its reader
+                        self.readers[ext] = []
+                    self.readers[ext].insert(0,reader)
+
             else:
                 raise ValueError,"missing reader"
Index: DataLoader/readers/IgorReader.py
===================================================================
--- DataLoader/readers/IgorReader.py	(revision c125e0c0a070d9e2df2b41c47a399ab68ac05667)
+++ DataLoader/readers/IgorReader.py	(revision 2fd516b3b48ecf8acd3ff3a9ec83eb52fb5b4685)
@@ -5,5 +5,5 @@
 class Reader:
     """ Simple data reader for Igor data files """
-    
+    ext=['.ASC']
     def __init__(self, filename=None):
         """ Init
Index: DataLoader/readers/TXT2_Reader.py
===================================================================
--- DataLoader/readers/TXT2_Reader.py	(revision 1b0b3caf0d36b06b15063e0f874716be68bc2984)
+++ 	(revision )
@@ -1,75 +1,0 @@
-# class Loader  to load any king of file
-import wx
-import string,numpy
-class Reader:
-    """
-        This class is loading values from given file or value giving by the user
-        should be able to read only 2 columns of data
-    """
-    ext=['.txt','.dat'] 
-    def _init_(self,x=None,y=None,dx=None,dy=None):
-        # variable to store loaded values
-        self.x = x
-        self.y = y
-        self.dx = dx
-        self.dy = dy
-        
-    def read(self,path, format=None):
-        """ Store the values loaded from file in local variables """
-        if not path == None:
-            read_it = False
-             
-            for item in self.ext:
-                if path.lower().find(item)>=0:
-                    read_it = True
-            #print "this is the flag",read_it, path.lower()
-            if read_it==False:
-                return None
-            else:
-                input_f =  open(path,'r')
-                buff = input_f.read()
-                lines = buff.split('\n')
-                self.x=[]
-                self.y=[]
-                self.dx = [] 
-                self.dy=[]
-                for line in lines:
-                    toks = line.split()
-                    try:
-                        x = float(toks[0])
-                        self.x.append(x)
-                    except:
-                        pass
-                        #print "READ ERROR", line
-                    try:
-                        y = float(toks[1])
-                        self.y.append(y)
-                    except:
-                        pass
-                        #print "READ ERROR", line
-                    try:
-                        dy=float(toks[2])
-                        self.dy.append(dy)
-    
-                    except:
-                        pass
-                        #print "READ ERROR", line
-    
-                if(( self.x==[])or (self.y==[])) or (self.dy !=[]):
-                    #print "went here"
-                    #return value
-                    raise ValueError, "TXT2_Reader can't read %s"%path
-                else:
-                    #msg="R1 reading: \n"+"this x :"+ str(self.x) +"\n"+"this y:"+str(self.y)+"\n"+"this dy :"+str(self.dy)+"\n"
-                    #return msg
-                    print "TXT2_Reader reading  %s\n" %path
-                    return self.x,self.y,self.dy
-        return None
-   
-       
-    
-if __name__ == "__main__": 
-    read= Reader()
-    read.load("testdata_line.txt")
-    
-            
Index: DataLoader/test/testplugings.py
===================================================================
--- DataLoader/test/testplugings.py	(revision d22da51a8e14513be2c5930677558eca48ba77bf)
+++ DataLoader/test/testplugings.py	(revision 2fd516b3b48ecf8acd3ff3a9ec83eb52fb5b4685)
@@ -12,10 +12,24 @@
 import os 
 class testLoader(unittest.TestCase):
-   
+    L=Loader()
     def testplugin(self):
+        """ test loading with readers"""
+        
+        self.assertEqual(self.L.__contains__('.tiff'),True)
+        self.assertEqual(self.L.__contains__('.png'),True)
+        self.assertEqual(self.L.__contains__('.txt'),True)
+    def testplugin1(self):
         """ test loading with plugging"""
-        l=Loader()
-        self.assertEqual(l.__contains__('.tiff'),True)
-        self.assertEqual(l.__contains__('.png'),True)
-        self.assertEqual(l.__contains__('.txt'),True)
-       
+        self.L.__setitem__(dir='plugins')
+        #Testing loading a txt file of 2 columns, the only reader should be read1 
+        xload,yload,dyload=self.L.load('test_2_columns.txt') 
+        x=[2.83954,0.204082,0.408163,0.612245,0.816327,1.02041,1.22449,1.42857,1.63265]
+        y=[0.6,3.44938, 5.82026,5.27591,5.2781,5.22531,7.47487,7.85852,10.2278]
+        dx=[]
+        dy=[]
+        self.assertEqual(len(xload),len(x))
+        self.assertEqual(len(yload),len(y))
+        self.assertEqual(len(dyload),0)
+        for i in range(len(x)):
+            self.assertEqual(xload[i],x[i])
+            self.assertEqual(yload[i],y[i])
