13#if HAVE_DISKIO_MODULE_AIO
16#if HAVE_DISKIO_MODULE_BLOCKING
19#if HAVE_DISKIO_MODULE_DISKDAEMON
22#if HAVE_DISKIO_MODULE_DISKTHREADS
25#if HAVE_DISKIO_MODULE_IPCIO
28#if HAVE_DISKIO_MODULE_MMAPPED
47#if HAVE_DISKIO_MODULE_AIO
48 AIODiskIOModule::GetInstance();
50#if HAVE_DISKIO_MODULE_BLOCKING
53#if HAVE_DISKIO_MODULE_DISKDAEMON
56#if HAVE_DISKIO_MODULE_DISKTHREADS
59#if HAVE_DISKIO_MODULE_IPCIO
62#if HAVE_DISKIO_MODULE_MMAPPED
77 assert(strcmp((*i)->type(), instance.
type()) != 0);
84std::vector<DiskIOModule *>
const &
90std::vector<DiskIOModule*> &
94 _Modules =
new std::vector<DiskIOModule *>;
117 if (strcasecmp(
type, (*i)->type()) == 0)
128 result =
Find(
"DiskThreads");
129 if (
nullptr == result)
130 result =
Find(
"DiskDaemon");
131 if (
nullptr == result)
132 result =
Find(
"AIO");
133 if (
nullptr == result)
134 result =
Find(
"Blocking");
static BlockingDiskIOModule & GetInstance()
static DiskDaemonDiskIOModule & GetInstance()
virtual void gracefulShutdown()=0
static DiskIOModule * Find(char const *type)
static void ModuleAdd(DiskIOModule &)
static void FreeAllModules()
std::vector< DiskIOModule * >::iterator iterator
static std::vector< DiskIOModule * > const & Modules()
static std::vector< DiskIOModule * > * _Modules
static DiskIOModule * FindDefault()
virtual char const * type() const =0
static void SetupAllModules()
static std::vector< DiskIOModule * > & GetModules()
static DiskThreadsDiskIOModule & GetInstance()
static IpcIoDiskIOModule & GetInstance()
static MmappedDiskIOModule & GetInstance()