00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef RIOMMEMUL_H
00019 #define RIOMMEMUL_H
00020
00021 #ifdef RIO_EMUL
00022
00023 #include <stdlib.h>
00024 #include <stdio.h>
00025 #include <unistd.h>
00026 #include <string.h>
00027 #include <iostream>
00028
00029 #include "RioInterfaceTypes.h"
00030 #include "RioInterface.h"
00031 #include "RioMMObject.h"
00032
00033 class RioMMEmul
00034 {
00035 public:
00036 RioMMEmul( const char *filename, CRioMMObject *object );
00037 virtual ~RioMMEmul();
00038 double run();
00039
00040 protected:
00041 virtual void play();
00042 virtual void pause();
00043 virtual void unpause();
00044 virtual void stop();
00045 virtual void quit();
00046 virtual void jump( int block );
00047 int getOperand( char * );
00048
00049 private:
00050 CRioMMObject *object;
00051 FILE *sessions;
00052
00053 const static int UNKNOWN = 0;
00054 const static int OPEN = 1;
00055 const static int PLAY = 2;
00056 const static int STOP = 3;
00057 const static int JUMP = 4;
00058 const static int PAUSE = 5;
00059 const static int UNPAUSE = 6;
00060 const static int QUIT = 7;
00061 };
00062 #endif //RIO_EMUL
00063 #endif //RIOMMEMUL_H