/Volumes/Plantain/MyDocuments/Projects/MacTrek/MacTrek/FrameWorks/OmniNetworking.framework/Versions/A/Headers/ONTCPDatagramSocket.h

00001 // Copyright 1999-2005 Omni Development, Inc.  All rights reserved.
00002 //
00003 // This software may only be used and reproduced according to the
00004 // terms in the file OmniSourceLicense.html, which should be
00005 // distributed with this project and can also be found at
00006 // <http://www.omnigroup.com/developer/sourcecode/sourcelicense/>.
00007 //
00008 // $Header: svn+ssh://source.omnigroup.com/Source/svn/Omni/tags/SourceRelease_2005-11-18/OmniGroup/Frameworks/OmniNetworking/ONTCPDatagramSocket.h 68913 2005-10-03 19:36:19Z kc $
00009 
00010 #import "ONSocket.h"
00011 
00012 // This class has the same semantics as ONUDPSocket or ONMulticastSocket, but can use any underlying socket as its transport mechanism.
00013 // For example, you might initialize this with a non-blocking TCP socket and use this as a substitute for an ONMulticastSocket if you want to be able to have the same unreliable non-blocking semantics as a multicast or UDP socket (because you're doing a real-time server) but want a somewhat more reliable underlying transport mechanism (because your network connection is otherwise too lossy).
00014 
00015 @class ONSocket;
00016 
00017 @interface ONTCPDatagramSocket : ONSocket
00018 {
00019     ONSocket *socket;
00020     void *writeRemainder;
00021     unsigned int writeLength;
00022     unsigned int writePosition;
00023     void *readRemainder;
00024     unsigned int readPacketLength;
00025     unsigned int readLength;   
00026 }
00027 
00028 - initWithTCPSocket:(ONSocket *)aSocket;
00029 
00030 @end
00031 
00032 #import "FrameworkDefines.h"
00033 
00034 // Exceptions which may be raised by this class
00035 OmniNetworking_EXTERN NSString *ONTCPDatagramSocketPacketTooLargeExceptionName;

Generated on Fri Jul 28 19:15:21 2006 for MacTrek by  doxygen 1.4.7