WASAPIのラップクラスを改造してキャプチャクライアントを作っている。キャプチャであってもレンダラであっても排他であっても共有であってもコードはほとんど同じ。ベースとなるクラスを作って派生したり、コピペでクラス名やコードちょこちょこ変えて作ったりしてもいいのだけれど、テンプレートの特殊化を使ってコーディングを端折ろうということを試みている。要するにメタプログラミングでコーディングを端折りたいのだが、生半可な知識のため変なコードとなってしまっている。ポリシークラスがく単なるタグと化していたり、Traitsとポリシークラスの違いがわかっていなかったり、なんか気分でタグディスパッチを使ってみたり。「Modern C++ Design」とか読んで理解しているつもりだったのだけれどやってみると「解ってない」ことに気付かされたのであった。
まあでもテンプレートで遊んでみたかったので私的には満足してたりするんだけれどね。。