Alida-C++ 0.1
|
00001 /* 00002 * This file is part of Alida-C++ library for 00003 * 00004 * Advanced Library for Integrated Development of Data Analysis Applications. 00005 * 00006 * Copyright (C) 2012 - @YEAR@ 00007 * 00008 * This program is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU General Public License as published by 00010 * the Free Software Foundation, either version 3 of the License, or 00011 * (at your option) any later version. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU General Public License 00019 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00020 * 00021 * Fore more information on Alida, visit 00022 * 00023 * http://www.informatik.uni-halle.de/alida/ 00024 * 00025 */ 00026 00027 /* 00028 * Most recent change(s): 00029 * 00030 * $Rev: 47 $ 00031 * $Date: 2012/03/06 20:50:22 $ 00032 * $Author: posch $ 00033 * 00034 */ 00035 00036 #ifndef OPPARAMETERDESCRIPTOR_H_INCLUDED 00037 #define OPPARAMETERDESCRIPTOR_H_INCLUDED 00038 00047 #include <string> 00048 #include <typeinfo> 00049 00050 namespace Alida { 00051 00053 typedef enum { PARAMETER_IN, 00054 PARAMETER_OUT, 00055 PARAMETER_INOUT} ALDParameterDirection; 00056 00058 class ALDOpParameterDescriptor 00059 { 00060 public: 00061 00063 const std::string name; 00065 const std::string typeIdStr; 00067 const std::string typeNiceName; 00069 const ALDParameterDirection direction; 00071 const bool required; 00073 const bool supplemental; 00075 const std::string label; 00077 const std::string explanation; 00079 const void* defaultValue; 00081 void* value; 00082 00084 ALDOpParameterDescriptor( std::string _name, std::string _typeIdStr, 00085 std::string _typeNiceName, ALDParameterDirection _direction, 00086 bool _required, bool _supplemental, std::string _label, 00087 std::string _explanation, void* _defaultValue); 00088 00090 ~ALDOpParameterDescriptor() { 00091 //TODO: delete value and defaultValue 00092 } 00093 }; 00094 00095 } 00096 00097 #endif /* OPPARAMETERDESCRIPTOR_H_INCLUDED */