Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

/home/pauldt/projects/IDEA/IDEA-ALL/IDEA-DEV/Core/PlanServer/Includes/PslModelManagerImpl.hh

Go to the documentation of this file.
00001 // -*- Mode: C++ -*-
00002 //      CVS: $Id: PslModelManagerImpl.hh,v 1.6 2005/11/23 00:29:30 rijsman Exp $
00003 //      Tag: $name$
00004 //     Info: $CVSROOT/IDEA-DEV/COPYRIGHT
00005 #ifndef PSL_MODEL_MANAGER_IMPL_HEADER_
00006 #define PSL_MODEL_MANAGER_IMPL_HEADER_
00007 
00008 #include "Utilities.hh"
00009 #include "PslConstantTypes.hh"
00010 #include "PslContainers.hh"
00011 
00012 namespace IDEA
00013 {
00014   class PslAttribute;
00015   class PslConstant;
00016   class PslDatabase;
00017   class PslLabelSet;
00018   class PslLabelSetImpl;
00019   class PslObjectClass;
00020   class PslObjectClassImpl;
00021   class PslPredicate;
00022 
00030   class PslModelManagerImpl
00031   {
00032   public:
00036     PslModelManagerImpl();
00040     virtual ~PslModelManagerImpl();
00044     const PslLabelSet* createLabelSet( const std::string& name, const StringSet& values );
00048     const PslObjectClass* createObjectClass( const std::string& name );
00052     const PslLabelSet* getLabelSet( const std::string& name ) const;
00053     /*
00054       \brief Returns an instance of PslObjectClass, returns 0 if it doesn't exist.
00055     */
00056     const PslObjectClass* getObjectClass( const std::string& name ) const;
00060     const PslPredicate* getPredicate( const std::string& name ) const;
00064     const PslAttributeList getAttributes( const std::string& name ) const;
00068     void print( std::ostream& os ) const;
00072     void getClasses(String2ObjectClassMap & classMap) const;
00073   private:
00077     String2ObjectClassMap m_ObjectClasses;
00081     typedef std::map< std::string, PslLabelSet* > String2PslLabelSet;
00085     String2PslLabelSet m_LabelSets;
00086   };
00087 }
00088 
00089 #endif //PSL_MODEL_MANAGER_IMPL_HEADER_

Contact information
© IDEA
Generated on Fri Feb 3 17:09:41 2006 for IDEA.