00001 #ifndef wali_nwa_ClientInfo_GUARD 00002 #define wali_nwa_ClientInfo_GUARD 1 00003 00004 /** 00005 * @author Amanda Burton 00006 */ 00007 00008 // ::wali 00009 #include "wali/Countable.hpp" 00010 #include "opennwa/NwaFwd.hpp" 00011 00012 namespace opennwa 00013 { 00014 /* 00015 * 00016 * This class is a placeholder for any additional information that you might want to 00017 * associate with a state. It must be extended for the client's specific needs. 00018 * 00019 */ 00020 class ClientInfo : public wali::Countable 00021 { 00022 public: 00023 /// Allocates and returns a new ClientInfo object that is a copy 00024 /// of this one. 00025 virtual ClientInfo* clone() = 0; 00026 00027 /// Clones this ClientInfo object and returns a ref_ptr to it 00028 /// instead of a normal pointer. 00029 virtual ref_ptr<ClientInfo> cloneRp() 00030 { 00031 return ref_ptr<ClientInfo>(clone()); 00032 } 00033 }; 00034 00035 } 00036 00037 00038 // Yo, Emacs! 00039 // Local Variables: 00040 // c-file-style: "ellemtel" 00041 // c-basic-offset: 2 00042 // End: 00043 00044 #endif