SMREmulator 1.0
ShingledMagneticRecordingEmulator
|
00001 00010 #ifndef __EMUVERSION_H_ 00011 #define __EMUVERSION_H_ 00012 00013 #include <stdarg.h> 00014 00015 #include <emudebug.h> 00016 #include <emuerror.h> 00017 #include <emutypes.h> 00018 #include <emudiskimg.h> 00019 00020 00021 00022 /* -- Macro Definitions -- */ 00023 00027 #define MAX_EDI_VERSION 0 00028 00029 00030 00031 /* -- Type Definitions -- */ 00032 typedef struct { 00033 int (*create)(int, va_list); 00034 int (*dump)(int); 00035 int (*open)(int); 00036 int (*close)(int); 00037 int (*modesense)(int, inq_t, void*); 00038 int (*managebands)(int, svc_act_t, band_t*, rba_t*, int); 00039 int (*read)(int, band_t, rba_t, char*, rba_t); 00040 int (*write)(int, band_t, rba_t, char*, rba_t); 00041 }edi_vops_t; 00042 00043 00044 00045 /* -- Global Variables -- */ 00046 edi_vops_t* edi_versions[MAX_EDI_VERSION + 1]; 00047 00048 00049 00050 /* -- Function Prototypes -- */ 00051 int ediv_init(); 00052 int ediv_is_valid(uint32_t); 00053 00054 00055 00056 #endif /* __EMUVERSION_H_ */