avrora.stack
Class StateCache.State

java.lang.Object
  extended byavrora.stack.AbstractState
      extended byavrora.stack.StateCache.State
All Implemented Interfaces:
IORegisterConstants
Enclosing class:
StateCache

public class StateCache.State
extends AbstractState
implements IORegisterConstants

The State class represents an immutable state within the state space of the program. Such a state is cached and cannot be modified. It contains a unique identifier, a mark for graph traversals, and a list of outgoing edges.


Field Summary
 StateTransitionGraph.StateInfo info
           
 java.lang.Object mark
          The mark field is used by graph traversal algorithms to detect cycles and terminate traversals.
 long UID
           
 
Fields inherited from class avrora.stack.AbstractState
av_EIMSK, av_REGISTERS, av_SREG, av_TIMSK, pc, primes
 
Fields inherited from interface avrora.stack.IORegisterConstants
ACSR, ADCH, ADCL, ADCSRA, ADMUX, ASSR, DDRA, DDRB, DDRC, DDRD, DDRE, DDRF, DDRG, EEARH, EEARL, EECR, EEDR, EICRA, EICRB, EIFR, EIMSK, ETIFR, ETIMSK, ICR1H, ICR1L, ICR3H, ICR3L, MCUCR, MCUCSR, NUM_REGS, OCDR, OCR0, OCR1AH, OCR1AL, OCR1BH, OCR1BL, OCR1CH, OCR1CL, OCR2, OCR3AH, OCR3AL, OCR3BH, OCR3BL, OCR3CH, OCR3CL, OSCCAL, PINA, PINB, PINC, PIND, PINE, PINF, PING, PORTA, PORTB, PORTC, PORTD, PORTE, PORTF, PORTG, RAMPZ, SFIOR, SPCR, SPDR, SPH, SPL, SPMCSR, SPSR, SREG, SREG_C, SREG_H, SREG_I, SREG_N, SREG_S, SREG_T, SREG_V, SREG_Z, TCCR0, TCCR1A, TCCR1B, TCCR1C, TCCR2, TCCR3A, TCCR3B, TCCR3C, TCNT0, TCNT1H, TCNT1L, TCNT2, TCNT3H, TCNT3L, TIFR, TIMSK, TWAR, TWBR, TWCR, TWDR, TWSR, UBRR0H, UBRR0L, UBRR1H, UBRR1L, UCSR0A, UCSR0B, UCSR0C, UCSR1A, UCSR1B, UCSR1C, UDR0, UDR1, WDTCR, XDIV, XMCRA, XMCRB
 
Method Summary
 boolean equals(java.lang.Object o)
           
 int getType()
           
 java.lang.String getUniqueName()
          The getUniqueName() gets a string that uniquely identifies this state.
 int hashCode()
           
 void setType(int t)
           
 
Methods inherited from class avrora.stack.AbstractState
computeHashCode, copy, deepCompare, getFlag_C, getFlag_H, getFlag_I, getFlag_N, getFlag_S, getFlag_T, getFlag_V, getFlag_Z, getIORegisterAV, getPC, getRegisterAV, getRegisterAV, getSREG, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

UID

public final long UID

mark

public java.lang.Object mark
The mark field is used by graph traversal algorithms to detect cycles and terminate traversals. Concurrent traversal is not supported.


info

public StateTransitionGraph.StateInfo info
Method Detail

hashCode

public int hashCode()
Specified by:
hashCode in class AbstractState

equals

public boolean equals(java.lang.Object o)
Specified by:
equals in class AbstractState

getUniqueName

public java.lang.String getUniqueName()
The getUniqueName() gets a string that uniquely identifies this state. For immutable states, this is simply the UID. For special states, this is the name of the special state.

Returns:
a unique identifying string for this state

setType

public void setType(int t)

getType

public int getType()