connectivity/com.nokia.tcf/native/TCFNative/TCFServer/Client.h
author chpeckha
Mon, 06 Apr 2009 15:18:48 -0500
changeset 60 9d2210c8eed2
permissions -rw-r--r--
Commit changes for 2.1.0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
60
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     1
/*
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     3
* All rights reserved.
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     4
* This component and the accompanying materials are made available
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     6
* which accompanies this distribution, and is available
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     8
*
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
     9
* Initial Contributors:
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    11
*
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    12
* Contributors:
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    13
*
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    14
* Description: 
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    15
*
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    16
*/
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    17
// Client.h: interface for the CClient class.
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    18
//
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    19
// one of these per client
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    20
//
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    21
//////////////////////////////////////////////////////////////////////
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    22
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    23
#if !defined(AFX_CLIENT_H__6BC8ADEC_683A_4924_ABD0_28B449E927C6__INCLUDED_)
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    24
#define AFX_CLIENT_H__6BC8ADEC_683A_4924_ABD0_28B449E927C6__INCLUDED_
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    25
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    26
#include "ServerClient.h"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    27
#include "InputStream.h"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    28
#include "MessageFile.h"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    29
#include "ErrorMonitorData.h"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    30
#include "TCConstants.h"
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    31
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    32
#if _MSC_VER > 1000
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    33
#pragma once
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    34
#endif // _MSC_VER > 1000
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    35
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    36
class CConnection;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    37
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    38
class CClient  
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    39
{
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    40
public:
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    41
	CClient();
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    42
	CClient(CConnection* connection, ClientOptions& options, DWORD clientId);
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    43
	virtual ~CClient();
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    44
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    45
	void Start() { m_Status = eStarted; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    46
	void Stop() { m_Status = eStopped; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    47
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    48
	BOOL IsStarted() { return (m_Status == eStarted); }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    49
	DWORD GetClientId() { return m_ClientId; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    50
	CConnection* GetConnection() { return m_Connection; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    51
	BOOL OpenStream(DestinationOptions* streamOptions);
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    52
	BOOL CloseStream();
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    53
	BOOL IsStreamOpen() { return (m_InputStream != NULL); }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    54
	CInputStream* GetInputStream() { return m_InputStream; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    55
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    56
	BOOL OpenMessageFile(DestinationOptions* messageFileOptions);
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    57
	BOOL CloseMessageFile();
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    58
	BOOL ClearMessageFile();
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    59
	BOOL IsMessageFileOpen() { return (m_MessageFile != NULL); }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    60
	CMessageFile* GetMessageFile() { return m_MessageFile; }
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    61
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    62
	eMessageDestination m_MessageDestination;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    63
	CMessageFile* m_MessageFile;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    64
	CInputStream* m_InputStream;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    65
	CErrorMonitor* m_ErrorMonitor;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    66
	CConnection* m_Connection;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    67
	ClientOptions m_Options;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    68
	eClientStatus m_Status;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    69
	DWORD m_ClientId;
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    70
};
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    71
9d2210c8eed2 Commit changes for 2.1.0
chpeckha
parents:
diff changeset
    72
#endif // !defined(AFX_CLIENT_H__6BC8ADEC_683A_4924_ABD0_28B449E927C6__INCLUDED_)