blob: 948a4462d04c8e71cdcd25841e3b95a7a8f25241 [file] [log] [blame] [raw]
/***************************************************************************
devreaderfactory.h
-------------------
begin : Fri Nov 16 2007
copyright : (C) 2007 - 2012 by Roland Riegel
email : feedback@roland-riegel.de
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef IBDEVREADERFACTORY_H
#define IBDEVREADERFACTORY_H
#include <string>
#include <map>
class DevReader;
class InfiniBandDevReaderFactory
{
public:
InfiniBandDevReaderFactory();
~InfiniBandDevReaderFactory();
static int findAllDevices();
static int getDeviceCount();
static const std::map<std::string, DevReader *> &getAllDevReaders();
private:
static DevReader* createDevReader(const std::string& deviceName);
static std::map<std::string, DevReader*> m_devReaders;
static InfiniBandDevReaderFactory m_instance;
};
#endif