HoverRace  2.0
Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
HoverRace::Net::BlockingTransfer Class Reference

This is used for the simple forms of transfer, only used in Agent::Get. More...

#include <BlockingTransfer.h>

+ Inheritance diagram for HoverRace::Net::BlockingTransfer:

Public Member Functions

 BlockingTransfer (const Agent &agent, std::string &buf, std::shared_ptr< CancelFlag > cancelFlag)
 Constructor (for storing to a string). More...
 
 BlockingTransfer (const Agent &agent, std::ostream &buf, std::shared_ptr< CancelFlag > cancelFlag)
 Constructor (for storing to a stream). More...
 
virtual ~BlockingTransfer ()
 
void Go ()
 Start the transfer and return when the transfer is complete. More...
 
virtual bool IsComplete () const
 
- Public Member Functions inherited from HoverRace::Net::BaseTransfer
 BaseTransfer (const Agent &agent)
 Constructor. More...
 
virtual ~BaseTransfer ()
 

Private Types

typedef BaseTransfer SUPER
 

Private Member Functions

void Init ()
 

Static Private Member Functions

static size_t ProgressFunc (void *cancelFlag, double, double, double, double)
 
static size_t StreamWriteFunc (void *ptr, size_t size, size_t nmemb, void *stream)
 
static size_t StringWriteFunc (void *ptr, size_t size, size_t nmemb, void *stream)
 

Private Attributes

std::shared_ptr< CancelFlagcancelFlag
 

Additional Inherited Members

- Protected Member Functions inherited from HoverRace::Net::BaseTransfer
void AssertCurlSuccess (CURLcode code, std::shared_ptr< CancelFlag > cancelFlag={})
 
- Protected Attributes inherited from HoverRace::Net::BaseTransfer
CURL * curl
 

Detailed Description

This is used for the simple forms of transfer, only used in Agent::Get.

Author
Michael Imamura

Member Typedef Documentation

Constructor & Destructor Documentation

BlockingTransfer::BlockingTransfer ( const Agent agent,
std::string &  buf,
std::shared_ptr< CancelFlag cancelFlag 
)

Constructor (for storing to a string).

Parameters
agentThe transfer agent (request parameters).
bufThe string to store to.
cancelFlagControl object to check for cancellation (may be NULL).
BlockingTransfer::BlockingTransfer ( const Agent agent,
std::ostream &  buf,
std::shared_ptr< CancelFlag cancelFlag 
)

Constructor (for storing to a stream).

Parameters
agentThe transfer agent (request parameters).
bufThe stream to write to.
cancelFlagControl object to check for cancellation (may be NULL).
virtual HoverRace::Net::BlockingTransfer::~BlockingTransfer ( )
inlinevirtual

Member Function Documentation

void BlockingTransfer::Go ( )

Start the transfer and return when the transfer is complete.

Exceptions
NetExnIf an error occurs during the transfer.
void BlockingTransfer::Init ( )
private
virtual bool HoverRace::Net::BlockingTransfer::IsComplete ( ) const
inlinevirtual
size_t BlockingTransfer::ProgressFunc ( void *  cancelFlag,
double  ,
double  ,
double  ,
double   
)
staticprivate
size_t BlockingTransfer::StreamWriteFunc ( void *  ptr,
size_t  size,
size_t  nmemb,
void *  stream 
)
staticprivate
size_t BlockingTransfer::StringWriteFunc ( void *  ptr,
size_t  size,
size_t  nmemb,
void *  stream 
)
staticprivate

Member Data Documentation

std::shared_ptr<CancelFlag> HoverRace::Net::BlockingTransfer::cancelFlag
private

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