# opalzrtp.h

Go to the documentation of this file.

    00001 #ifndef __OPALZRTP_H
    00002 #define __OPALZRTP_H
    00003
    00004 #ifdef P_USE_PRAGMA
    00005 #pragma interface
    00006 #endif
    00007
    00008 #include <zrtp.h>
    00009 #include <opal/buildopts.h>
    00010 #include <zrtp/zrtpeventproc.h>
    00011
    00012 namespace PWLibStupidLinkerHacks {
    00013   extern int libZRTPLoader;
    00014 };
    00015
    00016 class OpalZrtp {
    00017   public:
    00018         static bool Init(char *name, char *zidFile);
    00019         static bool Init(OpalZrtp *opalZrtp);
    00020         static bool DeInit();
    00021
    00022         static zrtp_global_ctx *GetZrtpContext();
    00023         static unsigned char *GetZID();
    00024         static void SetEventProcessor(ZrtpEventProcessor *eventProcessor);
    00025         static ZrtpEventProcessor * GetEventProcessor();
    00026
    00027         virtual ~OpalZrtp();
    00028
    00029   protected:
    00030         virtual unsigned char *DoGetZID();
    00031         virtual zrtp_global_ctx *DoGetZrtpContext();
    00032         virtual bool DoInit(char *name, char *zidFile);
    00033
    00034   private:
    00035         static OpalZrtp *instance;
    00036         static int              isDefault;
    00037         static ZrtpEventProcessor *eventProcessor;
    00038 };
    00039
    00040
    00041
    00042 #endif //__OPALZRTP_H