File indexing completed on 2024-05-12 05:25:58
0001 /* 0002 * Copyright (C) 2014 Aaron Seigo <aseigo@kde.org> 0003 * 0004 * This library is free software; you can redistribute it and/or 0005 * modify it under the terms of the GNU Lesser General Public 0006 * License as published by the Free Software Foundation; either 0007 * version 2.1 of the License, or (at your option) version 3, or any 0008 * later version accepted by the membership of KDE e.V. (or its 0009 * successor approved by the membership of KDE e.V.), which shall 0010 * act as a proxy defined in Section 6 of version 3 of the license. 0011 * 0012 * This library is distributed in the hope that it will be useful, 0013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 0015 * Lesser General Public License for more details. 0016 * 0017 * You should have received a copy of the GNU Lesser General Public 0018 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 0019 */ 0020 0021 #pragma once 0022 0023 #include "sink_export.h" 0024 #include <flatbuffers/flatbuffers.h> 0025 #include <QByteArray> 0026 0027 class QLocalSocket; 0028 0029 namespace Sink { 0030 0031 namespace Commands { 0032 0033 enum CommandIds 0034 { 0035 UnknownCommand = 0, 0036 CommandCompletionCommand, 0037 HandshakeCommand, 0038 RevisionUpdateCommand, 0039 SynchronizeCommand, 0040 DeleteEntityCommand, 0041 ModifyEntityCommand, 0042 CreateEntityCommand, 0043 SearchSourceCommand, // need a buffer definition for this, but relies on Query API 0044 ShutdownCommand, 0045 NotificationCommand, 0046 PingCommand, 0047 RevisionReplayedCommand, 0048 InspectionCommand, 0049 RemoveFromDiskCommand, 0050 FlushCommand, 0051 SecretCommand, 0052 UpgradeCommand, 0053 AbortSynchronizationCommand, 0054 CustomCommand = 0xffff 0055 }; 0056 0057 0058 QByteArray name(int commandId); 0059 0060 int SINK_EXPORT headerSize(); 0061 void SINK_EXPORT write(QLocalSocket *device, int messageId, int commandId); 0062 void SINK_EXPORT write(QLocalSocket *device, int messageId, int commandId, const char *buffer, uint size); 0063 void SINK_EXPORT write(QLocalSocket *device, int messageId, int commandId, flatbuffers::FlatBufferBuilder &fbb); 0064 } 0065 0066 } // namespace Sink