summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rwxr-xr-xcpp/managementgen/schema.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/cpp/managementgen/schema.py b/cpp/managementgen/schema.py
index 44fc091372..7e4a91814f 100755
--- a/cpp/managementgen/schema.py
+++ b/cpp/managementgen/schema.py
@@ -115,6 +115,17 @@ class SchemaType:
if changeFlag != None:
stream.write (" " + changeFlag + " = true;\n")
stream.write (" }\n");
+ stream.write (" inline void set_" + varName + " (" + self.cpp + " val){\n");
+ stream.write (" sys::RWlock::ScopedWlock writeLock (accessLock);\n")
+ stream.write (" " + varName + " = val;\n");
+ if self.style == "wm":
+ stream.write (" if (" + varName + "Low > val)\n")
+ stream.write (" " + varName + "Low = val;\n")
+ stream.write (" if (" + varName + "High < val)\n")
+ stream.write (" " + varName + "High = val;\n")
+ if changeFlag != None:
+ stream.write (" " + changeFlag + " = true;\n")
+ stream.write (" }\n");
def genHiLoStatResets (self, stream, varName):
if self.style == "wm":