xcal
基于 C++23 的现代图形渲染引擎
载入中...
搜索中...
未找到
Public 成员函数 | 所有成员列表
xcal::scene::AbsScene< ObjectPtr > 模板类 参考

抽象场景模板类 更多...

#include <abs_scene.hpp>

类 xcal::scene::AbsScene< ObjectPtr > 继承关系图:
[图例]

Public 成员函数

 AbsScene ()
 
 AbsScene (const AbsScene &)=delete
 
AbsSceneoperator= (const AbsScene &)=delete
 
template<typename T , class... Args>
T * add (Args &&... args)
 添加对象/相机/动画/时间线
 
template<typename T >
T * add (std::unique_ptr< T > &&obj)
 添加对象/相机/动画/时间线
 
template<typename T >
T * add (T *obj)
 添加对象/相机/动画/时间线
 
template<typename T >
T * add (T &&obj)
 添加对象/相机/动画/时间线
 
std::vector< ObjectPtr > & mobjects ()
 获取对象列表(可修改)
 
std::vector< std::unique_ptr< camera::AbsCamera > > & cameras ()
 
std::vector< std::unique_ptr< animation::Timeline > > & timelines ()
 
std::vector< std::unique_ptr< animation::AbsAnimation > > & animations ()
 
const std::vector< ObjectPtr > & mobjects () const
 获取对象列表(只读)
 
const std::vector< std::unique_ptr< camera::AbsCamera > > & cameras () const
 
const std::vector< std::unique_ptr< animation::AbsAnimation > > & animations () const
 
virtual ~AbsScene ()=default
 虚析构函数
 

详细描述

template<typename ObjectPtr = mobject::AbsMObject_ptr>
class xcal::scene::AbsScene< ObjectPtr >

抽象场景模板类

场景管理的抽象基类,使用模板支持不同类型的对象指针。 提供对象添加、管理和访问功能。

模板参数
ObjectPtr对象指针类型,默认为 mobject::AbsMObject_ptr

在文件 abs_scene.hpp33 行定义.

构造及析构函数说明

◆ AbsScene() [1/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
xcal::scene::AbsScene< ObjectPtr >::AbsScene ( )
inline

在文件 abs_scene.hpp44 行定义.

◆ AbsScene() [2/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
xcal::scene::AbsScene< ObjectPtr >::AbsScene ( const AbsScene< ObjectPtr > &  )
delete

◆ ~AbsScene()

template<typename ObjectPtr = mobject::AbsMObject_ptr>
virtual xcal::scene::AbsScene< ObjectPtr >::~AbsScene ( )
virtualdefault

虚析构函数

成员函数说明

◆ add() [1/4]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
template<typename T , class... Args>
T * xcal::scene::AbsScene< ObjectPtr >::add ( Args &&...  args)
inline

添加对象/相机/动画/时间线

模板参数
T要添加的对象类型
参数
obj
返回
T*

在文件 abs_scene.hpp56 行定义.

被这些函数引用 TEST(), TEST(), TEST(), TEST(), TEST(), TEST() , 以及 TEST().

◆ add() [2/4]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
template<typename T >
T * xcal::scene::AbsScene< ObjectPtr >::add ( std::unique_ptr< T > &&  obj)
inline

添加对象/相机/动画/时间线

模板参数
T要添加的对象类型
参数
obj
返回
T*

在文件 abs_scene.hpp80 行定义.

◆ add() [3/4]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
template<typename T >
T * xcal::scene::AbsScene< ObjectPtr >::add ( T &&  obj)
inline

添加对象/相机/动画/时间线

模板参数
T要添加的对象类型
参数
obj
返回
T*

在文件 abs_scene.hpp120 行定义.

◆ add() [4/4]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
template<typename T >
T * xcal::scene::AbsScene< ObjectPtr >::add ( T *  obj)
inline

添加对象/相机/动画/时间线

模板参数
T
参数
obj
返回
T*

在文件 abs_scene.hpp100 行定义.

◆ animations() [1/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
std::vector< std::unique_ptr< animation::AbsAnimation > > & xcal::scene::AbsScene< ObjectPtr >::animations ( )
inline

在文件 abs_scene.hpp144 行定义.

◆ animations() [2/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
const std::vector< std::unique_ptr< animation::AbsAnimation > > & xcal::scene::AbsScene< ObjectPtr >::animations ( ) const
inline

在文件 abs_scene.hpp156 行定义.

◆ cameras() [1/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
std::vector< std::unique_ptr< camera::AbsCamera > > & xcal::scene::AbsScene< ObjectPtr >::cameras ( )
inline

在文件 abs_scene.hpp138 行定义.

◆ cameras() [2/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
const std::vector< std::unique_ptr< camera::AbsCamera > > & xcal::scene::AbsScene< ObjectPtr >::cameras ( ) const
inline

在文件 abs_scene.hpp153 行定义.

◆ mobjects() [1/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
std::vector< ObjectPtr > & xcal::scene::AbsScene< ObjectPtr >::mobjects ( )
inline

获取对象列表(可修改)

返回
std::vector<ObjectPtr>& 对象指针列表引用

在文件 abs_scene.hpp137 行定义.

被这些函数引用 TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST() , 以及 TEST().

◆ mobjects() [2/2]

template<typename ObjectPtr = mobject::AbsMObject_ptr>
const std::vector< ObjectPtr > & xcal::scene::AbsScene< ObjectPtr >::mobjects ( ) const
inline

获取对象列表(只读)

返回
const std::vector<ObjectPtr>& 对象指针列表常量引用

在文件 abs_scene.hpp152 行定义.

◆ operator=()

template<typename ObjectPtr = mobject::AbsMObject_ptr>
AbsScene & xcal::scene::AbsScene< ObjectPtr >::operator= ( const AbsScene< ObjectPtr > &  )
delete

◆ timelines()

template<typename ObjectPtr = mobject::AbsMObject_ptr>
std::vector< std::unique_ptr< animation::Timeline > > & xcal::scene::AbsScene< ObjectPtr >::timelines ( )
inline

在文件 abs_scene.hpp141 行定义.


该类的文档由以下文件生成: