#pragma once namespace sp { namespace details { // Build message Id template struct MessageInterfaceProcessMsgId; template struct MessageInterfaceProcessMsgId { using Type = MessageInterfaceIdTypeBase; }; template struct MessageInterfaceProcessMsgId { using Type = TBase; }; // Build endianess template struct MessageInterfaceProcessEndian; template struct MessageInterfaceProcessEndian { using Type = MessageInterfaceLittleEndian; }; template struct MessageInterfaceProcessEndian { using Type = MessageInterfaceBigEndian; }; // Build read template struct MessageInterfaceProcessRead; template struct MessageInterfaceProcessRead { using Type = MessageInterfaceReadBase; }; template struct MessageInterfaceProcessRead { using Type = TBase; }; // Build write template struct MessageInterfaceProcessWrite; template struct MessageInterfaceProcessWrite { using Type = MessageInterfaceWriteBase; }; template struct MessageInterfaceProcessWrite { using Type = TBase; }; // Build handler template struct MessageInterfaceProcessHandler; template struct MessageInterfaceProcessHandler { using Type = MessageInterfaceHandlerBase; }; template struct MessageInterfaceProcessHandler { using Type = TBase; }; // Build valid template struct MessageInterfaceProcessValid; template struct MessageInterfaceProcessValid { using Type = MessageInterfaceValidityBase; }; template struct MessageInterfaceProcessValid { using Type = TBase; }; // Build id writing template struct MessageInterfaceProcessWriteId; template struct MessageInterfaceProcessWriteId { using Type = MessageInterfaceWriteIdBase; }; template struct MessageInterfaceProcessWriteId { using Type = TBase; }; // Build to string template struct MessageInterfaceProcessToString; template struct MessageInterfaceProcessToString { using Type = MessageInterfaceToStringBase; }; template struct MessageInterfaceProcessToString { using Type = TBase; }; } // namespace details } // namespace sp