Free Electron
JointSeparateOp.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2021 Free Electron Organization
2  Any use of this software requires a license. If a valid license
3  was not distributed with this file, visit freeelectron.org. */
4 
5 /** @file */
6 
7 #ifndef __maya_JointSeparateOp_h__
8 #define __maya_JointSeparateOp_h__
9 
10 namespace fe
11 {
12 namespace ext
13 {
14 
15 /**************************************************************************//**
16  @brief Separate a multi-joint surface into multiple native joint
17 
18  @ingroup maya
19 *//***************************************************************************/
20 class FE_DL_EXPORT JointSeparateOp:
21  public OperatorSurfaceCommon,
22  public Initialize<JointSeparateOp>
23 {
24  public:
25 
26  JointSeparateOp(void):
27  m_dirtied(FALSE),
28  m_deactivate(FALSE) {}
29 virtual ~JointSeparateOp(void);
30 
31  void initialize(void);
32 
33  //* As HandlerI
34 virtual void handle(Record& a_rSignal);
35 
36  private:
37  void cancelCallbacks(void);
38 
39  BWORD scanDag(MObject a_parent);
40 
41  String fullMayaName(String a_rootPath,String a_leafName);
42 
43 static void changeCB(MNodeMessage::AttributeMessage a_message,
44  MPlug & a_plug,MPlug & a_otherPlug,
45  void* a_pClientData);
46 static void renameCB(MObject &a_node, const MString &a_string,
47  void* a_pClientData);
48 
49  Array<MObject> m_keepList;
50  Array<String> m_salvageList;
51 
52  Array<MCallbackId> m_callbackIDs;
53  BWORD m_dirtied;
54  BWORD m_deactivate;
55  String m_selectedJoint;
56 };
57 
58 } /* namespace ext */
59 } /* namespace fe */
60 
61 #endif /* __maya_JointSeparateOp_h__ */
Separate a multi-joint surface into multiple native joint.
Definition: JointSeparateOp.h:20
kernel
Definition: namespace.dox:3
Per-class participation in the Initialized <> mechanism.
Definition: Initialized.h:117
Automatically reference-counted string container.
Definition: String.h:128
Partial Generic SurfaceI Implemention.
Definition: OperatorSurfaceCommon.h:20
Reference to an instance of a Layout.
Definition: RecordSB.h:35