Cambios independización de geofoto.

Ya lanza y ejecuta bien con OliviaTasks
master
Elena 2019-10-19 21:47:52 +02:00
parent 2a0dbc6408
commit a425c17e97
11 changed files with 73 additions and 75 deletions

View File

@ -83,7 +83,7 @@ namespace OliviaAddIn
}
/**
* Coge la ip local para la comunicación con geofoto
* Coge la ip local para la comunicación con OliviaTask
*/
protected bool coge_ip()
{

View File

@ -102,7 +102,7 @@ namespace OliviaAddIn
{
string[] valores;
int err=0;
int i, j, k;
int i, j;
bool encontrado;
valores = FunGDB.dame_valunic_consulta(path_class, RecogidaDef.campos_def.cons_fracc, "", out err);
@ -145,7 +145,7 @@ namespace OliviaAddIn
{
string[] valores;
int err = 0;
int i, j, k;
int i, j;
bool encontrado;
valores = FunGDB.dame_valunic_consulta(path_class, RecogidaDef.campos_def.cons_nomrec, "", out err);

View File

@ -17,14 +17,14 @@ namespace OliviaAddIn
* Clase de ejecución del grueso de la herramienta Olivia.
* Guarda en un archivo de configuración la información configurada,
* lanza una ventana de progreso,
* llama al proceso Geofoto, y va leyendo en el archivo de configuración
* llama al proceso OliviaTask, y va leyendo en el archivo de configuración
* el progreso de la ejecución, que actualiza en la ventana.
*/
/**
* Clase de ejecución del grueso de la herramienta Olivia.
* Guarda en un archivo de configuración la información configurada,
* lanza una ventana de progreso,
* llama al proceso Geofoto, y va leyendo en el archivo de configuración
* llama al proceso OliviaTask, y va leyendo en el archivo de configuración
* el progreso de la ejecución, que actualiza en la ventana.
*/
class Ejecuta
@ -74,10 +74,10 @@ namespace OliviaAddIn
//lanza ventana marchando que lanza proceso en bucle para actualizar barra progreso
OliviaGlob.progr_eje = new ProgresoEjec();
//lanza proceso geofoto
if (!lanza_geofoto())
//lanza proceso OliviaTask
if (!lanza())
{
err_str = "Error al arrancar Geofoto (programa de procesado de datos): No ha arrancado correctamente la instancia Geofoto";
err_str = "Error al arrancar OliviaTask (programa de procesado de datos): No ha arrancado correctamente la instancia OliviaTask";
return false;
}
@ -109,9 +109,9 @@ namespace OliviaAddIn
}
/**
* Arranca el proceso geofoto con los parámetros correspondientes
* Arranca el proceso OliviaTask con los parámetros correspondientes
*/
private bool lanza_geofoto()
private bool lanza()
{
Process[] pg;
string args;
@ -119,24 +119,23 @@ namespace OliviaAddIn
try
{
//van ParamN parámetros, sin incluir "/olivia", si se añaden, incrementar ParamN
args = GeneralDef.EjecGeoParamSep + GeneralDef.EjecGeoProgName + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_tipo + GeneralDef.EjecGeoParamIgual + ((int)OliviaGlob.tip_oliv).ToString() + " " +
//van ParamN parámetros, sin incluir, si se añaden, incrementar ParamN
args = GeneralDef.EjecGeoParamSep + GeneralDef.GG_tipo + GeneralDef.EjecGeoParamIgual + ((int)OliviaGlob.tip_oliv).ToString() + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_ip + GeneralDef.EjecGeoParamIgual + OliviaGlob.ip + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_port + GeneralDef.EjecGeoParamIgual + OliviaGlob.puerto + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_tout + GeneralDef.EjecGeoParamIgual + OliviaGlob.t_out_sock + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_pt + GeneralDef.EjecGeoParamIgual + OliviaGlob.Paths.PathTemp + " " +
GeneralDef.EjecGeoParamSep + GeneralDef.GG_pcfg + GeneralDef.EjecGeoParamIgual + OliviaGlob.Paths.PathWork + "cfg_geo.ini" + " " ;
pfi = new ProcessStartInfo(OliviaGlob.Paths.PathGeofoto, args);
pfi = new ProcessStartInfo(OliviaGlob.Paths.PathExeOlivia, args);
System.Diagnostics.Process.Start(pfi);
//comprueba que haya arrancado geofoto
//comprueba que haya arrancado OliviaTask
//le da 2 seg de margen para que arranque
pg = OliviaGlob.progr_eje.is_process(OliviaDef.GeneralDef.NombGeofoto, 2, true);
pg = OliviaGlob.progr_eje.is_process(OliviaDef.GeneralDef.NombOlvTasks, 2, true);
if (pg == null)
{
MessageBox.Show("No está Geofoto, args= "+args, "Olivia", MessageBoxButtons.OK, MessageBoxIcon.Error);
MessageBox.Show("No está OliviaTask, args= " + args, "Olivia", MessageBoxButtons.OK, MessageBoxIcon.Error);
return false;
}
}

View File

@ -12,7 +12,7 @@ namespace OliviaAddIn
/**
* @file EjecutaLimp.cs
* Clase con funciones para ejecución del programa en modo limpieza viaria.
* Hace la llamada correspondiente a Geofoto con los parámetros seleccionados.
* Hace la llamada correspondiente a OliviaTask con los parámetros seleccionados.
*/
class EjecutaLimp : Ejecuta
{
@ -61,7 +61,7 @@ namespace OliviaAddIn
}
/**
* Configura el str de opciones que va a mandar a geofoto
* Configura el str de opciones que va a mandar a OliviaTask
* modo 0 la primera vez, va a sectorizar, modo 1 la segunda vez, planifica
*/
public bool configura_ops_geo(Limpieza limp, int modo)

View File

@ -53,7 +53,7 @@ namespace OliviaAddIn
}
/**
* Configura el str de opciones que va a mandar a geofoto
* Configura el str de opciones que va a mandar a OliviaTask
* modo 0 la primera vez, va a sectorizar, modo 1 la segunda vez, planifica
*/
public bool configura_ops_geo(Recogida reco, int modo)

View File

@ -2,10 +2,10 @@
/**
* @file LimpiezaDef.cs
* Clase con definiciones de limpieza comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones de limpieza comunes al proyecto Olivia y a OliviaTask.
*/
/**
* Clase con definiciones de limpieza comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones de limpieza comunes al proyecto Olivia y a OliviaTask.
*/
namespace OliviaAddIn
{

View File

@ -70,7 +70,7 @@ namespace OliviaAddIn
{
public static string PathWork; //<Path del directorio de trabajo
public static string PathCfg; //<Path de la configuración general
public static string PathGeofoto; //<Path del ejecutable de Geofoto
public static string PathExeOlivia; //<Path del ejecutable de OliviaTask
public static string PathTemp; //<Path temporal de generación de archivos intermedios
public static string DirData; //<Dir donde están los shapefiles data y nw
public static string PathData; //<Path del shp con datos a planificar, ya filtrados e intersecados con las zonas y niveles
@ -120,23 +120,23 @@ namespace OliviaAddIn
*/
public static GeneralDef.TiposOliv tip_oliv = GeneralDef.TiposOliv.OlivNoDef;
/**
* IP donde va a realizar la conexión a geofoto, se inicializa al arrancar con la local
* IP donde va a realizar la conexión a OliviaTask, se inicializa al arrancar con la local
*/
public static string ip = "0.0.0.0";
/**
* Puerto local donde va a realizar la conexión a geofoto, se inicializa al arrancar
* Puerto local donde va a realizar la conexión a OliviaTask, se inicializa al arrancar
*/
public static int puerto;
/**
* Time out de la conexión con geofoto, en seg
* Time out de la conexión con OliviaTask, en seg
*/
public static int t_out_sock = 20;
public static int t_out_sock = 20;
/**
* array que contiene los identificadores de los ámbitos exportados. Se utilizará para aplicarles el sector oportuno una vez procesado en geofoto
* array que contiene los identificadores de los ámbitos exportados. Se utilizará para aplicarles el sector oportuno una vez procesado en OliviaTask
*/
public static string cartela_tto = "";
/**
* array que contiene los identificadores de los ámbitos exportados. Se utilizará para aplicarles el sector oportuno una vez procesado en geofoto
* array que contiene los identificadores de los ámbitos exportados. Se utilizará para aplicarles el sector oportuno una vez procesado en OliviaTask
*/
public static string cartela_ambs = "";
/**
@ -197,7 +197,7 @@ namespace OliviaAddIn
//propiedades generales
ini.SetValue(GeneralDef.GrupoGen, GeneralDef.GG_pw, Paths.PathWork);
aux = pon_path_relativo(Paths.PathGeofoto, Paths.PathWork);
aux = pon_path_relativo(Paths.PathExeOlivia, Paths.PathWork);
ini.SetValue(GeneralDef.GrupoGen, GeneralDef.GG_pg, aux);
aux = pon_path_relativo(Paths.PathTemp, Paths.PathWork);
ini.SetValue(GeneralDef.GrupoGen, GeneralDef.GG_pt, aux);
@ -535,8 +535,8 @@ namespace OliviaAddIn
OliviaGlob.buff_export = ini.GetValue(GeneralDef.GrupoGDB, GeneralDef.GG_buff, 1000); //para el buffer
//para el grupo de opciones generales
aux = ini.GetValue(GeneralDef.GrupoGen, GeneralDef.GG_pg, Paths.PathGeofoto);
Paths.PathGeofoto = pon_path_absoluto(aux, dir);
aux = ini.GetValue(GeneralDef.GrupoGen, GeneralDef.GG_pg, Paths.PathExeOlivia);
Paths.PathExeOlivia = pon_path_absoluto(aux, dir);
aux = ini.GetValue(GeneralDef.GrupoGen, GeneralDef.GG_pt, Paths.PathTemp);
Paths.PathTemp = pon_path_absoluto(aux, dir);
aux = ini.GetValue(GeneralDef.GrupoGen, GeneralDef.GG_pd, Paths.DirData);
@ -852,7 +852,7 @@ namespace OliviaAddIn
public static void ini_default()
{
Paths.PathWork = "C:\\Olivia\\";
Paths.PathGeofoto = "C:\\Desa\\geobin\\Debug\\geofoto.exe";
Paths.PathExeOlivia = "C:\\Olivia\\release\\OliviaTasks.exe";
Paths.DirData = "C:\\Olivia\\data\\";
Paths.PathTemp = "C:\\Olivia\\temp\\";
Paths.PathCartela = "C:\\olivia\\data\\Plantilla.mxd";

View File

@ -22,7 +22,7 @@ namespace OliviaAddIn
//*************************************************************************************
//Variables
/**
* Socket de conexión al geofoto
* Socket de conexión al OliviaTask
*/
Cigt_str_socket soc = null;
Thread m_thread;
@ -135,7 +135,7 @@ namespace OliviaAddIn
{
if (nint >= nint_max)
{
err_str = "Error en la comunicación con Geofoto";
err_str = "Error en la comunicación con OliviaTask";
actualiza(TiposActu.ActuMal);
}
else
@ -147,7 +147,7 @@ namespace OliviaAddIn
if (Interlocked.Equals(m_out, 1)) //mira a ver si ha cancelado el usuario
{
//se ha cancelado, lo envía al geofoto
//se ha cancelado, lo envía al OliviaTask
envia_cancel();
if (!cancela_permu)
sal = true;
@ -214,7 +214,7 @@ namespace OliviaAddIn
}
/**
* Envía la información de la configuración por socket a geofoto
* Envía la información de la configuración por socket a OliviaTask
*/
public bool envia_cfg()
{
@ -254,7 +254,7 @@ namespace OliviaAddIn
}
/**
* Pide por socket la información de sectorización a geofoto
* Pide por socket la información de sectorización a OliviaTask
*/
private bool pide_sect()
{
@ -290,9 +290,9 @@ namespace OliviaAddIn
return false;
}
}
/**
* Pide por socket la información de progreso a geofoto
* Pide por socket la información de progreso a OliviaTask
* Devuelve 0 si ha ido mal, 1 si ha ido bien, 2 si ha recibido que hay que pedir sectorización
*/
private TiposActu pide_progr()
@ -307,7 +307,7 @@ namespace OliviaAddIn
if (!soc.conecta(OliviaGlob.ip, OliviaGlob.puerto))
{
conectado = false;
err_str = "Error en la comunicación con Geofoto";
err_str = "Error en la comunicación con OliviaTask";
return TiposActu.ActuMal;
}
conectado = true;
@ -317,7 +317,7 @@ namespace OliviaAddIn
if (!soc.envia(OliviaDef.GeneralDef.SockProgr))
{
conectado = false;
err_str = "Error en la comunicación con Geofoto";
err_str = "Error en la comunicación con OliviaTask";
return TiposActu.ActuMal;
}
@ -345,7 +345,7 @@ namespace OliviaAddIn
//pide tarea
if (!soc.envia(OliviaDef.GeneralDef.SockTarea))
{
err_str = "Error en la comunicación con Geofoto";
err_str = "Error en la comunicación con OliviaTask";
return TiposActu.ActuMal;
}
@ -409,7 +409,7 @@ namespace OliviaAddIn
}
/**
* Envía a geofoto la orden de cancelar el proceso
* Envía a OliviaTask la orden de cancelar el proceso
*/
private bool envia_cancel()
{
@ -651,7 +651,7 @@ namespace OliviaAddIn
}
/**
* Comprueba si geofoto ha salido y le espera durante T seg. Si no, para la tarea
* Comprueba si OliviaTask ha salido y le espera durante T seg. Si no, para la tarea
* return true si ha terminado, false si no
*/
private bool espera_process(string nombproc)
@ -692,10 +692,10 @@ namespace OliviaAddIn
{
//ha terminado el thread, continua cerrando
fin_thr();
if (!espera_process(OliviaDef.GeneralDef.NombGeofoto))
if (!espera_process(OliviaDef.GeneralDef.NombOlvTasks))
{
//no ha podido cerrarlo
MessageBox.Show("No se ha podido cerrar GeoFoto", "Olivia", MessageBoxButtons.OK, MessageBoxIcon.Error);
MessageBox.Show("No se ha podido cerrar OliviaTask", "Olivia", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
espera_process(OliviaDef.GeneralDef.NombOlvTasks);
e.Cancel = false;

View File

@ -8,10 +8,10 @@ namespace OliviaAddIn
/**
* @file RecogidaDef.cs
* Clase con definiciones de recogida comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones de recogida comunes al proyecto Olivia y a OliviaTask.
*/
/**
* Clase con definiciones de recogida comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones de recogida comunes al proyecto Olivia y a OliviaTask.
*/
class RecogidaDef

View File

@ -409,8 +409,8 @@ namespace OliviaAddIn
}
catch (Exception e)
{
err_str = "Error al generar la conexión: " + e.Message;
//por si geofoto sí funciona la conexión
err_str = "Error al generar la conexión: " + e.Message;
//por si OliviaTask sí funciona la conexión
}
}
//se lee la carga maxima indicada en la caja de texto

View File

@ -1,9 +1,9 @@
/**
* @file GeneralDef.cs
* Clase con definiciones globales comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones globales comunes al proyecto Olivia y a OliviaTasks.
*/
/**
* Clase con definiciones globales comunes al proyecto Olivia y a Geofoto.
* Clase con definiciones globales comunes al proyecto Olivia y a OliviaTasks.
*/
namespace OliviaDef
{
@ -40,22 +40,21 @@ namespace OliviaDef
/*
* Define el nombre en registro de la clave
*/
public const string OlvRegKey = "SOFTWARE\\InterGeo Tecnología\\Olivia";
public const string OlvRegKey = "SOFTWARE\\Intergeo Tecnología\\Olivia";
/*
* Define el máximo y paso de la ventana de progreso de ejecución, el mínimo es 0
*/
public const int ProgrMax = 100;
public const int ProgrStep = 5;
public const int ParamN = 6;
public const int ParamN = 5;
public const int ParamLimpN = 37;
public const int ParamRecoN = 40;
/*
* Define el separador entre parámetros de la llamada al proceso Geofoto
* Define el separador entre parámetros de la llamada al proceso oliviatasks
*/
public const string EjecGeoParamSep = "/";
public const string EjecGeoProgName = "olivia";
public const string EjecGeoParamIgual = ":";
public const string NombGeofoto = "geofoto";
public const string NombOlvTasks = "OliviaTasks";
public const string NombColSector = "SECTOR";
/**
@ -134,7 +133,7 @@ namespace OliviaDef
* Define las propiedades generales a guardar y leer
*/
public const string GG_pw = "path_work";
public const string GG_pg = "path_geo";
public const string GG_pg = "path_exe";
public const string GG_pdl = "path_dll";
public const string GG_pt = "path_temp";
public const string GG_pd = "path_data";
@ -159,7 +158,7 @@ namespace OliviaDef
public const string GG_ais = "aislados";
/**
* Define las propiedades de limpieza a enviar a geofoto
* Define las propiedades de limpieza a enviar a oliviatasks
*/
public const string GL_res = "restr_cir";
public const string GL_tto = "t_tto";
@ -169,7 +168,7 @@ namespace OliviaDef
public const string GL_tca = "t_carg";
public const string GL_anc = "anch_med";
/**
* Define las propiedades de recogida a enviar a geofoto
* Define las propiedades de recogida a enviar a oliviatasks
*/
//public const string GR_acce = "accesibilidad";
//public const string GR_frac = "fracciion";
@ -521,63 +520,63 @@ namespace OliviaDef
public const string GTA_N = "atr_N";
public const string GTA_pedes = "atr_pedes";
/**
* Define el nombre para mandar a geofoto la configuración
* Define el nombre para mandar a oliviatasks la configuración
*/
public const string SockConf = "CONFIG";
/**
* Define el nombre para responder geofoto que ok la configuración
* Define el nombre para responder oliviatasks que ok la configuración
*/
public const string SockConfOk = "CONFIG_OK";
/**
* Define el nombre para responder geofoto que nok la configuración
* Define el nombre para responder oliviatasks que nok la configuración
*/
public const string SockConfNOk = "CONFIG_NOK";
/**
* Define el nombre para pedir a geofoto el progreso
* Define el nombre para pedir a oliviatasks el progreso
*/
public const string SockProgr = "PROGRESO";
/**
* Define el nombre para pedir a geofoto la tarea
* Define el nombre para pedir a oliviatasks la tarea
*/
public const string SockTarea = "TAREA";
/**
* Define el nombre para pedir a geofoto que cancele
* Define el nombre para pedir a oliviatasks que cancele
*/
public const string SockCanc = "CANCELA";
/**
* Define el nombre para responder el geofoto a que cancele
* Define el nombre para responder el oliviatasks a que cancele
*/
public const string SockCancOk = "CANCELA_OK";
/**
* Define el nombre para pedir a geofoto los sectores, una vez se han calculado
* Define el nombre para pedir a oliviatasks los sectores, una vez se han calculado
*/
public const string SockSect = "SECTORES";
/**
* Define el nombre para pedir avisar geofoto de que ha finalizado la sectorización
* Define el nombre para pedir avisar oliviatasks de que ha finalizado la sectorización
*/
public const string SockSectFin = "SECTORES_FIN";
/**
* Define el nombre para pedir avisar geofoto de que ha finalizado la sectorización
* Define el nombre para pedir avisar oliviatasks de que ha finalizado la sectorización
*/
public const string SockFinOk = "FIN_OK";
/**
* Define el nombre para pedir avisar geofoto de que ha finalizado la sectorización
* Define el nombre para pedir avisar oliviatasks de que ha finalizado la sectorización
*/
public const string SockFinNOk = "FIN_NOK";
/**
* Define el nombre para pedir a geofoto los sectores, una vez se han calculado
* Define el nombre para pedir a oliviatasks los sectores, una vez se han calculado
*/
public const string SockPlanFin = "PLANIF_FIN";
/**
* Define el nombre para pedir a geofoto los sectores, una vez se han calculado
* Define el nombre para pedir a oliviatasks los sectores, una vez se han calculado
*/
public const string SockPlan = "PLANIF";
/**
* Define el nombre para mandar a geofoto la configuración para planificación, ya se ha hecho sectorización
* Define el nombre para mandar a oliviatasks la configuración para planificación, ya se ha hecho sectorización
*/
public const string SockConfPlan = "CONFIG_PLANIF";
/**
* Define el nombre para mandar a geofoto la configuración para planificación, ya se ha hecho sectorización
* Define el nombre para mandar a oliviatasks la configuración para planificación, ya se ha hecho sectorización
*/
public const string SockConfTodo = "CONFIG_TODO";
//*************************************************************************************