Removed sha-bang from non-executable python files + whitespace cleanups.
[hooke.git] / hooke / liboutlet.py
1 '''
2 Basic outlet object
3
4 Copyright (C) 2008 Alberto Gomez-Casado (University of Twente).
5
6 This program is released under the GNU General Public License version 2.
7 '''
8
9 import re
10
11
12 class Outlet(object):
13
14     def __init__(self):
15         self.buffer=[]
16         #relations is still unused
17         self.relations=[]
18
19     def push(self, args):
20         #queue new entry
21         self.buffer.append(args)
22
23     def pop(self):
24         #delete last entry
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         #delete entry matching given index
35         if len(self.buffer)>int(number)-1 and int(number)>0:
36             self.buffer.pop(int(number)-1)              
37
38     def empty(self):
39         self.buffer=[]
40
41     def read_last(self):
42         return self.buffer[len(self.buffer)-1]
43
44     def read_first(self):
45         return self.buffer[0]
46
47     def read_type(self,dtype):
48         #returns entries matching a given type (force, distance, point...)
49         aux=[]
50         index=0
51         if dtype=='all':
52                 return self.buffer
53         for i in self.buffer:
54                 if re.match(dtype+'*',i):
55                         aux.append(i)
56         return aux