summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorKim van der Riet <kpvdr@apache.org>2008-04-11 19:10:05 +0000
committerKim van der Riet <kpvdr@apache.org>2008-04-11 19:10:05 +0000
commitbceb47104dcb0ae8cab577fda8c78d6c3fc5f01e (patch)
tree196078a2e89a158f33c67f6ffc55b190732c1bb3 /cpp
parentf721e649709c453686077f74c1944aac0ce5c70d (diff)
downloadqpid-python-bceb47104dcb0ae8cab577fda8c78d6c3fc5f01e.tar.gz
Patch from Ted Ross: added set methods to hilo types in generated management classes
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@647270 13f79535-47bb-0310-9956-ffa450edef68
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":