class ugcs::vsm::File_processor::Native_controller

Overview

Interface for native I/O controller which manages I/O operations for all native handles. More…

#include <file_processor.h>

class Native_controller
{
public:
    // methods

    virtual void Enable() = 0;
    virtual void Disable() = 0;
    virtual void Register_handle(Stream::Native_handle& handle) = 0;
    virtual void Unregister_handle(Stream::Native_handle& handle) = 0;
    static std::unique_ptr<Native_controller> Create();
};

// direct descendants

class Overlapped_io_controller;
class Poll_io_controller;

Detailed Documentation

Interface for native I/O controller which manages I/O operations for all native handles.

Methods

virtual void Enable() = 0

Enable the controller.

virtual void Disable() = 0

Disable the controller.

virtual void Register_handle(Stream::Native_handle& handle) = 0

Register new opened file handle.

virtual void Unregister_handle(Stream::Native_handle& handle) = 0

Unregister previously registered file handle.

static std::unique_ptr<Native_controller> Create()

Create controller instance.