Exemple #1
0
 public void StructWithString()
 {
     m_eng.Eval("val.x = 'hello world'");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual("hello world", val.GetField <string>(0, "x"));
     }
 }
Exemple #2
0
 public void StructWithDouble()
 {
     m_eng.Eval("val.x = 6.5");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual(6.5, val.GetField <double>(0, "x"));
     }
 }
Exemple #3
0
 public void StructWithStringAndDouble()
 {
     m_eng.Eval("val.x = 'hello world';val.y = 6.55");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual("hello world", val.GetField <string>(0, "x"));
         Assert.AreEqual(6.55, val.GetField <double>(0, "y"));
     }
 }
Exemple #4
0
 public void StructWithStringArray()
 {
     m_eng.Eval("val(1).x = 'hello world'; val(2).x = 'how do you do ?'");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual("hello world", val.GetField <string>(0, "x"));
         Assert.AreEqual("how do you do ?", val.GetField <string>(1, "x"));
     }
 }
Exemple #5
0
 public void StructWithDoubleArray()
 {
     m_eng.Eval("val(1).x = 6.5;val(2).x = 8.7");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual(6.5, val.GetField <double>(0, "x"));
         Assert.AreEqual(8.7, val.GetField <double>(1, "x"));
     }
 }
Exemple #6
0
 public void StructWithComplex()
 {
     m_eng.Eval("val.x = 6.5 + 5.7 * i");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.IsTrue(new Complex <double>(6.5, 5.7).Equals(
                           val.GetField <Complex <double> >(0, "x")));
     }
 }
Exemple #7
0
 public void WithString()
 {
     using (MxArray arr = MxArray.CreateStruct())
     {
         arr.SetField("title", "hello");
         m_eng.SetVariable("val", arr);
         m_eng.Eval("val_tmp = val.title");
         Assert.AreEqual("hello", m_eng.GetVariable <string>("val_tmp"));
     }
 }
Exemple #8
0
 public void StructWithComplexArray()
 {
     m_eng.Eval("val(1).x = 6.5+8.18*i;val(2).x = 8.7+98771.6*i");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.IsTrue(new Complex <double>(6.5, 8.18).Equals(
                           val.GetField <Complex <double> >(0, "x")));
         Assert.IsTrue(new Complex <double>(8.7, 98771.6).Equals(
                           val.GetField <Complex <double> >(1, "x")));
     }
 }
Exemple #9
0
 public void StructWithStringAndDoubleArray()
 {
     m_eng.Eval("val(1).x = 'hello world';val(1).y = 6.55");
     m_eng.Eval("val(2).x = 'this is a test';val(2).y = 666.00");
     using (MxArray val = m_eng.GetVariable("val"))
     {
         Assert.AreEqual("hello world", val.GetField <string>(0, "x"));
         Assert.AreEqual(6.55, val.GetField <double>(0, "y"));
         Assert.AreEqual("this is a test", val.GetField <string>(1, "x"));
         Assert.AreEqual(666, val.GetField <double>(1, "y"));
     }
 }
Exemple #10
0
 public void WithStruct_InvertDestroy()
 {
     using (MxArray str = MxArray.CreateStruct())
         using (MxArray arr = MxArray.CreateStruct())
         {
             arr.SetField("some_field", str);
             str.SetField("some_string", "strucInStruct");
             m_eng.SetVariable("val", arr);
             m_eng.Eval("val_tmp = val.some_field.some_string");
             Assert.AreEqual("strucInStruct", m_eng.GetVariable <string>("val_tmp"));
         }
 }