#ifndef _XSN_DATA_STORAGE #define _XSN_DATA_STORAGE #include "SoundNotifyData.h" #include #include class SoundNotifyDataStorage { public: SoundNotifyDataStorage(PLUGINLINK * pl); void init(); void commit(); ProtocolTable & getData(); protected: void addContact(HANDLE contact); xsn_string getContactId(HANDLE contact, const ModuleString & module, const ProtocolString & proto); void registerProtocols(); private: PLUGINLINK * pluginLink; ProtocolTable _protocolTable; ModuleConvertTable _moduleTable; typedef boost::function getContactIdFunc; typedef std::unordered_map RegisteredProtocols; RegisteredProtocols _registeredProtocols; }; #endif