|
lsst.astshim gf5dcc679e7+7aca86229d
|
A CmpFrame is a compound Frame which allows two component Frames (of any class) to be merged together to form a more complex Frame. More...
#include <CmpFrame.h>
Public Member Functions | |
| CmpFrame (Frame const &frame1, Frame const &frame2, std::string const &options="") | |
| Construct a CmpFrame. | |
| virtual | ~CmpFrame () |
| CmpFrame (CmpFrame const &)=default | |
| Copy constructor: make a deep copy. | |
| CmpFrame (CmpFrame &&)=default | |
| CmpFrame & | operator= (CmpFrame const &)=delete |
| CmpFrame & | operator= (CmpFrame &&)=default |
| std::shared_ptr< CmpFrame > | copy () const |
| Return a deep copy of this object. | |
| std::shared_ptr< Frame > | operator[] (int i) const |
| Return a shallow copy of one of the two component frames. | |
Protected Member Functions | |
| virtual std::shared_ptr< Object > | copyPolymorphic () const override |
| CmpFrame (AstCmpFrame *rawptr) | |
| Construct a CmpFrame from a raw AST pointer (protected instead of private so that SeriesMap and ParallelMap can call it). | |
Friends | |
| class | Object |
A CmpFrame is a compound Frame which allows two component Frames (of any class) to be merged together to form a more complex Frame.
The axes of the two component Frames then appear together in the resulting CmpFrame (those of the first Frame, followed by those of the second Frame).
Since a CmpFrame is itself a Frame, it can be used as a component in forming further CmpFrames. Frames of arbitrary complexity may be built from simple individual Frames in this way.
CmpFrame has no attributes beyond those provided by Frame and Object. However, the attributes of the component Frames can be accessed as if they were attributes of the CmpFrame. For instance, if a CmpFrame contains a SpecFrame and a SkyFrame, then the CmpFrame will recognise the "Equinox" attribute and forward access requests to the component SkyFrame. Likewise, it will recognise the "RestFreq" attribute and forward access requests to the component SpecFrame. An axis index can optionally be appended to the end of any attribute name, in which case the request to access the attribute will be forwarded to the primary Frame defining the specified axis.
Definition at line 60 of file CmpFrame.h.
|
inlineexplicit |
Construct a CmpFrame.
| [in] | frame1 | First frame, describing the lower numbered coordinates. |
| [in] | frame2 | Second frame. |
| [in] | options | Comma-separated list of attribute assignments. |
Definition at line 74 of file CmpFrame.h.
|
inlinevirtual |
Definition at line 81 of file CmpFrame.h.
|
default |
Copy constructor: make a deep copy.
|
default |
|
inlineexplicitprotected |
Construct a CmpFrame from a raw AST pointer (protected instead of private so that SeriesMap and ParallelMap can call it).
Definition at line 107 of file CmpFrame.h.
|
inline |
Return a deep copy of this object.
Definition at line 90 of file CmpFrame.h.
|
inlineoverrideprotectedvirtual |
Definition at line 101 of file CmpFrame.h.
|
inline |
Return a shallow copy of one of the two component frames.
| [in] | i | Index: 0 for the first frame, 1 for the second. |
| std::invalid_argument | if i is not 0 or 1. |
Definition at line 98 of file CmpFrame.h.
|
friend |
Definition at line 61 of file CmpFrame.h.