00001 /* 00002 Copyright 2007, 2008, 2009, 2010, 2011 Instituto de Sistemas e Robotica, Instituto Superior Tecnico 00003 00004 This file is part of MeRMaID. 00005 00006 MeRMaID is free software: you can redistribute it and/or modify 00007 it under the terms of the GNU Lesser General Public License as published by 00008 the Free Software Foundation, either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 MeRMaID is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU Lesser General Public License for more details. 00015 00016 You should have received a copy of the GNU Lesser General Public License 00017 along with MeRMaID. If not, see <http://www.gnu.org/licenses/>. 00018 */ 00019 00020 00021 00022 #ifndef _DEVICE_CONFIGURATOR_HPP_ 00023 #define _DEVICE_CONFIGURATOR_HPP_ 00024 00025 namespace mermaid 00026 { 00027 namespace support 00028 { 00029 namespace io 00030 { 00031 00032 /** 00033 * @Class DeviceConfigurator DeviceConfigurator.hpp "DeviceConfigurator.hpp" 00034 * @Description DeviceConfigurator class 00035 * 00036 * This is the class which configures devices 00037 * @Author Joao Carreira 00038 */ 00039 class DeviceConfigurator 00040 { 00041 public: 00042 00043 /** 00044 * @Description Constructor. 00045 * 00046 * @Author Joao Carreira 00047 */ 00048 DeviceConfigurator(); 00049 00050 /** 00051 * @Description Configure a device 00052 * 00053 * @Argument fileDescriptor The file descriptor to be configured 00054 * Configure the given device 00055 * @Author Joao Carreira 00056 */ 00057 virtual void configureDevice (int fileDescriptor); 00058 00059 /** 00060 * @Description Destructor. 00061 * @Author Joao Carreira 00062 */ 00063 virtual ~DeviceConfigurator(); 00064 private: 00065 00066 }; // class DeviceConfigurator 00067 00068 } // namespace io 00069 } // namespace support 00070 } // namespace mermaid 00071 00072 #endif //_DEVICE_CONFIGURATOR_HPP_