VR-Link API Documentation for HLA 1516
vlGroupSocket.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1997 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: vlGroupSocket.h,v $ $Revision: 1.2.6.1 $ $State: Exp $
00007 *********************************************************************/
00008 #ifndef vlGroupSocket_H_
00009 #define vlGroupSocket_H_
00010 
00014 
00015 #include "vlNetSocket.h"
00016 
00017 #ifdef DtUSE_UTILITIES_NAMESPACE
00018 namespace DtUSE_UTILITIES_NAMESPACE
00019 {
00020 #endif
00021 
00022 
00025 class DT_DLL_NETCOMPAT DtGroupSocket : public DtNetSocket
00026 {
00027 public:
00028    
00031    DtGroupSocket(int port = DtDEFAULT_PORT, DtU8 flags = DtReadWrite,
00032       DtIpv4Addr devAddr = 0);
00033 
00036    DtGroupSocket(int port, DtIpv4Addr addr, DtU8 flags,
00037       DtIpv4Addr devAddr = 0);
00038    
00040    virtual ~DtGroupSocket();
00041    
00043    virtual void removeAllRemoteSites();
00044    
00046    virtual int DtSend(caddr_t pkt, size_t size, DtIpv4Addr addr);
00047    
00049    virtual void addRemoteSite(DtIpv4Addr addr);
00050    virtual void removeRemoteSite(DtIpv4Addr addr);
00051    
00053    virtual int sendToAllRemoteSites(
00054       caddr_t pkt, size_t size, DtIpv4Addr dwSkipAddr = 0);
00055    
00057    virtual const DtList* remoteSitesList() const;
00058    
00059 protected:
00060    
00061    DtListItem* findItem(DtIpv4Addr addr) const;
00062 
00064    DtList myRemoteSites;
00065 
00066 protected:
00067 
00069    DtGroupSocket(const DtGroupSocket&);
00070 
00072    DtGroupSocket& operator=(const DtGroupSocket &);
00073 
00074 };
00075 
00076 inline const DtList* DtGroupSocket::remoteSitesList() const
00077 {
00078    return &myRemoteSites;
00079 }
00080 
00081 #ifdef DtUSE_UTILITIES_NAMESPACE
00082 } 
00083 #endif
00084 
00085 #endif

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)