##// END OF EJS Templates
Updated QxOrm meson build defs...
Updated QxOrm meson build defs Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>

File last commit:

r19:32323038b7f8
r52:5eaca9d9803c
Show More
VariableSynchronizationGroup2.h
80 lines | 2.1 KiB | text/x-c | CLexer
/ include / Variable / VariableSynchronizationGroup2.h
First init from SciQLop Core module...
r0 #ifndef SCIQLOP_VARIABLESYNCHRONIZATIONGROUP2_H
#define SCIQLOP_VARIABLESYNCHRONIZATIONGROUP2_H
#include <QUuid>
#include <set>
#include "CoreGlobal.h"
#include <Common/spimpl.h>
#include <Common/containers.h>
Added SynchronizationGroup2 tests and documentation...
r1 /**
* @brief The VariableSynchronizationGroup2 class holds a list of Variables uuid which are synchronized
* @note This class is part of SciQLop internals, as a normal user you shouldn't have to care about it
*/
First init from SciQLop Core module...
r0 class SCIQLOP_CORE_EXPORT VariableSynchronizationGroup2
{
public:
explicit VariableSynchronizationGroup2()=default;
Added SynchronizationGroup2 tests and documentation...
r1 /**
* @brief VariableSynchronizationGroup2 is a convenience ctor to build a group with a default variable
* @param variable
*/
First init from SciQLop Core module...
r0 explicit VariableSynchronizationGroup2(QUuid variable)
:_variables{{variable}}
{}
Added SynchronizationGroup2 tests and documentation...
r1 /**
* @brief addVariable adds the given variable to the group, does nothing if the varaible is alredy in the group
* @param variable
* @sa removeVariable
*/
void addVariable(QUuid variable) noexcept
{
this->_variables.insert(variable);
}
First init from SciQLop Core module...
r0
Added SynchronizationGroup2 tests and documentation...
r1 /**
* @brief removeVariable removes the given variable from the group, does nothing if the varaible is not in the group
* @param variable
* @sa addVariable
*/
void removeVariable(QUuid variable) noexcept
{
Added true single threshold cache strategy and it behaves as expected...
r12 this->_variables.erase(variable);
Added SynchronizationGroup2 tests and documentation...
r1 }
/**
* @brief contains checks if the given variable is in the group
* @param variable
* @return true if the variable is in the group
*/
bool contains(QUuid variable) const noexcept
First init from SciQLop Core module...
r0 {
return SciQLop::containers::contains(this->_variables,variable);
}
Added SynchronizationGroup2 tests and documentation...
r1 /**
* @brief variables
* @return the list of synchronized variables in this group as a std::set
*/
const std::set<QUuid> &variables() const noexcept
{
return this->_variables;
}
First init from SciQLop Core module...
r0
Moved all maps in VC2 to a dedicated struct to ease thread safety more...
r19 inline bool isEmpty()
{
return _variables.size()==0;
}
Basic asynchronous variable update, still a lot to do...
r17 inline QUuid ID(){return _ID;}
operator QUuid() {return _ID;}
First init from SciQLop Core module...
r0 private:
std::set<QUuid> _variables;
Basic asynchronous variable update, still a lot to do...
r17 QUuid _ID = QUuid::createUuid();
First init from SciQLop Core module...
r0 };
#endif // SCIQLOP_VARIABLESYNCHRONIZATIONGROUP2_H