Diarkis C++Client Library API Document
rpcModule.h
Go to the documentation of this file.
1
// © 2019-2024 Diarkis Inc. All rights reserved.
2
3
#pragma once
4
5
#include <functional>
6
#include "
diarkis/common.h
"
7
#include "
diarkis/logging/Logger.h
"
8
#include "
diarkis/logging/LoggerFactory.h
"
9
#include "
diarkis/modules/room.h
"
10
#include "
diarkis/network/eventArgs.h
"
11
#include "
diarkis/system/Event.h
"
12
#include "
diarkis/system/result.h
"
13
14
using namespace
Diarkis::Network
;
15
16
// ADD NAMESPACE NAME TAG
17
namespace
Diarkis
18
{
19
namespace
Modules
20
{
21
class
IDiarkisRPC
22
{
23
public
:
24
virtual
~IDiarkisRPC
(){};
25
34
virtual
void
SetLoggerFactory(std::shared_ptr<IDiarkisLoggerFactory> loggerFactory) = 0;
35
42
virtual
std::shared_ptr<IDiarkisEventRpcID> GetCallbackEvent() = 0;
43
58
virtual
bool
RPCAll(uint32_t rpcID,
const
uint8_t* payload,
size_t
payloadSize,
bool
reliable =
true
) = 0;
59
66
virtual
bool
RPCAll(uint32_t rpcID,
const
Diarkis::StdVector<uint8_t>
& payload,
bool
reliable =
true
) = 0;
67
86
virtual
bool
RPCMany(uint32_t rpcID,
const
char
** memberIDs,
size_t
memberIDsCount,
const
uint8_t* payload,
size_t
payloadSize,
bool
reliable =
true
) = 0;
87
94
virtual
bool
RPCMany(uint32_t rpcID,
95
const
Diarkis::StdVector<Diarkis::StdString>
& memberIDs,
96
const
Diarkis::StdVector<uint8_t>
& payload,
97
bool
reliable =
true
) = 0;
98
115
virtual
bool
RPCOne(uint32_t rpcID,
const
char
* userID,
const
uint8_t* payload,
size_t
payloadSize,
bool
reliable =
true
) = 0;
116
123
virtual
bool
RPCOne(uint32_t rpcID,
const
Diarkis::StdString
& userID,
const
Diarkis::StdVector<uint8_t>
& payload,
bool
reliable =
true
) = 0;
124
};
125
126
extern
"C"
127
{
134
DIARKIS_EXPORT IDiarkisRPC*
DiarkisCreateRPC
(std::shared_ptr<IDiarkisRoom> room_);
135
}
136
}
// namespace Modules
137
}
// namespace Diarkis
138
// ADD NAMESPACE } TAG
Diarkis::Modules::DiarkisCreateRPC
DIARKIS_EXPORT IDiarkisRPC * DiarkisCreateRPC(std::shared_ptr< IDiarkisRoom > room_)
Create IDiarkisRPC class.
LoggerFactory.h
Diarkis::StdString
Definition:
common.h:432
Logger.h
Diarkis::StdVector< uint8_t >
Diarkis::Modules::IDiarkisRPC
Definition:
rpcModule.h:21
eventArgs.h
Diarkis
Definition:
commands.h:9
Diarkis::Network
Definition:
eventArgs.h:10
result.h
Event.h
common.h
Diarkis::Modules::IDiarkisRPC::~IDiarkisRPC
virtual ~IDiarkisRPC()
Definition:
rpcModule.h:24
room.h
client
cpp
libDiarkis
include
diarkis
modules
rpcModule.h
Generated by
1.8.17