mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-09-24 15:54:12 +00:00
52 lines
820 B
C
52 lines
820 B
C
|
#pragma once
|
||
|
|
||
|
#include <bfc/dispatch.h>
|
||
|
#include <windows.h> //need this for Sleep()
|
||
|
|
||
|
class ifc_authcallback : public Dispatchable
|
||
|
{
|
||
|
protected:
|
||
|
ifc_authcallback() {}
|
||
|
~ifc_authcallback() {}
|
||
|
public:
|
||
|
int OnConnecting();
|
||
|
int OnSending();
|
||
|
int OnReceiving();
|
||
|
// pump your message loop for a little while
|
||
|
int OnIdle();
|
||
|
|
||
|
enum
|
||
|
{
|
||
|
ONCONNECTING=0,
|
||
|
ONSENDING=1,
|
||
|
ONRECEIVING=2,
|
||
|
ONIDLE=3,
|
||
|
};
|
||
|
};
|
||
|
|
||
|
inline int ifc_authcallback::OnConnecting()
|
||
|
{
|
||
|
return _call(ONCONNECTING, (int)0);
|
||
|
}
|
||
|
inline int ifc_authcallback::OnSending()
|
||
|
{
|
||
|
return _call(ONSENDING, (int)0);
|
||
|
}
|
||
|
inline int ifc_authcallback::OnReceiving()
|
||
|
{
|
||
|
return _call(ONRECEIVING, (int)0);
|
||
|
}
|
||
|
inline int ifc_authcallback::OnIdle()
|
||
|
{
|
||
|
int retval;
|
||
|
if (_dispatch(ONIDLE, &retval))
|
||
|
return retval;
|
||
|
else
|
||
|
{
|
||
|
// default implementation
|
||
|
Sleep(50);
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
}
|