FineKernelToolKit  3.1.0
DList_CLI.h
[詳解]
1 // DList_CLI.h
2 
3 #pragma once
4 
5 #include <FK/DList.h>
6 #include "Base_CLI.h"
7 #include "Model_CLI.h"
8 #include "Projection_CLI.h"
9 
10 namespace FK_CLI
11 {
12  using namespace System::Collections::Generic;
13 
15  public enum class fk_StereoChannel {
16  STEREO_LEFT,
18  };
19 
21 
46  public ref class fk_DisplayLink : fk_BaseObject {
47  internal:
48  List<fk_Model^>^ modelList;
49  List<fk_Model^>^ overlayList;
50  fk_Model^ _camera;
51  fk_Model^ _lCamera;
52  fk_Model^ _rCamera;
53  fk_ProjectBase^ _proj;
54  fk_ProjectBase^ _lProj;
55  fk_ProjectBase^ _rProj;
56 
57  ::fk_DisplayLink * GetP(void);
58  void CameraUpdate(void);
60 
61  public:
62 #ifndef FK_DOXYGEN_USER_PROCESS
63  fk_DisplayLink(bool argNewFlg);
64  ~fk_DisplayLink();
65 #endif
66 
68 
73  property fk_Model^ Camera {
74  fk_Model^ get();
75  void set(fk_Model^ argM);
76  }
77 
79 
84  property fk_Model^ LeftCamera {
85  fk_Model^ get();
86  void set(fk_Model^ argM);
87  }
88 
90 
95  property fk_Model^ RightCamera {
96  fk_Model^ get();
97  void set(fk_Model^ argM);
98  }
99 
101 
106  property fk_ProjectBase^ Projection {
107  fk_ProjectBase^ get();
108  void set(fk_ProjectBase^ argP);
109  }
110 
112 
117  property fk_ProjectBase^ LeftProjection {
118  fk_ProjectBase^ get();
119  void set(fk_ProjectBase^ argP);
120  }
121 
123 
128  property fk_ProjectBase^ RightProjection {
129  fk_ProjectBase^ get();
130  void set(fk_ProjectBase^ argP);
131  }
132 
134 
148  property bool StereoOverlayMode {
149  bool get();
150  void set(bool argMode);
151  }
152 
154 
159  void ClearDisplay(void);
160 
162 
165  void ClearStereo(void);
166 
168 
173  void EntryModel(fk_Model ^model);
174 
176 
184  void RemoveModel(fk_Model ^model);
185 
187 
191  void ClearModel(void);
192 
194 
202  void EntryOverlayModel(fk_Model ^model);
203 
204 
206 
214  void RemoveOverlayModel(fk_Model^ model);
215 
217 
221  void ClearOverlayModel(void);
222  };
223 }
224 
225 /****************************************************************************
226  *
227  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
228  *
229  * Redistribution and use in source and binary forms,
230  * with or without modification, are permitted provided that the
231  * following conditions are met:
232  *
233  * - Redistributions of source code must retain the above
234  * copyright notice, this list of conditions and the
235  * following disclaimer.
236  *
237  * - Redistributions in binary form must reproduce the above
238  * copyright notice, this list of conditions and the
239  * following disclaimer in the documentation and/or
240  * other materials provided with the distribution.
241  *
242  * - Neither the name of the copyright holders nor the names
243  * of its contributors may be used to endorse or promote
244  * products derived from this software without specific
245  * prior written permission.
246  *
247  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
248  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
249  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
250  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
251  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
252  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
253  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
254  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
255  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
256  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
257  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
258  * POSSIBILITY OF SUCH DAMAGE.
259  *
260  ****************************************************************************/
261 /****************************************************************************
262  *
263  * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
264  *
265  * 本ソフトウェアおよびソースコードのライセンスは、基本的に
266  * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
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  *
295  ****************************************************************************/
FK の各クラスの基盤となる基本クラス
Definition: Base_CLI.h:105
fk_StereoChannel
立体視出力を制御する際に用いる列挙型
Definition: DList_CLI.h:15
モデルを生成、管理するクラス
Definition: Model_CLI.h:125
投影法の基底クラス
Definition: Projection_CLI.h:26
Definition: AppWindow_CLI.h:11