Alphabetical Class Index   Compound Members   File List  

HCtrlView.h
00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
00002 //
00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
00004 // and considered a trade secret as defined under civil and criminal statutes.
00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
00006 // unauthorized use or misappropriation of its trade secrets.  Use of this information
00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
00009 
00010 #ifndef _HCTRLVIEW_H
00011 #define _HCTRLVIEW_H
00012 
00013 #include "HBaseView.h"
00014 #include "HUtilityShadow.h"
00015 
00016 
00018 typedef struct {
00019     unsigned char r;        
00020     unsigned char g;        
00021     unsigned char b;        
00022 } RGB;
00023 
00024   
00025  
00026 
00028 
00032 class HCtrlView : public HBaseView
00033 {
00034     
00035 public:
00040     HCtrlView           (HBaseModel * model);
00044     HCtrlView(HBaseModel *model,
00045     const char *        alias,  
00046     const char *        driver_type,
00047     const char *        instance_name,
00048     void *      window_handle,
00049     void *      colormap);
00050  
00051     ~HCtrlView()
00052     {
00053     }
00054 
00055 
00059     void    Init                (void);
00060 
00064     void    CreateViewHeirarchy (void);
00065 
00073     void    ReconfigureView (HWND hWnd, HPALETTE hPalette, char *drivertype);
00077     void    DeleteDriver        (void);
00078  
00079  
00080  
00081  
00084     void FitWorld();
00087     void FlushFromMessage(const char *in_data, unsigned int data_length);
00088 
00089 
00092     void DetachScene();
00095     void AttachScene(void *h, char *drivertype);
00096 
00101     void GetWindowSize(int &xmax, int &ymax);
00104     void CreateProgressWindow();
00107     void DeleteProgressWindow();
00111     void SetProgressWindow(int num);
00112 
00116     void DoSmoothTransition(bool prepare);
00120     bool SceneDetached() { return m_bSceneDetached; }
00121  
00124     void FlushScene();
00132     void SetHasCamera(bool hascamera) { m_hasCamera = hascamera; };
00136     bool GetHasCamera() { return m_hasCamera;};
00137 
00141     bool OperatorStarted();
00145 //  void            SetShadowMode(HShadowMode shadowMode);
00146  
00147 private:
00148     void    ComputeShadowPlane(void);
00149     void    DeleteRealDriver    (void);
00150     void    DeleteNullDriver    (void);
00151     bool    m_bRealDriver;
00152     bool m_bSceneDetached;
00153     HC_KEY m_progresskey;
00154     bool    m_bBoundingBox;
00155     bool    m_hasCamera;
00156     ShadowPlaneType m_shadowPlane;
00157 
00158 };
00159 
00160 
00161  
00162 
00163 
00164 
00165 
00166 
00167 
00168 #endif _HCTRLVIEW_H