A basic composer rule capable of choosing the valid pixels (all bands with no no-data values).  
 More...
#include <ComposerRuleValidPixel.h>
 | 
| ComposerRule *  | clone () const | 
|   | Create a clone of this instance.  More...
  | 
|   | 
| void  | getComposedValues (const double &line, const double &col, double *const composedValuesPtr) const | 
|   | Compose a pixel value using the current parameters.  More...
  | 
|   | 
| bool  | initialize (const te::rst::Raster &raster1, const std::vector< unsigned int > &raster1Bands, const te::rst::Raster &raster2, const std::vector< unsigned int > &raster2Bands, te::rst::Raster &raster3, const std::vector< unsigned int > &raster3Bands, const te::rst::Interpolator::Method &interpMethod1, const te::rst::Interpolator::Method &interpMethod2, const double &noDataValue, const bool forceRaster1NoDataValue, const bool forceRaster2NoDataValue, const std::vector< double > &pixelOffsets1, const std::vector< double > &pixelScales1, const std::vector< double > &pixelOffsets2, const std::vector< double > &pixelScales2) | 
|   | Inititate the instance.  More...
  | 
|   | 
| void  | setErrorMessage (const std::string &newErrorMessage) | 
|   | Set the current error message.  More...
  | 
|   | 
A basic composer rule capable of choosing the valid pixels (all bands with no no-data values). 
composer rule capable of choosing the valid pixels (all bands with no no-data values). 
Definition at line 38 of file ComposerRuleValidPixel.h.
 
◆ ComposerRuleValidPixel() [1/2]
      
        
          | te::rp::ComposerRuleValidPixel::ComposerRuleValidPixel  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ ~ComposerRuleValidPixel()
      
        
          | te::rp::ComposerRuleValidPixel::~ComposerRuleValidPixel  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ ComposerRuleValidPixel() [2/2]
◆ clear()
  
  
      
        
          | void te::rp::ComposerRuleValidPixel::clear  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
private   | 
  
 
 
◆ clone()
  
  
      
        
          | ComposerRule* te::rp::ComposerRuleValidPixel::clone  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
protectedvirtual   | 
  
 
Create a clone of this instance. 
- Returns
 - A clone of this instance. 
 
- Note
 - The caller of this method must take othe owndershipd of the returned pointer. 
 
Implements te::rp::ComposerRule.
 
 
◆ getComposedValues()
  
  
      
        
          | void te::rp::ComposerRuleValidPixel::getComposedValues  | 
          ( | 
          const double &  | 
          line,  | 
         
        
           | 
           | 
          const double &  | 
          col,  | 
         
        
           | 
           | 
          double *const  | 
          composedValuesPtr  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
protectedvirtual   | 
  
 
Compose a pixel value using the current parameters. 
- Parameters
 - 
  
    | line | Line (raster 3 reference).  | 
    | col | Column (raster 3 reference).  | 
    | composedValuesPtr | A pointer to a pre-allocated vector where the composed values will be stored.  | 
  
   
- Note
 - The caller of this method must be aware that the returned composed value may be outside the original input rasters valid values range. 
 
- 
Raster 1 values have precedence over raster 2 values (when applicable). 
 
Implements te::rp::ComposerRule.
 
 
◆ getErrorMessage()
  
  
      
        
          | const std::string& te::rp::ComposerRule::getErrorMessage  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inherited   | 
  
 
Return the current error message if there is any. 
- Returns
 - Return the current error message if there is any. 
 
 
 
◆ initialize()
  
  
      
        
          | bool te::rp::ComposerRuleValidPixel::initialize  | 
          ( | 
          const te::rst::Raster &  | 
          raster1,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          raster1Bands,  | 
         
        
           | 
           | 
          const te::rst::Raster &  | 
          raster2,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          raster2Bands,  | 
         
        
           | 
           | 
          te::rst::Raster &  | 
          raster3,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          raster3Bands,  | 
         
        
           | 
           | 
          const te::rst::Interpolator::Method &  | 
          interpMethod1,  | 
         
        
           | 
           | 
          const te::rst::Interpolator::Method &  | 
          interpMethod2,  | 
         
        
           | 
           | 
          const double &  | 
          noDataValue,  | 
         
        
           | 
           | 
          const bool  | 
          forceRaster1NoDataValue,  | 
         
        
           | 
           | 
          const bool  | 
          forceRaster2NoDataValue,  | 
         
        
           | 
           | 
          const std::vector< double > &  | 
          pixelOffsets1,  | 
         
        
           | 
           | 
          const std::vector< double > &  | 
          pixelScales1,  | 
         
        
           | 
           | 
          const std::vector< double > &  | 
          pixelOffsets2,  | 
         
        
           | 
           | 
          const std::vector< double > &  | 
          pixelScales2  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protectedvirtual   | 
  
 
Inititate the instance. 
- Parameters
 - 
  
    | raster1 | Raster 1.  | 
    | raster1Bands | Raster 1 band indexes to use.  | 
    | raster2 | Raster 2.  | 
    | raster2Bands | Raster 2 band indexes to use (this vector has the same size as raster1Bands).  | 
    | raster3 | Raster 3.  | 
    | raster3Bands | Raster 3 band indexes to use (this vector has the same size as raster1Bands).  
  | 
    | interpMethod1 | The interpolation method to use when reading raster 1 data.  | 
    | interpMethod2 | The interpolation method to use when reading raster 2 data.  | 
    | noDataValue | The value returned where there is no pixel data.  | 
    | forceRaster1NoDataValue | Use noDataValue as the input raster 1 no-data value (The original rasters no-data values will be ignored)  | 
    | forceRaster2NoDataValue | Use noDataValue as the input raster 1 no-data value (The original rasters no-data values will be ignored)  
  | 
    | pixelOffsets1 | The values offset to be applied to raster 1 pixel values before the composed value calcule (one element for each used raster channel/band).  | 
    | pixelScales1 | The values scale to be applied to raster 1 pixel values before the composed value calcule (one element for each used raster channel/band).  | 
    | pixelOffsets2 | The values offset to be applied to raster 2 pixel values before the composed value calcule (one element for each used raster channel/band).  | 
    | pixelScales2 | The values scale to be applied to raster 2 pixel values before the composed value calcule (one element for each used raster channel/band).  | 
  
   
- Returns
 - true if ok, false on errors 
 
- Note
 - Aboute scale and offset parametrs: outValue = ( inputValue * scale ) + offset 
 
Reimplemented from te::rp::ComposerRule.
 
 
◆ initState()
  
  
      
        
          | void te::rp::ComposerRuleValidPixel::initState  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
private   | 
  
 
 
◆ operator=()
◆ setErrorMessage()
  
  
      
        
          | void te::rp::ComposerRule::setErrorMessage  | 
          ( | 
          const std::string &  | 
          newErrorMessage | ) | 
           | 
         
       
   | 
  
protectedinherited   | 
  
 
Set the current error message. 
- Parameters
 - 
  
    | newErrorMessage | New error message;  | 
  
   
 
 
◆ m_converter1
◆ m_converter2
◆ m_errorMessage
  
  
      
        
          | std::string te::rp::ComposerRule::m_errorMessage | 
         
       
   | 
  
protectedinherited   | 
  
 
 
◆ m_forceRaster1NoDataValue
  
  
      
        
          | bool te::rp::ComposerRule::m_forceRaster1NoDataValue | 
         
       
   | 
  
protectedinherited   | 
  
 
Use noDataValue as the input raster 1 no-data value (The original rasters no-data values will be ignored) 
Definition at line 60 of file ComposerRule.h.
 
 
◆ m_forceRaster2NoDataValue
  
  
      
        
          | bool te::rp::ComposerRule::m_forceRaster2NoDataValue | 
         
       
   | 
  
protectedinherited   | 
  
 
Use noDataValue as the input raster 2 no-data value (The original rasters no-data values will be ignored) 
 
Definition at line 61 of file ComposerRule.h.
 
 
◆ m_getComposedValues_pixelIsValid
  
  
      
        
          | bool te::rp::ComposerRuleValidPixel::m_getComposedValues_pixelIsValid | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_PixelValue
  
  
      
        
          | std::complex< double > te::rp::ComposerRuleValidPixel::m_getComposedValues_PixelValue | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_raster3X
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_raster3X | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_raster3Y
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_raster3Y | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_rasterBandsIdx
  
  
      
        
          | std::size_t te::rp::ComposerRuleValidPixel::m_getComposedValues_rasterBandsIdx | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_rasterCol
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_rasterCol | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_rasterRow
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_rasterRow | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_rasterX
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_rasterX | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_getComposedValues_rasterY
  
  
      
        
          | double te::rp::ComposerRuleValidPixel::m_getComposedValues_rasterY | 
         
       
   | 
  
mutableprivate   | 
  
 
 
◆ m_interpMethod1
The interpolation method to use when reading raster 1 data. 
Definition at line 65 of file ComposerRule.h.
 
 
◆ m_interpMethod2
The interpolation method to use when reading raster 2 data. 
Definition at line 66 of file ComposerRule.h.
 
 
◆ m_interpolator1Ptr
◆ m_interpolator2Ptr
◆ m_noDataValues1
  
  
      
        
          | std::vector< std::complex< double > > te::rp::ComposerRuleValidPixel::m_noDataValues1 | 
         
       
   | 
  
private   | 
  
 
 
◆ m_noDataValues2
  
  
      
        
          | std::vector< std::complex< double > > te::rp::ComposerRuleValidPixel::m_noDataValues2 | 
         
       
   | 
  
private   | 
  
 
 
◆ m_outputNoDataValue
  
  
      
        
          | double te::rp::ComposerRule::m_outputNoDataValue | 
         
       
   | 
  
protectedinherited   | 
  
 
 
◆ m_pixelOffsets1
  
  
      
        
          | std::vector< double > te::rp::ComposerRule::m_pixelOffsets1 | 
         
       
   | 
  
protectedinherited   | 
  
 
The values offset to be applied to raster 1 pixel values before the composed value calcule (one element for each used raster channel/band). 
Definition at line 71 of file ComposerRule.h.
 
 
◆ m_pixelOffsets2
  
  
      
        
          | std::vector< double > te::rp::ComposerRule::m_pixelOffsets2 | 
         
       
   | 
  
protectedinherited   | 
  
 
The values offset to be applied to raster 2 pixel values before the composed value calcule (one element for each used raster channel/band). 
Definition at line 73 of file ComposerRule.h.
 
 
◆ m_pixelScales1
  
  
      
        
          | std::vector< double > te::rp::ComposerRule::m_pixelScales1 | 
         
       
   | 
  
protectedinherited   | 
  
 
The values scale to be applied to raster 1 pixel values before the composed value calcule (one element for each used raster channel/band). 
Definition at line 72 of file ComposerRule.h.
 
 
◆ m_pixelScales2
  
  
      
        
          | std::vector< double > te::rp::ComposerRule::m_pixelScales2 | 
         
       
   | 
  
protectedinherited   | 
  
 
The values scale to be applied to raster 2 pixel values before the composed value calcule (one element for each used raster channel/band). 
Definition at line 74 of file ComposerRule.h.
 
 
◆ m_raster1Bands
  
  
      
        
          | std::vector< unsigned int > te::rp::ComposerRule::m_raster1Bands | 
         
       
   | 
  
protectedinherited   | 
  
 
Input raster 1 band indexes to use. 
Definition at line 68 of file ComposerRule.h.
 
 
◆ m_raster1BandsSize
  
  
      
        
          | std::size_t te::rp::ComposerRuleValidPixel::m_raster1BandsSize | 
         
       
   | 
  
private   | 
  
 
 
◆ m_raster1Ptr
◆ m_raster2Bands
  
  
      
        
          | std::vector< unsigned int > te::rp::ComposerRule::m_raster2Bands | 
         
       
   | 
  
protectedinherited   | 
  
 
Input raster 2 band indexes to use. 
Definition at line 69 of file ComposerRule.h.
 
 
◆ m_raster2Ptr
◆ m_raster3Bands
  
  
      
        
          | std::vector< unsigned int > te::rp::ComposerRule::m_raster3Bands | 
         
       
   | 
  
protectedinherited   | 
  
 
Input raster 3 band indexes to use. 
Definition at line 70 of file ComposerRule.h.
 
 
◆ m_raster3Ptr
The documentation for this class was generated from the following file: