Loading...
Searching...
No Matches
juce::midi_ci::InitiatorPropertyExchangeCache Class Reference

## Detailed Description

Accumulates message chunks that have been sent by another device in response to a transaction initiated by a local device.

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

- juce_midi_ci/ci/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.

## Constructors and Destructors

## InitiatorPropertyExchangeCache() [1/2]

juce::midi_ci::InitiatorPropertyExchangeCache::InitiatorPropertyExchangeCache | ( |  | ) |

Referenced by InitiatorPropertyExchangeCache(), and operator=().

## ~InitiatorPropertyExchangeCache()

juce::midi_ci::InitiatorPropertyExchangeCache::~InitiatorPropertyExchangeCache | ( |  | ) |

## InitiatorPropertyExchangeCache() [2/2]

juce::midi_ci::InitiatorPropertyExchangeCache::InitiatorPropertyExchangeCache | ( | InitiatorPropertyExchangeCache && |  | ) |

noexcept

References InitiatorPropertyExchangeCache().

## Member Functions

## operator=()

InitiatorPropertyExchangeCache & juce::midi_ci::InitiatorPropertyExchangeCache::operator= | ( | InitiatorPropertyExchangeCache && |  | ) |

noexcept

References InitiatorPropertyExchangeCache(), and JUCE_DECLARE_NON_COPYABLE.

## primeCache()

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.

References primeCache().

Referenced by primeCache().

## terminate()

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).

References terminate().

Referenced by terminate().

## getTokenForRequestId()

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.

References getTokenForRequestId().

Referenced by getTokenForRequestId().

## getRequestIdForToken()

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.

References getRequestIdForToken().

Referenced by getRequestIdForToken().

## addChunk()

void juce::midi_ci::InitiatorPropertyExchangeCache::addChunk | ( | RequestID | ,
|  | const Message::DynamicSizePropertyExchange & | chunk )

Adds a message chunk for the provided transaction id.

References addChunk().

Referenced by addChunk().

## notify()

void juce::midi_ci::InitiatorPropertyExchangeCache::notify | ( | RequestID | ,
|  | Span< const std::byte > | header )

Updates the transaction state based on the contents of the provided notification.

References notify().

Referenced by notify().

## getOngoingTransactions()

std::vector< Token64 > juce::midi_ci::InitiatorPropertyExchangeCache::getOngoingTransactions | ( |  | ) | const

Returns all ongoing transactions.

References getOngoingTransactions().

Referenced by getOngoingTransactions().

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited