/usr/include/ossim/imaging/ossimAtbController.h is in libossim-dev 1.7.21-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | //*******************************************************************
//
// License: See top level LICENSE.txt file.
//
// AUTHOR: Oscar Kramer (okramer@imagelinks.com)
//
// DESCRIPTION: Contains declaration of class ossimAtbController.
// This is the class for the top-level object controlling the automated
// tonal balancing (ATB) function. The controller accepts a mosaic.
//
// LIMITATIONS: None.
//
//*****************************************************************************
// $Id: ossimAtbController.h 9968 2006-11-29 14:01:53Z gpotts $
#ifndef ossimAtbController_HEADER
#define ossimAtbController_HEADER
#include <ossim/base/ossimIpt.h>
#include <ossim/base/ossimDrect.h>
#include <ossim/base/ossimConnectableObject.h>
#include <ossim/base/ossimProcessInterface.h>
#include <vector>
class ossimImageCombiner;
class ossimKeywordlist;
class ossimAtbMatchPoint;
class ossimGridRemapSource;
class ossimGridRemapEngine;
class ossimConnectableContainer;
/*****************************************************************************
*
* CLASS: ossimAtbController
*
*****************************************************************************/
class ossimAtbController :
public ossimConnectableObject,
public ossimProcessInterface
{
public:
/*!
* default Constructor initializes the member combiner pointer to NULL.
*/
ossimAtbController();
/*!
* Constructor with Combiner reference. This combiner is used for the ATB.
*/
ossimAtbController(ossimImageCombiner* combiner,
ossimGridRemapEngine* engine=0);
/*!
* Constructor with a specified remap engine.
*/
ossimAtbController(ossimGridRemapEngine* engine);
~ossimAtbController();
virtual ossimObject* getObject()
{
return this;
}
virtual const ossimObject* getObject()const
{
return this;
}
/*!
* Provide alternate means of initialization in case default constructor
* used.
*/
void initializeWithCombiner(ossimImageCombiner* combiner,
ossimGridRemapEngine* engine=0);
/*!
* Enable an image in the mosaic for the tonal balancing process
*/
bool enableImage (unsigned int index);
/*!
* Disnable an image in the mosaic from the tonal balancing process
*/
bool disableImage(unsigned int index);
/*!
* Locks a particular source for adjustment. A locked image
* effectively defines the target values for all overlapping imagery.
*/
bool lockImage (unsigned int index);
/*!
* Unlock a particular source for adjustment.
*/
bool unlockImage (unsigned int index);
/*!
* Implementation of ossimProcessInterface pure virtual method.
*/
virtual bool execute();
virtual void abort();
/*!
* Hook to set the size of the kernel used by all point sources in computing
* their mean pixel value. The kernels will be resized to NxN.
*/
void setKernelSize(int side_size);
/*!
* Sets the grid spacing used in gridding the mosaic's bounding rectangle.
*/
void setGridSpacing(const ossimIpt& spacing);
/*!
* Sets the ATB remap engine. This object implements the specific tonal
* balancing algorithm. The dependency on number of bands and color space,
* is limited only to this engine. This facilitates the implementation of
* various grid-based image matching schemes.
*/
void setGridRemapEngine(ossimGridRemapEngine* engine);
/*!
* Implementations of ossimStateInterface pure virtuals
*/
virtual bool saveState(ossimKeywordlist& kwl) const;
virtual bool loadState(const ossimKeywordlist& kwl);
/*!
* Implementation of ossimConnectableObject pure virtual.
*/
virtual bool canConnectMyInputTo(ossim_int32 myInputIndex,
const ossimConnectableObject* object)const;
protected:
void initializeRemappers();
ossimDrect theBoundingRect;
ossimConnectableContainer* theContainer;
ossimGridRemapEngine* theGridRemapEngine;
std::vector<ossimAtbMatchPoint*> theMatchPoints;
ossimIpt theGridSpacing;
TYPE_DATA
};
#endif
|