/// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="owner">DiscMaster which will be called to receive
        /// events.</param>
        public DiscMasterProgressEvents( DiscMaster owner )
        {
            if ( owner == null )
            {
                throw new ArgumentNullException( "owner" );
            }

            _cookie = IntPtr.Zero;
            _owner = owner;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="JolietDiscMasterStorage"/> class.
        /// </summary>
        /// <param name="owner">The owner.</param>
        internal JolietDiscMasterStorage( DiscMaster owner )
        {
            if ( owner == null )
            {
                throw new ArgumentNullException( "owner" );
            } // End if (owner == null)

            _owner = owner;
            _folderName = "";
            _subfolders = new Dictionary<string, JolietDiscMasterStorage>();
            _files = new Dictionary<string, string>();
            _storage = new JolietStorage( this, "" );
        }
Example #3
0
        /// <summary>
        /// Internal constructor.  Instances of this class should only
        /// be obtained from the <see cref="DiscMaster"/> object.
        /// </summary>
        /// <param name="owner">Disc master object which owns this object.</param>
        /// <param name="jolietDiscMaster">Imapi Joliet Disc</param>
        internal JolietDiscMaster( DiscMaster owner, IJolietDiscMaster jolietDiscMaster )
        {
            if ( owner == null )
            {
                throw new ArgumentNullException( "owner" );
            } // End if (owner == null)

            if ( jolietDiscMaster == null )
            {
                throw new ArgumentNullException( "jolietDiscMaster" );
            } // End if (jolietDiscMaster == null)

            _owner = owner;
            _jolietDiscMaster = jolietDiscMaster;
            _rootStorage = new JolietDiscMasterStorage( owner );
        }
Example #4
0
        /// <summary>
        /// Internal constructor: instances of this object should
        /// be obtained from the <see cref="DiscMaster"/> object.
        /// </summary>
        /// <param name="owner">Disc master object which owns this object.</param>
        /// <param name="redbookMaster">Imapi redbook disc mastering object to wrap.</param>
        /// <exception cref="ArgumentNullException"></exception>
        internal RedbookDiscMaster( DiscMaster owner, IRedbookDiscMaster redbookMaster )
        {
            if ( owner == null )
            {
                throw new ArgumentNullException( "owner" );
            } // End if (owner == null)

            if ( redbookMaster == null )
            {
                throw new ArgumentNullException( "redbookMaster" );
            } // End if (redbookMaster == null)

            _owner = owner;

            _redbookMaster = redbookMaster;
            SyncRoot = new object();
        }
        /// <summary>
        /// Dispose(bool disposing) executes in two distinct scenarios.
        /// If disposing equals true, the method has been called directly
        /// or indirectly by a user's code. Managed and unmanaged resources
        /// can be disposed.
        /// </summary>
        /// <param name="disposing">
        /// If disposing equals false, the method has been called by the 
        /// runtime from inside the finalizer and you should not reference 
        /// other objects. Only unmanaged resources can be disposed.
        /// </param>
        protected override void Dispose( bool disposing )
        {
            // Check to see if Dispose has already been called.
            if ( disposing && !IsDisposed )
            {
                // Dispose managed resources.
                _owner = null;
                _cookie = IntPtr.Zero;

                // Call the appropriate methods to clean up
                // unmanaged resources here.
                // If disposing is false,
            } // End if(!_disposed)
            base.Dispose( disposing );
        }