libpcidsk
Classes | Typedefs | Enumerations | Functions
PCIDSK Namespace Reference

Namespace for all PCIDSK Library classes and functions. More...

Classes

class  PCIDSKChannel
 Interface to one PCIDSK channel (band). More...
class  PCIDSKException
 Generic SDK Exception. More...
class  PCIDSKFile
 Top interface to PCIDSK (.pix) files. More...
class  PCIDSKGeoref
 Interface to PCIDSK georeferencing segment. More...
class  PCIDSKInterfaces
 Collection of PCIDSK hookable interfaces. More...
class  IOInterfaces
 IO Interface class. More...
class  Mutex
 Mutex interface class. More...
class  PCIDSK_PCT
 Interface to PCIDSK pseudo-color segment. More...
class  PCIDSKSegment
 Public tnterface for the PCIDSK Segment Type. More...
struct  ShapeVertex
 Structure for an x,y,z point. More...
class  ShapeField
 Attribute field value. More...
class  PCIDSKVectorSegment
 Interface to PCIDSK vector segment. More...
class  ShapeIterator
 Iterator over shapeids in a vector segment. More...

Typedefs

typedef int32 ShapeId
 Type used for shape identifier, use constant NullShapeId as a NULL value.

Enumerations

enum  UnitCode { UNIT_US_FOOT = 1, UNIT_METER = 2, UNIT_DEGREE = 4, UNIT_INTL_FOOT = 5 }
enum  ShapeFieldType {
  FieldTypeNone = 0, FieldTypeFloat = 1, FieldTypeDouble = 2, FieldTypeString = 3,
  FieldTypeInteger = 4, FieldTypeCountedInt = 5
}
 Attribute field types.
enum  eChanType {
  CHN_8U = 0, CHN_16S = 1, CHN_16U = 2, CHN_32R = 3,
  CHN_UNKNOWN = 99
}
 Channel pixel data types. More...
enum  eSegType {
  SEG_UNKNOWN = -1, SEG_BIT = 101, SEG_VEC = 116, SEG_SIG = 121,
  SEG_TEX = 140, SEG_GEO = 150, SEG_ORB = 160, SEG_LUT = 170,
  SEG_PCT = 171, SEG_BLUT = 172, SEG_BPCT = 173, SEG_BIN = 180,
  SEG_ARR = 181, SEG_SYS = 182, SEG_GCPOLD = 214, SEG_GCP2 = 215
}
 Segment types.

Functions

PCIDSKFileOpen (std::string filename, std::string access, const PCIDSKInterfaces *interfaces)
PCIDSKFileCreate (std::string filename, int pixels, int lines, int channel_count, eChanType *channel_types, std::string options, const PCIDSKInterfaces *interfaces)
void ThrowPCIDSKException (const char *fmt,...)
 throw a formatted exception.
const IOInterfacesGetDefaultIOInterfaces ()
MutexDefaultCreateMutex (void)
std::string ShapeFieldTypeName (ShapeFieldType type)
 Translate field type into a textual description.
int DataTypeSize (eChanType)
std::string DataTypeName (eChanType)
std::string SegmentTypeName (eSegType)

Detailed Description

Namespace for all PCIDSK Library classes and functions.


Enumeration Type Documentation

Channel pixel data types.

Enumerator:
CHN_8U 

8 bit unsigned byte

CHN_16S 

16 bit signed integer

CHN_16U 

16 bit unsigned integer

CHN_32R 

32 bit ieee floating point

CHN_UNKNOWN 

unknown channel type


Function Documentation

PCIDSKFile * PCIDSK::Create ( std::string  filename,
int  pixels,
int  lines,
int  channel_count,
eChanType channel_types,
std::string  options,
const PCIDSKInterfaces interfaces 
)

Create a PCIDSK (.pix) file.

Parameters:
filenamethe name of the PCIDSK file to create.
pixelsthe width of the new file in pixels.
linesthe height of the new file in scanlines.
channel_countthe number of channels to create.
channel_typesan array of types for all the channels, or NULL for all CHN_8U channels.
optioncreation options (interleaving, etc)
interfacesEither NULL to use default interfaces, or a pointer to a populated interfaces object.
Returns:
a pointer to a file object for accessing the PCIDSK file.

References CHN_8U, ThrowPCIDSKException(), PCIDSK::PCIDSKInterfaces::io, CHN_16S, CHN_16U, CHN_32R, Open(), PCIDSK::PCIDSKFile::CreateSegment(), PCIDSK::PCIDSKFile::GetSegment(), and PCIDSK::PCIDSKGeoref::WriteSimple().

std::string PCIDSK::DataTypeName ( eChanType  chan_type)

Return name for the data type.

The returned values are suitable for display to people, and matches the portion of the name after the underscore (ie. "8U" for CHN_8U.

Parameters:
chan_typethe channel type enumeration value to be translated.
Returns:
a string representing the data type.

References CHN_8U, CHN_16S, CHN_16U, and CHN_32R.

int PCIDSK::DataTypeSize ( eChanType  chan_type)

Return size of data type.

Parameters:
chan_typethe channel type enumeration value.
Returns:
the size of the passed data type in bytes, or zero for unknown values.

References CHN_8U, CHN_16S, CHN_16U, and CHN_32R.

PCIDSKFile * PCIDSK::Open ( std::string  filename,
std::string  access,
const PCIDSKInterfaces interfaces 
)

Open a PCIDSK (.pix) file.

This function attempts to open the named file, with the indicated access and the provided set of system interface methods.

Parameters:
filenamethe name of the PCIDSK file to access.
accesseither "r" for read-only, or "r+" for read-write access.
interfacesEither NULL to use default interfaces, or a pointer to a populated interfaces object.
Returns:
a pointer to a file object for accessing the PCIDSK file.

References PCIDSK::PCIDSKInterfaces::io, ThrowPCIDSKException(), and PCIDSK::PCIDSKInterfaces::CreateMutex.

Referenced by Create().

std::string PCIDSK::SegmentTypeName ( eSegType  type)

Return name for segment type.

Returns a short name for the segment type code passed in. This is normally the portion of the enumeration name that comes after the underscore - ie. "BIT" for SEG_BIT.

Parameters:
typethe segment type code.
Returns:
the string for the segment type.
std::string PCIDSK::ShapeFieldTypeName ( ShapeFieldType  type) [inline]

Translate field type into a textual description.

Parameters:
typethe type enumeration value to translate.
Returns:
name for field type.
void PCIDSK::ThrowPCIDSKException ( const char *  fmt,
  ... 
)

throw a formatted exception.

This function throws a PCIDSK Exception by reference after formatting the message using the given printf style format and arguments. This function exists primarily so that throwing an exception can be done in one line of code, instead of declaring an exception and then throwing it.

Parameters:
fmtthe printf style format (eg. "Illegal value:%d")
...additional arguments as required by the format string.

References PCIDSK::PCIDSKException::vPrintf().

Referenced by Create(), and Open().


Generated for GDAL by doxygen 1.7.5.