internal override IntPtr _InternalGetConstPointer()
        {
#if RHINO_SDK
            Rhino.DocObjects.RhinoObject parent_object = m__parent as Rhino.DocObjects.RhinoObject;
            if (null == parent_object)
            {
                Rhino.FileIO.File3dmObject parent_model_object = m__parent as Rhino.FileIO.File3dmObject;
                if (parent_model_object != null)
                {
                    return(parent_model_object.GetAttributesConstPointer());
                }
            }
            IntPtr pConstParent = IntPtr.Zero;
            if (null != parent_object)
            {
                pConstParent = parent_object.ConstPointer();
            }
            return(UnsafeNativeMethods.CRhinoObject_Attributes(pConstParent));
#else
            Rhino.FileIO.File3dmObject parent_model_object = m__parent as Rhino.FileIO.File3dmObject;
            if (parent_model_object != null)
            {
                return(parent_model_object.GetAttributesConstPointer());
            }
            return(IntPtr.Zero);
#endif
        }