]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/other/smux/value2os.h
Types mismatch fixed
[stg.git] / projects / stargazer / plugins / other / smux / value2os.h
index 830fb3b34a5695b3b6d4e6f60229cdd16af4e429..20e624059c99d0cc38611b2a91d5e59c3bbbd4c9 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef __VALUE_2_OS_H__
 #define __VALUE_2_OS_H__
 
+#include "stg/ObjectSyntax.h"
+
 template <typename T>
 bool ValueToOS(const T & value, ObjectSyntax * objectSyntax);
 
@@ -15,4 +17,37 @@ asn_long2INTEGER(&simpleSyntax->choice.number, value);
 return true;
 }
 
+template <>
+inline
+bool ValueToOS<unsigned int>(const unsigned int & value, ObjectSyntax * objectSyntax)
+{
+objectSyntax->present = ObjectSyntax_PR_simple;
+SimpleSyntax_t * simpleSyntax = &objectSyntax->choice.simple;
+simpleSyntax->present = SimpleSyntax_PR_number;
+asn_long2INTEGER(&simpleSyntax->choice.number, value);
+return true;
+}
+
+template <>
+inline
+bool ValueToOS<long>(const long & value, ObjectSyntax * objectSyntax)
+{
+objectSyntax->present = ObjectSyntax_PR_simple;
+SimpleSyntax_t * simpleSyntax = &objectSyntax->choice.simple;
+simpleSyntax->present = SimpleSyntax_PR_number;
+asn_long2INTEGER(&simpleSyntax->choice.number, value);
+return true;
+}
+
+template <>
+inline
+bool ValueToOS<unsigned long>(const unsigned long & value, ObjectSyntax * objectSyntax)
+{
+objectSyntax->present = ObjectSyntax_PR_simple;
+SimpleSyntax_t * simpleSyntax = &objectSyntax->choice.simple;
+simpleSyntax->present = SimpleSyntax_PR_number;
+asn_long2INTEGER(&simpleSyntax->choice.number, value);
+return true;
+}
+
 #endif