Esempio n. 1
0
 /// <summary>
 /// Loads the selected file
 /// </summary>
 private void LoadFile(object sender, EventArgs e)
 {
     try
     {
         Assembly assembly = Assembly.LoadFrom(fileLocation.Text);
         Type[]   types    = assembly.GetTypes();
         string   name;
         foreach (Type type in types)
         {
             name = type.Name;
             if (type.GetInterface("IUserObjectFactory") != null)
             {
                 loadedFactory    = (IUserObjectFactory)Activator.CreateInstance(type);
                 factoryName.Text = name;
             }
             else if (type.GetInterface("IInputLayer") != null)
             {
                 input.Items.Add(name);
                 input.Text = name;
             }
             else if (type.GetInterface("IHiddenLayer") != null)
             {
                 hidden.Items.Add(name);
                 hidden.Text = name;
             }
             else if (type.GetInterface("IOutputLayer") != null)
             {
                 output.Items.Add(name);
                 output.Text = name;
             }
             else if (type.GetInterface("INode") != null)
             {
                 node.Items.Add(name);
                 node.Text = name;
             }
             else if (type.GetInterface("IPreProcessor") != null)
             {
                 preProcessor.Items.Add(name);
                 preProcessor.Text = name;
             }
             else if (type.GetInterface("IPostProcessor") != null)
             {
                 postProcessor.Items.Add(name);
                 postProcessor.Text = name;
             }
             else if (type.GetInterface("ITrainingAlgorithm") != null)
             {
                 trainingAlgorithm.Items.Add(name);
                 trainingAlgorithm.Text = name;
             }
         }
     }
     catch (IOException ex)
     {
         MessageBox.Show("The file could not be found and was not loaded");
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Addes an object factory to the list.
        /// </summary>
        /// <param name="name">The name that the factory should be added under.</param>
        /// <param name="factory">The object to store.</param>
        public void SetFactory(string name, IUserObjectFactory factory)
        {
            if (objectFactory.ContainsKey(name))
            {
                objectFactory[name] = factory;
            }
            else
            {
                objectFactory.Add(name, factory);
            }

            if (FactoryListChanged != null)
            {
                FactoryListChanged();
            }
        }
Esempio n. 3
0
 /// <summary>
 /// Loads the selected file
 /// </summary>
 private void LoadFile(object sender, EventArgs e)
 {
     try
     {
         Assembly assembly = Assembly.LoadFrom(fileLocation.Text);
         Type[] types = assembly.GetTypes();
         string name;
         foreach (Type type in types)
         {
             name = type.Name;
             if (type.GetInterface("IUserObjectFactory") != null)
             {
                 loadedFactory = (IUserObjectFactory)Activator.CreateInstance(type);
                 factoryName.Text = name;
             }
             else if (type.GetInterface("IInputLayer") != null)
             {
                 input.Items.Add(name);
                 input.Text = name;
             }
             else if (type.GetInterface("IHiddenLayer") != null)
             {
                 hidden.Items.Add(name);
                 hidden.Text = name;
             }
             else if(type.GetInterface("IOutputLayer") != null)
             {
                 output.Items.Add(name);
                 output.Text = name;
             }
             else if(type.GetInterface("INode") != null)
             {
                 node.Items.Add(name);
                 node.Text = name;
             }
             else if(type.GetInterface("IPreProcessor") != null)
             {
                 preProcessor.Items.Add(name);
                 preProcessor.Text = name;
             }
             else if(type.GetInterface("IPostProcessor") != null)
             {
                 postProcessor.Items.Add(name);
                 postProcessor.Text = name;
             }
             else if (type.GetInterface("ITrainingAlgorithm") != null)
             {
                 trainingAlgorithm.Items.Add(name);
                 trainingAlgorithm.Text = name;
             }
         }
     }
     catch (IOException ex)
     {
         MessageBox.Show("The file could not be found and was not loaded");
     }
 }
Esempio n. 4
0
        /// <summary>
        /// Loads a user binary file from disk.
        /// </summary>
        /// <param name="commands">Commands used to customize the behavior of the
        /// command</param>
        void BinaryHandler(List <RawCommand> commands)
        {
            Console.WriteLine("Loading binary...");
            if (commands[2].CommandChar != 'f')
            {
                Console.WriteLine("User binary could not be loaded");
                Console.WriteLine("No file was specified");
                return;
            }

            try
            {
                string name = "";
                if (commands.Count > 3)
                {
                    if (commands[3].CommandChar == 'n')
                    {
                        name = commands[3].Value;
                    }
                }

                Assembly           assembly = Assembly.LoadFrom(commands[2].Value);
                IUserObjectFactory factory  = null;
                //(IUserObjectFactory)assembly.CreateInstance("IUserObjectFactory");

                foreach (Type type in assembly.GetTypes())
                {
                    if (type.GetInterface("IUserObjectFactory") != null)
                    {
                        factory = (IUserObjectFactory)Activator.CreateInstance(type);
                        if (name == "")
                        {
                            name = type.Name;
                        }
                        break;
                    }
                }

                if (factory == null)
                {
                    Console.WriteLine("The binary was not loaded successfully.");
                    return;
                }
                else
                {
                    if (objectFactory.ContainsKey(name))
                    {
                        objectFactory[name] = factory;
                    }
                    else
                    {
                        objectFactory.Add(name, factory);
                    }
                }
                Console.WriteLine("Finished loading the binary.");
            }
            catch (Exception ex)
            {
                Console.WriteLine("The user binary file could not be loaded.");
                Console.WriteLine("There was an error reading the file");
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Addes an object factory to the list.
        /// </summary>
        /// <param name="name">The name that the factory should be added under.</param>
        /// <param name="factory">The object to store.</param>
        public void SetFactory(string name, IUserObjectFactory factory)
        {
            if (objectFactory.ContainsKey(name))
                objectFactory[name] = factory;
            else
                objectFactory.Add(name, factory);

            if (FactoryListChanged != null)
                FactoryListChanged();
        }