Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# Representations/Perception/CameraMatrix.h

Go to the documentation of this file.

    00001 /**
    00002  * @file CameraMatrix.h
    00003  *
    00004  * Declaration of class CameraMatrix
    00005  */
    00006
    00007 #ifndef __CameraMatrix_h_
    00008 #define __CameraMatrix_h_
    00009
    00010 #include "Tools/Math/Pose3D.h"
    00011 #include "Tools/Streams/InOut.h"
    00012
    00013 /**
    00014 * Matrix describing transformation from neck joint to camera.
    00015 */
    00016 class CameraMatrix: public Pose3D
    00017 {
    00018   public:
    00019     unsigned long frameNumber; /**< The frame number when perceived. */
    00020
    00021     CameraMatrix(const Pose3D pose): Pose3D(pose),isValid(true),frameNumber(0) {}
    00022     CameraMatrix():isValid(true),frameNumber(0) {}
    00023
    00024     void setFrameNumber(unsigned long frameNumber) {this->frameNumber = frameNumber;}
    00025
    00026     bool isValid; /**< Matrix is only valid if motion was stable. */
    00027
    00028
    00029
    00030 };
    00031
    00032 /**
    00033  * Streaming operator that reads a CameraMatrix from a stream.
    00034  * @param stream The stream from which is read.
    00035  * @param cameraMatrix The CameraMatrix object.
    00036  * @return The stream.
    00037  */
    00038 In& operator>>(In& stream,CameraMatrix& cameraMatrix);
    00039
    00040 /**
    00041  * Streaming operator that writes a CameraMatrix to a stream.
    00042  * @param stream The stream to write on.
    00043  * @param cameraMatrix The CameraMatrix object.
    00044  * @return The stream.
    00045  */
    00046 Out& operator<<(Out& stream, const CameraMatrix& cameraMatrix);
    00047
    00048 #endif //__CameraMatrix_h_