Mema
Memory Matrix — multi-channel audio matrix monitor and router
Loading...
Searching...
No Matches
Mema::EnvironmentParametersMessage Class Reference

Carries the active look-and-feel palette style from Mema to connected clients. More...

#include <MemaMessages.h>

+ Inheritance diagram for Mema::EnvironmentParametersMessage:
+ Collaboration diagram for Mema::EnvironmentParametersMessage:

Public Member Functions

 EnvironmentParametersMessage ()=default
 
 EnvironmentParametersMessage (JUCEAppBasics::CustomLookAndFeel::PaletteStyle paletteStyle)
 
 EnvironmentParametersMessage (const juce::MemoryBlock &blob)
 
 ~EnvironmentParametersMessage ()=default
 
JUCEAppBasics::CustomLookAndFeel::PaletteStyle getPaletteStyle () const
 Returns the palette style carried by this message.
 
- Public Member Functions inherited from Mema::SerializableMessage
 SerializableMessage ()=default
 
virtual ~SerializableMessage ()=default
 
void setId (int id)
 Tags the message with a connection-id used for echo-suppression on the server.
 
int getId () const
 Returns the connection-id tag, or -1 if not set.
 
bool hasUserId () const
 Returns true when a non-default connection-id has been assigned.
 
const SerializableMessageType getType () const
 Returns the concrete message type discriminator.
 
juce::MemoryBlock getSerializedMessage () const
 Serialises the message to a MemoryBlock ready to send over the socket.
 

Protected Member Functions

juce::MemoryBlock createSerializedContent (size_t &contentSize) const override
 Subclass hook — produces the type-specific payload bytes (everything after the type discriminator).
 
- Protected Member Functions inherited from Mema::SerializableMessage
std::uint32_t ReadUint32 (const char *buffer)
 Reads a big-endian uint32 from buffer.
 
std::uint16_t ReadUint16 (const char *buffer)
 Reads a big-endian uint16 from buffer.
 

Additional Inherited Members

- Public Types inherited from Mema::SerializableMessage
enum  SerializableMessageType {
  None = 0 ,
  EnvironmentParameters ,
  AnalyzerParameters ,
  ReinitIOCount ,
  AudioInputBuffer ,
  AudioOutputBuffer ,
  DataTrafficTypeSelection ,
  ControlParameters ,
  PluginParameterInfos ,
  PluginParameterValue
}
 
- Static Public Member Functions inherited from Mema::SerializableMessage
static SerializableMessageinitFromMemoryBlock (const juce::MemoryBlock &blob)
 Deserialises a raw TCP frame into the correct concrete SerializableMessage subclass.
 
static void freeMessageData (SerializableMessage *message)
 Type-correctly destroys a SerializableMessage* returned by initFromMemoryBlock().
 
- Protected Attributes inherited from Mema::SerializableMessage
SerializableMessageType m_type = SerializableMessageType::None
 Type discriminator stored in the first 4 bytes of every serialised frame.
 
int m_userId = -1
 Optional connection-id tag for echo-suppression (-1 = not set).
 

Detailed Description

Carries the active look-and-feel palette style from Mema to connected clients.

Sent by MemaProcessor immediately after a new TCP client connects, so that Mema.Mo and Mema.Re can match Mema's current dark/light palette without manual configuration on the client side. Also re-sent whenever the user changes the palette in Mema's settings menu.

Wire payload (4 bytes): PaletteStyle enum value.

Definition at line 263 of file MemaMessages.h.

Constructor & Destructor Documentation

◆ EnvironmentParametersMessage() [1/3]

Mema::EnvironmentParametersMessage::EnvironmentParametersMessage ( )
default

◆ EnvironmentParametersMessage() [2/3]

Mema::EnvironmentParametersMessage::EnvironmentParametersMessage ( JUCEAppBasics::CustomLookAndFeel::PaletteStyle  paletteStyle)
inline

◆ EnvironmentParametersMessage() [3/3]

Mema::EnvironmentParametersMessage::EnvironmentParametersMessage ( const juce::MemoryBlock &  blob)
inline

◆ ~EnvironmentParametersMessage()

Mema::EnvironmentParametersMessage::~EnvironmentParametersMessage ( )
default

Member Function Documentation

◆ createSerializedContent()

juce::MemoryBlock Mema::EnvironmentParametersMessage::createSerializedContent ( size_t &  contentSize) const
inlineoverrideprotectedvirtual

Subclass hook — produces the type-specific payload bytes (everything after the type discriminator).

Parameters
contentSizeSet by the implementation to the byte count of the returned block.
Returns
A MemoryBlock containing only the payload (no type prefix).

Implements Mema::SerializableMessage.

Definition at line 282 of file MemaMessages.h.

◆ getPaletteStyle()

JUCEAppBasics::CustomLookAndFeel::PaletteStyle Mema::EnvironmentParametersMessage::getPaletteStyle ( ) const
inline

Returns the palette style carried by this message.

Returns
The look-and-feel palette (dark, light, or follow-host).

Definition at line 279 of file MemaMessages.h.


The documentation for this class was generated from the following file: