(hooke_cli.py) fixed tab problem
[hooke.git] / liboutlet.py
1 #!/usr/bin/env python
2
3 '''
4 Basic outlet object
5
6 Copyright (C) 2008 Alberto Gomez-Casado (University of Twente).
7
8 This program is released under the GNU General Public License version 2.
9 '''
10
11
12 import re
13
14
15 class Outlet(object):
16     
17     def __init__(self):
18         self.buffer=[]
19         self.relations=[]
20     
21     def push(self, args):
22         self.buffer.append(args)
23
24     def pop(self):
25         return self.buffer.pop();
26
27     def printbuf(self):
28         j=1;
29         for i in self.buffer:
30             print j, i
31             j=j+1
32
33     def delete(self, number):
34         if len(self.buffer)>int(number)-1 and int(number)>0:
35             self.buffer.pop(int(number)-1)              
36
37     def empty(self):
38         self.buffer=[]
39         
40     def read_last(self):
41         return self.buffer[len(self.buffer)-1]
42     
43     def read_first(self):
44         return self.buffer[0]
45
46     def read_type(self,dtype):
47         aux=[]
48         index=0
49         if dtype=='all':
50                 return self.buffer
51         for i in self.buffer:
52                 if re.match(dtype+'*',i):
53                         aux.append(i)
54         return aux
55     
56