Grupo ARCO - Universidad de Castilla-La Mancha
Grupo ARCO - Universidad de Castilla-La Mancha
Grupo ARCO - Universidad de Castilla-La Mancha
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Tipos <strong>de</strong> filtros<br />
D<br />
Los filtros se indican en un secuencia <strong>de</strong> ca<strong>de</strong>nas, que internamente son transformadas en<br />
instancias <strong>de</strong> las siguientes clases. Cada clase contiene un método para comprobar que un<br />
cierto valor es correcto en el filtro.<br />
D.1.<br />
EventFilter<br />
Si en la ca<strong>de</strong>na don<strong>de</strong> se indica el filtro, el operador <strong>de</strong>finido es “==”, el objeto correspondiente<br />
será una instancia a la clase EventFilter. <strong>La</strong> utilización <strong>de</strong> este filtro indicará que<br />
los valores en una cierta coor<strong>de</strong>nada serán iguales a un <strong>de</strong>terminado valor.<br />
class EventFilter(object):<br />
<strong>de</strong>f __init__(self, name, num):<br />
self.field_name = name<br />
self.num = num<br />
<strong>de</strong>f match(self, value):<br />
return value == self.num<br />
<strong>de</strong>f equal(self, filter_):<br />
return ((type(filter_)==type(self))<br />
and (filter_.field_name == self.field_name)<br />
and (filter_.num == self.num))<br />
Listado D.1: Clase EventFilter<br />
D.2.<br />
EventFilterRange<br />
Si el operador especificado en la ca<strong>de</strong>na <strong>de</strong>l filtro es “in range”, se creará una instancia <strong>de</strong><br />
la clase EventFilterRange. Esta clase representa a los valores <strong>de</strong> una <strong>de</strong>terminada coor<strong>de</strong>nada<br />
que pertenecen al rango entre dos valores.<br />
class EventFilterRange(object):<br />
<strong>de</strong>f __init__(self, name, n, m):<br />
self.field_name = name<br />
self.valueLow = n<br />
self.valueHigh = m<br />
<strong>de</strong>f match(self, low, high=None):<br />
85