home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Troubleshooting Netware Systems
/
CSTRIAL0196.BIN
/
attach
/
msj
/
v10n08
/
oleq0895.exe
/
ARB.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-08-01
|
903b
|
39 lines
#ifndef _ARB_H
#define _ARB_H
#include "SSDA.h"
extern const UINT WM_ACTIVECHANGING;
class Arbitrator {
public:
Arbitrator(REFCLSID rclsid, LPCTSTR szName);
~Arbitrator(void);
// register and revoke an object
void RegisterObject(LPUNKNOWN punk);
void RevokeObject(LPUNKNOWN punk);
// inform arbitrator when thread is going UI foreground/background
void SuspendApp(void);
void ResumeApp(void);
// inform arbitrator that WM_ACTIVECHANGING message
void ActiveChanging(void);
private:
// used internally to broadcast WM_ACTIVECHANGING message
void PostChangeMessage(void);
DWORD m_dwReg; // the key used by RegisterActiveObject
BOOL m_bIsRegistered; // is our object actually registered?
LPUNKNOWN m_punk; // our object
const CLSID m_clsid; // our CLSID
SharedSortedDWORDArray m_threadIds; // the thread id array
};
#endif