Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
dart::bin::ClientSocket Class Reference

#include <eventhandler_win.h>

Inheritance diagram for dart::bin::ClientSocket:
dart::bin::DescriptorInfoSingleMixin< SocketHandle > dart::bin::SocketHandle dart::bin::Handle dart::bin::ReferenceCounted< Handle > dart::bin::DescriptorInfoBase

Public Member Functions

 ClientSocket (intptr_t s, std::unique_ptr< RawAddr > remote_addr=nullptr)
 
virtual ~ClientSocket ()
 
void Shutdown (int how)
 
virtual bool IssueRead ()
 
virtual bool IssueWrite ()
 
void IssueDisconnect ()
 
void DisconnectComplete (OverlappedBuffer *buffer)
 
void ConnectComplete (OverlappedBuffer *buffer)
 
virtual void EnsureInitialized (EventHandlerImplementation *event_handler)
 
virtual void DoClose ()
 
virtual bool IsClosed ()
 
bool PopulateRemoteAddr (RawAddr &addr)
 
ClientSocketnext ()
 
void set_next (ClientSocket *next)
 
void mark_connected ()
 
bool is_connected () const
 
void mark_closed ()
 
- Public Member Functions inherited from dart::bin::DescriptorInfoSingleMixin< SocketHandle >
 DescriptorInfoSingleMixin (intptr_t fd, bool disable_tokens)
 
virtual ~DescriptorInfoSingleMixin ()
 
virtual bool IsListeningSocket () const
 
virtual void SetPortAndMask (Dart_Port port, intptr_t mask)
 
virtual void RemovePort (Dart_Port port)
 
virtual void RemoveAllPorts ()
 
virtual Dart_Port NextNotifyDartPort (intptr_t events_ready)
 
virtual void NotifyAllDartPorts (uintptr_t events)
 
virtual void ReturnTokens (Dart_Port port, int count)
 
virtual intptr_t Mask ()
 
virtual void Close ()
 
- Public Member Functions inherited from dart::bin::SocketHandle
SOCKET socket () const
 
- Public Member Functions inherited from dart::bin::Handle
intptr_t Available ()
 
bool DataReady ()
 
intptr_t Read (void *buffer, intptr_t num_bytes)
 
intptr_t RecvFrom (void *buffer, intptr_t num_bytes, struct sockaddr *sa, socklen_t addr_len)
 
virtual intptr_t Write (const void *buffer, intptr_t num_bytes)
 
virtual intptr_t SendTo (const void *buffer, intptr_t num_bytes, struct sockaddr *sa, socklen_t sa_len)
 
virtual bool IssueRecvFrom ()
 
virtual bool IssueSendTo (struct sockaddr *sa, socklen_t sa_len)
 
bool HasPendingRead ()
 
bool HasPendingWrite ()
 
void ReadComplete (OverlappedBuffer *buffer)
 
void RecvFromComplete (OverlappedBuffer *buffer)
 
void WriteComplete (OverlappedBuffer *buffer)
 
bool IsClosing ()
 
bool IsClosedRead ()
 
bool IsClosedWrite ()
 
bool IsError ()
 
void MarkClosing ()
 
void MarkClosedRead ()
 
void MarkClosedWrite ()
 
void MarkError ()
 
HANDLE handle ()
 
bool CreateCompletionPort (HANDLE completion_port)
 
void Close ()
 
bool IsHandleClosed () const
 
Type type ()
 
bool is_file ()
 
bool is_socket ()
 
bool is_listen_socket ()
 
bool is_client_socket ()
 
bool is_datagram_socket ()
 
void MarkDoesNotSupportOverlappedIO ()
 
bool SupportsOverlappedIO ()
 
void ReadSyncCompleteAsync ()
 
DWORD last_error ()
 
void set_last_error (DWORD last_error)
 
void set_completion_port (HANDLE completion_port)
 
void set_event_handler (EventHandlerImplementation *event_handler)
 
- Public Member Functions inherited from dart::bin::ReferenceCounted< Handle >
 ReferenceCounted ()
 
virtual ~ReferenceCounted ()
 
void Retain ()
 
void Release ()
 
- Public Member Functions inherited from dart::bin::DescriptorInfoBase
 DescriptorInfoBase (intptr_t fd)
 
virtual ~DescriptorInfoBase ()
 
intptr_t fd ()
 

Additional Inherited Members

- Public Types inherited from dart::bin::Handle
enum  Type {
  kFile , kStd , kDirectoryWatch , kClientSocket ,
  kListenSocket , kDatagramSocket
}
 
- Protected Types inherited from dart::bin::Handle
enum  Flags {
  kClosing = 0 , kCloseRead = 1 , kCloseWrite = 2 , kDoesNotSupportOverlappedIO = 3 ,
  kError = 4
}
 
- Protected Member Functions inherited from dart::bin::SocketHandle
 SocketHandle (intptr_t s)
 
virtual void HandleIssueError ()
 
- Protected Member Functions inherited from dart::bin::Handle
 Handle (intptr_t handle)
 
virtual ~Handle ()
 
- Protected Attributes inherited from dart::bin::Handle
Monitor monitor_
 
Type type_
 
HANDLE handle_
 
HANDLE completion_port_
 
EventHandlerImplementationevent_handler_
 
std::unique_ptr< OverlappedBufferdata_ready_
 
OverlappedBufferpending_read_
 
OverlappedBufferpending_write_
 
DWORD last_error_
 
ThreadId read_thread_id_
 
HANDLE read_thread_handle_
 
bool read_thread_starting_
 
bool read_thread_finished_
 
- Protected Attributes inherited from dart::bin::DescriptorInfoBase
intptr_t fd_
 

Detailed Description

Definition at line 446 of file eventhandler_win.h.

Constructor & Destructor Documentation

◆ ClientSocket()

dart::bin::ClientSocket::ClientSocket ( intptr_t  s,
std::unique_ptr< RawAddr remote_addr = nullptr 
)
inlineexplicit

Definition at line 448 of file eventhandler_win.h.

451 DisconnectEx_(nullptr),
452 next_(nullptr),
453 connected_(false),
454 closed_(false),
455 remote_addr_(std::move(remote_addr)) {
456 LoadDisconnectEx();
458 }
DescriptorInfoSingleMixin(intptr_t fd, bool disable_tokens)
struct MyStruct s

◆ ~ClientSocket()

virtual dart::bin::ClientSocket::~ClientSocket ( )
inlinevirtual

Definition at line 460 of file eventhandler_win.h.

460 {
461 // Don't delete this object until all pending requests have been handled.
464 ASSERT(next_ == nullptr);
465 ASSERT(closed_ == true);
466 }
#define ASSERT(E)

Member Function Documentation

◆ ConnectComplete()

void dart::bin::ClientSocket::ConnectComplete ( OverlappedBuffer buffer)

◆ DisconnectComplete()

void dart::bin::ClientSocket::DisconnectComplete ( OverlappedBuffer buffer)

◆ DoClose()

virtual void dart::bin::ClientSocket::DoClose ( )
virtual

Reimplemented from dart::bin::Handle.

◆ EnsureInitialized()

virtual void dart::bin::ClientSocket::EnsureInitialized ( EventHandlerImplementation event_handler)
virtual

Implements dart::bin::Handle.

◆ is_connected()

bool dart::bin::ClientSocket::is_connected ( ) const
inline

Definition at line 490 of file eventhandler_win.h.

490{ return connected_; }

◆ IsClosed()

virtual bool dart::bin::ClientSocket::IsClosed ( )
virtual

Implements dart::bin::Handle.

◆ IssueDisconnect()

void dart::bin::ClientSocket::IssueDisconnect ( )

◆ IssueRead()

virtual bool dart::bin::ClientSocket::IssueRead ( )
virtual

Reimplemented from dart::bin::Handle.

◆ IssueWrite()

virtual bool dart::bin::ClientSocket::IssueWrite ( )
virtual

Reimplemented from dart::bin::Handle.

◆ mark_closed()

void dart::bin::ClientSocket::mark_closed ( )
inline

Definition at line 492 of file eventhandler_win.h.

492{ closed_ = true; }

◆ mark_connected()

void dart::bin::ClientSocket::mark_connected ( )
inline

Definition at line 489 of file eventhandler_win.h.

489{ connected_ = true; }

◆ next()

ClientSocket * dart::bin::ClientSocket::next ( )
inline

Definition at line 486 of file eventhandler_win.h.

486{ return next_; }

◆ PopulateRemoteAddr()

bool dart::bin::ClientSocket::PopulateRemoteAddr ( RawAddr addr)

◆ set_next()

void dart::bin::ClientSocket::set_next ( ClientSocket next)
inline

Definition at line 487 of file eventhandler_win.h.

487{ next_ = next; }

◆ Shutdown()

void dart::bin::ClientSocket::Shutdown ( int  how)

The documentation for this class was generated from the following file: