Las variables instancia de los objetos de esta clase son:
@interface Element : NSObject <NSCoding>
{
unsigned int posI; //Posicion I en la matriz (renglon)
unsigned int posJ; //Posicion J en la matriz (columna)
Element *nextI; //Siguiente elemento (renglon)
Element *forwardI;//Anterior elemento (renglon)
Element *nextJ; //Siguiente elemento (columna)
Element *forwardJ;//Anterior elemento (columna)
id content; //Contenido del elemento
}
...
@end
Como se aprecia en el listado anterior, las variables instancia de
Element son posI y posJ que representan los
índices i,j de posición de un elemento en una matriz. La
variable nextI, hace referencia al siguiente elemento en el
renglón. La variable forwardI, hace referencia al elemento
anterior en el renglón. La variable nextJ, hace referencia al
siguiente elemento en la columna. La variable forwardJ, hace
referencia al elemento anterior en la columna. Y, finalmente, la variable
content hace referencia al objeto que se desee almacenar en la
matriz.
Esta clase mantiene una estrecha relación con elementos de la misma clase y, para el caso específico de PetrA, se mantiene una relación con la familia de clases derivada de la clase Figure.