FineKernelToolKit: CLI/FK_CLI/include/DList_CLI.h ソースファイル

FineKernelToolKit 4.3.0

読み取り中…
検索中…
一致する文字列を見つけられません
DList_CLI.h
[詳解]
1#pragma once
2
3#include <FK/DList.h>
4#include "Base_CLI.h"
5#include "Model_CLI.h"
6#include "Projection_CLI.h"
7#using <System.dll>
8
9namespace FK_CLI
10{
11 using namespace System::Collections::Generic;
12
14 public enum class fk_StereoChannel {
15 STEREO_LEFT,
16 STEREO_RIGHT
17 };
18
20
45 public ref class fk_DisplayLink : fk_BaseObject {
46 internal:
47 LinkedList<fk_Model^>^ modelList;
48 LinkedList<fk_Model^>^ overlayList;
49 fk_Model^ _camera;
50 fk_Model^ _lCamera;
51 fk_Model^ _rCamera;
52 fk_ProjectBase^ _proj;
53 fk_ProjectBase^ _lProj;
54 fk_ProjectBase^ _rProj;
55
56 ::FK::fk_DisplayLink * GetP(void);
57 void CameraUpdate(void);
58 ::FK::fk_StereoChannel GetStereo(fk_StereoChannel);
59
60 public:
61#if !defined(FK_DOXYGEN_USER_PROCESS)
62 fk_DisplayLink(bool argNewFlg);
63 ~fk_DisplayLink();
64#endif
65
67
72 property fk_Model^ Camera {
73 fk_Model^ get();
74 void set(fk_Model^ argM);
75 }
76
78
83 property fk_Model^ LeftCamera {
84 fk_Model^ get();
85 void set(fk_Model^ argM);
86 }
87
89
94 property fk_Model^ RightCamera {
95 fk_Model^ get();
96 void set(fk_Model^ argM);
97 }
98
100
105 property fk_ProjectBase^ Projection {
106 fk_ProjectBase^ get();
107 void set(fk_ProjectBase^ argP);
108 }
109
111
116 property fk_ProjectBase^ LeftProjection {
117 fk_ProjectBase^ get();
118 void set(fk_ProjectBase^ argP);
119 }
120
122
127 property fk_ProjectBase^ RightProjection {
128 fk_ProjectBase^ get();
129 void set(fk_ProjectBase^ argP);
130 }
131
133
147 property bool StereoOverlayMode {
148 bool get();
149 void set(bool argMode);
150 }
151
153
158 void ClearDisplay(void);
159
161
164 void ClearStereo(void);
165
167
172 void EntryModel(fk_Model ^model);
173
175
183 void RemoveModel(fk_Model ^model);
184
186
190 void ClearModel(void);
191
193
201 void EntryOverlayModel(fk_Model ^model);
202
203
205
213 void RemoveOverlayModel(fk_Model^ model);
214
216
220 void ClearOverlayModel(void);
221 };
222}
223
224/****************************************************************************
225 *
226 * Copyright (c) 1999-2024, Fine Kernel Project, All rights reserved.
227 *
228 * Redistribution and use in source and binary forms,
229 * with or without modification, are permitted provided that the
230 * following conditions are met:
231 *
232 * - Redistributions of source code must retain the above
233 * copyright notice, this list of conditions and the
234 * following disclaimer.
235 *
236 * - Redistributions in binary form must reproduce the above
237 * copyright notice, this list of conditions and the
238 * following disclaimer in the documentation and/or
239 * other materials provided with the distribution.
240 *
241 * - Neither the name of the copyright holders nor the names
242 * of its contributors may be used to endorse or promote
243 * products derived from this software without specific
244 * prior written permission.
245 *
246 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
247 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
248 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
249 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
250 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
251 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
252 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
253 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
254 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
255 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
256 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
257 * POSSIBILITY OF SUCH DAMAGE.
258 *
259 ****************************************************************************/
260/****************************************************************************
261 *
262 * Copyright (c) 1999-2024, Fine Kernel Project, All rights reserved.
263 *
264 * 本ソフトウェアおよびソースコードのライセンスは、基本的に
265 * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
266 *
267 * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
268 * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
269 *
270 * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
271 * および下記免責条項を含めること。
272 *
273 * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
274 * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
275 * 含めること。
276 *
277 * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
278 * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
279 * コントリビューターの名前を使用してはならない。
280 *
281 * 本ソフトウェアは、著作権者およびコントリビューターによって「現
282 * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
283 * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
284 * に限定されない、いかなる保証もないものとします。著作権者もコン
285 * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
286 * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
287 * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
288 * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
289 * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
290 * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
291 * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
292 * ついて、一切責任を負わないものとします。
293 *
294 ****************************************************************************/
Base_CLI.h
Model_CLI.h
Projection_CLI.h
FK_CLI::fk_BaseObject
FK の各クラスの基盤となる基本クラス
Definition Base_CLI.h:104
FK_CLI::fk_DisplayLink
ディスプレイリストを制御するクラス
Definition DList_CLI.h:45
FK_CLI::fk_DisplayLink::LeftCamera
fk_Model^ LeftCamera
立体視用左眼カメラプロパティ
Definition DList_CLI.h:83
FK_CLI::fk_DisplayLink::LeftProjection
fk_ProjectBase^ LeftProjection
立体視用左眼投影プロパティ
Definition DList_CLI.h:116
FK_CLI::fk_DisplayLink::EntryOverlayModel
void EntryOverlayModel(fk_Model ^ model)
オーバーレイモデル登録メソッド
FK_CLI::fk_DisplayLink::StereoOverlayMode
bool StereoOverlayMode
立体視モード時のオーバーレイ描画モードプロパティ
Definition DList_CLI.h:147
FK_CLI::fk_DisplayLink::RemoveModel
void RemoveModel(fk_Model ^ model)
通常モデル解除メソッド
FK_CLI::fk_DisplayLink::Camera
fk_Model^ Camera
カメラモデルプロパティ
Definition DList_CLI.h:72
FK_CLI::fk_DisplayLink::RightProjection
fk_ProjectBase^ RightProjection
立体視用右眼投影プロパティ
Definition DList_CLI.h:127
FK_CLI::fk_DisplayLink::ClearOverlayModel
void ClearOverlayModel(void)
オーバーレイモデル全解除メソッド
FK_CLI::fk_DisplayLink::EntryModel
void EntryModel(fk_Model ^ model)
通常モデル登録メソッド
FK_CLI::fk_DisplayLink::ClearModel
void ClearModel(void)
通常モデル全解除メソッド
FK_CLI::fk_DisplayLink::RemoveOverlayModel
void RemoveOverlayModel(fk_Model^ model)
オーバーレイモデル解除メソッド
FK_CLI::fk_DisplayLink::ClearDisplay
void ClearDisplay(void)
初期化メソッド
FK_CLI::fk_DisplayLink::ClearStereo
void ClearStereo(void)
立体視用設定情報初期化メソッド
FK_CLI::fk_DisplayLink::Projection
fk_ProjectBase^ Projection
投影設定プロパティ
Definition DList_CLI.h:105
FK_CLI::fk_DisplayLink::RightCamera
fk_Model^ RightCamera
立体視用右眼カメラプロパティ
Definition DList_CLI.h:94
FK_CLI::fk_Model
モデルを生成、管理するクラス
Definition Model_CLI.h:140
FK_CLI::fk_ProjectBase
投影法の基底クラス
Definition Projection_CLI.h:24
FK_CLI
Definition AppWindow_CLI.h:11
FK_CLI::fk_StereoChannel
fk_StereoChannel
立体視出力を制御する際に用いる列挙型
Definition DList_CLI.h:14
FK_CLI::fk_StereoChannel::STEREO_RIGHT
@ STEREO_RIGHT
左目側
Definition DList_CLI.h:16
FK_CLI::fk_StereoChannel::STEREO_LEFT
@ STEREO_LEFT
右目側
Definition DList_CLI.h:15