Universe.Physics.BulletSPlugin.BSLinksetConstraints.RemoveChildFromLinkset C# (CSharp) Method

RemoveChildFromLinkset() protected method

protected RemoveChildFromLinkset ( BSPrimLinkable child, bool inTaintTime ) : void
child BSPrimLinkable
inTaintTime bool
return void
        protected override void RemoveChildFromLinkset(BSPrimLinkable child, bool inTaintTime)
        {
            if (m_children.Remove(child))
            {
                BSPrimLinkable rootx = LinksetRoot; // capture the root and body as of now
                BSPrimLinkable childx = child;

                DetailLog("{0},BSLinksetConstraints.RemoveChildFromLinkset,call,rID={1},rBody={2},cID={3},cBody={4}",
                    childx.LocalID,
                    rootx.LocalID, rootx.PhysBody.AddrString,
                    childx.LocalID, childx.PhysBody.AddrString);

                PhysicsScene.TaintedObject(inTaintTime,"BSLinksetConstraints.RemoveChildFromLinkset",
                    delegate() { PhysicallyUnlinkAChildFromRoot(rootx, childx); });
                // See that the linkset parameters are recomputed at the end of the taint time.
                Refresh(LinksetRoot);
            }
            else
            {
                // Non-fatal occurance.
                // PhysicsScene.Logger.ErrorFormat("{0}: Asked to remove child from linkset that was not in linkset", LogHeader);
            }
            return;
        }