MTK++ Latest version: 0.2.0

stdLibrary.h
Go to the documentation of this file.
00001 
00033 #ifndef STDLIBRARY_h
00034 #define STDLIBRARY_h
00035 
00036 #include <iostream>
00037 #include <string>
00038 #include <vector>
00039 #include <map>
00040 
00041 namespace MTKpp
00042 {
00043 
00044 class stdGroup;
00045 class stdFrag;
00046 
00047 // ============================================================
00048 // Class : stdLibrary()
00049 // ------------------------------------------------------------
00050 // Class stdLibrary - Container for stdGroup.
00051 // ============================================================
00052 
00053 class stdLibrary
00054 {
00055 protected:
00059     stdLibrary();
00060 
00064     virtual ~stdLibrary();
00065 
00066 public:
00067     /*
00068      * Returns the singleton for the stdLibrary.  It will be used by all collections
00069      *
00070      */
00071     static stdLibrary* getInstance();
00072 
00077     void                     setName(const std::string& n);
00078 
00083     std::string              getName();
00084 
00089     virtual stdGroup*        addStdGroup();
00090 
00096     virtual stdGroup*        getStdGroup(const std::string& n);
00097 
00102     std::vector<stdGroup*>   getStdGroupList();
00103 
00109     stdFrag*                 getStdFrag(const std::string& fragName);
00110 
00117     stdFrag*                 getStdFrag(const std::string& fragName,
00118                                         const std::string& grpName);
00119 
00124     int                      getNumberStdFrag();
00125 
00131     void                     setL(std::string lll, std::string l);
00132 
00138     std::string              getL(std::string lll);
00139 
00143     void                     generateSimpleFP();
00144 
00148     void                     generateAdjMatrices();
00149 
00153     void                     generateAtomKinds();
00154 
00155     bool hasSimpleFPGenerated() {return this->bSimpleFPGenerated;}
00156     bool hasAdjMatricesGenerated() {return this->bAdjMatricesGenerated;}
00157     bool hasAtomKindsGenerated() {return this->bAtomKindsGenerated;}
00158 
00159 protected:
00161     std::string              itsName;
00162 
00164     typedef std::vector<stdGroup*>::iterator stdGroupIterator;
00165 
00167     std::vector<stdGroup*>   itsStdGroupList;
00168 
00170     stdGroup*                pStdGroup;
00171 
00173     stdFrag*                 pStdFrag;
00174 
00176     std::map<std::string, std::string>   LLL2L;
00177 
00179     bool bSimpleFPGenerated;
00180 
00182     bool bAdjMatricesGenerated;
00183 
00185     bool bAtomKindsGenerated;
00186 };
00187 
00188 } // MTKpp namespace
00189 
00190 #endif // STDLIBRARY_H
00191 

Generated on Fri Dec 23 2011 09:28:52 for MTK++ by Doxygen 1.7.5.1