Improve code sharing and dependencies, address code duplication (#976)

This commit is contained in:
Uwe Seimet
2022-11-10 07:44:06 +01:00
committed by GitHub
parent 1c0179e7e3
commit 4fa513090a
104 changed files with 541 additions and 635 deletions

View File

@@ -0,0 +1,34 @@
//---------------------------------------------------------------------------
//
// SCSI Target Emulator RaSCSI Reloaded
// for Raspberry Pi
//
// Copyright (C) 2021-2022 Uwe Seimet
//
// Helper methods for setting up/evaluating protobuf messages
//
//---------------------------------------------------------------------------
#pragma once
#include "google/protobuf/message.h"
#include "generated/rascsi_interface.pb.h"
#include <string>
#include <list>
using namespace std;
using namespace rascsi_interface;
namespace protobuf_util
{
static const char KEY_VALUE_SEPARATOR = '=';
void ParseParameters(PbDeviceDefinition&, const string&);
string GetParam(const PbCommand&, const string&);
string GetParam(const PbDeviceDefinition&, const string&);
void SetParam(PbCommand&, const string&, string_view);
void SetParam(PbDevice&, const string&, string_view);
void SetParam(PbDeviceDefinition&, const string&, string_view);
void SetPatternParams(PbCommand&, string_view);
string ListDevices(const list<PbDevice>&);
}