Isis Developer Reference
CameraFactory.h
Go to the documentation of this file.
1#ifndef CameraFactory_h
2#define CameraFactory_h
8/* SPDX-License-Identifier: CC0-1.0 */
9#include "Plugin.h"
10
11namespace Isis {
12 class Camera;
13 class Cube;
14
53 public:
54 static Camera *Create(Cube &cube);
55 static int CameraVersion(Cube &cube);
56 static int CameraVersion(Pvl &lab);
57 static void initPlugin();
58
59 private:
64 CameraFactory() {};
65
67 ~CameraFactory() {};
68
69 static Plugin m_cameraPlugin;
70 static bool m_initialized;
71 };
72};
73
74#endif
75
76
Initializes a Camera Model.
Definition CameraFactory.h:52
static Camera * Create(Cube &cube)
Creates a Camera object using Pvl Specifications.
Definition CameraFactory.cpp:45
static void initPlugin()
Reads the appropriate plugin file for the ISIS cameras, and scans the directories specified in IsisPr...
Definition CameraFactory.cpp:121
static int CameraVersion(Cube &cube)
This looks up the current camera model version from the cube.
Definition CameraFactory.cpp:161
Definition Camera.h:236
IO Handler for Isis Cubes.
Definition Cube.h:168
Loads plugins from a shared library.
Definition Plugin.h:55
Container for cube-like labels.
Definition Pvl.h:119
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16