public async Task <IAsyncCommandChannel> CreateAsync(CreationParameters <MemorySqliteConnectionStringBuilder> creationParameters)
        {
            var mustPlayCreationScripts = true;
            var connection = Instances.AddOrUpdate(
                creationParameters.ConnectionString.MemoryInstanceGuid,
                guid => new SqliteConnection(creationParameters.ConnectionString.ConnectionString),
                (guid, previous) =>
            {
                mustPlayCreationScripts = creationParameters.EraseIfExists;
                return(creationParameters.EraseIfExists ? new SqliteConnection(creationParameters.ConnectionString.ConnectionString) : previous);
            });

            var channel = new AsyncCommandChannel(new AsyncMemoryConnection(connection));

            if (mustPlayCreationScripts)
            {
                await channel.ExecuteAsync(creationParameters.Script);

                foreach (var creationParametersAdditionalScript in creationParameters.AdditionalScripts)
                {
                    await channel.ExecuteAsync(creationParametersAdditionalScript);
                }
            }

            return(channel);
        }
示例#2
0
        public Allocator(Device dev, Direct3D D3D)
        {
            this.D3D    = D3D;
            adapterInfo = D3D.Adapters.DefaultAdapter;

            device = dev;

            creationParameters = device.CreationParameters;
        }
示例#3
0
 public TextureStackBase(string _name, CreationParameters _creationParams, bool gpuGeneration)
 {
     name                         = _name;
     creationParams               = _creationParams;
     creationParams.borderSize    = borderSize;
     creationParams.gpuGeneration = gpuGeneration ? 1 : 0;
     creationParams.Validate();
     handle = Binding.Create(creationParams);
 }
示例#4
0
        public async Task <IAsyncCommandChannel> CreateAsync(CreationParameters <SqliteConnectionStringBuilder> creationParameters)
        {
            if (creationParameters.ConnectionString.DataSource == ":memory:")
            {
                throw new NotSupportedException("Use " + nameof(MemorySqliteCommandChannelFactory));
            }

            CreationOrDeletionLock.EnterUpgradeableReadLock();

            try
            {
                if (creationParameters.EraseIfExists)
                {
                    DeleteIfExists(creationParameters.ConnectionString);
                }

                CreationOrDeletionLock.EnterWriteLock();

                try
                {
                    var derivedConnectionString = new SqliteConnectionStringBuilder(creationParameters.ConnectionString.ToString())
                    {
                        Mode = SqliteOpenMode.ReadWriteCreate
                    };

                    var connection = new SqliteConnection(derivedConnectionString.ToString());
                    connection.Open();
                    var adapter = new AsyncCommandChannel(
                        new AsyncThreadSafeConnection(
                            new AsyncConnection(
                                new SqliteConnection(creationParameters.ConnectionString.ToString())
                                )
                            )
                        );

                    foreach (var script in creationParameters.AdditionalScripts.Prepend(creationParameters.Script))
                    {
                        if (!string.IsNullOrWhiteSpace(script))
                        {
                            await adapter.ExecuteAsync(script);
                        }
                    }

                    return(adapter);
                }
                finally
                {
                    CreationOrDeletionLock.ExitWriteLock();
                }
            }
            finally
            {
                CreationOrDeletionLock.ExitUpgradeableReadLock();
            }
        }
 public static CreateStorageAccountRequest FromCreationParams(CreationParameters creationParams)
 {
     return(new CreateStorageAccountRequest()
     {
         ResourceGroupName = creationParams.ResourceGroupName,
         AzureResourceLocation = creationParams.AzureResourceLocation,
         CustomerShortName = creationParams.CustomerShortName,
         CreatorName = creationParams.CreatorName,
         Environment = creationParams.Environment,
         SubscriptionID = creationParams.SubscriptionID,
         TenantID = creationParams.TenantID
     });
 }
                public TextureStackBase(string _name, CreationParameters _creationParams, bool gpuGeneration)
                {
                    if (System.enabled == false)
                    {
                        throw new InvalidOperationException("Virtual texturing is not enabled in the player settings.");
                    }

                    name                         = _name;
                    creationParams               = _creationParams;
                    creationParams.borderSize    = borderSize;
                    creationParams.gpuGeneration = gpuGeneration ? 1 : 0;
                    creationParams.useAutoCalculatedCPUCacheSize = 0;
                    creationParams.Validate();
                    handle = Binding.Create(creationParams);
                }
示例#7
0
 private Result GetCreationParameters(IntPtr devicePointer, out CreationParameters parameters)
 {
     try
     {
         this.Log.LogMethodSignatureTypesAndValues(devicePointer, "out");
         this.GetOrCreateDevice(devicePointer);
         parameters = this.Device.CreationParameters;
         return(Result.Ok);
     }
     catch (SharpDXException ex)
     {
         Log.Warn(ex);
         parameters = default(CreationParameters);
         return(ex.ResultCode);
     }
     catch (Exception ex)
     {
         this.Log.Fatal(ex);
         parameters = default(CreationParameters);
         return(Result.UnexpectedFailure);
     }
 }
示例#8
0
        public async Task <IAsyncCommandChannel> CreateAsync(CreationParameters <MySqlConnectionStringBuilder> creationParameters)
        {
            if (await ExistsAsync(creationParameters.ConnectionString) && !creationParameters.EraseIfExists)
            {
                return(OpenAsync(creationParameters.ConnectionString));
            }

            await DeleteAsync(creationParameters.ConnectionString);
            await CreateDbAsync(creationParameters.ConnectionString);

            var adapter = OpenAsync(creationParameters.ConnectionString);

            foreach (var script in creationParameters.AdditionalScripts.Prepend(creationParameters.Script))
            {
                if (!string.IsNullOrEmpty(script))
                {
                    await adapter.ExecuteAsync(script);
                }
            }

            return(adapter);
        }
示例#9
0
        public ICommandChannel Create(CreationParameters <MySqlConnectionStringBuilder> creationParameters)
        {
            if (Exists(creationParameters.ConnectionString) && !creationParameters.EraseIfExists)
            {
                return(Open(creationParameters.ConnectionString));
            }

            Delete(creationParameters.ConnectionString);
            CreateDb(creationParameters.ConnectionString);

            var adapter = Open(creationParameters.ConnectionString);

            foreach (var script in creationParameters.AdditionalScripts.Prepend(creationParameters.Script))
            {
                if (!string.IsNullOrEmpty(script))
                {
                    adapter.Execute(script);
                }
            }

            return(adapter);
        }
 public CPUTextureStack(string _name, CreationParameters creationParams)
     : base(_name, creationParams, false)
 {
 }
 public GPUTextureStack(string _name, CreationParameters creationParams)
     : base(_name, creationParams, true)
 {
 }
 extern internal static ulong Create(CreationParameters p);