[31m--------------------------------------------------------------------------------------------------------------------------------------------------------------[m
[31m-- Gnostic is Ada Generic Neural Object System Engineering.                                                                                                --[m
[31m-- Gnostic (C) Copyright 2016 Manuel De Girardi.                                                                                                           --[m
[31m--------------------------------------------------------------------------------------------------------------------------------------------------------------[m
  
[31m--------------------------------------------------------------------------------------------------------------------------------------------------------------[m
[31m-- Date        := 2016-11-27 19:33:08 ; [m
[31m-- Description : Ada Generic Neural Object System Engineering.                                                                                              --[m
[31m-- Version     := 2016.12.1a ; [m
[31m-- Authors     : Manuel De Girardi.                                                                                                                         --[m
[31m--------------------------------------------------------------------------------------------------------------------------------------------------------------[m
[01;34mwith[m Ada[31m.[mWide_Text_Io[31m;[m
[01;34mwith[m Ada[31m.[mText_Io[31m;[m
[01;34muse[m Ada[31m;[m

[01;34mpackage[m [01;34mbody[m Gnos[31m.[mNeural [01;34mis[m
   
   [01;34mprocedure[m [01;30minitialize[m[31m([mNeural_Context [31m:[m [01;34min[m [01;34mout[m Neural_Context_Record[31m;[m
			Neural_Params  [31m:[m [01;34min[m Neural_Parameters_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
     
      Neural_Context[31m.[mNeural_Params [31m:=[m Neural_Params[31m;[m
      Objects_System[31m.[m[01;30mInitialize[m[31m([m[01;30mSystem_Context_Record[m[31m([mNeural_Context[31m),[m [01;30mSystem_Parameters_Type[m[31m([mNeural_Params[31m));[m
   [01;34mend[m Initialize[31m;[m
   
   [01;34mprocedure[m [01;30mLoad_Project[m[31m([mNeural_Context [31m:[m [01;34min[m [01;34mout[m Neural_Context_Record[31m;[m
			  Ada_Path [31m:[m [01;34min[m [32mString[m[31m;[m
			  Gtk_Path [31m:[m [01;34min[m [32mString[m[31m;[m
			  Aws_Path [31m:[m [01;34min[m [32mString[m[31m;[m
			  Project_Path [31m:[m [01;34min[m [32mString[m[31m)[m [01;34mis[m
   [01;34mbegin[m
      
      
      
      Objects_System[31m.[m[01;30mLoad_project[m[31m([m[01;30mSystem_Context_Record[m[31m([mNeural_Context[31m),[m Ada_Path[31m,[m Gtk_Path[31m,[m Aws_Path[31m,[m Project_Path[31m);[m
   [01;34mend[m Load_Project[31m;[m
   
   
   [01;34mfunction[m [01;30mCheck_Parameters[m[31m([mNeural_Context [31m:[m [01;34min[m Neural_Context_Record[31m;[m
			     Params [31m:[m [01;34min[m Neural_Parameters_Type[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m
      
      Checked [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      
   [01;34mbegin[m
      
      Wide_Text_Io[31m.[m[01;30mPut[m[31m([m[31m"Neural Context :"[m[31m);[m
      
      Checked [31m:=[m Neural_Context[31m.[mNeural_Params [31m=[m [01;30mNeural_Parameters_Type[m[31m([mParams[31m);[m
      
      [01;34mif[m [01;34mnot[m Checked [01;34mthen[m
	 Text_Io[31m.[mNew_Line[31m;[m
	 [01;34mif[m Neural_Context[31m.[mNeural_Params[31m.[mSelf_Wait [31m/=[m [01;30mNeural_Parameters_Type[m[31m([mParams[31m).[mSelf_Wait [01;34mthen[m
	    Text_Io[31m.[m[01;30mPut_Line[m[31m([m[31m"Self_Wait : "[m [31m&[m 
			       [32mDuration[m'[01;30mImage[m[31m([mNeural_Context[31m.[mNeural_Params[31m.[mSelf_Wait[31m)[m [31m&[m [31m" /= "[m [31m&[m
			       [32mDuration[m'[01;30mImage[m[31m([m[01;30mNeural_Parameters_Type[m[31m([mParams[31m).[mSelf_Wait[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 [01;34mif[m Neural_Context[31m.[mNeural_Params[31m.[mUser_Wait [31m/=[m [01;30mNeural_Parameters_Type[m[31m([mParams[31m).[mUser_Wait [01;34mthen[m
	    Text_Io[31m.[m[01;30mPut_Line[m[31m([m[31m"User_Wait : "[m [31m&[m 
			       [32mDuration[m'[01;30mImage[m[31m([mNeural_Context[31m.[mNeural_Params[31m.[mUser_Wait[31m)[m [31m&[m [31m" /= "[m [31m&[m
			       [32mDuration[m'[01;30mImage[m[31m([m[01;30mNeural_Parameters_Type[m[31m([mParams[31m).[mUser_Wait[31m));[m	    
	 [01;34mend[m [01;34mif[m[31m;[m
	 [01;34mraise[m Program_Error[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
      Wide_Text_Io[31m.[m[01;30mPut[m[31m([m[31m"Ok, "[m[31m);[m
      
      Checked [31m:=[m Checked [01;34mand[m Objects_System[31m.[m[01;30mCheck_Parameters[m[31m([mNeural_Context[31m,[m Params[31m);[m      
      [01;34mreturn[m Checked[31m;[m
   [01;34mend[m Check_Parameters[31m;[m
   

   [01;34mprocedure[m [01;30mLoad_Network[m[31m([mNeural_Set [31m:[m [01;34min[m [01;34mout[m Neural_Set_Array_Type[31m;[m Human_Lang [31m:[m [01;34min[m Human_Lang_Enum[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mNeural_Set[m[31m([mHuman_Lang[31m)[m [31m:=[m [01;34mnew[m Neural_Unit_Record ' [31m([mHuman_Lang [31m=>[m Human_Lang[31m);[m
   [01;34mend[m Load_Network[31m;[m
   
[01;34mend[m Gnos[31m.[mNeural[31m;[m
