思ったようにできんw
ぁーAFClibってのは自分が作ってる(つもりの)ライブラリのことです.
大層な?名前がついてますが,まだ何もできてません.
templateを使って設計してるんだけど,どうすれば上手くいくのか悩んでて実際のコーディングに移れないw
まだ慣れないからなぁ.
#include <afclib/gui/gui.hpp> // #include <afclib/gui/env_traits.hpp> // env_traits struct env_traits { #ifdef WINDOWS typedef afclib::gui::windows::window window_impl; #elif UNIX typedef afclib::gui::unix::window window_impl; #endif #ifdef DIRECTX typedef afclib::gui::directx::initialize guilib_init; typedef afclib::gui::directx::screen guilib_screen; typedef afclib::gui::directx::resource::manager guilib_manager; typedef afclib::gui::directx::resource::texture guilib_texture; // ... #elif OPENGL // ... #endif // ... }; int main(){ afclib::gui::window< char, afclib::gui::env_traits::window_impl, afclib::gui::env_traits::guilib_init > wnd; wnd.create(); afclib::gui::screen< afclib::gui::env_traits::guilib_screen > scr; wnd.assign(scr); // scrを関連付け有効にする // ... }
こんな感じ?
で,問題はwindowsとunixやdirectxとopengl(glut)が扱いが違いすぎるというか.
ウィンドウのハンドルにしても型が違うし.
これポリシーに向いていない気がする.
ぁーそれは
typedef window_impl::window_handle_type window_handle_type;
みたいにすればいいのか.
まだいいか.