[ First ]  [ Previous ]  [ Next ]  [ Last ]  [ Manuals ]

 

LMacTCPUDPEndpoint



Overview:

LMacTCPUDPEndpoint is a PowerPlant class that is an implementation of LTCPEndpoint that communicates with MacTCP.

Methods :

The methods in this class are:

 

LMacTCPUDPEndpoint()  
~LMacTCPUDPEndpoint()  
AbortThreadOperation()  
AckSends()  
Bind()  
DontAckSends()  
GetLocalAddress()  
GetState()  
Int_HandleAsyncEvent()  
Int_UDPNotifyProc()  
IsAckingSends()  
ReceiveFrom()  
SendPacketData()  
Unbind()  

Data Members:

The data members in this class are:

 

mUDPStream  
mLocalAddress  
mAckSends  
mEndpointState  
mReceiveBuffer  
mReceiveBufferSize  
mMessageQueue  
mSharedPool  
mSendQueue  
sUDPNotifyUPP  

Operation:

We recommend that you do not make a subclass of this class.

Source files:

(Networking Classes)

LMacTCPUDPEndpoint.h

LMacTCPUDPEndpoint.cp

See also:

LTCPEndpoint

LUDPEndpoint

LGlobalsContext

LCleanupTask

LMacTCPUDPEndpoint()

Purpose:

The constructor creates the object.

Access :

Public

Prototype:

LMacTCPUDPEndpoint(UInt32 inReceiveBufferSize);
Parameters:

This constructor has the following parameter:

 

UInt32  
inReceiveBufferSize  
This is the size of the receive buffer.  

~LMacTCPUDPEndpoint()

Purpose:

The destructor destroys the object.

Access :

Virtual, Public

Prototype:

virtual ~LMacTCPUDPEndpoint();
Parameters:

None

AbortThreadOperation()

Purpose:

Abort the thread operation.

Access :

Virtual, Public

Prototype:

virtual void AbortThreadOperation(
   LThread * inThread);
Parameters:

This method has the following parameter:

 

LThread*  
inThread  
This is the thread.  

Return:

None

AckSends()

Purpose:

Enable the sending of acknowledgements.

Access :

Virtual, Public

Prototype:

virtual void AckSends();
Parameters:

None

Return:

None

Bind()

Purpose:

Bind an address.

Access :

Virtual, Public

Prototype:

virtual void Bind( 
   LInternetAddress& inLocalAddress,
	UInt32 inListenQueueSize,

	Boolean inReusePort );
Parameters:

This method has the following parameter:

 

LInternetAddress&  
inLocalAddress  
The local address.  
UInt32  
inListenQueueSize  
The size of the listen queue.  
Boolean  
inReusePort  
Whether to reuse the port.  

Return:

None

DontAckSends()

Purpose:

Turn off the generation of acknowledgments.

Access :

Virtual, Public

Prototype:

virtual void DontAckSends();
Parameters:

None

Return:

None

GetLocalAddress()

Purpose:

Obtain the local address, held in mLocalAddress.

Access :

Virtual, Public

Prototype:

LInternetAddress* GetLocalAddress();
Parameters:

None

Return:

The local address.

GetState()

Purpose:

Retrieve the endpoint state, stored in mEndpointState.

Access :

Virtual, Public

Prototype:

virtual EEndpointState GetState();
Parameters:

None

Return:

The value of mEndpointState.

Int_HandleAsyncEvent()

Purpose:

Called by NotifyProc to handle notifications for this endpoint. You will be notified via a Broadcast at primary task time of the event if necessary.

Warning: This routine will probably be called at interrupt time.

Access :

Protected

Prototype:

void Int_HandleAsyncEvent(
   UInt16 inEventCode,
	ICMPReport*	inEventCode, 
   StreamPtr inStreamPtr );
Parameters:

This method has the following parameters:

 

UInt16  
inEventCode  
The local address.  
ICMPReport*  
inEventCode  
The size of the listen queue.  
StreamPtr  
inStreamPtr  
Whether to reuse the port.  

Return:

None

Int_UDPNotifyProc()

Purpose:

 

Access :

Static, Protected

Prototype:

pascal static void Int_UDPNotifyProc( 
   StreamPtr inStreamPtr,
	UInt16 inEventCode, 
   Ptr inUserPtr,
   ICMPReport* inIcmpMsg );
Parameters:

This method has the following parameters:

 

StreamPtr  
inStreamPtr  
The stream pointer.  
ICMPReport*  
inEventCode  
The size of the listen queue.  
UInt16  
inUserPtr  
The pointer to the user area.  
ICMPReport*  
inIcmpMsg  
The ICMP msg info.  

Return:

None

IsAckingSends()

Purpose:

Determine whether sends are being acknowledged.

Access :

Virtual, Public

Prototype:

virtual Boolean IsAckingSends();
Parameters:

None

Return:

Returns the value of mAckSends.

ReceiveFrom()

Purpose:

 

Access :

Virtual, Public

Prototype:

virtual void ReceiveFrom(
   LInternetAddress& outRemoteAddress,
   void* outDataBuffer,
   UInt32& ioDataSize,
   UInt32 inTimeoutSeconds );
Parameters:

This method has the following parameters:

 

LInternetAddress&  
outRemoteAddress  
The remote address.  
void*  
outDataBuffer  
The data output buffer.  
UInt32&  
ioDataSize  
The buffer size.  
UInt32  
inTimeoutSeconds  
The timeout period to wait for data.  

Return:

None

SendPacketData()

Purpose:

Send data.

Access :

Virtual, Public

Prototype:

virtual void SendPacketData( 
   LInternetAddress& inRemoteHost,
	void* inData, 
   UInt32 inDataSize );
Parameters:

This method has the following parameters:

 

LInternetAddress&  
inRemoteHost  
The remote address.  
void*  
inData  
The data input.  
UInt32  
inDataSize  
The buffer size.  

Return:

None

Unbind()

Purpose:

Unbind from a port.

Access :

Virtual, Public

Prototype:

virtual void Unbind();
Parameters:

None

Return:

None

mUDPStream

Purpose:

The UDP stream.

Access :

Protected

Prototype:

StreamPtr mUDPStream;

mLocalAddress

Purpose:

The local address.

Access :

Protected

Prototype:

LInternetAddress * mLocalAddress;

mAckSends

Purpose:

Whether to acknowledge sends or not.

Access :

Protected

Prototype:

Boolean mAckSends;

mEndpointState

Purpose:

The endpoint status.

Access :

Protected

Prototype:

UInt16 mEndpointState;

mReceiveBuffer

Purpose:

The receive buffer pointer.

Access :

Protected

Prototype:

Ptr mReceiveBuffer;

mReceiveBufferSize

Purpose:

The receive buffer size in bytes.

Access :

Protected

Prototype:

UInt32 mReceiveBufferSize;

mMessageQueue

Purpose:

The message queue.

Access :

Protected

Prototype:

LNetMessageQueue * mMessageQueue;

mSharedPool

Purpose:

The shared memory pool.

Access :

Protected

Prototype:

LSharedMemoryPool * mSharedPool;

mSendQueue

Purpose:

The send queue.

Access :

Protected

Prototype:

LMacTCPUDPSendQueue * mSendQueue;

sUDPNotifyUPP

Purpose:

The procedure pointer for the UDP notification procedure.

Access :

Static, Private

Prototype:

UDPNotifyUPP sUDPNotifyUPP;

 


[ First ]  [ Previous ]  [ Next ]  [ Last ]  [ Manuals ]

Visit the Metrowerks website at: http://www.metrowerks.com
For assistance contact Metrowerks Technical Support at: cw_support@metrowerks.com
Copyright © 2000, Metrowerks Corp. All rights reserved.

Last updated: July 21, 2000