public new static vtkGenericAttribute SafeDownCast(vtkObjectBase o)
        {
            vtkGenericAttribute vtkGenericAttribute = null;
            uint   mteStatus   = 0u;
            uint   mteIndex    = 4294967295u;
            uint   rawRefCount = 0u;
            IntPtr intPtr      = vtkGenericAttribute.vtkGenericAttribute_SafeDownCast_23((o == null) ? default(HandleRef) : o.GetCppThis(), ref mteStatus, ref mteIndex, ref rawRefCount);

            if (IntPtr.Zero != intPtr)
            {
                bool flag;
                vtkGenericAttribute = (vtkGenericAttribute)Methods.CreateWrappedObject(mteStatus, mteIndex, rawRefCount, intPtr, true, out flag);
                if (flag)
                {
                    vtkGenericAttribute.Register(null);
                }
            }
            return(vtkGenericAttribute);
        }
        public vtkGenericAttribute GetAttribute(int i)
        {
            vtkGenericAttribute vtkGenericAttribute = null;
            uint   mteStatus   = 0u;
            uint   mteIndex    = 4294967295u;
            uint   rawRefCount = 0u;
            IntPtr intPtr      = vtkGenericAttributeCollection.vtkGenericAttributeCollection_GetAttribute_06(base.GetCppThis(), i, ref mteStatus, ref mteIndex, ref rawRefCount);

            if (IntPtr.Zero != intPtr)
            {
                bool flag;
                vtkGenericAttribute = (vtkGenericAttribute)Methods.CreateWrappedObject(mteStatus, mteIndex, rawRefCount, intPtr, true, out flag);
                if (flag)
                {
                    vtkGenericAttribute.Register(null);
                }
            }
            return(vtkGenericAttribute);
        }