/*========================================================================= Copyright 2005 Brigham and Women's Hospital (BWH) All Rights Reserved. See Doc/copyright/copyright.txt or http://www.slicer.org/copyright/copyright.txt for details. Program: Module Description Parser Module: $HeadURL: http://www.na-mic.org/svn/Slicer3/trunk/Libs/ModuleDescriptionParser/ModuleParameterGroup.h $ Date: $Date: 2006-06-20 08:02:31 -0400 (Tue, 20 Jun 2006) $ Version: $Revision: 615 $ ==========================================================================*/ #ifndef __ModuleParameterGroup_h #define __ModuleParameterGroup_h #include "ModuleDescriptionParserWin32Header.h" #include "ModuleParameter.h" #include #include class ModuleDescriptionParser_EXPORT ModuleParameterGroup { public: ModuleParameterGroup() {}; ModuleParameterGroup(const ModuleParameterGroup ¶meters); void operator=(const ModuleParameterGroup ¶meters); void SetLabel(const std::string &label) { this->Label = label; } const std::string& GetLabel() const { return this->Label; } void SetDescription(const std::string &description) { this->Description = description; } const std::string& GetDescription() const { return this->Description; } void SetAdvanced(const std::string &advanced) { this->Advanced = advanced; } const std::string& GetAdvanced() const { return this->Advanced; } void AddParameter(const ModuleParameter ¶meter) { this->Parameters.push_back(parameter); } const std::vector& GetParameters() const { return this->Parameters; } std::vector& GetParameters() { return this->Parameters; } private: std::string Label; std::string Description; std::string Advanced; std::vector Parameters; }; ModuleDescriptionParser_EXPORT std::ostream & operator<<(std::ostream &os, const ModuleParameterGroup &group); #endif