载入中...
搜索中...
未找到
SceneHost.h
浏览该文件的文档.
A playable audio source (static buffer or streaming decoder). Not thread-safe for playback control ex...
Definition Source.h:30
Definition RenderSystem3D.h:18
Default renderable entity for declarative 2D sprites / solid quads.
Definition RenderSystem.h:65
3D rigid body (Box3D) in meter-space coordinates (+Y up by convention). Owned by a World3D; create sh...
Definition Body3D.h:16
2D rigid body (Box2D) in pixel-space coordinates. Owned by a World; create shapes with newRectangleFi...
Definition Body.h:16
ECS mount point for one scene graph (full scene or nested subtree root). Isomorphic to eve::ui::UIHos...
Definition SceneHost.h:80
bool isDescendantOf(int nodeIndex, int ancestorIndex)
Definition SceneHost.cpp:348
bool isAncestorOfById(const std::string &ancestorId, const std::string &nodeId)
Definition SceneHost.cpp:344
std::vector< SceneNode * > getChildren(int nodeIndex)
Definition SceneHost.cpp:306
std::function< void(SceneHost *host, const std::string &action, const std::string &nodeId, const std::string &parentId)> SceneEventFn
Definition SceneHost.h:169
void walkBreadthFirstFrom(int nodeIndex, NodeVisitFn fn)
Definition SceneHost.cpp:418
bool isDescendantOfById(const std::string &nodeId, const std::string &ancestorId)
Definition SceneHost.cpp:352
int findIndexByName(const std::string &name)
Definition SceneHost.cpp:195
int findIndexById(const std::string &id)
Definition SceneHost.cpp:171
void setEventHandler(SceneEventFn fn)
Definition SceneHost.h:170
void walkDepthFirstFrom(int nodeIndex, NodeVisitFn fn)
Definition SceneHost.cpp:410
bool setParent(int childIndex, int parentIndex)
Imperative parent link. Returns false on invalid indices or cycle. Prefer declarative NodeDesc + reco...
Definition SceneHost.cpp:356
bool removeChild(int parentIndex, int childIndex)
Definition SceneHost.cpp:381
bool link(const std::string &nodeId, int kind, void *target, int syncMode=0)
Attach an external object to a node id. Survives reconcile/rebuild by id. After TransformSystem the l...
Definition SceneHost.cpp:522
std::vector< int > filterIndices(NodePredFn pred)
Definition SceneHost.cpp:463
bool removeChildById(const std::string &parentId, const std::string &childId)
Definition SceneHost.cpp:602
int getChildIndexAt(int parentIndex, int childOrdinal)
Child ordinal 0..count-1; -1 if out of range.
Definition SceneHost.cpp:274
bool setTreeReconcile(NodeDesc root)
Key-aware patch when structure matches; else full replace.
Definition SceneHost.cpp:139
std::vector< SceneNode * > findAllBySpace(const std::string &space)
Definition SceneHost.cpp:488
int getChildCountById(const std::string &id)
Definition SceneHost.cpp:272
bool linkRenderable3D(const std::string &nodeId, graphics::Renderable3D *r)
Definition SceneHost.cpp:534
bool linkPhysics3D(const std::string &nodeId, physics::Body3D *b, int syncMode=0)
Definition SceneHost.cpp:542
bool isAncestorOf(int ancestorIndex, int nodeIndex)
Definition SceneHost.cpp:337
std::vector< int > filterIndicesFrom(int nodeIndex, NodePredFn pred)
Definition SceneHost.cpp:467
SceneNode * getChildAt(int parentIndex, int childOrdinal)
Definition SceneHost.cpp:287
std::vector< std::string > collectIdsVisible(bool visible=true)
Definition SceneHost.cpp:518
std::vector< SceneNode * > filterFrom(int nodeIndex, NodePredFn pred)
Definition SceneHost.cpp:454
std::vector< std::string > getChildIds(const std::string &parentId)
Definition SceneHost.cpp:312
std::function< bool(SceneHost *host, int index, const SceneNode &node)> NodePredFn
Definition SceneHost.h:190
std::vector< std::string > collectIdsFrom(int nodeIndex)
Definition SceneHost.cpp:500
std::vector< std::string > collectIdsWhere(NodePredFn pred)
Definition SceneHost.cpp:506
std::vector< std::string > collectIdsByName(const std::string &name)
Definition SceneHost.cpp:514
void forEachDepthFirst(int nodeIndex, void(*fn)(SceneHost *, int, void *), void *user)
Depth-first visit of arena indices under nodeIndex (inclusive). C callback.
Definition SceneHost.cpp:404
std::vector< SceneNode * > findAllLinked()
Definition SceneHost.cpp:492
bool linkPhysics2D(const std::string &nodeId, physics::Body *b, int syncMode=0)
Definition SceneHost.cpp:538
SceneNode * getParentById(const std::string &id)
Definition SceneHost.cpp:259
std::string getPathById(const std::string &id)
Definition SceneHost.cpp:335
SceneNode * findByName(const std::string &name)
First node whose name equals name (DFS from root).
Definition SceneHost.cpp:159
std::vector< int > getChildIndices(int nodeIndex)
Definition SceneHost.cpp:295
void markSubtreeDirty(int nodeIndex)
Mark a node's subtree for world recompute (recompute it + descendants).
Definition SceneHost.cpp:392
bool addChild(int parentIndex, int childIndex)
Definition SceneHost.cpp:379
void markSubtreeDirtyById(const std::string &id)
Definition SceneHost.h:161
int findIndexByKey(const std::string &key)
Definition SceneHost.cpp:186
bool addTag(SceneNode *node, const std::string &tag)
Definition SceneHost.cpp:609
std::vector< std::string > collectIds()
Definition SceneHost.cpp:498
SceneNode * findById(const std::string &id)
Definition SceneHost.cpp:141
std::vector< SceneNode * > findAllVisible(bool visible=true)
Definition SceneHost.cpp:484
static SceneHost * createHost(const std::string &name="")
Definition SceneHost.cpp:122
void walkAncestors(int nodeIndex, NodeVisitFn fn)
Parent chain upward, excluding self.
Definition SceneHost.cpp:429
int findIndexByPath(const std::string &path)
Definition SceneHost.cpp:205
std::vector< SceneNode * > findAllByTag(const std::string &tag)
Definition SceneHost.cpp:637
int linkCount(const std::string &nodeId)
Definition SceneHost.cpp:589
bool hasTag(const SceneNode *node, const std::string &tag) const
Definition SceneHost.cpp:629
SceneNode * findIfFrom(int nodeIndex, NodePredFn pred)
Definition SceneHost.cpp:440
bool linkAudio3D(const std::string &nodeId, audio::Source *s)
Definition SceneHost.cpp:550
SceneNode * findByKey(const std::string &key)
Definition SceneHost.cpp:150
bool removeTag(SceneNode *node, const std::string &tag)
Definition SceneHost.cpp:618
bool unlink(const std::string &nodeId, int kind)
Remove all links of a kind; returns true if a link was removed.
Definition SceneHost.cpp:554
std::string getPath(int nodeIndex)
Id path "a/b/c" from root to node; empty if invalid.
Definition SceneHost.cpp:320
std::vector< SceneNode * > findAllByKey(const std::string &key)
Definition SceneHost.cpp:480
bool linkCamera3D(const std::string &nodeId, graphics::Camera3D *c)
Definition SceneHost.cpp:546
std::function< void(SceneHost *host, int index, SceneNode &node)> NodeVisitFn
Definition SceneHost.h:189
void walkDepthFirst(NodeVisitFn fn)
DFS from root (or from nodeIndex), inclusive.
Definition SceneHost.cpp:408
void walkBreadthFirst(NodeVisitFn fn)
BFS from root (or from nodeIndex), inclusive.
Definition SceneHost.cpp:414
SceneNode * findByPath(const std::string &path)
Path of ids joined by '/', e.g. "root/player/weapon". Relative to host root.
Definition SceneHost.cpp:165
bool linkRenderable2D(const std::string &nodeId, graphics::Renderable2D *r)
Definition SceneHost.cpp:530
std::vector< SceneNode * > findAllByName(const std::string &name)
Definition SceneHost.cpp:476
SceneLink * findLink(SceneNode *node, int kind)
Definition SceneHost.cpp:573
SceneNode * getChildAtById(const std::string &parentId, int childOrdinal)
Definition SceneHost.cpp:291
void fireEvent(const std::string &action, const std::string &nodeId, const std::string &parentId={})
Fire "node_added" / "node_removed" / "node_moved" / "node_changed".
Definition SceneHost.cpp:399
bool setParentById(const std::string &childId, const std::string &parentId)
Reparent by id; empty parentId detaches (parent = -1). Cycle-safe.
Definition SceneHost.cpp:594
Definition Audio.cpp:18
卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局...
Definition AnimTrail.h:6
Definition Body.cpp:11
Definition ScenePicking.cpp:22
NodeDesc node(std::string id, std::vector< NodeDesc > children, std::string name)
Definition NodeDesc.cpp:214
Declarative scene-node description (build once / on dirty → flatten into SceneHost::Tree)....
Definition NodeDesc.h:15
Definition SceneHost.h:86
Definition SceneHost.h:94
std::unordered_map< std::string, int > idIndex
Definition SceneHost.h:98
Definition SceneLink.h:68
Retained scene node (arena). Conceptual GameObject; isomorphic to eve::ui::UINode.
Definition SceneHost.h:39
std::vector< std::string > tags
Gameplay groups (Godot-style): multiple string tags per node.
Definition SceneHost.h:46
bool subtreeDirty
Subtree needs world recompute (API edits mark node + ancestors).
Definition SceneHost.h:59
std::vector< SceneLink > links
Generic links (renderable / physics / camera / audio). Target owned elsewhere.
Definition SceneHost.h:63