pvAccessCPP 7.1.8
Loading...
Searching...
No Matches
serializationHelper.h
1/*
2 * serializationHelper.h
3 *
4 * Created on: Jul 24, 2012
5 * Author: msekoranja
6 */
7
8#ifndef SERIALIZATIONHELPER_H_
9#define SERIALIZATIONHELPER_H_
10
11#include <pv/serialize.h>
12#include <pv/pvData.h>
13#include <pv/noDefaultMethods.h>
14#include <pv/pvIntrospect.h>
15#include <pv/byteBuffer.h>
16
17#include <pv/pvaConstants.h>
18#include <pv/pvAccess.h>
19
20namespace epics {
21namespace pvAccess {
22
23class epicsShareClass SerializationHelper {
24 EPICS_NOT_COPYABLE(SerializationHelper)
25public:
26
27 static epics::pvData::PVDataCreatePtr _pvDataCreate;
28
34 static epics::pvData::PVStructure::shared_pointer deserializePVRequest(epics::pvData::ByteBuffer* payloadBuffer, epics::pvData::DeserializableControl* control);
35
44 static epics::pvData::PVStructure::shared_pointer deserializeStructureAndCreatePVStructure(epics::pvData::ByteBuffer* payloadBuffer,
46 epics::pvData::PVStructure::shared_pointer const & existingStructure = epics::pvData::PVStructure::shared_pointer());
47
53 static epics::pvData::PVStructure::shared_pointer deserializeStructureFull(epics::pvData::ByteBuffer* payloadBuffer, epics::pvData::DeserializableControl* control);
54
60 static epics::pvData::PVField::shared_pointer deserializeFull(epics::pvData::ByteBuffer* payloadBuffer, epics::pvData::DeserializableControl* control);
61
67 static void serializeNullField(epics::pvData::ByteBuffer* buffer, epics::pvData::SerializableControl* control);
68
73 static void serializePVRequest(epics::pvData::ByteBuffer* buffer, epics::pvData::SerializableControl* control, epics::pvData::PVStructure::shared_pointer const & pvRequest);
74
79 static void serializeStructureFull(epics::pvData::ByteBuffer* buffer, epics::pvData::SerializableControl* control, epics::pvData::PVStructure::shared_pointer const & pvStructure);
80
85 static void serializeFull(epics::pvData::ByteBuffer* buffer, epics::pvData::SerializableControl* control, const epics::pvData::PVField::const_shared_pointer &pvField);
86
87};
88
89}
90}
91
92#endif /* SERIALIZATIONHELPER_H_ */
Copyright - See the COPYRIGHT that is included with this distribution.