Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

AttributeGroup.h

Go to the documentation of this file.
00001 /* 
00002  * wsdlpull - A C++ parser  for WSDL  (Web services description language)
00003  * Copyright (C) 2005-2007 Vivek Krishna
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Library General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2 of the License, or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Library General Public
00016  * License along with this library; if not, write to the Free
00017  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00018  *
00019  */
00020 
00021 #ifndef ATTRIBUTEGROUP_H
00022 
00023 #define ATTRIBUTEGROUP_H
00024 // *********************************************************************
00025 // Include files:
00026 // *********************************************************************
00027 #include <list>
00028 #include "schemaparser/Schema.h"
00029 #include "schemaparser/Attribute.h"
00030 
00031 namespace Schema {
00032 class AttributeGroup
00033 {
00034  public:
00035   AttributeGroup();
00036   AttributeGroup(const std::string & n);
00037   void addAttribute(const Attribute& a);
00038   std::string getName()const;
00039   std::list<Attribute>::iterator begin();
00040   std::list<Attribute>::iterator end();
00041 
00042  private:
00043   std::list<Attribute> att_list;
00044   std::string name;
00045   
00046 };
00047 
00048 inline
00049 AttributeGroup::AttributeGroup(const std::string & n)
00050   :name(n)
00051 {
00052   att_list.clear();
00053 }
00054 
00055 inline
00056 void
00057 AttributeGroup::addAttribute(const Attribute& a)
00058 {
00059   att_list.push_back(a);
00060 }
00061 
00062 inline
00063 std::list<Attribute>::iterator
00064 AttributeGroup::begin()
00065 {
00066  return att_list.begin();
00067 }
00068 
00069 inline
00070 std::list<Attribute>::iterator
00071 AttributeGroup::end()
00072 {
00073  return att_list.end();
00074 }
00075    
00076 inline
00077 std::string
00078 AttributeGroup::getName()const
00079 {
00080   return name;
00081 }
00082 }
00083 #endif // ATTRIBUTEGROUP_H

Generated on Mon Feb 6 23:02:42 2006 for wsdlpull by  doxygen 1.3.9.1