Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

382 lines
9.6 KiB

#ifndef __MESSAGES_HPP__
#define __MESSAGES_HPP__
enum
{
MBFTMSG_CREATE_ENGINE = WM_APP + 1,
MBFTMSG_DELETE_ENGINE = WM_APP + 2,
MBFTMSG_HEART_BEAT = WM_APP + 3,
MBFTMSG_BASIC = WM_APP + 4,
};
typedef enum
{
EnumMCSChannelAdmitIndicationMsg,
EnumMCSChannelExpelIndicationMsg,
EnumMCSChannelJoinConfirmMsg,
EnumMCSChannelConveneConfirmMsg,
EnumMCSSendDataIndicationMsg,
EnumGenericMBFTPDUMsg,
EnumCreateSessionMsg,
EnumDeleteSessionMsg,
EnumPeerDeletedMsg,
EnumSubmitFileSendMsg,
EnumFileOfferNotifyMsg,
EnumFileTransferControlMsg,
EnumFileTransmitMsg,
EnumFileErrorMsg,
EnumPeerMsg,
EnumInitUnInitNotifyMsg,
EnumFileEventEndNotifyMsg,
}
MBFT_MSG_TYPE;
class MBFTMsg
{
public:
MBFTMsg(MBFT_MSG_TYPE eMsgType) : m_eMsgType(eMsgType) { }
virtual ~MBFTMsg(void);
MBFT_MSG_TYPE GetMsgType(void) { return m_eMsgType; }
protected:
MBFT_MSG_TYPE m_eMsgType;
};
class MCSChannelAdmitIndicationMsg : public MBFTMsg
{
public:
MCSChannelAdmitIndicationMsg(T120ChannelID wChannelId, T120UserID ManagerID) :
MBFTMsg(EnumMCSChannelAdmitIndicationMsg),
m_wChannelId(wChannelId),
m_ManagerID(ManagerID)
{
}
T120ChannelID m_wChannelId;
T120UserID m_ManagerID;
};
class MCSChannelExpelIndicationMsg : public MBFTMsg
{
public:
MCSChannelExpelIndicationMsg(T120ChannelID wChannelId, Reason iReason) :
MBFTMsg(EnumMCSChannelExpelIndicationMsg),
m_wChannelId(wChannelId),
m_iReason(iReason)
{
}
T120ChannelID m_wChannelId;
Reason m_iReason;
};
class MCSChannelJoinConfirmMsg : public MBFTMsg
{
public:
MCSChannelJoinConfirmMsg(T120ChannelID wChannelId, BOOL bSuccess) :
MBFTMsg(EnumMCSChannelJoinConfirmMsg),
m_wChannelId(wChannelId),
m_bSuccess(bSuccess)
{
}
T120ChannelID m_wChannelId;
BOOL m_bSuccess;
};
class MCSChannelConveneConfirmMsg : public MBFTMsg
{
public:
MCSChannelConveneConfirmMsg(T120ChannelID wChannelId, BOOL bSuccess) :
MBFTMsg(EnumMCSChannelConveneConfirmMsg),
m_wChannelId(wChannelId),
m_bSuccess(bSuccess)
{
}
T120ChannelID m_wChannelId;
BOOL m_bSuccess;
};
class MCSSendDataIndicationMsg : public MBFTMsg
{
public:
MCSSendDataIndicationMsg(T120ChannelID wChannelId,
T120Priority iPriority,
T120UserID SenderID,
LPBYTE lpBuffer,
ULONG ulDataLength,
BOOL IsUniformSendData);
T120ChannelID m_wChannelId;
T120Priority m_iPriority;
T120UserID m_SenderID;
LPBYTE m_lpBuffer;
ULONG m_ulDataLength;
BOOL m_IsUniformSendData;
};
class MBFTPDUMsg : public MBFTMsg
{
public:
MBFTPDUMsg(T120ChannelID wChannelId,
T120Priority iPriority,
T120UserID SenderID,
LPGENERICPDU lpNewPDU,
BOOL IsUniformSendData,
MBFTPDUType PDUType,
LPSTR lpDecodedBuffer);
~MBFTPDUMsg(void);
T120ChannelID m_wChannelId;
T120Priority m_iPriority;
T120UserID m_SenderID;
LPGENERICPDU m_lpNewPDU;
BOOL m_IsUniformSendData;
MBFTPDUType m_PDUType;
LPSTR m_lpDecodedBuffer;
};
class CreateSessionMsg : public MBFTMsg
{
public:
CreateSessionMsg(MBFT_SESSION_TYPE iSessionType,
MBFTEVENTHANDLE EventHandle,
T120SessionID SessionID = 0,
T120ChannelID wControlChannel = 0,
T120ChannelID wDataChannel = 0,
T120UserID SenderID = 0,
MBFTFILEHANDLE FileHandle = 0);
MBFT_SESSION_TYPE m_iSessionType;
MBFTEVENTHANDLE m_EventHandle;
T120SessionID m_SessionID;
T120ChannelID m_ControlChannel;
T120ChannelID m_DataChannel;
T120UserID m_SenderID;
MBFTFILEHANDLE m_FileHandle;
};
class MBFTSession;
class DeleteSessionMsg : public MBFTMsg
{
public:
DeleteSessionMsg(MBFTSession * lpDeleteSession) :
MBFTMsg(EnumDeleteSessionMsg),
m_lpDeleteSession(lpDeleteSession)
{
}
MBFTSession * m_lpDeleteSession;
};
class CPeerData;
class PeerDeletedMsg : public MBFTMsg
{
public:
PeerDeletedMsg(CPeerData * lpPeerData) :
MBFTMsg(EnumPeerDeletedMsg),
m_lpPeerData(lpPeerData)
{
}
~PeerDeletedMsg(void);
CPeerData * m_lpPeerData;
};
class SubmitFileSendMsg : public MBFTMsg
{
public:
SubmitFileSendMsg::SubmitFileSendMsg(T120UserID uidReceiver,
T120NodeID nidReceiver,
LPCSTR pszFilePath,
MBFTFILEHANDLE nFileHandle,
MBFTEVENTHANDLE EventHandle,
BOOL bCompressFiles);
~SubmitFileSendMsg(void);
T120UserID m_nUserID;
T120NodeID m_nNodeID;
LPSTR m_pszFilePath;
MBFTFILEHANDLE m_nFileHandle;
MBFTEVENTHANDLE m_EventHandle;
BOOL m_bCompressFiles;
};
class FileOfferNotifyMsg : public MBFTMsg
{
public:
FileOfferNotifyMsg(MBFTEVENTHANDLE EventHandle,
T120UserID SenderID,
T120NodeID NodeID,
MBFTFILEHANDLE hFile,
LPCSTR lpszFilename,
ULONG FileSize,
time_t FileDateTime,
BOOL bAckNeeded);
MBFTEVENTHANDLE m_EventHandle;
MBFTFILEHANDLE m_hFile;
ULONG m_FileSize;
time_t m_FileDateTime;
BOOL m_bAckNeeded;
T120UserID m_SenderID;
T120NodeID m_NodeID;
char m_szFileName[_MAX_PATH];
};
class FileTransferControlMsg : public MBFTMsg
{
public:
enum FileTransferControl
{
EnumAcceptFile,
EnumRejectFile,
EnumAbortFile,
EnumConductorAbortFile
};
FileTransferControlMsg(MBFTEVENTHANDLE EventHandle,
MBFTFILEHANDLE hFile,
LPCSTR lpszDirectory,
LPCSTR lpszFileName,
FileTransferControl iControlCommand);
MBFTEVENTHANDLE m_EventHandle;
MBFTFILEHANDLE m_hFile;
FileTransferControl m_ControlCommand;
char m_szDirectory[_MAX_PATH];
char m_szFileName[_MAX_FNAME];
};
class FileTransmitMsg : public MBFTMsg
{
public:
FileTransmitMsg(MBFTEVENTHANDLE EventHandle,
MBFTFILEHANDLE hFile,
ULONG FileSize,
ULONG BytesTransmitted,
int iTransmitStatus,
T120UserID iUserID = 0,
BOOL bIsBroadcastEvent = FALSE);
MBFTEVENTHANDLE m_EventHandle;
MBFTFILEHANDLE m_hFile;
ULONG m_FileSize;
ULONG m_BytesTransmitted;
T120UserID m_UserID;
int m_TransmitStatus;
BOOL m_bIsBroadcastEvent;
};
class FileErrorMsg : public MBFTMsg
{
public:
FileErrorMsg(MBFTEVENTHANDLE EventHandle,
MBFTFILEHANDLE hFile,
int iErrorType,
int iErrorCode,
BOOL bIsLocalError,
T120UserID iUserID = 0,
BOOL bIsBroadcastEvent = FALSE,
const char* pFileName = NULL,
ULONG nFileSize = 0);
MBFTEVENTHANDLE m_EventHandle;
MBFTFILEHANDLE m_hFile;
int m_ErrorCode;
int m_ErrorType;
BOOL m_bIsLocalError;
T120UserID m_UserID;
BOOL m_bIsBroadcastEvent;
MBFT_RECEIVE_FILE_INFO m_stFileInfo;
};
class PeerMsg : public MBFTMsg
{
public:
enum PeerChange
{
EnumPeerAdded,
EnumPeerRemoved
};
PeerMsg(T120NodeID NodeID,
T120UserID MBFTPeerID,
BOOL bIsLocalPeer,
BOOL IsProsharePeer,
LPCSTR lpszAppKey,
BOOL bPeerAdded,
T120SessionID MBFTSessionID);
T120NodeID m_NodeID;
T120UserID m_MBFTPeerID;
BOOL m_bIsLocalPeer;
BOOL m_bIsProsharePeer;
T120SessionID m_MBFTSessionID;
BOOL m_bPeerAdded;
char m_szAppKey[MAX_APP_KEY_SIZE];
};
enum InitUnInitNotifyType
{
EnumInitFailed,
EnumUnInitComplete,
EnumInvoluntaryUnInit
};
class InitUnInitNotifyMsg : public MBFTMsg
{
public:
InitUnInitNotifyMsg(InitUnInitNotifyType iNotifyMessage) :
MBFTMsg(EnumInitUnInitNotifyMsg),
m_iNotifyMessage(iNotifyMessage)
{
}
InitUnInitNotifyType m_iNotifyMessage;
};
class FileEventEndNotifyMsg : public MBFTMsg
{
public:
FileEventEndNotifyMsg(MBFTEVENTHANDLE EventHandle) :
MBFTMsg(EnumFileEventEndNotifyMsg),
m_EventHandle(EventHandle)
{
}
MBFTEVENTHANDLE m_EventHandle;
};
#endif //__MESSAGES_HPP__