1SoAction(3IV)() SoAction(3IV)()
2
3
4
6 SoAction — abstract base class for all actions
7
9 SoAction
10
12 #include <Inventor/actions/SoAction.h>
13
14 Methods from class SoAction:
15
16 virtual ~SoAction()
17 virtual void apply(SoNode *node)
18 virtual void apply(SoPath *path)
19 virtual void apply(const SoPathList &pathList, SbBool obeysRules =
20 FALSE)
21 static SoType getClassTypeId()
22 virtual SoType getTypeId()
23 virtual SbBool isOfType(SoType type)
24 virtual void invalidateState()
25
26
28 SoAction is the abstract base class for all actions. Classes derived
29 from SoAction define operations to be applied at each node encountered
30 during traversal of a scene graph. The function that gets called to
31 implement the action for a particular node type is determined by a
32 lookup table in the global database.
33
35 virtual ~SoAction()
36 Destructor.
37
38 virtual void apply(SoNode *node)
39 virtual void apply(SoPath *path)
40 virtual void apply(const SoPathList &pathList, SbBool obeysRules =
41 FALSE)
42 Initiates an action on the graph defined either by a node, path, or
43 list of paths. TRUE can be passed for the obeysRules flag if the
44 given path list has the following 4 properties:
45
46 1 - All paths have the same head node
47 2 - Paths are sorted in traversal order
48 3 - If one path ends at node A, no other path
49 continues through A
50 4 - No two paths are the same
51
52 These rules will be obeyed by path lists returned by picking and by
53 searches for non-group nodes.
54
55 static SoType getClassTypeId()
56 Returns the type identifier for this class.
57
58 virtual SoType getTypeId()
59 Returns the type identifier for a specific instance.
60
61 virtual SbBool isOfType(SoType type)
62 Returns TRUE if this instance is of the type specified in type or is
63 derived from that type. Otherwise, it returns FALSE. For example,
64 actionPtr->isOfType(SoGetMatrixAction::getClassTypeId())
65
66 returns TRUE if actionPtr is an instance of SoGetMatrixAction or one
67 of its subclasses.
68
69 virtual void invalidateState()
70 Invalidates the current traversal state in the action, forcing it to
71 be recreated when the action is next applied. This is typically
72 unnecessary in most applications.
73
74
76 SoNode, SoPath, SoPathList, SoCallbackAction, SoGLRenderAction, SoGet‐
77 BoundingBoxAction, SoGetMatrixAction, SoHandleEventAction, SoPickAc‐
78 tion, SoRayPickAction, SoSearchAction, SoWriteAction
79
80
81
82
83 SoAction(3IV)()