LMMS
Loading...
Searching...
No Matches
juce::ScopedValueSetter< ValueType > Class Template Reference

#include <juce_ScopedValueSetter.h>

Public Member Functions

 ScopedValueSetter (ValueType &valueToSet, ValueType newValue)
 ScopedValueSetter (ValueType &valueToSet, ValueType newValue, ValueType valueWhenDeleted)
 ~ScopedValueSetter ()

Private Attributes

ValueType & value
const ValueType originalValue

Detailed Description

template<typename ValueType>
class juce::ScopedValueSetter< ValueType >

Helper class providing an RAII-based mechanism for temporarily setting and then re-setting a value.

E.g.

int x = 1;
{
ScopedValueSetter setter (x, 2);
// x is now 2
}
// x is now 1 again
{
ScopedValueSetter setter (x, 3, 4);
// x is now 3
}
// x is now 4
Definition juce_ScopedValueSetter.h:55
ScopedValueSetter(ValueType &valueToSet, ValueType newValue)
Definition juce_ScopedValueSetter.h:60
unsigned x[BMAX+1]
Definition inflate.c:1586

@tags{Core}

Constructor & Destructor Documentation

◆ ScopedValueSetter() [1/2]

template<typename ValueType>
juce::ScopedValueSetter< ValueType >::ScopedValueSetter ( ValueType & valueToSet,
ValueType newValue )
inline

Creates a ScopedValueSetter that will immediately change the specified value to the given new value, and will then reset it to its original value when this object is deleted.

◆ ScopedValueSetter() [2/2]

template<typename ValueType>
juce::ScopedValueSetter< ValueType >::ScopedValueSetter ( ValueType & valueToSet,
ValueType newValue,
ValueType valueWhenDeleted )
inline

Creates a ScopedValueSetter that will immediately change the specified value to the given new value, and will then reset it to be valueWhenDeleted when this object is deleted.

◆ ~ScopedValueSetter()

template<typename ValueType>
juce::ScopedValueSetter< ValueType >::~ScopedValueSetter ( )
inline

Member Data Documentation

◆ originalValue

template<typename ValueType>
const ValueType juce::ScopedValueSetter< ValueType >::originalValue
private

◆ value

template<typename ValueType>
ValueType& juce::ScopedValueSetter< ValueType >::value
private

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