#include <Asynch_IO.h>
Collaboration diagram for ACE_Asynch_Transmit_File::Header_And_Trailer:
Public Member Functions | |
Header_And_Trailer (ACE_Message_Block *header=0, size_t header_bytes=0, ACE_Message_Block *trailer=0, size_t trailer_bytes=0) | |
Constructor. | |
virtual | ~Header_And_Trailer (void) |
Destructor. | |
void | header_and_trailer (ACE_Message_Block *header=0, size_t header_bytes=0, ACE_Message_Block *trailer=0, size_t trailer_bytes=0) |
This method allows all the member to be set in one fell swoop. | |
ACE_Message_Block * | header (void) const |
Get header which goes before the file data. | |
void | header (ACE_Message_Block *message_block) |
Set header which goes before the file data. | |
size_t | header_bytes (void) const |
Get size of the header data. | |
void | header_bytes (size_t bytes) |
Set size of the header data. | |
ACE_Message_Block * | trailer (void) const |
Get trailer which goes after the file data. | |
void | trailer (ACE_Message_Block *message_block) |
Set trailer which goes after the file data. | |
size_t | trailer_bytes (void) const |
Get size of the trailer data. | |
void | trailer_bytes (size_t bytes) |
Set size of the trailer data. | |
ACE_LPTRANSMIT_FILE_BUFFERS | transmit_buffers (void) |
Conversion routine. | |
Protected Attributes | |
ACE_Message_Block * | header_ |
Header data. | |
size_t | header_bytes_ |
Size of header data. | |
ACE_Message_Block * | trailer_ |
Trailer data. | |
size_t | trailer_bytes_ |
Size of trailer data. | |
ACE_TRANSMIT_FILE_BUFFERS | transmit_buffers_ |
Target data structure. |
This class provides a wrapper over TRANSMIT_FILE_BUFFERS and provided a consistent use of ACE_Message_Blocks.
Definition at line 1175 of file Asynch_IO.h.
|
Constructor.
Definition at line 863 of file Asynch_IO.cpp.
00867 : header_ (header), 00868 header_bytes_ (header_bytes), 00869 trailer_ (trailer), 00870 trailer_bytes_ (trailer_bytes) 00871 { 00872 } |
|
Destructor.
Definition at line 874 of file Asynch_IO.cpp.
00875 { 00876 } |
|
Set header which goes before the file data.
Definition at line 897 of file Asynch_IO.cpp. References header_.
00898 { 00899 this->header_ = message_block; 00900 } |
|
Get header which goes before the file data.
Definition at line 891 of file Asynch_IO.cpp. References header_. Referenced by header_and_trailer().
00892 { 00893 return this->header_; 00894 } |
|
This method allows all the member to be set in one fell swoop.
Definition at line 879 of file Asynch_IO.cpp. References header(), header_bytes(), trailer(), and trailer_bytes().
00883 { 00884 this->header (header); 00885 this->header_bytes (header_bytes); 00886 this->trailer (trailer); 00887 this->trailer_bytes (trailer_bytes); 00888 } |
|
Set size of the header data.
Definition at line 909 of file Asynch_IO.cpp. References header_bytes_.
00910 { 00911 this->header_bytes_ = bytes; 00912 } |
|
Get size of the header data.
Definition at line 903 of file Asynch_IO.cpp. References header_bytes_. Referenced by header_and_trailer(), and ACE_POSIX_Asynch_Transmit_Handler::transmit().
00904 { 00905 return this->header_bytes_; 00906 } |
|
Set trailer which goes after the file data.
Definition at line 921 of file Asynch_IO.cpp. References trailer_.
00922 { 00923 this->trailer_ = message_block; 00924 } |
|
Get trailer which goes after the file data.
Definition at line 915 of file Asynch_IO.cpp. References trailer_. Referenced by header_and_trailer().
00916 { 00917 return this->trailer_; 00918 } |
|
Set size of the trailer data.
Definition at line 933 of file Asynch_IO.cpp. References trailer_bytes_.
00934 { 00935 this->trailer_bytes_ = bytes; 00936 } |
|
Get size of the trailer data.
Definition at line 927 of file Asynch_IO.cpp. References trailer_bytes_. Referenced by header_and_trailer(), and ACE_POSIX_Asynch_Transmit_Handler::initiate_read_file().
00928 { 00929 return this->trailer_bytes_; 00930 } |
|
Conversion routine.
Definition at line 939 of file Asynch_IO.cpp. References header_, header_bytes_, ACE_Message_Block::rd_ptr(), trailer_, trailer_bytes_, and transmit_buffers_. Referenced by ACE_WIN32_Asynch_Transmit_File::transmit_file().
00940 { 00941 // If both are zero, return zero 00942 if (this->header_ == 0 && this->trailer_ == 0) 00943 return 0; 00944 else 00945 { 00946 // Something is valid 00947 00948 // If header is valid, set the fields 00949 if (this->header_ != 0) 00950 { 00951 this->transmit_buffers_.Head = this->header_->rd_ptr (); 00952 #if defined(ACE_WIN64) 00953 this->transmit_buffers_.HeadLength = 00954 static_cast<DWORD> (this->header_bytes_); 00955 #else 00956 this->transmit_buffers_.HeadLength = this->header_bytes_; 00957 #endif /* ACE_WIN64 */ 00958 } 00959 else 00960 { 00961 this->transmit_buffers_.Head = 0; 00962 this->transmit_buffers_.HeadLength = 0; 00963 } 00964 00965 // If trailer is valid, set the fields 00966 if (this->trailer_ != 0) 00967 { 00968 this->transmit_buffers_.Tail = this->trailer_->rd_ptr (); 00969 #if defined(ACE_WIN64) 00970 this->transmit_buffers_.TailLength = 00971 static_cast<DWORD> (this->trailer_bytes_); 00972 #else 00973 this->transmit_buffers_.TailLength = this->trailer_bytes_; 00974 #endif /* ACE_WIN64 */ 00975 } 00976 else 00977 { 00978 this->transmit_buffers_.Tail = 0; 00979 this->transmit_buffers_.TailLength = 0; 00980 } 00981 00982 // Return the transmit buffers 00983 return &this->transmit_buffers_; 00984 } 00985 } |
|
Header data.
Definition at line 1223 of file Asynch_IO.h. Referenced by header(), and transmit_buffers(). |
|
Size of header data.
Definition at line 1226 of file Asynch_IO.h. Referenced by header_bytes(), and transmit_buffers(). |
|
Trailer data.
Definition at line 1229 of file Asynch_IO.h. Referenced by trailer(), and transmit_buffers(). |
|
Size of trailer data.
Definition at line 1232 of file Asynch_IO.h. Referenced by trailer_bytes(), and transmit_buffers(). |
|
Target data structure.
Definition at line 1235 of file Asynch_IO.h. Referenced by transmit_buffers(). |