| JUCE
    | 
Accumulates message chunks that have been sent by another device in response to a transaction initiated by a local device. More...
#include <juce_CIPropertyExchangeCache.h>
| Public Member Functions | |
| InitiatorPropertyExchangeCache () | |
| ~InitiatorPropertyExchangeCache () | |
| InitiatorPropertyExchangeCache (InitiatorPropertyExchangeCache &&) noexcept | |
| InitiatorPropertyExchangeCache & | operator= (InitiatorPropertyExchangeCache &&) noexcept | 
| std::optional< Token64 > | primeCache (uint8_t maxSimultaneousRequests, std::function< void(const PropertyExchangeResult &)> onDone) | 
| Picks an unused request ID, and prepares the cache for that ID to accumulate message chunks. | |
| bool | terminate (Token64) | 
| Terminates/cancels an ongoing transaction. | |
| std::optional< Token64 > | getTokenForRequestId (RequestID) const | 
| If there's a transaction ongoing with the given request id, returns the token uniquely identifying that transaction, otherwise returns nullopt. | |
| std::optional< RequestID > | getRequestIdForToken (Token64) const | 
| If the token refers to an ongoing transaction, returns the request id of that transaction. | |
| void | addChunk (RequestID, const Message::DynamicSizePropertyExchange &chunk) | 
| Adds a message chunk for the provided transaction id. | |
| void | notify (RequestID, Span< const std::byte > header) | 
| Updates the transaction state based on the contents of the provided notification. | |
| std::vector< Token64 > | getOngoingTransactions () const | 
| Returns all ongoing transactions. | |
Accumulates message chunks that have been sent by another device in response to a transaction initiated by a local device.
| juce::midi_ci::InitiatorPropertyExchangeCache::InitiatorPropertyExchangeCache | ( | ) | 
| juce::midi_ci::InitiatorPropertyExchangeCache::~InitiatorPropertyExchangeCache | ( | ) | 
| 
 | noexcept | 
| 
 | noexcept | 
| std::optional< Token64 > juce::midi_ci::InitiatorPropertyExchangeCache::primeCache | ( | uint8_t | maxSimultaneousRequests, | 
| std::function< void(const PropertyExchangeResult &)> | onDone ) | 
Picks an unused request ID, and prepares the cache for that ID to accumulate message chunks.
Incoming chunks added with addChunk are generated by another device acting as a responder.
| bool juce::midi_ci::InitiatorPropertyExchangeCache::terminate | ( | Token64 | ) | 
Terminates/cancels an ongoing transaction.
Returns true if the termination had an effect (i.e. the transaction was still ongoing), or false otherwise (the transaction already ended or never started).
| std::optional< Token64 > juce::midi_ci::InitiatorPropertyExchangeCache::getTokenForRequestId | ( | RequestID | ) | const | 
If there's a transaction ongoing with the given request id, returns the token uniquely identifying that transaction, otherwise returns nullopt.
| std::optional< RequestID > juce::midi_ci::InitiatorPropertyExchangeCache::getRequestIdForToken | ( | Token64 | ) | const | 
If the token refers to an ongoing transaction, returns the request id of that transaction.
Otherwise, returns an invalid request id.
| void juce::midi_ci::InitiatorPropertyExchangeCache::addChunk | ( | RequestID | , | 
| const Message::DynamicSizePropertyExchange & | chunk ) | 
Adds a message chunk for the provided transaction id.
| void juce::midi_ci::InitiatorPropertyExchangeCache::notify | ( | RequestID | , | 
| Span< const std::byte > | header ) | 
Updates the transaction state based on the contents of the provided notification.
| std::vector< Token64 > juce::midi_ci::InitiatorPropertyExchangeCache::getOngoingTransactions | ( | ) | const | 
Returns all ongoing transactions.