18 #ifndef EQFABRIC_FRAME_H
19 #define EQFABRIC_FRAME_H
21 #include <eq/fabric/api.h>
22 #include <eq/fabric/eye.h>
23 #include <eq/fabric/types.h>
24 #include <co/object.h>
30 namespace detail {
class Frame; }
42 BUFFER_NONE = LB_BIT_NONE,
46 BUFFER_ALL = LB_BIT_ALL_32
60 EQFABRIC_API
virtual ~Frame();
65 EQFABRIC_API
void setName(
const std::string& name );
68 EQFABRIC_API
const std::string&
getName()
const;
97 EQFABRIC_API
const co::ObjectVersion& getDataVersion(
const Eye )
const;
101 EQFABRIC_API
const std::vector< uint128_t >&
102 getInputNodes(
const Eye eye )
const;
105 EQFABRIC_API
const std::vector< uint128_t >&
106 getInputNetNodes(
const Eye eye)
const;
109 virtual ChangeType getChangeType()
const {
return INSTANCE; }
110 EQFABRIC_API
virtual void getInstanceData( co::DataOStream& os );
111 EQFABRIC_API
virtual void applyInstanceData( co::DataIStream& is );
114 EQFABRIC_API
void _setDataVersion(
const unsigned i,
115 const co::ObjectVersion& ov );
118 EQFABRIC_API std::vector< uint128_t >& _getInputNodes(
const unsigned i);
121 EQFABRIC_API std::vector< uint128_t >&
122 _getInputNetNodes(
const unsigned i);
125 detail::Frame*
const _impl;
129 EQFABRIC_API std::ostream& operator << ( std::ostream&,
const Frame& );
131 EQFABRIC_API std::ostream& operator << ( std::ostream&,
const Frame::Type );
133 EQFABRIC_API std::ostream& operator << (std::ostream&,
const Frame::Buffer);
140 { byteswap( reinterpret_cast< uint32_t& >( value )); }
142 #endif // EQFABRIC_FRAME_H
void setName(const std::string &name)
Set the name of the frame.
virtual ~Frame()
Destruct the frame.
use a GL texture to store pixel data
const Vector2i & getOffset() const
A holder for a frame data and related parameters.
use main memory to store pixel data
Eye
Eye pass bit mask for which is enabled.
void setZoom(const Zoom &zoom)
Set the zoom for this frame holder.
Frame()
Construct a new frame.
const std::string & getName() const
const Zoom & getZoom() const
void setOffset(const Vector2i &offset)
Set the position of the frame wrt the channel.
A zoom specification with methods for manipulation.
Buffer
The buffer format defines which components of the frame are to be used during readback and assembly...
Inherit, only if no others are set.
vmml::vector< 2, int > Vector2i
A two-component integer vector.
Type
The storage type for pixel data.