Ethernet Developers Guide

B.7 The CSample_View Class

The CSample_View class manages the TCP/IP connection, sends requests to remote nodes, and displays either connection state, or the results of a transaction. In addition it sets the states of the tool bar buttons and menu items.

B.7.1 Accessing TCP/IP

The CSample_View interfaces with window sockets via its application programming interface, and via messages sent by the window sockets DLL to the CSample_View window. The reference for the window socket API is given above. The first call made to the window sockets DLL must be WSAStartup. This call is made by InitInstance member function of the CSample_app class. The last call to the window socket DLL must be WSACleanup. This call is made by the ExitInstance member function of the Csample_app class.

The CSample_View allocates and sets the socket attributes. The attributes it sets are given in the following table.

Set Linger to cause a hard close

zReceive out of band data in the normal data stream

Disable Nagel algorithm for send coalescing

When Nagel algorithm is disabled, if the stack receives an application message, it will immediately pass the message to the application and will send a TCP/IP acknowledgment message. Although this can generate more traffic, the application receives the message sooner then if Nagel algorithm is enabled. The member function tcpip_setsocket_options sets the socket attributes.

The window socket interface provides the WSAAsyncSelect function which notifies the window of network events. The member function tcpip_setsocket_options calls WSAAsyncSelect function. The different events are given by the following table.

Event

Description

 

 

FD_READ

A socket can read data

 

 

FD_WRITE

A socket can write data

 

 

FD_OOB

A socket can read out of band data

 

 

FD_CONNECT

A connect response has been received

 

 

FD_CLOSE

The connection has been closed

 

 

840 USE 115 00 Version 1.0

69

Page 79
Image 79
Schneider Optics Modicon Quantum Ethernet manual CSampleView Class, Accessing TCP/IP, Event Description