| using System; | |
| using member_pointerNamespace; | |
| public class runme { | |
| public static SWIGTYPE_m_Shape__f_void__double memberPtr = null; | |
| static void Main() { | |
| // Get the pointers | |
| SWIGTYPE_m_Shape__f_void__double area_pt = member_pointer.areapt(); | |
| SWIGTYPE_m_Shape__f_void__double perim_pt = member_pointer.perimeterpt(); | |
| // Create some objects | |
| Square s = new Square(10); | |
| // Do some calculations | |
| check( "Square area ", 100.0, member_pointer.do_op(s,area_pt) ); | |
| check( "Square perim", 40.0, member_pointer.do_op(s,perim_pt) ); | |
| memberPtr = member_pointer.areavar; | |
| memberPtr = member_pointer.perimetervar; | |
| // Try the variables | |
| check( "Square area ", 100.0, member_pointer.do_op(s,member_pointer.areavar) ); | |
| check( "Square perim", 40.0, member_pointer.do_op(s,member_pointer.perimetervar) ); | |
| // Modify one of the variables | |
| member_pointer.areavar = perim_pt; | |
| check( "Square perimeter", 40.0, member_pointer.do_op(s,member_pointer.areavar) ); | |
| // Try the constants | |
| memberPtr = member_pointer.AREAPT; | |
| memberPtr = member_pointer.PERIMPT; | |
| memberPtr = member_pointer.NULLPT; | |
| check( "Square area ", 100.0, member_pointer.do_op(s,member_pointer.AREAPT) ); | |
| check( "Square perim", 40.0, member_pointer.do_op(s,member_pointer.PERIMPT) ); | |
| } | |
| private static void check(string what, double expected, double actual) { | |
| if (expected != actual) | |
| throw new ApplicationException("Failed: " + what + " Expected: " + expected + " Actual: " + actual); | |
| } | |
| } |