Maquina de estados

Pessoal, boa tarde!

Meu chefe pediu pra eu fazer uma especie de maquina de estados para um projetos que vamos desenvolver, ele ate me passou um exemplo de como deve ser feita mas não tenho a menor ideia de como fazer…

Segue o exemplo que ele me passou…
//declaração da máquina de estados dos registro do arquivo:
RegistryType[0].Type = REC_INICIO
RegistryType[0].Yes = -1;
RegistryType[0].No = -1;

RegistryType[1].Type = REC_HEADER_ARQ;
RegistryType[1].Yes  = 2;
RegistryType[1].No    = 0;

RegistryType[2].Type = REC_HEADER_LOT;
RegistryType[2].Yes   = 3;
RegistryType[2].No     = 0;

RegistryType[3].Type = REC_DETAIL;
RegistryType[3].Yes   = 4;
RegistryType[3].No     = 0;

RegistryType[4].Type = REC_DETAIL;
RegistryType[4].Yes   = 4;
RegistryType[4].No     = 5

    RegistryType[5].Type = REC_TRAILER_LOT;
RegistryType[5].Yes  = 6
RegistryType[5].No    = 0;

    RegistryType[6].Type = REC_HEADER_LOT;
RegistryType[6].Yes  = 3;
RegistryType[6].No    = 7;

RegistryType[7].Type = REC_TRAILER_ARQ;
RegistryType[7].Yes   = 8;
RegistryType[7].No     = 0;

RegistryType[8].Type = REC_FIM
RegistryType[8].Yes  = 0;
RegistryType[8].No   = 0;

Alguem pode me dar uma luz???
Deve ser feito com switch/case???

Valeu…

Primeiramente, para entender maquina de estados voce deveria dar uma olhada no conceito na UML. E provavelmente voce vai utilizar um switch case ou if o que ficar melhor para voce, que respondera de acordo com o estado em que sua aplicação estiver, de acordo com o que estará sendo executado.

Vou ver se encontro um pdf que meu professor me passou na facul, mas só poderei te enviar no minimo amanhã, pois está em casa, passe seu e-mail

Eu consegui fazer com switch case e if/else…

Amanhã posto aqui como eu fiz…

Mas valeu pela ajuda…