1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
4 * Ceph - scalable distributed file system
6 * Copyright (C) 2018 Red Hat, Inc. <contact@redhat.com>
8 * This is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License version 2.1, as published by the Free Software
11 * Foundation. See file COPYING.
15 #ifndef CEPH_MESSAGEREF_H
16 #define CEPH_MESSAGEREF_H
18 #include <boost/intrusive_ptr.hpp>
19 #include "common/RefCountedObj.h"
22 using MRef
= boost::intrusive_ptr
<T
>;
24 using MConstRef
= boost::intrusive_ptr
<T
const>;
26 using MURef
= std::unique_ptr
<T
, TOPNSPC::common::UniquePtrDeleter
>;
28 using MessageRef
= MRef
<class Message
>;
29 using MessageConstRef
= MConstRef
<class Message
>;
30 using MessageURef
= MURef
<class Message
>;
32 /* cd src/messages/ && for f in *; do printf 'class '; basename "$f" .h | tr -d '\n'; printf ';\n'; done >> ../msg/MessageRef.h */
36 class MBackfillReserve
;
38 class MClientCapRelease
;
43 class MClientReclaimReply
;
44 class MClientReconnect
;
46 class MClientRequestForward
;
61 class MExportDirCancel
;
62 class MExportDirDiscoverAck
;
63 class MExportDirDiscover
;
64 class MExportDirFinish
;
66 class MExportDirNotifyAck
;
67 class MExportDirNotify
;
68 class MExportDirPrepAck
;
74 class MGenericMessage
;
77 class MGetPoolStatsReply
;
84 class MMDSCacheRejoin
;
86 class MMDSFindInoReply
;
87 class MMDSFragmentNotifyAck
;
88 class MMDSFragmentNotify
;
89 class MMDSLoadTargets
;
92 class MMDSOpenInoReply
;
95 class MMDSPeerRequest
;
97 class MMDSTableRequest
;
105 class MMonCommandAck
;
110 class MMonGetVersion
;
111 class MMonGetVersionReply
;
113 class MMonHealthChecks
;
121 class MMonQuorumService
;
123 class MMonSubscribeAck
;
130 class MOSDECSubOpRead
;
131 class MOSDECSubOpReadReply
;
132 class MOSDECSubOpWrite
;
133 class MOSDECSubOpWriteReply
;
135 class MOSDFastDispatchOp
;
136 class MOSDForceRecovery
;
139 class MOSDMarkMeDown
;
141 class MOSDPGBackfill
;
142 class MOSDPGBackfillRemove
;
151 class MOSDPGPushReply
;
153 class MOSDPGReadyToMerge
;
154 class MOSDPGRecoveryDelete
;
155 class MOSDPGRecoveryDeleteReply
;
160 class MOSDPGUpdateLogMissing
;
161 class MOSDPGUpdateLogMissingReply
;
164 class MOSDRepOpReply
;
166 class MOSDRepScrubMap
;
169 class MOSDScrubReserve
;
175 class MRecoveryReserve
;
184 class PaxosServiceMessage
;