HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_CameraPrim.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * COMMENTS:
7  */
8 
9 #ifndef __HOM_CameraPrim_h__
10 #define __HOM_CameraPrim_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_Defines.h"
14 #include "HOM_Errors.h"
15 #include "HOM_Prim.h"
16 #include "HOM_Camera.h"
17 #include "HOM_IterableList.h"
18 
19 SWIGOUT(%rename(CameraPrim) HOM_CameraPrim;)
20 
21 class HOM_API HOM_CameraPrim : virtual public HOM_Prim
22 {
23 public:
25  { HOM_CONSTRUCT_OBJECT(this) }
27  : HOM_Prim(face)
28  { HOM_CONSTRUCT_OBJECT(this) }
29  ~HOM_CameraPrim() override
30  { HOM_DESTRUCT_OBJECT(this) }
31 
32  // Let swig know we're overriding __repr__ for this class so it doesn't
33  // provide its own __repr__.
34  SWIGOUT(virtual std::string __repr__() = 0;)
35 
36  SWIGOUT(%newobject transform;)
37  virtual HOM_Matrix3 *transform() = 0;
38 
39  virtual HOM_Vector3 position() = 0;
40 
41  virtual double aperture() = 0;
42  virtual double pixelAspect() = 0;
43  virtual double focal() = 0;
44  virtual double focusDistance() = 0;
45  virtual double imagingDistance() = 0;
46  virtual double fstop() = 0;
47  virtual double orthoZoom() = 0;
48  virtual double guideScale() = 0;
49 
50  virtual HOM_EnumValue &projection() = 0;
51  virtual std::string projectionToken() = 0;
52  virtual bool isOrthographic() = 0;
53 
54  virtual std::vector<int64> resolution() = 0;
55  virtual int64 resolutionX() = 0;
56  virtual int64 resolutionY() = 0;
57 
58  virtual std::vector<double> cropMin() = 0;
59  virtual std::vector<double> cropMax() = 0;
60 
61  virtual std::vector<double> windowMin() = 0;
62  virtual std::vector<double> windowMax() = 0;
63 
64  virtual std::vector<double> clippingPlanes() = 0;
65  virtual double nearClippingPlane() = 0;
66  virtual double farClippingPlane() = 0;
67 
68  virtual std::vector<double> shutter() = 0;
69  virtual double shutterOpen() = 0;
70  virtual double shutterClose() = 0;
71 
72  virtual std::map<std::string,hboost::any> metadata() = 0;
73 
74  SWIGOUT(%newobject camera;)
75  virtual HOM_Camera *camera() = 0;
76 
77 
78  virtual void setTransform(HOM_Matrix3 &transform) = 0;
79  virtual void setPosition(HOM_Vector3 &position) = 0;
80  virtual void setParms(const std::map<std::string, hboost::any> &parms) = 0;
81 
82  virtual void setAperture(double aperture) = 0;
83  virtual void setPixelAspect(double aspect) = 0;
84  virtual void setFocal(double focal) = 0;
85  virtual void setFocusDistance(double focusdist) = 0;
86  virtual void setImagingDistance(double imagingdist) = 0;
87  virtual void setFstop(double fstop) = 0;
88  virtual void setOrthoZoom(double zoom) = 0;
89  virtual void setGuideScale(double scale) = 0;
90 
91  virtual void setProjection(HOM_EnumValue projection) = 0;
92 
93  virtual void setResolution(const std::vector<int64> &res) = 0;
94  virtual void setResolutionX(const int64 resx) = 0;
95  virtual void setResolutionY(const int64 resy) = 0;
96 
97  virtual void setCropMin(const std::vector<double> &min) = 0;
98  virtual void setCropMax(const std::vector<double> &max) = 0;
99  virtual void setWindowMin(const std::vector<double> &min) = 0;
100  virtual void setWindowMax(const std::vector<double> &max) = 0;
101 
102  virtual void setClippingPlanes(const std::vector<double> &planes) = 0;
103  virtual void setNearClippingPlane(double near) = 0;
104  virtual void setFarClippingPlane(double far) = 0;
105 
106  virtual void setShutter(const std::vector<double> &shutter) = 0;
107  virtual void setShutterOpen(double sopen) = 0;
108  virtual void setShutterClose(double sclose) = 0;
109 
110  virtual void setMetadata(const std::map<std::string,hboost::any> &metadata) = 0;
111 
112 
113 };
114 
115 #endif
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1398
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
HOM_CameraPrim(const HOM_CameraPrim &face)
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:312
ImageBuf OIIO_API min(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
GLdouble far
Definition: glcorearb.h:143
GA_API const UT_StringHolder scale
#define HOM_API
Definition: HOM_API.h:13
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:1397
long long int64
Definition: SYS_Types.h:116
HUSD_API const char * resolution()
~HOM_CameraPrim() override
GA_API const UT_StringHolder transform
GA_API const UT_StringHolder parms
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)
SIM_API const UT_StringHolder position
ImageBuf OIIO_API max(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)