Class CVSSVDCodingRX#

Inheritance Relationships#

Base Types#

Class Documentation#

class CVSSVDCodingRX : public CCodeGeneratorBase, private CVSSHelper#

VSS code generator coding class for vehicle devices. Creates the code out of templates.

Public Functions

inline CVSSVDCodingRX(const std::string &rsPrefix)#

Constructor.

Parameters:

rsPrefix[in] used by cmake library and signal definition in signal_identifier.h file

std::string Code_RXIDLDeviceList(const std::vector<std::string> &vssParts, const std::vector<SFunctionVDDefinition> &vecFunctions) const#

create device content for the IDL file of a RX signal

Parameters:
  • vssParts[in] Interface in vss style separated in parts

  • vecFunctions[in] container of all functions of a single vss definition

Returns:

content of the Device part of a IDL Interface of a RX signal

std::string Code_RXIDLServiceList(const std::vector<std::string> &vssParts, const std::vector<SFunctionVDDefinition> &vecFunctions) const#

create service content for the IDL file of a RX signal

Parameters:
  • vssParts[in] Interface in vss style separated in parts

  • vecFunctions[in] container of all functions of a single vss definition

Returns:

content of the Device part of a IDL Interface of a RX signal

void GetKeyWordMap(const SSignalVDDefinition &signal, CKeywordMap &mapKeywords) const#

fill the KeyWordMap with all required strings

Parameters:
  • signal[in] signal definition structure to fill the KeyWordMap

  • mapKeywords[in] KeyWordMap to be filled

Protected Functions

std::string Code_VD_RXIncludes(const std::string &vssOriginalNoDot) const#

create single or multiple lines containing include files

Parameters:

vssOriginalNoDot[in] vss string without points e.g. VehicleChassisSteeringWheelAngle

Returns:

content of a single interface

std::string Code_VD_RXInterface(const std::string &functionName, const std::string &vssShortenWithColons) const#

create a single line containing a interface

Parameters:
  • functionName[in] function which is part of the interface

  • vssShortenWithColons[in] vss string (short version) with colons as separator

Returns:

content of a single interface

std::string Code_VD_RXInterfaceEntry(const std::string &functionName, const std::string &vssWithColons) const#

create a single line containing a interface entry

Parameters:
  • functionName[in] function which is part of the interface

  • vssWithColons[in] vss string (complete version) with colons as separator

Returns:

content of a single interface entry

std::string Code_VD_RXReAndUnregisterEvent(const std::string &vssWithColons, const SFunctionVDDefinition &function) const#

Get the register and unregister part for the RX VD header.

Parameters:
  • vssWithColons[in] vss string (complete version) with colons as separator

  • function[in] function definition structure

Returns:

content of a single register and unregister part.

std::string Code_VD_RXPrivateHeaderPart(const SFunctionVDDefinition &function, const std::string &vssWithColons, const std::string &class_name) const#

Get the private header part of the vehicle device header.

Parameters:
  • function[in] function definition structure

  • vssWithColons[in] vss string (complete version) with colons as separator

  • class_name[in] class name which is part of the interface

Returns:

content of private header part of the vehicle device header

std::string Code_RXIDLDeviceInterface(const std::string &spaces, const SFunctionVDDefinition &function) const#

create device content for the IDL file of a RX signal

Parameters:
  • spaces[in] string containing only space characters for aligning

  • function[in] function definition structure

Returns:

content of the Device part of a IDL Interface of a RX signal

std::string Code_RXIDLServiceInterface(const std::string &spaces, const std::string &vssWithColons, const SFunctionVDDefinition &function) const#

create service content for the IDL file of a RX signal

Parameters:
  • spaces[in] string containing only space characters for aligning

  • vssWithColons[in] vss string (complete version) with colons as separator

  • function[in] function definition structure

Returns:

content of the Device part of a IDL Interface of a RX signal

std::string Code_VD_RXSubscribeSignal(const std::string &class_name, const SFunctionVDDefinition &function) const#

subscribe signals (RX type) for vehicle device

Parameters:
  • class_name[in] class name which is part of the interface

  • function[in] function definition structure

Returns:

content of a initializing code

std::string Code_VD_RXCheckSignalSubscribtions(const std::vector<SFunctionVDDefinition> &vecFunctions) const#

subscribe signals (RX type) for vehicle device

Parameters:

vecFunctions[in] list of functions of the vss interface

Returns:

content of a initializing code

std::string Code_VD_RXResetSignal(const SFunctionVDDefinition &function) const#

Rest signal (RX signals) for vehicle device cpp file.

Parameters:

function[in] function definition structure

Returns:

content of a single signal reset implementation

std::string Code_VD_RXRegister(const std::string &class_name, const SFunctionVDDefinition &function, const std::string &vssWithColons) const#

create register/unregister and callback function code for vehicle device

Parameters:
  • class_name[in] class name which is part of the interface

  • function[in] function definition structure

  • vssWithColons[in] vss string with colons as separator

Returns:

content of a single signal register/unregister and callback code

Protected Attributes

std::string m_ssPrefix#

prefix, used by cmake library and signal definition in signal_identifier.h file.