File: ACE_WIN32_Asynch_Transmit_File.3

package info (click to toggle)
ace 5.2.1-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 26,856 kB
  • ctags: 18,677
  • sloc: cpp: 171,831; makefile: 48,840; sh: 10,192; perl: 8,582; exp: 787; yacc: 387; lex: 140; csh: 20
file content (80 lines) | stat: -rw-r--r-- 3,961 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
.TH ACE_WIN32_Asynch_Transmit_File 3 "1 Dec 2001" "ACE" \" -*- nroff -*-
.ad l
.nh
.SH NAME
ACE_WIN32_Asynch_Transmit_File \- This class is a factory for starting off asynchronous transmit files on a stream. 
.SH SYNOPSIS
.br
.PP
\fC#include <WIN32_Asynch_IO.h>\fR
.PP
Inherits \fBACE_Asynch_Transmit_File_Impl\fR, and \fBACE_WIN32_Asynch_Operation\fR.
.PP
.SS Public Methods

.in +1c
.ti -1c
.RI "\fBACE_WIN32_Asynch_Transmit_File\fR (\fBACE_WIN32_Proactor\fR *win32_proactor)"
.br
.RI "\fIConstructor.\fR"
.ti -1c
.RI "int \fBtransmit_file\fR (ACE_HANDLE file, \fBACE_Asynch_Transmit_File::Header_And_Trailer\fR *header_and_trailer, u_long bytes_to_write, u_long offset, u_long offset_high, u_long bytes_per_send, u_long flags, const void *act, int priority, int signal_number = 0)"
.br
.ti -1c
.RI "\fB~ACE_WIN32_Asynch_Transmit_File\fR (void)"
.br
.RI "\fIDestructor.\fR"
.ti -1c
.RI "int \fBopen\fR (\fBACE_Handler\fR &handler, ACE_HANDLE handle, const void *completion_key, \fBACE_Proactor\fR *proactor)"
.br
.ti -1c
.RI "int \fBcancel\fR (void)"
.br
.ti -1c
.RI "\fBACE_Proactor\fR* \fBproactor\fR (void) const"
.br
.RI "\fIReturn the underlying proactor.\fR"
.in -1c
.SH DETAILED DESCRIPTION
.PP 
This class is a factory for starting off asynchronous transmit files on a stream.
.PP
.PP
 Once <open> is called, multiple asynchronous <transmit_file>s can started using this class. A \fBACE_Asynch_Transmit_File::Result\fR will be passed back to the <handler> when the asynchronous transmit file completes through the  callback.
.PP
The transmit_file function transmits file data over a connected network connection. The function uses the operating system's cache manager to retrieve the file data. This function provides high-performance file data transfer over network connections. This function would be of great use in a Web Server, Image Server, etc. 
.PP
.SH CONSTRUCTOR & DESTRUCTOR DOCUMENTATION
.PP 
.SS ACE_WIN32_Asynch_Transmit_File::ACE_WIN32_Asynch_Transmit_File (\fBACE_WIN32_Proactor\fR * win32_proactor)
.PP
Constructor.
.PP
.SS ACE_WIN32_Asynch_Transmit_File::~ACE_WIN32_Asynch_Transmit_File (void)
.PP
Destructor.
.PP
.SH MEMBER FUNCTION DOCUMENTATION
.PP 
.SS int ACE_WIN32_Asynch_Transmit_File::cancel (void)
.PP
This cancels all pending accepts operations that were issued by the calling thread. The function does not cancel asynchronous operations issued by other threads. 
.PP
Reimplemented from \fBACE_WIN32_Asynch_Operation\fR.
.SS int ACE_WIN32_Asynch_Transmit_File::open (\fBACE_Handler\fR & handler, ACE_HANDLE handle, const void * completion_key, \fBACE_Proactor\fR * proactor)
.PP
Initializes the factory with information which will be used with each asynchronous call. If (<handle> == ACE_INVALID_HANDLE),  will be called on the <handler> to get the correct handle. 
.PP
Reimplemented from \fBACE_WIN32_Asynch_Operation\fR.
.SS \fBACE_Proactor\fR * ACE_WIN32_Asynch_Transmit_File::proactor (void) const
.PP
Return the underlying proactor.
.PP
Reimplemented from \fBACE_WIN32_Asynch_Operation\fR.
.SS int ACE_WIN32_Asynch_Transmit_File::transmit_file (ACE_HANDLE file, \fBACE_Asynch_Transmit_File::Header_And_Trailer\fR * header_and_trailer, u_long bytes_to_write, u_long offset, u_long offset_high, u_long bytes_per_send, u_long flags, const void * act, int priority, int signal_number = 0)
.PP
This starts off an asynchronous transmit file. The <file> is a handle to an open file. <header_and_trailer> is a pointer to a data structure that contains pointers to data to send before and after the file data is sent. Set this parameter to 0 if you only want to transmit the file data. Upto <bytes_to_write> will be written to the <socket>. If you want to send the entire file, let <bytes_to_write> = 0. <bytes_per_send> is the size of each block of data sent per send operation. Please read the Win32 documentation on what the flags should be. 

.SH AUTHOR
.PP 
Generated automatically by Doxygen for ACE from the source code.