Iterator.py 1.15 KB
#!/usr/bin/python
# -*- coding: utf-8 -*-

#Autor: Erickson Silva 
#Email: <erickson.silva@lavid.ufpb.br> <ericksonsilva@live.com>

#LAViD - Laboratório de Aplicações de Vídeo Digital

class Iterator(object):

	# inicializacao das variaveis
	def __init__(self):	
		self.count = -1
		
	def load(self, lista):
		self.reset()
		self.__list = list(lista);
		self.size = len(lista)

	def reset(self):
		self.count = -1

	def getSize(self):
		return self.size

	def getCount(self):
		return self.count

	def getToken(self, i=None):
		if(i != None): return self.__list[self.count+(i)]
		return self.__list[self.count]

	def getAtualW(self):
		return self.getToken(0)[0].upper()

	def getAtualT(self):
		return self.getToken(0)[1]

	def getProxW(self):
		return self.getToken("+")[0].upper()

	def getProxT(self):
		return self.getToken("+")[1]		

	def getAntW(self):
		return self.getToken("-")[0].upper()

	def getAntT(self):
		return self.getToken("-")[1]

	def getinterval(self, n):
		if self.count+n > self.size: raise IndexError
		return self.__list[self.count:self.count+n]

	def hasNext(self):
		if(self.count < self.size-1):
			self.count += 1
			return True
		return False