00001 #ifndef _PGM_H 00002 #define _PGM_H 00003 00004 struct fileinfo; 00005 typedef struct fileinfo file_info; 00006 00007 00011 class CMulticast{ 00012 00013 public: 00017 CMulticast(const std::string& sInterface, uint32_t ip, uint16_t port); 00018 00022 virtual ~CMulticast(); 00023 00027 int SendFile(const std::string& sFileName, const std::string& sFileLoc); 00028 int SendPacket(const std::string& s); 00029 00033 static void FileReceivedCallback(fileinfo* f); 00034 00035 static void SetSocketPair(int iFd){m_iFd = iFd;} 00036 static int GetSocketPairFd(){return m_iFd;} 00037 00038 00039 private: 00040 bool m_bInit; 00041 static int m_iFd; 00042 }; 00043 00044 #endif//