Main Page | Class Hierarchy | Compound List | File List | Compound Members | File Members

idbase.h

Go to the documentation of this file.
00001 /*--------------------------------------------------------------------
00002  *
00003  * (C) Copyright Koninklijke Philips Electronics NV 2006. 
00004  * All rights reserved. This software is licensed under the terms of
00005  * version 2.1 of the GNU Lesser General Public License as published 
00006  * by the Free Software Foundation. For licensing and warranty
00007  * information, see the file COPYING in the main directory.
00008  *
00009  *------------------------------------------------------------------*/
00010 
00011 #ifndef ID_BASE_H
00012 #define ID_BASE_H
00013 
00014 // class IdBase : Base class for identification of objects by name and type
00015 
00016 class IdBase
00017 { 
00018 public:
00019   IdBase(const char*, IdBase*);
00020   IdBase(const IdBase&);
00021   virtual ~IdBase();
00022   
00023   IdBase& operator+(char c);
00024   IdBase& operator+(const char* str);
00025   IdBase& operator=(const IdBase&);
00026 
00027   IdBase*     parent() const;
00028   const char* name() const;
00029   const char* fullName(char* buf=0) const;
00030 
00031   operator const char*() const;
00032 
00033   IdBase id(const char*);
00034 
00035 private:
00036   char*   nm;  // name
00037   IdBase* pa;  // parent
00038 };
00039 
00040 #endif

Generated on Wed Feb 15 14:52:39 2006 for yapi by doxygen 1.3.2