1 /* 2 * LeitorEspectroSimples.java 3 * 4 * Created on 28 de Março de 2007, 16:30 5 * 6 * To change this template, choose Tools | Template Manager 7 * and open the template in the editor. 8 */ 9 10 package tempcontroller.base; 11 12 /** 13 * Classe abstrata para um leitor de espectro. Apenas controla 14 * o estado do leitor. 15 */ 16 public abstract class AbstractLeitorEspectro implements ILeitorEspectro { 17 /** 18 * Estado do leitor. 19 */ 20 private ILeitorEspectro.Estado estado = ILeitorEspectro.Estado.NAO_INICIADO; 21 22 /** 23 * Inicia a leitura de espectro. Põe o estado do leitor 24 * em leitura. 25 */ 26 public void inicia() { 27 estado = ILeitorEspectro.Estado.EM_LEITURA; 28 iniciaImpl(); 29 } 30 31 /** 32 * Termina a leitura de espectro. Põe o estado do leitor 33 * em NAO_INICIADO. 34 */ 35 public void termina() { 36 estado = ILeitorEspectro.Estado.NAO_INICIADO; 37 terminaImpl(); 38 } 39 40 /** 41 * Pausa a leitura de espectro. Põe o leitor no 42 * estado de pausa. Só permitido se o leitor estiver 43 * em estado de leitura. 44 */ 45 public void pausa() { 46 estado = ILeitorEspectro.Estado.PAUSADO; 47 pausaImpl(); 48 } 49 50 /** 51 * Volta a ler o espectro. Só permitido se o leitor 52 * estiver em pausa. 53 */ 54 public void continua() { 55 estado = ILeitorEspectro.Estado.EM_LEITURA; 56 continuaImpl(); 57 } 58 59 /** 60 * Obtém o estado atual do leitor de espectro. 61 * @return O estado do leitor. 62 */ 63 public ILeitorEspectro.Estado getEstado() { 64 return estado; 65 } 66 67 /** 68 * Não faz nada por padrão. 69 */ 70 public void iniciaImpl() { 71 // não faz nada por padrão. 72 // Subclasses podem implementar este método. 73 } 74 75 /** 76 * Não faz nada por padrão. 77 */ 78 public void terminaImpl() { 79 // não faz nada por padrão. 80 // Subclasses podem implementar este método. 81 } 82 83 /** 84 * Não faz nada por padrão. 85 */ 86 public void pausaImpl() { 87 // não faz nada por padrão. 88 // Subclasses podem implementar este método. 89 } 90 91 /** 92 * Não faz nada por padrão. 93 */ 94 public void continuaImpl() { 95 // não faz nada por padrão. 96 // Subclasses podem implementar este método. 97 } 98 }