Open Model Railroad Network (OpenMRN)
Loading...
Searching...
No Matches
TractionCvCdi.hxx
Go to the documentation of this file.
1
35#ifndef _OPENLCB_TRACTIONCVCDI_HXX_
36#define _OPENLCB_TRACTIONCVCDI_HXX_
37
39
40namespace openlcb {
41
44CDI_GROUP(TractionShortCvSpace, Segment(openlcb::MemoryConfigDefs::SPACE_DCC_CV), Offset(0x7F000000), Name("CV access"), Description("Individual CVs can be read and modified for Railcom-enabled locomotives using POM commands. Write the CV number variable first, then write or read the CV value variable."));
46CDI_GROUP_ENTRY(number, Uint32ConfigEntry, Name("CV number"));
48CDI_GROUP_ENTRY(value, Uint8ConfigEntry, Name("CV value"));
50CDI_GROUP_ENTRY(verify_value, Uint8ConfigEntry, Name("Verify CV value"),
51 Description("Write this value first to send out programming track verify "
52 "commands"));
54 verify_result, Uint8ConfigEntry, Name("Verify CV result"),
55 Description(
56 "Refresh this line to verify CV value. Return 0=no ack, 1=ack."));
57
59
60static_assert(TractionShortCvSpace::size() == 7,
61 "Traction CV space's size not as expected.");
62
63} // namespace openlcb
64
65#endif // _OPENLCB_TRACTIONCVCDI_HXX_
#define CDI_GROUP(GroupName, ARGS...)
Starts a CDI group.
#define CDI_GROUP_ENTRY(NAME, TYPE, ARGS...)
Adds an entry to a CDI group.
Implementation class for numeric configuration entries, templated by the integer type.
CDI_GROUP_END()
Signals termination of the group.
@ SPACE_DCC_CV
proxy space for DCC functions