File failed to load: https://isis.astrogeology.usgs.gov/3.9.0/Object/assets/jax/output/NativeMML/config.js
Isis 3 Developer Reference
Isis::CameraFactory Class Reference

Initializes a Camera Model. More...

#include <CameraFactory.h>

Collaboration diagram for Isis::CameraFactory:
Collaboration graph

Static Public Member Functions

static CameraCreate (Cube &cube)
 Creates a Camera object using Pvl Specifications. More...
 
static int CameraVersion (Cube &cube)
 This looks up the current camera model version from the cube. More...
 
static int CameraVersion (Pvl &lab)
 Looks up the current camera model version in the pvl labels. More...
 

Detailed Description

Initializes a Camera Model.

This factory class is used to obtain a Camera Model object given a PVL which contains a valid Instrument group. The Instrument group can come from an image/cube or a hand-created PVL file. The camera is loaded based on information using the SpacecraftName and IntrumentID contained in the Instrument group. It is plugin oriented. That is, this class looks in $ISISROOT/lib/Camera.plugin to convert the SpacecraftName and IntrumentID string into a pointer to the appropriate camera class (e.g., Viking, HiRISE, etc.). This allows programmers who develop new camera models to create a plugin without the need for recompiling all the Isis applications that use camera models.

Author
2005-05-10 Elizabeth Ribelin

Member Function Documentation

◆ CameraVersion() [1/2]

int Isis::CameraFactory::CameraVersion ( Cube cube)
static

This looks up the current camera model version from the cube.

Parameters
cubeInput cube
Returns
int Latest Camera Version

References Isis::Cube::label().

Referenced by Isis::KernelDb::findAll().

◆ CameraVersion() [2/2]

int Isis::CameraFactory::CameraVersion ( Pvl lab)
static

Looks up the current camera model version in the pvl labels.

Parameters
labThe pvl labels
Returns
The current camera model version

References _FILEINFO_, Isis::PvlObject::findGroup(), Isis::PvlContainer::hasKeyword(), and Isis::PvlObject::Traverse.

◆ Create()

Camera * Isis::CameraFactory::Create ( Cube cube)
static

Creates a Camera object using Pvl Specifications.

Parameters
cubeThe original cube with the current version camera model
Returns
Camera* The Camera object created
Exceptions
Isis::iException::System- Unsupported camera model, unable to find the plugin
Isis::iException::Camera- Unable to initialize camera model

References _FILEINFO_, Isis::PvlContainer::addKeyword(), Isis::PvlObject::findGroup(), Isis::PvlContainer::hasKeyword(), Isis::Cube::label(), and Isis::PvlObject::Traverse.

Referenced by Isis::ControlNetFilter::CubeDistanceFilter(), Isis::ControlNetFilter::PointDistanceFilter(), Isis::ControlNetFilter::PointLatLonFilter(), and Isis::UniversalGroundMap::UniversalGroundMap().


The documentation for this class was generated from the following files:

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the USGS Astrogeology Discussion Board
To report a bug, or suggest a feature go to: ISIS Github
File Modified: 07/12/2023 23:39:06