#include <Unique.h>
Public Member Functions | |
| CUnique () | |
| virtual | ~CUnique () | 
Static Public Member Functions | |
| static T * | GetMe () | 
| Vraća pointer na objekt.   | |
| static void | MakeMe () | 
| Poziva konstruktor klase T.   | |
| static void | DestroyMe () | 
| Poziva destruktor klase T.   | |
Static Protected Attributes | |
| static T * | Me = NULL | 
| Pointer na objekt.   | |
include <afxtempl.h> Template Singleton
| T | klasa čiji singleton treba napraviti | 
#include "VAPSCCGX.h" #include "Unique.h" class CVAPSX : public CVAPSCCGX, public CUnique <CVAPSX> { public: CVAPSX() {} virtual ~CVAPSX() { } }; In CVAPSApp.cpp (MainApp): In InitInstance: CVAPSX::MakeMe(); In ExitInstance: CVAPSX::DestroyMe(); In CVAPSCtrl.cpp, for example: void CVAPSCtrl::SetTraka(float fValue) { CVAPSX::GetMe()->Drive_Tape("", "tHorizontTraka", ToDeg(fValue)); } Or: void CVAPSCtrl::InitialUpdate() { #ifdef _DEBUG CVAPSX::GetMe()->SetCommandLine("-OpenGL -noborder"); #else CVAPSX::GetMe()->SetCommandLine("-OpenGL -noborder -norefresh"); #endif } // // In CVAPSWnd.cpp, for example: void CVAPSWnd::OnSize(UINT nType, int cx, int cy) { CWnd::OnSize(nType, cx, cy); CVAPSX::GetMe()->SetWindowPos(0, 0, 0, cx, cy, SWP_NOZORDER | SWP_SHOWWINDOW | SWP_NOREDRAW); }
| static void CUnique< T >::DestroyMe | ( | ) |  [inline, static] | 
        
Poziva destruktor klase T.
| static T* CUnique< T >::GetMe | ( | ) |  [inline, static] | 
        
Vraća pointer na objekt.
| static void CUnique< T >::MakeMe | ( | ) |  [inline, static] | 
        
Poziva konstruktor klase T.
 1.6.1