[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.[mSystems [01;34mis[m
   [01;34mprocedure[m [01;30minitialize[m[31m([mSystem_Context [31m:[m [01;34min[m [01;34mout[m System_Context_Record[31m;[m
			System_Params  [31m:[m [01;34min[m System_Parameters_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      
      System_Context[31m.[mSystem_Params [31m:=[m Parameters[31m.[m[01;30mSystem_Parameters_Type[m[31m([mSystem_Params[31m);[m
      
      Objects_system[31m.[m[01;30mInitialize[m[31m([m[01;30mObjects_Context_Record[m[31m([mSystem_Context[31m),[m [01;30mObjects_Parameters_Type[m[31m([mSystem_Params[31m));[m
   [01;34mend[m Initialize[31m;[m
   
   [01;34mprocedure[m [01;30mLoad_Project[m[31m([mSystem_Context [31m:[m [01;34min[m [01;34mout[m System_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;30mObjects_Context_Record[m[31m([mSystem_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([mSystem_Context [31m:[m [01;34min[m System_Context_Record'Class[31m;[m
			     Params [31m:[m [01;34min[m System_Parameters_Type'class[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"System Context :"[m[31m);[m
      
      Checked [31m:=[m System_Context[31m.[mSystem_Params [31m=[m [01;30mSystem_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 System_Context[31m.[mSystem_Params[31m.[mSelf_Programming [31m/=[m [01;30mSystem_Parameters_Type[m[31m([mParams[31m).[mSelf_Programming [01;34mthen[m
	    Text_Io[31m.[m[01;30mPut_Line[m[31m([m[31m"Self_Programming : "[m [31m&[m 
			       [32mBoolean[m'[01;30mImage[m[31m([mSystem_Context[31m.[mSystem_Params[31m.[mSelf_Programming[31m)[m [31m&[m [31m" /= "[m [31m&[m
			       [32mBoolean[m'[01;30mImage[m[31m([m[01;30mSystem_Parameters_Type[m[31m([mParams[31m).[mSelf_Programming[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 [01;34mif[m System_Context[31m.[mSystem_Params[31m.[mSelf_Executed [31m/=[m [01;30mSystem_Parameters_Type[m[31m([mParams[31m).[mSelf_Executed [01;34mthen[m
	    Text_Io[31m.[m[01;30mPut_Line[m[31m([m[31m"Self_Executed : "[m [31m&[m 
			       [32mBoolean[m'[01;30mImage[m[31m([mSystem_Context[31m.[mSystem_Params[31m.[mSelf_Executed[31m)[m [31m&[m [31m" /= "[m [31m&[m
			       [32mBoolean[m'[01;30mImage[m[31m([m[01;30mSystem_Parameters_Type[m[31m([mParams[31m).[mSelf_Executed[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([m[01;30mObjects_Context_Record[m[31m([mSystem_Context[31m),[m Params[31m);[m      
      [01;34mreturn[m Checked[31m;[m
   [01;34mend[m Check_Parameters[31m;[m




    [01;34mfunction[m [01;30mRandom_name[m[31m([mchar_index [31m:[m [01;34min[m char_index_type[31m)[m [01;34mreturn[m [32mstring[m [01;34mis[m
		
    [01;34mbegin[m
       Objects_system[31m.[mName_8[31m.[mReset[31m;[m
       Objects_system[31m.[mName_12[31m.[mReset[31m;[m
       Objects_system[31m.[mName_16[31m.[mReset[31m;[m
       [01;34mcase[m char_index [01;34mis[m
	  [01;34mwhen[m [35m1[m[31m..[m[35m8[m [31m=>[m
	     [01;34mreturn[m Name_8[31m.[m[01;30mrandom[m[31m([mchar_index[31m);[m
	  [01;34mwhen[m [35m9[m[31m..[m[35m12[m [31m=>[m
	     [01;34mreturn[m Name_12[31m.[m[01;30mrandom[m[31m([mchar_index[31m);[m
	  [01;34mwhen[m [35m13[m[31m..[m[35m16[m [31m=>[m
	     [01;34mreturn[m Name_16[31m.[m[01;30mrandom[m[31m([mchar_index[31m);[m
	  [01;34mwhen[m [01;34mothers[m [31m=>[m
	     [01;34mreturn[m [31m"system: random_name:the string is to long"[m[31m;[m
       [01;34mend[m [01;34mcase[m[31m;[m
    [01;34mend[m random_name[31m;[m
[01;34mend[m Gnos[31m.[mSystems[31m;[m

