bicotiImage2DArrayChar


Figura 5.1.10

     Clases

bicotiImage

bicotiImage2D
bicotiImage3D

bicotiImage2DSingle
bicotiImage2DVectorial
bicotiImage3DSingle
bicotiImage3DVectorial

bicotiImage2DArrayChar


class bicotiImage2DArrayChar



Esta clase deriva de bicotiImage2DSingle , instanciando los templates :

        PixelType = ColorType = unsigned char
        PrecisionType = REAL
        ImageType = bicotiImageImplementation2DArray< unsigned char >


 Public Types

  typedef  unsigned char Pixel
  typedef  bicotiImageImplementation< unsigned char >  Implementation
  typedef  bicotiImageIterator< unsigned char >Iterator
  typedef  bicotiOperatorUnaryFacade< unsigned char >  OperatorUnary
  typedef  bicotiOperatorMultipleFacade< unsigned char >  OperatorMultiple
  typedef  bicotiDexelFacade2D< unsigned char >Dexel
  typedef  bicotiPropertyFacade< bicotiCoordinate2D< INTEGER > , unsigned char , unsigned char ,
                                                                                                                                 REAL > Property
  typedef bicotiNeighbourFilterFacade2D< unsigned char , REAL > NeighbourFilter
  typedef  bicotiGeometricalFacade2D< unsigned char , REAL > Geometrical

 Public Methods

bicotiImage2DArrayChar( unsigned, unsigned )
bicotiImage2DArrayChar( )
~bicotiImage2DArrayChar( )

void BuildImplementation( unsigned , unsigned )
bicotiImageImplementation2DArray< unsigned char > * GetImplementation( )
void SetImplementation ( bicotiImageImplementation2DArray< unsigned char > * )

void DestroyImplementation( )

void BuildOperatorUnary( )
bicotiOperatorUnaryFacade< unsigned char > * CreateOperatorUnary( )
bicotiOperatorUnaryFacade< unsigned char > * GetOperatorUnary( )
void DestroyOperatorUnary( )

void BuildOperatorMultiple( )
bicotiOperatorMultipleFacade< unsigned char > * CreateOperatorMultiple( )
bicotiOperatorMultipleFacade< unsigned char > * GetOperatorMultiple( )
void DestroyOperatorMultiple( )

bicotiImageIterator< unsigned char > * CreateIterator( )

void BuildDexel( )
bicotiDexelFacade2D< unsigned char > * GetDexel( )
void DestroyDexel( )

void BuildProperty( )
bicotiPropertyFacade< bicotiCoordinate2D< INTEGER >,unsigned char,unsigned char,REAL> *CreateProperty( )
bicotiPropertyFacade< bicotiCoordinate2D< INTEGER >,unsigned char,unsigned char, REAL > *
                                                                                                                                                     GetProperty( )
void DestroyProperty( )

void BuildNeighbourFilter( )
bicotiNeighbourFilterFacade2D< unsigned char, REAL > * CreateNeighbourFilter( )
bicotiNeighbourFilterFacade2D< unsigned char, REAL > * GetNeighbourFilter( )
void DestroyNeighbourFilter( )
void LoadNeighbourFilterResult( )
bicotiImageImplementation2DArray< unsigned char > * GetNeighbourFilterResult( )

void BuildGeometrical( )
void DestroyGeometrical( )
bicotiGeometricalFacade2D< unsigned char, REAL > * GetGeometrical( )
bicotiImageImplementation2DArray< unsigned char > * GetGeometricalResult( )
void LoadGeometricalResult( )



bicotiImage2DArrayChar( unsigned x_0_size , unsigned x_1_size )

    Constructor al que paso como parámetro el tamaño de la implementación:
        x_0_size -- número de columnas.
        x_1_size -- número de filas.
    Se toma 0 como pixel por defecto.

    Por ejemplo si creo :

        bicotiImage2DArrayChar  imagen( 10 , 20 );

    Se crea una implementación con 20 filas y 10 columnas llena de ceros.

    El constructor pone en NULL todos los punteros a las fachadas a las que se tiene referencia.

        ptr_operator_unary = NULL;      // fachada de Operator Unary
        ptr_operator_multiple = NULL;  // fachada de Operator Multiple
        ptr_dexel = NULL;                  // fachada de Dexel
        ptr_property = NULL;             // fachada de Property
        ptr_neighbour_filter = NULL;     // fachada de Neighbour Filter
        ptr_geometrical = NULL;           // fachada de Geometrical

    Si quiero crear alguna de las fachadas tengo que usar la función Build correspondiente.

Obs :  Para que el código de esta clase se incluya en la biblioteca hay que definir la variable macro
          IMAGE_2D_ARRAY_CHAR.

         Es decir que hay que poner en el archivo :

         #define IMAGE_2D_ARRAY_CHAR
            # include < bicoti.hpp >

          De lo contrario se tendrá un error de compilación.

          Otra opción es editar el archivo bicoti_basic.hpp y descomentar la linea donde se define este macro.



bicotiImage2DArrayChar( )

    Constructor por defecto, no le paso parámetros.
    Este constructor crea una implementación 0 x 0 con pixel por defecto 0 y pone en NULL todos los punteros a las fachadas.



~bicotiImage2DArrayChar( )

        Destructor. Libera la memoria ocupada por la implementación y todas las fachadas asociadas a la imagen, si es que se ha creado alguna.



void BuildImplementation( unsigned x_0_size , unsigned x_1_size )

    Ver BuildImplementation en bicotiImage2DSingle.



bicotiImageImplementation2DArray< unsigned char > * GetImplementation( )

    Ver GetImplementation en bicotiImage.



void SetImplementation ( bicotiImageImplementation2DArray< unsigned char > * )

    Ver SetImplementation en bicotiImage.



void DestroyImplementation( )

    Ver DestroyImplementation en bicotiImage.



void BuildOperatorUnary( )

    Ver BuildOperatorUnary en bicotiImage2D.



bicotiOperatorUnaryFacade< unsigned char > * CreateOperatorUnary( )

    Ver CreateOperatorUnary en bicotiImage2D.



bicotiOperatorUnaryFacade< unsigned char > * GetOperatorUnary( )

    Ver GetOperatorUnary en bicotiImage.



void DestroyOperatorUnary( )

    Ver DestroyOperatorUnary en bicotiImage.



void BuildOperatorMultiple( )

    Ver BuildOperatorMultiple en bicotiImage2D.



bicotiOperatorMultipleFacade< unsigned char > * CreateOperatorMultiple( )

    Ver CreateOperatorMultiple en bicotiImage2D.



bicotiOperatorMultipleFacade< unsigned char > * GetOperatorMultiple( )

    Ver GetOperatorMultiple en bicotiImage.



void DestroyOperatorMultiple( )

    Ver DestroyOperatorMultiple en bicotiImage.



bicotiImageIterator< unsigned char > * CreateIterator( )

    Ver CreateIterator en bicotiImage.



void BuildDexel( )

    Ver BuildDexel en bicotiImage2DSingle.



bicotiDexelFacade2D< unsigned char > * GetDexel( )

    Ver GetDexel en bicotiImage2D.



void DestroyDexel( )

    Ver DestroyDexel en bicotiImage.



void BuildProperty( )

    Ver BuildProperty en bicotiImage2DSingle.



bicotiPropertyFacade < bicotiCoordinate2D< INTEGER >, unsigned char, unsigned char,
                                                                                                      REAL > *  CreateProperty( )

    Ver CreateProperty en bicotiImage2DSingle.



bicotiPropertyFacade < bicotiCoordinate2D< INTEGER > , unsigned char ,
                                                                              unsigned char , REAL > * GetProperty( )

    Ver GetProperty en bicotiImage2D.



void DestroyProperty( )

    Ver DestroyProperty en bicotiImage2D.



void BuildNeighbourFilter( )

    Ver BuildNeighbourFilter en bicotiImage2DSingle.



bicotiNeighbourFilterFacade2D< unsigned char , REAL > * CreateNeighbourFilter( )

    Ver CreateNeighbourFilter en bicotiImage2DSingle.



bicotiNeighbourFilterFacade2D< unsigned char , REAL > * GetNeighbourFilter( )

    Ver GetNeighbourFilter en bicotiImage2D.



void DestroyNeighbourFilter( )

    Ver DestroyNeighbourFilter en bicotiImage2D.



void LoadNeighbourFilterResult( )

    Ver LoadNeighbourFilterResult en bicotiImage2D.



bicotiImageImplementation2DArray< unsigned char > * GetNeighbourFilterResult( )

    Ver GetNeighbourFilterResult en bicotiImage2D.



void BuildGeometrical( )

    Ver BuildGeometrical en bicotiImage2D.



void DestroyGeometrical( )

    Ver DestroyGeometrical en bicotiImage2D.



bicotiGeometricalFacade2D< unsigned char, REAL > * GetGeometrical( )

    Ver GetGeometrical en bicotiImage2D.



bicotiImageImplementation2DArray< unsigned char > * GetGeometricalResult( )

    Ver GetGeometricalResult en bicotiImage2D.



void LoadGeometricalResult( )

    Ver LoadGeometricalResult en bicotiImage2D.