⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcpstreambuff.hpp

📁 gps源代码
💻 HPP
字号:
#pragma ident "$Id: TCPStreamBuff.hpp 647 2007-06-25 03:34:09Z ocibu $"#ifndef TCPSTREAMBUFF_HPP#define TCPSTREAMBUFF_HPP#include <sstream>#include <errno.h>#include <stdlib.h>#include <unistd.h>#include <netdb.h>#include <fcntl.h>#include <sys/file.h>#include <netinet/in.h>#include <netinet/tcp.h>#include <arpa/inet.h>#include "FDStreamBuff.hpp"namespace gpstk{   class SocketAddr;   class IPaddress   {      friend class SocketAddr;            unsigned long address;                // Address: 4 bytes in the network byte order      IPaddress(const unsigned int netaddr) : address(netaddr) {}   public:      IPaddress() : address(INADDR_ANY) {}   // Wildcard address      IPaddress(const std::string& name);         // Involves the name resolution      unsigned long net_addr() const { return address; }        friend std::ostream& operator <<(std::ostream& os, const IPaddress addr);      friend std::ostream& operator <<(std::ostream& os, const SocketAddr& addr);   };   class SocketAddr : sockaddr_in   {      friend class StreamSocket;      friend class UDPsocketIn;      SocketAddr() {}         public:      SocketAddr(const IPaddress host, const short port_no);      operator sockaddr * () const      { return (sockaddr *)this; }      friend std::ostream& operator <<(std::ostream& os, const SocketAddr& addr);   };   class TCPStreamBuff : public FDStreamBuff   {   public:      TCPStreamBuff() : FDStreamBuff(-1) {}      ~TCPStreamBuff() {close();}      int connect(const SocketAddr target_address);      // Take a file handle (which is supposed to be a listening socket),       // accept a connection if any,  and return the corresponding TCPbuf      // for that connection. On exit, peeraddr would be an addr of the      // connected peer      int accept(int listening_socket, SocketAddr& peeraddr);   };} // end of namespace#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -