CLASSES DO GERENCIAMENTO DE DISPOSITIVOS
CLASSE: DISPOSITIVOS
ESTRUTURA
A classe Dispositivos por ser uma super-classe possui uma estrutura interna com variáveis genéricas herdadas por todas as subclasses subordinadas. Estas variáveis também denominadas de
variáveis de classe podem ser compreendidas pela tupla:
< IDD , STAT >, onde:
IDD é o Identificador do Dispositivo;
STAT indica o Status (estado) de um determinado Dispositivo.
A variável IDD permite identificar uma instância de Dispositivo que está ativa no sistema
sendo que os valores assumidos por ela pertence ao conjunto { 0, 1, 2, 3, 4, 5, 6, 7, 8 }, onde: 0 indica objeto ENTRADA;
1 indica objeto EDITOR DE TEXTO; 2 indica objeto JANELA;
3 indica objeto ÍCONE; 4 indica objeto FRASE; 5 indica objeto SAÍDA; 6 indica objeto MOUSE;
A variável STAT é usada para armazenar o estado em que se encontra um determinado dispositivo além de informar quando ocorrer, o tipo de erro produzido durante o processamento deste. Esta variável assume os seguintes valores:
0 indica que o dispositivo está ativo, sem problemas; 1 indica falha na inicialização;
2 indica que o dispositivo não corresponde às características previstas; 3 indica que o dispositivo está em pausa.
OPERAÇÕES INTERNAS
As operações internas da classe Dispositivo serão compartilhadas com as subclasses que compõem a hierarquia de dispositivo apresentada anteriormente. As operações internas, ou métodos que manipulam as instâncias da classe Dispositivos serão descritas a seguir.
INICIALIZAÇÃO - Este método tem por finalidade básica a inicialização de um determinado
dispositivo acoplado ao sistema. Em caso de falha, é informado ao Ambiente o tipo de erro ocorrido.
OBTER IDENTIFICADOR DO DISPOSITIVO - Este método fornece o conteúdo da variável IDD
de uma determinada instância de dispositivo que foi ativado.
OBTER STATUS - Este método tem por objetivo fornecer o conteúdo da variável STAT de uma
determinada instância de dispositivo ativo.
dispositivos apresentada na figura 27.
CLASSE: ENTRADA
ESTRUTURA
A classe Entrada possui uma estrutura composta por variáveis herdadas da super-classe: Dispositivo, dada pela tupla:
< IDD , STAT > ,
além das variáveis da que constituem a estrutura própria desta classe dadas pela tupla: < COORD, TC, TAM, IPO, IE, IAV , IDP > , onde:
COORD indica as coordenadas X e Y do vídeo onde serão ecoados ou não o campo que será processado. Estas coordenadas estão limitadas à fronteira imposta pelo modalidade de processamento do vídeo sendo definidas em função de outro tipo de Definição Visual (ver objeto Janela) ao qual está associada.
A variável TC indica o tipo de campo a ser processado podendo assumir os valores pertencentes ao conjunto { I, L, C, S, F, D, H }, onde:
I indica que o campo é do tipo Inteiro; L indica que o campo é do tipo Inteiro Longo; C indica que o campo é do tipo Caracter; S indica que o campo é do tipo String; F indica que o campo é do tipo Real;
D indica que o campo é do tipo Data (dd-mm-aaaa); H indica que o campo é do tipo Hora (hh-mm-ss).
A variável TAM indica o tamanho do campo a ser ecoado ou não no dispositivo Vídeo. Para alguns tipos de campos o tamanho já é pré-definido, como no caso dos tipos C, D e H. A variável IPO é o
Indicador de Preenchimento Obrigatório usado para indicar se um determinado campo poderá ser
aceito com (valor 1) ou sem (valor 0) seu preenchimento quando for ativado. A variável IE é o
Indicador de Eco do Teclado usado para determinar se os caracteres que estão sendo digitados para
um determinado campo serão ou não ecoados no vídeo. Esta variável assume o valor 0 para indicar que o campo não será ecoado e 1 caso contrário. A variável IAV é o Indicador de Atributo de Vídeo usado para determinar a forma pela qual o campo aparecerá visualmente para o usuário. Esta variável assume os seguintes valores que poderão ser combinados para propiciar uma forma agradável de recepção do campo:
0 indica a modalidade Normal;
1 indica a modalidade de campo em Vídeo Reverso; 2 indica a modalidade de campo Piscante;
3 indica a modalidade de campo em Brilho Intensificado; 4 indica a modalidade de campo Sublinhado.
A variável IDP indica a região de memória usada para armazenar o valor do campo informado quando da ativação deste tipo de objeto durante o processamento do ambiente.
A classe Entrada pela hierarquia apresentada nas seções anteriores herda todas as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe porém, possui algumas operações internas próprias, criadas usando inclusive as operações herdadas de sua super-classe. Estas operações internas, ou métodos, serão descritas a seguir.
INICIALIZAÇÃO - Este método tem por finalidade básica a inicialização do objeto Entrada
verificando os dispositivos teclado e vídeo acoplados ao sistema. Em caso de falha, é informado ao Ambiente o tipo de erro ocorrido.
ATIVAÇÃO - Este método permite que a classe Entrada execute o processamento da Definição
Visual do tipo Entrada informada via parâmetro.
OBTER-COORDENADAS, OBTER-TC, OBTER-TAM, OBTER-IPO, OBTER-IE, OBTER- IAV , OBTER-IDP - Estes métodos fornecem o conteúdo das variáveis COORD, TC, TAM, IPO,
IE, IAV e IDP respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
ALTERAR-COORDENADAS, ALTERAR-TC, ALTERAR-TAM, ALTERAR-IPO, ALTERAR-IE, ALTERAR-IAV , ALTERAR-IDP - Estes métodos permitem a alteração do
conteúdo das variáveis COORD, TC, TAM, IPO, IE, IAV e IDP respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
FINALIZAÇÃO - Este método permite a desativação do dispositivo Entrada e utiliza a operação
interna com o mesmo nome da super-classe Dispositivo.
CLASSE: EDITOR DE TEXTO
ESTRUTURA
A classe Editor de Texto possui uma estrutura composta por variáveis herdadas da super- classe Dispositivo, dada pela tupla:
< IDD , STAT > ,
acrescida das variáveis que constituem sua estrutura própria dadas pela tupla: < FRONT, COR, TAM, MODO, IDP > , onde:
FRONT indica a fronteira que delimita a região da tela onde será exibido e manipulado o texto a ser editado. Este parâmetro é composto pelas variáveis: X1 , Y1 e X2, Y2, sendo que o par (X1, Y1) determina as coordenadas do canto inferior esquerdo e o par (X2, Y2) as coordenadas do canto superior direito da fronteira. A variável COR indica a cor na qual será exibido o texto no dispositivo Vídeo. O conjunto de cores é dado em função do tipo de placa gráfica (CGA-EGA-VGA) que constitui a configuração do equipamento onde será implantado o Ambiente Poesis. A variável TAM indica o tamanho do texto a ser editado. A variável MODO indica a modalidade de exibição do texto a ser editado que poderá ser 0 indicando o modo texto (25x80) ou 1 em modo gráfico (alta resolução) variável conforme a placa gráfica instalada. A variável IDP é o Identificador do Processo de Alocação que indica a região de memória usada para armazenar o texto a ser editado durante o processamento do ambiente.
OPERAÇÕES INTERNAS
A classe Editor de Texto herda as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe possui algumas operações internas próprias que serão descritas a seguir.
142
verificando os dispositivos teclado e vídeo acoplados ao sistema. Em caso de falha, é informado ao Ambiente o tipo de erro ocorrido.
ATIVAÇÃO - Este método permite que a classe Editor de Texto execute o processamento da
Definição Visual do tipo Editor de Texto informada via parâmetro.
OBTER-FRONTEIRAS, OBTER-COR , OBTER-TAM, OBTER-MODO e OBTER-IDP -
Estes métodos fornecem o conteúdo das variáveis FRONT, COR, TAM, MODO e IDP respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
ALTERAR-FRONTEIRAS, ALTERAR-COR, ALTERAR-TAM, ALTERAR-MODO e ALTERAR-IDP - Estes métodos permitem a alteração do conteúdo das variáveis FRONT, COR,
TAM, MODO e IDP respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
FINALIZAÇÃO - Este método permite a desativação do dispositivo Editor de Texto e utiliza a
operação interna com o mesmo nome da super-classe Dispositivo.
CLASSE: JANELA
ESTRUTURA
A classe Janela possui uma estrutura composta por variáveis herdadas da super-classe: Dispositivo, dada pela tupla:
< IDD , STAT > ,
além das variáveis da que constituem a estrutura própria desta classe dadas pela tupla: < FRONT , TB , CI , PP , Ne, Ae >, onde:
FRONT indica a fronteira da janela composta pelas variáveis: X1 , Y1 e X2, Y2 que delimitam a região do vídeo onde será montada a Definição Visual, sendo que o par (X1, Y1) determina as coordenadas do canto inferior esquerdo e o par (X2, Y2) as coordenadas do canto superior direito da janela. A variável TB indica o tipo de moldura ou borda da Definição Visual Janela a ser processada. A variável CI indica a cor interna na qual será exibida a janela no dispositivo Vídeo. O conjunto de cores é dado em função do tipo de placa gráfica (CGA-EGA-VGA) que constitui a configuração do equipamento onde será implantado o Ambiente Poesis. A variável PP indica o
Padrão de Preenchimento de fundo usado para gerar janelas que permitam uma melhor
apresentação ao usuário, através do preenchimento da região de fundo da janela com padrões pré- definidos. A variável Ne indica o número de elementos ou Definições Visuais que compõem a janela. A variável Ae é um array de elementos ou Definições Visuais que compõem a janela e que serão ativadas no momento da ativação da referida Definição Visual. Esta estrutura permite inclusive que outra janela seja ativada fornecendo a este tipo de Definição Visual uma flexibilidade para composição de elementos. A variável Ae possui a quantidade de ocorrências determinada pela variável Ne, e sua estrutura corresponde a tupla:
< CDV , IA > , onde:
CDV indica o código da Definição Visual componente da janela;
IA é o Indicador de Ativação da Definição Visual.
A variável CDV permite a identificação da Definição Visual que será ativada ou não quando a janela
estiver sendo construída. A variável IA é o indicador que permite determinar se a Definição Visual componente será ativada no momento da ativação da janela (IA = 1), ou não (IA = 0).
A classe Janela herda todas as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe porém, possui algumas operações internas próprias, criadas usando inclusive as operações herdadas de sua super-classe. Estas operações internas, ou métodos, serão descritas a seguir.
INICIALIZAÇÃO - Este método tem por finalidade básica a inicialização do objeto Janela
verificando o dispositivo vídeo acoplado ao sistema. Em caso de falha, é informado ao Ambiente o tipo de erro ocorrido.
ATIVAÇÃO - Este método permite que a classe Janela execute o processamento da Definição Visual
do tipo Janela informada via parâmetro.
OBTER-FRONTEIRAS, OBTER-TB, OBTER-CI, OBTER-PP, OBTER-Ne - Estes métodos
fornecem o conteúdo das variáveis FRONT, TB, CI, PP e Ne respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
OBTER-ELEMENTO - Este método permite obter as informações referentes às Definições Visuais
que compõem a Janela, definidas através das variáveis CDV e IA.
ALTERAR-FRONTEIRAS, ALTERAR-TB, ALTERAR-CI, ALTERAR-PP, ALTERAR-Ne -
Estes métodos possibilitam a alteração do conteúdo das variáveis FRONT, TB, CI, PP e Ne respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
ALTERAR-ELEMENTO - Este método permite efetuar alterações das informações referentes às
Definições Visuais que compõem a Janela, definidas através das variáveis CDV e IA.
FINALIZAÇÃO - Este método permite a desativação do dispositivo Janela e utiliza a operação
interna com o mesmo nome da super-classe Dispositivo.
CLASSE: ÍCONE
ESTRUTURA
A classe Ícone possui uma estrutura composta por variáveis herdadas da super-classe Dispositivo, dada pela tupla:
< IDD , STAT > ,
além das variáveis da que constituem a estrutura própria desta classe dadas pela tupla: < FRONT, CD, CFR, CFU, TM, MASC >, onde:
FRONT indica a fronteira do Ícone composta pelas variáveis: X1 , Y1 e X2, Y2 que delimitam a região correspondente ao tamanho do ícone, sendo que o par (X1, Y1) determina as coordenadas do canto inferior esquerdo e o par (X2, Y2) as coordenadas do canto superior direito do Ícone. A variável CD indica as coordenadas default (X, Y) onde a Definição Visual Ícone será exibida. As variáveis CFR e CFU indicam respectivamente a cor de frente e a cor de fundo nas quais será exibido o Ícone no dispositivo Vídeo. O conjunto de cores é dado em função do tipo de placa gráfica (CGA-EGA- VGA) que constitui a configuração do equipamento onde será implantado o Ambiente Poesis. A variável TM indica o Tamanho da Máscara de Edição e a variável MASC contém a Máscara de
Edição que correspondem aos códigos que definem o ícone a ser gerado.
OPERAÇÕES INTERNAS
A classe Ícone herda todas as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe porém, possui algumas operações internas próprias, criadas usando inclusive as operações herdadas de sua super-classe. Estas operações internas, ou métodos, serão descritas a seguir.
144
verificando o dispositivo vídeo acoplado ao sistema. Em caso de falha, é informado ao Ambiente o tipo de erro ocorrido.
ATIVAÇÃO - Este método permite que a classe Ícone execute o processamento da Definição Visual
do tipo Ícone informada via parâmetro.
OBTER-FRONTEIRAS, OBTER-CD, OBTER-CFR, OBTER-CFU, OBTER-TM e OBTER- MASC - Estes métodos fornecem o conteúdo das variáveis FRONT, CD, CFR, CFU, TM e MASC
respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
ALTERAR-FRONTEIRAS, ALTERAR-CD, ALTERAR-CFR, ALTERAR-CFU,
ALTERAR-TM e ALTERAR-MASC - Estes métodos possibilitam a alteração do conteúdo das
variáveis FRONT, CD, CFR, CFU, TM e MASC respectivamente, de uma determinada instância do processador genérico de Definição Visual que foi ativada.
FINALIZAÇÃO - Este método permite a desativação do dispositivo Ícone e utiliza a operação interna
com o mesmo nome da super-classe Dispositivo.
CLASSE: FRASE
ESTRUTURA
A classe Frase possui uma estrutura composta por variáveis herdadas da super-classe: Dispositivo, dada pela tupla:
< IDD , STAT > ,
e pelas variáveis constituem a estrutura própria desta classe dadas pela tupla: < FRONT, CD, COR, STRING >, onde:
FRONT indica a fronteira da Frase composta pelas variáveis: X1 , Y1 e X2, Y2 que delimitam a região correspondente ao tamanho do Frase, sendo que o par (X1, Y1) determina as coordenadas do canto inferior esquerdo e o par (X2, Y2) as coordenadas do canto superior direito do Frase. A variável CD indica as coordenadas default (X, Y) onde a Definição Visual Frase será exibida. A variável COR indica a cor de frente na qual será exibido a Frase no dispositivo Vídeo. O conjunto de cores é dado em função do tipo de placa gráfica (CGA-EGA-VGA) que constitui a configuração do equipamento onde será implantado o Ambiente Poesis. A variável STRING corresponde à cadeia de caracteres que compõem a Definição Visual Frase a ser gerada.
OPERAÇÕES INTERNAS
A classe Frase pela hierarquia de classes definida, herda todas as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe porém, possui algumas operações internas próprias, criadas usando inclusive as operações herdadas de sua super- classe. Estas operações internas, ou métodos, serão descritas a seguir.
ATIVAÇÃO - Este método permite que a classe Frase execute o processamento da Definição Visual
do tipo Frase informada via parâmetro.
OBTER-FRONTEIRAS, OBTER-CD, OBTER-COR, OBTER-STRING - Estes métodos
fornecem o conteúdo das variáveis FRONT, CD, COR e STRING respectivamente, de uma determinada instância do processador genérico de Definição Visual Frase que foi ativada.
ALTERAR-FRONTEIRAS, ALTERAR-CD, ALTERAR-COR, ALTERAR-STRING -
Estes métodos possibilitam a alteração do conteúdo das variáveis FRONT, CD, COR e STRING respectivamente, de uma determinada instância do processador genérico de Definição Visual Frase que foi ativada.
FINALIZAÇÃO - Este método permite a desativação da Definição Visual Frase.
ESTRUTURA
A classe Saída possui uma estrutura composta por variáveis herdadas da super-classe: Dispositivo, dada pela tupla:
< IDD , STAT > ,
além das variáveis da que constituem a estrutura própria desta classe dadas pela tupla: < COORD, COR, TC, TAM, MASC, IAV , IDP > , onde:
COORD indica as coordenadas X e Y do vídeo onde será exibido o campo. Estas coordenadas estão limitadas à fronteira imposta pelo modalidade de processamento do vídeo sendo definidas em função de outro tipo de Definição Visual (ver objeto Janela) ao qual está associada. A variável COR indica a
cor na qual será exibido o campo. O conjunto de cores é dado em função do tipo de placa gráfica
(CGA-EGA-VGA) que constitui a configuração do equipamento onde será implantado o Ambiente Poesis. A variável TC indica o tipo de campo a ser processado podendo assumir os valores pertencentes ao conjunto { I, L, C, S, F, D, H }, onde:
I indica que o campo é do tipo Inteiro; L indica que o campo é do tipo Inteiro Longo; C indica que o campo é do tipo Caracter; S indica que o campo é do tipo String; F indica que o campo é do tipo Real;
D indica que o campo é do tipo Data (dd-mm-aaaa); H indica que o campo é do tipo Hora (hh-mm-ss).
A variável TAM indica o tamanho do campo a ser ecoado ou não no dispositivo Vídeo. Para alguns tipos de campos o tamanho já é pré-definido, como no caso dos tipos C, D e H. A variável MASC contém a máscara de edição a ser usada para exibir o campo.
O formato da máscara obedece a seguinte sintaxe: ( m ) onde:
m é um string que representa a máscara de edição podendo ser usado os caracteres pertencentes ao conjunto { x , . , , , $, / , - , _ , *, +. B, : } para compor o formato de saída. Exemplos:
Inteiro: 1233 máscara: ( +x.xxx ) saída: 1.233 Inteiro Longo: -12254 máscara: ( *.***.xxx- ) saída: ***12.254-
Caracter: W máscara: ( x ) saída: W
String: "isto" máscara: ( xxx ) saída: ist Real: 12,232 máscara: ( xx$xx ) saída: 12$23 Data: 29081990 máscara: ( xx/xx/xxxx )saída: 29/08/1990 Hora: 114000 máscara: ( xxB:BxxB:Bxx ) saída: 11 : 40 : 00
A variável IAV é o Indicador de Atributo de Vídeo usado para determinar a forma pela qual o campo aparecerá visualmente para o usuário e assume os seguintes valores:
0 indica a modalidade Normal,
1 indica a modalidade de campo em Vídeo Reverso, 2 indica a modalidade de campo Piscante,
3 indica a modalidade de campo em Brilho Intensificado, 4 indica a modalidade de campo Sublinhado,
A variável IDP é o Identificador do Processo de Alocação que indica a região de memória usada para armazenar o valor do campo a ser exibido quando da ativação deste tipo de objeto durante o processamento do ambiente.
OPERAÇÕES INTERNAS
A classe Saída herda todas as operações definidas para a super-classe Dispositivo, sendo usadas para manipulação de suas instâncias. Esta classe porém, possui algumas operações internas próprias, criadas usando inclusive as operações herdadas de sua super-classe. Estas operações internas, ou métodos, serão descritas a seguir.
ATIVAÇÃO - Este método permite que a classe Saída execute o processamento da Definição Visual
do tipo Saída informada via parâmetro.
OBTER-COORDENADAS , OBTER-COR , OBTER-TC , OBTER-TAM, OBTER-MASC, OBTER-IAV , OBTER-IDP - Estes métodos fornecem o conteúdo das variáveis COORD, TC,
TAM, MASC, IAV e IDP respectivamente, de uma determinada instância do objeto Saída.
ALTERAR-COORDENADAS, ALTERAR-COR, ALTERAR-TC, ALTERAR-TAM, ALTERAR-MASC, ALTERAR-IAV , ALTERAR-IDP - Estes métodos permitem efetuar alteração
do conteúdo das variáveis: COORD, TC, TAM, MASC, IAV e IDP respectivamente, de uma determinada instância do objeto Saída.
FINALIZAÇÃO - Este método permite a desativação do dispositivo Saída e utiliza a operação interna
com o mesmo nome da super-classe Dispositivo.
CLASSE: MOUSE
ESTRUTURA
A classe Mouse possui uma estrutura composta por variáveis herdadas da super-classe: Dispositivo, dada pela tupla:
< IDD , STAT > ,
além das variáveis da própria estrutura dadas pela tupla: < FRONT, CD, IDP, IDV >, onde:
FRONT indica a fronteira de atuação do Mouse composta pelas variáveis: X1 , Y1 e X2, Y2 que