Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

importable_object.hpp

Go to the documentation of this file.
00001 //
00002 // See license.txt for license information.
00003 //
00004 // importable_object.hpp
00005 //
00006 // 17-Mar-2006  phamilton  Created
00007 //
00008 
00009 #ifndef incCOMMON_IMPORTABLE_OBJECT
00010 #define incCOMMON_IMPORTABLE_OBJECT
00011 
00012 // forwards
00013 #include <string>
00014 #include "object.hpp"
00015 
00016 namespace ph {
00017 namespace common {
00018 
00019 // forwards
00020 
00021 class importable_object_base
00022 /**
00023         Abstract class representing the interface for an object that can be imported.
00024 */
00025 {
00026 public:
00027         virtual ~importable_object_base() {}
00028                 
00029         virtual void setname(const std::string &name) = 0;
00030                 //!< During importing, an object that can pretend to be another may have it's
00031                 //! name set directly.
00032                 
00033         virtual void addparam(const std::string &name, const std::string &value) = 0;
00034                 //!< During importing, an object that can pretend to be another may have it's
00035                 //! a parameter added to it. This is usually replaced in the text of
00036                 //! values during the import.
00037 };
00038 
00039 }; // common
00040 }; // ph
00041 
00042 #endif // incCOMMON_IMPORTABLE_OBJECT

Generated on Wed Apr 5 22:03:24 2006 for cppxmlobj by  doxygen 1.4.3