1dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// Use of this source code is governed by a BSD-style license that can be 3dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen// found in the LICENSE file. 4dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 5dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#ifndef NET_UDP_DATAGRAM_CLIENT_SOCKET_H_ 6dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#define NET_UDP_DATAGRAM_CLIENT_SOCKET_H_ 7dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#pragma once 8dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 9dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/socket/socket.h" 10dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#include "net/udp/datagram_socket.h" 11dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 12dc0f95d653279beabeb9817299e2902918ba123eKristian Monsennamespace net { 13dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 14ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenclass IPEndPoint; 15dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 16dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenclass DatagramClientSocket : public DatagramSocket, public Socket { 17dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen public: 18dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen virtual ~DatagramClientSocket() {} 19dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 20dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // Initialize this socket as a client socket to server at |address|. 21dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // Returns a network error code. 22ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen virtual int Connect(const IPEndPoint& address) = 0; 23dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen}; 24dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 25dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen} // namespace net 26dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 27dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen#endif // NET_UDP_DATAGRAM_CLIENT_SOCKET_H_ 28