cpolymorphic.h

00001 //==========================================================================
00002 //  CPOLYMORPHIC.H - part of
00003 //                     OMNeT++/OMNEST
00004 //            Discrete System Simulation in C++
00005 //
00006 //  Declaration of the following classes:
00007 //    cPolymorphic : general base class
00008 //
00009 //==========================================================================
00010 
00011 /*--------------------------------------------------------------*
00012   Copyright (C) 1992-2005 Andras Varga
00013 
00014   This file is distributed WITHOUT ANY WARRANTY. See the file
00015   `license' for details on this and other legal matters.
00016 *--------------------------------------------------------------*/
00017 
00018 #ifndef __CPOLYMORPHIC_H
00019 #define __CPOLYMORPHIC_H
00020 
00021 #include <string>
00022 #include "defs.h"
00023 #include "util.h"
00024 
00025 class cStructDescriptor;
00026 
00051 class SIM_API cPolymorphic
00052 {
00053   public:
00054     // internal: creates and returns a descriptor object for this object passed
00055     // as argument. This version return an instance of the class className()+
00056     // "Descriptor".
00057     virtual cStructDescriptor *createDescriptor();
00058 
00059   public:
00064     cPolymorphic() {}
00065 
00071     virtual ~cPolymorphic() {}
00072 
00078     virtual const char *className() const;
00079 
00082 
00087     virtual const char *fullName() const;
00088 
00095     virtual std::string fullPath() const;
00096 
00106     virtual std::string info() const;
00107 
00112     virtual void info(char *buf);
00113 
00120     virtual std::string detailedInfo() const;
00121 
00127     virtual cPolymorphic *dup() const;
00129 };
00130 
00131 #endif
00132 

Generated on Sat Oct 21 17:47:55 2006 for OMNeT++/OMNEST Simulation Library by  doxygen 1.4.6