char * Send_Command( Select_Reader * Reader, COMMAND Command, char * Data) { char * Reader_Reply; // reader does not exist or command execution is impossible if( ! Reader || ! Reader -> Commands [Command].Procedure) return( "N??00"); if( Command == INITIALIZE) Reader -> State = USABLE; return( (* Reader -> Commands[Command].Procedure) ( Reader, Reader -> Commands[Command].Parameter ? Reader -> Commands[Command].Parameter : Data)); };