public Tracer.Builder GetTracerBuilder() { if (ReporterConfig == null) { ReporterConfig = new ReporterConfiguration(_loggerFactory); } if (SamplerConfig == null) { SamplerConfig = new SamplerConfiguration(_loggerFactory); } if (_codecConfig == null) { _codecConfig = new CodecConfiguration(new Dictionary <IFormat <ITextMap>, List <Codec <ITextMap> > >()); } if (_metricsFactory == null) { _metricsFactory = NoopMetricsFactory.Instance; } IMetrics metrics = new MetricsImpl(_metricsFactory); IReporter reporter = ReporterConfig.GetReporter(metrics); ISampler sampler = SamplerConfig.CreateSampler(_serviceName, metrics); Tracer.Builder builder = new Tracer.Builder(_serviceName) .WithLoggerFactory(_loggerFactory) .WithSampler(sampler) .WithReporter(reporter) .WithMetrics(metrics) .WithTags(_tracerTags); _codecConfig.Apply(builder); return(builder); }
public unsafe Sampler(Api api, SamplerConfig config) { _api = api; // Wrap textures // TODO: make texture-specific config.AddressModeU = SamplerAddressMode.Repeat; config.AddressModeV = SamplerAddressMode.Repeat; config.AddressModeW = SamplerAddressMode.Repeat; var samplerInfo = new SamplerCreateInfo(); samplerInfo.SType = StructureType.SamplerCreateInfo; samplerInfo.MagFilter = config.MagFilter; samplerInfo.MinFilter = config.MinFilter; samplerInfo.AddressModeU = config.AddressModeU; samplerInfo.AddressModeV = config.AddressModeV; samplerInfo.AddressModeW = config.AddressModeW; samplerInfo.AnisotropyEnable = config.AnisotropyEnable; samplerInfo.MaxAnisotropy = config.MaxAnisotropy; samplerInfo.BorderColor = config.BorderColor; samplerInfo.UnnormalizedCoordinates = config.UnnormalizedCoordinates; samplerInfo.CompareEnable = config.CompareEnable; samplerInfo.CompareOp = config.CompareOp; samplerInfo.MipmapMode = config.MipmapMode; samplerInfo.MipLodBias = config.MipLodBias; samplerInfo.MinLod = config.MinLod; samplerInfo.MaxLod = config.MaxLod; Util.Verify(_api.Vk.CreateSampler(_api.Device.VkDevice, samplerInfo, default, out _vkSampler), $"{nameof(Sampler)}: Failed to create sampler");
public Tracer.Builder GetTracerBuilder() { if (ReporterConfig == null) { ReporterConfig = new ReporterConfiguration(_loggerFactory); } if (SamplerConfig == null) { SamplerConfig = new SamplerConfiguration(_loggerFactory); } if (CodecConfig == null) { CodecConfig = new CodecConfiguration(_loggerFactory); } if (_metricsFactory == null) { _metricsFactory = NoopMetricsFactory.Instance; } IMetrics metrics = new MetricsImpl(_metricsFactory); IReporter reporter = ReporterConfig.GetReporter(metrics); ISampler sampler = SamplerConfig.GetSampler(ServiceName, metrics); Tracer.Builder builder = new Tracer.Builder(ServiceName) .WithLoggerFactory(_loggerFactory) .WithSampler(sampler) .WithReporter(reporter) .WithMetrics(metrics) .WithTags(_tracerTags); if (UseTraceId128Bit) { builder = builder.WithTraceId128Bit(); } CodecConfig.Apply(builder); return(builder); }