osi3::InterfaceVersion Struct Reference

The interface version number. More...

Collaboration diagram for osi3::InterfaceVersion:

Public Attributes

optional uint32 version_major = 1
 Major version number. More...
 
optional uint32 version_minor = 2
 Minor version number. More...
 
optional uint32 version_patch = 3
 Patch version number. More...
 

Detailed Description

The interface version number.

The field denoting the version number. This needs to be set by the sender to the actual OSI version that is to be sent. Code wanting to access the version number of the OSI code base can access a FileOptions, which has the proper values, like this:

auto currentInterfaceVersion =
InterfaceVersion::descriptor()->file()->options().GetExtension(current_interface_version);

If a message with all components set to the default value 0 is received, this indicates that either that the message was sent by a version 2.2.0 or earlier release, or that the sender did not properly set the version components prior to sending.

Increments will happen as part of changes to the whole interface. The meaning of different InterfaceVersions is defined in the versioning chapter of the official OSI documentation.

Member Data Documentation

◆ version_major

optional uint32 osi3::InterfaceVersion::version_major = 1

Major version number.

◆ version_minor

optional uint32 osi3::InterfaceVersion::version_minor = 2

Minor version number.

◆ version_patch

optional uint32 osi3::InterfaceVersion::version_patch = 3

Patch version number.


  • build/osi_version.proto