Exemplo n.º 1
0
        private static void NewInstance(ExternalPtr ptr, AtomList args)
        {
            External instance;

            Class cl = Internal.pass.klass; // set by native side

            Internal.extptr = ptr;

//            Post("CLASS-NEW {0}",cl);
            try
            {
                // TODO: create dynamic delegate for that....
                System.Reflection.ConstructorInfo m = cl.extclass.GetConstructor(new Type[1] {
                    typeof(Atom[])
                });
                if (m != null)
                {
                    instance = (External)m.Invoke(new object[1] {
                        (Atom[])args
                    });
                }
                else
                {
                    // search for the argument-less constructor... it must exist, we searched before
                    m        = cl.extclass.GetConstructor(System.Type.EmptyTypes);
                    instance = (External)m.Invoke(null);
                }
            }
            catch (Exception exc)
            {
                instance = null;
                PostError(exc.ToString());
            }

#if DEBUG
            Internal.extptr.Clear();
#endif

            Internal.pass.ext = instance; // back to native
        }
Exemplo n.º 2
0
 internal extern static void Unbind(ExternalPtr obj, Symbol dst);
Exemplo n.º 3
0
 internal extern static void AddInlet(ExternalPtr obj, Symbol type); // create proxy inlet (typed)
Exemplo n.º 4
0
 internal extern static void AddInlet(ExternalPtr obj, ref Symbol s);
Exemplo n.º 5
0
 internal extern static void AddInlet(ExternalPtr obj, Symbol sel, Symbol to_sel);
Exemplo n.º 6
0
 internal extern static void Outlet(ExternalPtr obj, int n, Atom a);
Exemplo n.º 7
0
 internal extern static void OutletEx(ExternalPtr obj, int n, object o);
Exemplo n.º 8
0
 internal extern static void AddInlet(ExternalPtr obj,ref Pointer f);
Exemplo n.º 9
0
 internal extern static void AddInlet(ExternalPtr obj, Symbol type); // create proxy inlet (typed)
Exemplo n.º 10
0
 internal extern static void AddInlet(ExternalPtr obj, ref float f); 
Exemplo n.º 11
0
 internal extern static void AddInlet(ExternalPtr obj, ref Symbol s);
Exemplo n.º 12
0
 internal extern static void AddInlet(ExternalPtr obj, Symbol sel, Symbol to_sel);
Exemplo n.º 13
0
        // --------------------------------------------------------------------------

        protected External()
        {
            ptr = Internal.extptr;
            klass = Internal.pass.klass;
        }
Exemplo n.º 14
0
        private static void NewInstance(ExternalPtr ptr,AtomList args)
        {
            External instance;
            
            Class cl = Internal.pass.klass; // set by native side
            Internal.extptr = ptr;

//            Post("CLASS-NEW {0}",cl);
            try 
            {
                // TODO: create dynamic delegate for that....
                System.Reflection.ConstructorInfo m = cl.extclass.GetConstructor(new Type[1] { typeof(Atom[]) });
                if (m != null)
                    instance = (External)m.Invoke(new object[1] { (Atom[])args });
                else
                {
                    // search for the argument-less constructor... it must exist, we searched before
                    m = cl.extclass.GetConstructor(System.Type.EmptyTypes);
                    instance = (External)m.Invoke(null);
                }
            }
            catch (Exception exc) 
            {
                instance = null;
                PostError(exc.ToString()); 
            }

#if DEBUG
            Internal.extptr.Clear();
#endif

            Internal.pass.ext = instance; // back to native
         }
Exemplo n.º 15
0
 internal extern static void Outlet(ExternalPtr obj, int n, float f);
Exemplo n.º 16
0
 internal extern static void AddInlet(ExternalPtr obj); // create proxy inlet (anything)
Exemplo n.º 17
0
 internal extern static void Outlet(ExternalPtr obj, int n, Pointer p);
Exemplo n.º 18
0
 internal extern static void AddOutlet(ExternalPtr obj, Symbol type);
Exemplo n.º 19
0
 internal extern static void Outlet(ExternalPtr obj, int n, Symbol s, Atom[] l);
Exemplo n.º 20
0
 internal extern static void Outlet(ExternalPtr obj, int n, float f);
Exemplo n.º 21
0
 internal extern static void Unbind(ExternalPtr obj, Symbol dst);
Exemplo n.º 22
0
 internal extern static void Outlet(ExternalPtr obj, int n, Symbol s);
Exemplo n.º 23
0
        // --------------------------------------------------------------------------

        protected External()
        {
            ptr   = Internal.extptr;
            klass = Internal.pass.klass;
        }
Exemplo n.º 24
0
 internal extern static void Outlet(ExternalPtr obj, int n, Pointer p);
Exemplo n.º 25
0
 internal extern static void AddInlet(ExternalPtr obj, ref float f);
Exemplo n.º 26
0
 internal extern static void Outlet(ExternalPtr obj, int n, Atom a);
Exemplo n.º 27
0
 internal extern static void AddInlet(ExternalPtr obj, ref Pointer f);
Exemplo n.º 28
0
 internal extern static void AddOutlet(ExternalPtr obj, Symbol type);
Exemplo n.º 29
0
 internal extern static void AddInlet(ExternalPtr obj); // create proxy inlet (anything)
Exemplo n.º 30
0
 internal extern static void OutletEx(ExternalPtr obj, int n, object o);