diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index 829ccbff06..f6c8187ee1 100755 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -36,7 +36,7 @@ configure_file(InterfaceConfig.h.in ${PROJECT_BINARY_DIR}/includes/InterfaceConf # grab the implementation and header files from src dirs file(GLOB INTERFACE_SRCS src/*.cpp src/*.h) -foreach(SUBDIR ui renderer) +foreach(SUBDIR avatar ui renderer) file(GLOB SUBDIR_SRCS src/${SUBDIR}/*.cpp src/${SUBDIR}/*.h) set(INTERFACE_SRCS ${INTERFACE_SRCS} ${SUBDIR_SRCS}) endforeach(SUBDIR) @@ -75,7 +75,7 @@ add_subdirectory(external/fervor/) include_directories(external/fervor/) # run qt moc on qt-enabled headers -qt4_wrap_cpp(INTERFACE_SRCS src/Application.h src/AvatarVoxelSystem.h src/Webcam.h src/ui/BandwidthDialog.h) +qt4_wrap_cpp(INTERFACE_SRCS src/Application.h src/Webcam.h src/avatar/AvatarVoxelSystem.h src/ui/BandwidthDialog.h) # create the executable, make it a bundle on OS X add_executable(${TARGET_NAME} MACOSX_BUNDLE ${INTERFACE_SRCS}) diff --git a/interface/src/Application.h b/interface/src/Application.h index cea4d7d46d..1dcd301fdf 100644 --- a/interface/src/Application.h +++ b/interface/src/Application.h @@ -20,27 +20,27 @@ #include #include +#include -#include "BandwidthMeter.h" -#include "ui/BandwidthDialog.h" +#include #ifndef _WIN32 #include "Audio.h" #endif +#include "BandwidthMeter.h" #include "Camera.h" #include "Environment.h" -#include "HandControl.h" #include "SerialInterface.h" #include "Stars.h" -#include "ViewFrustum.h" -#include "VoxelSystem.h" -#include "PacketHeaders.h" -#include "Webcam.h" -#include "renderer/GeometryCache.h" -#include "ui/ChatEntry.h" -#include "ToolsPalette.h" #include "Swatch.h" +#include "ToolsPalette.h" +#include "VoxelSystem.h" +#include "Webcam.h" +#include "avatar/HandControl.h" +#include "renderer/GeometryCache.h" +#include "ui/BandwidthDialog.h" +#include "ui/ChatEntry.h" class QAction; class QActionGroup; diff --git a/interface/src/Audio.h b/interface/src/Audio.h index a3c8cf1046..ffbf1f7214 100644 --- a/interface/src/Audio.h +++ b/interface/src/Audio.h @@ -14,7 +14,7 @@ #include #include "Oscilloscope.h" -#include "Avatar.h" +#include "avatar/Avatar.h" static const int NUM_AUDIO_CHANNELS = 2; diff --git a/interface/src/Webcam.cpp b/interface/src/Webcam.cpp index 169151861c..ad934a9242 100644 --- a/interface/src/Webcam.cpp +++ b/interface/src/Webcam.cpp @@ -148,7 +148,8 @@ Webcam::~Webcam() { delete _grabber; } -void Webcam::setFrame(const Mat& frame, int format, const Mat& depth, const RotatedRect& faceRect, const JointVector& joints) { +void Webcam::setFrame(const Mat& frame, int format, const Mat& depth, const Mat& depthPreview, + const RotatedRect& faceRect, const JointVector& joints) { IplImage image = frame; glPixelStorei(GL_UNPACK_ROW_LENGTH, image.widthStep / 3); if (_frameTextureID == 0) { @@ -164,8 +165,8 @@ void Webcam::setFrame(const Mat& frame, int format, const Mat& depth, const Rota glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, _frameWidth, _frameHeight, format, GL_UNSIGNED_BYTE, image.imageData); } - if (!depth.empty()) { - IplImage depthImage = depth; + if (!depthPreview.empty()) { + IplImage depthImage = depthPreview; glPixelStorei(GL_UNPACK_ROW_LENGTH, depthImage.widthStep); if (_depthTextureID == 0) { glGenTextures(1, &_depthTextureID); @@ -381,7 +382,7 @@ void FrameGrabber::grabFrame() { return; } int format = GL_BGR; - Mat frame; + Mat frame, depth; JointVector joints; #ifdef HAVE_OPENNI @@ -390,7 +391,7 @@ void FrameGrabber::grabFrame() { frame = Mat(_imageMetaData.YRes(), _imageMetaData.XRes(), CV_8UC3, (void*)_imageGenerator.GetImageMap()); format = GL_RGB; - Mat depth = Mat(_depthMetaData.YRes(), _depthMetaData.XRes(), CV_16UC1, (void*)_depthGenerator.GetDepthMap()); + depth = Mat(_depthMetaData.YRes(), _depthMetaData.XRes(), CV_16UC1, (void*)_depthGenerator.GetDepthMap()); const double EIGHT_BIT_MAX = 255; const double ELEVEN_BIT_MAX = 2047; depth.convertTo(_grayDepthFrame, CV_8UC1, EIGHT_BIT_MAX / ELEVEN_BIT_MAX); @@ -476,7 +477,7 @@ void FrameGrabber::grabFrame() { _searchWindow = faceRect.boundingRect(); } QMetaObject::invokeMethod(Application::getInstance()->getWebcam(), "setFrame", - Q_ARG(cv::Mat, frame), Q_ARG(int, format), Q_ARG(cv::Mat, _grayDepthFrame), + Q_ARG(cv::Mat, frame), Q_ARG(int, format), Q_ARG(cv::Mat, depth), Q_ARG(cv::Mat, _grayDepthFrame), Q_ARG(cv::RotatedRect, faceRect), Q_ARG(JointVector, joints)); } diff --git a/interface/src/Webcam.h b/interface/src/Webcam.h index 4bc557f4fb..941039db98 100644 --- a/interface/src/Webcam.h +++ b/interface/src/Webcam.h @@ -54,7 +54,7 @@ public slots: void setEnabled(bool enabled); void setFrame(const cv::Mat& video, int format, const cv::Mat& depth, - const cv::RotatedRect& faceRect, const JointVector& joints); + const cv::Mat& depthPreview, const cv::RotatedRect& faceRect, const JointVector& joints); private: diff --git a/interface/src/Avatar.cpp b/interface/src/avatar/Avatar.cpp similarity index 100% rename from interface/src/Avatar.cpp rename to interface/src/avatar/Avatar.cpp diff --git a/interface/src/Avatar.h b/interface/src/avatar/Avatar.h similarity index 100% rename from interface/src/Avatar.h rename to interface/src/avatar/Avatar.h diff --git a/interface/src/AvatarTouch.cpp b/interface/src/avatar/AvatarTouch.cpp similarity index 100% rename from interface/src/AvatarTouch.cpp rename to interface/src/avatar/AvatarTouch.cpp diff --git a/interface/src/AvatarTouch.h b/interface/src/avatar/AvatarTouch.h similarity index 100% rename from interface/src/AvatarTouch.h rename to interface/src/avatar/AvatarTouch.h diff --git a/interface/src/AvatarVoxelSystem.cpp b/interface/src/avatar/AvatarVoxelSystem.cpp similarity index 100% rename from interface/src/AvatarVoxelSystem.cpp rename to interface/src/avatar/AvatarVoxelSystem.cpp diff --git a/interface/src/AvatarVoxelSystem.h b/interface/src/avatar/AvatarVoxelSystem.h similarity index 100% rename from interface/src/AvatarVoxelSystem.h rename to interface/src/avatar/AvatarVoxelSystem.h diff --git a/interface/src/Hand.cpp b/interface/src/avatar/Hand.cpp similarity index 100% rename from interface/src/Hand.cpp rename to interface/src/avatar/Hand.cpp diff --git a/interface/src/Hand.h b/interface/src/avatar/Hand.h similarity index 100% rename from interface/src/Hand.h rename to interface/src/avatar/Hand.h diff --git a/interface/src/HandControl.cpp b/interface/src/avatar/HandControl.cpp similarity index 100% rename from interface/src/HandControl.cpp rename to interface/src/avatar/HandControl.cpp diff --git a/interface/src/HandControl.h b/interface/src/avatar/HandControl.h similarity index 100% rename from interface/src/HandControl.h rename to interface/src/avatar/HandControl.h diff --git a/interface/src/Head.cpp b/interface/src/avatar/Head.cpp similarity index 100% rename from interface/src/Head.cpp rename to interface/src/avatar/Head.cpp diff --git a/interface/src/Head.h b/interface/src/avatar/Head.h similarity index 100% rename from interface/src/Head.h rename to interface/src/avatar/Head.h diff --git a/interface/src/Skeleton.cpp b/interface/src/avatar/Skeleton.cpp similarity index 100% rename from interface/src/Skeleton.cpp rename to interface/src/avatar/Skeleton.cpp diff --git a/interface/src/Skeleton.h b/interface/src/avatar/Skeleton.h similarity index 100% rename from interface/src/Skeleton.h rename to interface/src/avatar/Skeleton.h