aws-crt-cpp
C++ wrapper around the aws-c-* libraries. Provides Cross-Platform Transport Protocols and SSL/TLS implementations for C++.
EventLoopGroup.h
Go to the documentation of this file.
1#pragma once
6#include <aws/crt/Types.h>
7
8#include <aws/io/event_loop.h>
9
10namespace Aws
11{
12 namespace Crt
13 {
14 namespace Io
15 {
33 {
34 public:
39 EventLoopGroup(uint16_t threadCount = 0, Allocator *allocator = g_allocator) noexcept;
40 EventLoopGroup(uint16_t cpuGroup, uint16_t threadCount, Allocator *allocator = g_allocator) noexcept;
42 EventLoopGroup(const EventLoopGroup &) = delete;
43 EventLoopGroup(EventLoopGroup &&) noexcept;
44 EventLoopGroup &operator=(const EventLoopGroup &) = delete;
45 EventLoopGroup &operator=(EventLoopGroup &&) noexcept;
46
50 operator bool() const;
51
55 int LastError() const;
56
58 aws_event_loop_group *GetUnderlyingHandle() noexcept;
59
60 private:
61 aws_event_loop_group *m_eventLoopGroup;
62 int m_lastError;
63 };
64 } // namespace Io
65
66 } // namespace Crt
67} // namespace Aws
#define AWS_CRT_CPP_API
Definition: Exports.h:37
Definition: EventLoopGroup.h:33
EventLoopGroup(const EventLoopGroup &)=delete
aws_allocator Allocator
Definition: StlAllocator.h:17
AWS_CRT_CPP_API Allocator * g_allocator
Definition: Api.cpp:23
AWS_CRT_CPP_API int LastError() noexcept
Definition: Api.cpp:391
Definition: Api.h:14