/usr/include/ossim/base/ossimRgbLutDataObject.h is in libossim-dev 2.2.2-1.
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 | //*******************************************************************
// Copyright (C) 2000 ImageLinks Inc.
//
// License: See top level LICENSE.txt file.
//
// Author: Garrett Potts
//
//*************************************************************************
// $Id: ossimRgbLutDataObject.h 15766 2009-10-20 12:37:09Z gpotts $
#ifndef ossimRgbLutDataObject_HEADER
#define ossimRgbLutDataObject_HEADER
#include <ossim/base/ossimRgbVector.h>
#include <ossim/base/ossimObject.h>
#include <iosfwd>
class ossimKeywordlist;
class OSSIMDLLEXPORT ossimRgbLutDataObject : public ossimObject
{
public:
friend std::ostream& operator <<(std::ostream& out,
const ossimRgbLutDataObject& lut);
/*!
* Will allocate 256 values for the color table
*/
ossimRgbLutDataObject(unsigned long numberOfEntries=0);
ossimRgbLutDataObject(const ossimRgbLutDataObject& lut);
virtual ossimObject* dup()const
{
return new ossimRgbLutDataObject(*this);
}
const ossimRgbVector& operator[](unsigned int index)const
{
return index<theNumberOfEntries?theLut[index]:theLut[theNumberOfEntries-1];
}
ossimRgbVector& operator[](unsigned int index)
{
return index<theNumberOfEntries?theLut[index]:theLut[theNumberOfEntries-1];
}
const ossimRgbVector& operator[](int index)const
{
return index<(long)theNumberOfEntries?theLut[index]:theLut[theNumberOfEntries-1];
}
ossimRgbVector& operator[](int index)
{
return index<(long)theNumberOfEntries?theLut[index]:theLut[theNumberOfEntries-1];
}
const ossimRgbVector& operator[](double normalizedIndex)const
{
int index = int(normalizedIndex*theNumberOfEntries+.5);
if (index < 0)
{
index = 0;
}
return (*this)[index];
}
ossimRgbVector& operator[](double normalizedIndex)
{
int index = int(normalizedIndex*theNumberOfEntries+.5);
if (index < 0)
{
index = 0;
}
return (*this)[index];
}
long getNumberOfEntries()const{return theNumberOfEntries;}
int findIndex(const ossimRgbVector& rgb)
{
return findIndex(rgb.getR(),
rgb.getG(),
rgb.getB());
}
int findIndex(ossim_uint8 r, ossim_uint8 g, ossim_uint8 b);
ossimRgbLutDataObject& rotate(long numberOfElements=1);
ossimRgbLutDataObject rotate(long numberOfElements=1)const;
const ossimRgbLutDataObject& operator =(const ossimRgbLutDataObject& lut);
bool operator ==(const ossimRgbLutDataObject& lut)const;
virtual bool saveState(ossimKeywordlist& kwl, const char* prefix=0)const;
virtual bool loadState(const ossimKeywordlist& kwl, const char* prefix=0);
protected:
virtual ~ossimRgbLutDataObject();
ossimRgbVector *theLut;
ossim_uint32 theNumberOfEntries;
TYPE_DATA
};
#endif
|