Página principal | Jerarquía de la clase | Lista alfabética | Lista de componentes | Lista de archivos | Miembros de las clases | Archivos de los miembros | Páginas relacionadas

curva.h

Ir a la documentación de este archivo.
00001 //===========================================================================
00002 //= curva.h                                               Diciembre de 1999 =
00003 //=-------------------------------------------------------------------------=
00004 //= Definicion del esquema de representacion de curvas AQUYNZA              =
00005 //=-------------------------------------------------------------------------=
00006 //= ADVERTENCIA: ESTE SOFTWARE NO ESTA CONCEBIDO NI DISENNADO PARA EL USO   =
00007 //= EN EQUIPO DE CONTROL EN LINEA EN ENTORNOS PELIGROSOS QUE REQUIERAN UN   =
00008 //= DESEMPENNO LIBRE DE FALLAS, COMO LA OPERACION DE PLANTAS NUCLEARES,     = 
00009 //= SISTEMAS DE NAVEGACION O COMUNICACION EN AVIONES, TRAFICO AEREO,        =
00010 //= EQUIPO MEDICO DEL CUAL DEPENDAN VIDAS HUMANAS O SISTEMAS DE ARMAMENTO,  =
00011 //= EN LOS CUALES UNA FALLA EN EL SOFTWARE PUEDA IMPLICAR DIRECTAMENTE LA   =
00012 //= MUERTE, DANNOS PERSONALES O DANNOS FISICOS Y/O AMBIENTALES GRAVES       =
00013 //= ("ACTIVIDADES DE ALGO RIESGO").                                         =
00014 //=-------------------------------------------------------------------------=
00015 //= Autor original: Oscar J. Chavarro G.  A.K.A. JEDILINK. Copyright (c),   =
00016 //= 1997 - 2003, oscarchavarro@hotmail.com                                  =
00017 //= AQUYNZA es software libre, y se rige bajo los terminos de la licencia   =
00018 //= LGPL de GNU (http://www.gnu.org). Para mayor informacion respecto a la  =
00019 //= licencia de uso, consulte el archivo ./doc/LICENCIA en la distribucion. =
00020 //===========================================================================
00021 
00022 #ifndef __CURVA__
00023 #define __CURVA__
00024 
00025 #include "jed_defs.h"
00026 #include "entidad.h"
00027 #include "vector.h"
00028 #include "toolkits/util/regexp.h"
00029 #include "toolkits/util/parsero.h"
00030 #include "arreglo.h"
00031 
00032 class CURVA : public ENTIDAD {
00033   protected:
00034     double t; // Es el tiempo de la simulacion!
00035   public:
00036     void set_tiempo(double tiempo);
00037     virtual void actualizar(void);
00038 };
00039 
00040 class CURVA_PARAMETRICA;
00041 
00042 class SEGMENTO_DE_CURVA_PARAMETRICA {
00043   private:
00044     double tiempo_final;
00045     EXPRESION_REGULAR x_t;
00046     EXPRESION_REGULAR y_t;
00047     EXPRESION_REGULAR z_t;
00048   public:
00049     SEGMENTO_DE_CURVA_PARAMETRICA();
00050     BOOLEAN leer(TOKENIZADOR *Sabiondo);
00051     VECTOR evaluar(double t);
00052 
00053     friend class CURVA_PARAMETRICA;
00054 };
00055 
00056 enum ENUM_TMOV_CURVA {
00057    TMC_INVALIDO = 0,
00058    TMC_STOP,         // Al final de la curva, se queda quieto
00059    TMC_BACKWARD,     // Al final de la curva, se mueve hacia atras
00060    TMC_REPLAY        // Al final de la curva, salta al principio
00061 };
00062 
00063 class CURVA_PARAMETRICA : public CURVA {
00064   private:
00065     ARREGLO <SEGMENTO_DE_CURVA_PARAMETRICA *> arr_segmentos;
00066     double tiempo_inicial;
00067     double tiempo_final;
00068     int tipo_movimiento;  // Uno de los TMOV_CURVA
00069   public:
00070     CURVA_PARAMETRICA();
00071     virtual ~CURVA_PARAMETRICA();
00072     //- Implementacion de ENTIDAD -------------------------------------------
00073     BOOLEAN
00074     consultar_variable(const char *nombre_variable, int &tipo, void **ref);
00075 
00076     //- Implementacion de CURVA ---------------------------------------------
00077     void actualizar(void);
00078 
00079     //- Metodos particulares de la clase CURVA_PARAMETRICA ------------------
00080     BOOLEAN leer(TOKENIZADOR *Sabiondo);
00081     VECTOR evaluar(void);
00082 };
00083 
00084 #endif // __CURVA__
00085 
00086 //===========================================================================
00087 //= EOF                                                                     =
00088 //===========================================================================
00089 

Este archivo HTML ha sido generado automáticamente a partir del código fuente AQUYNZA. NO LO EDITE. Para mayor información contacte al autor.