جریان تنسور:: خدمت:: AspiredVersionsManagerBuilder

#include <aspired_versions_manager_builder.h>

ایجاد یک AspiredVersionsManager با گزینه ها و منابع متصل به آن.

خلاصه

مالکیت منابع را در اختیار می گیرد و مدیر بازگردانده تخریب خود و وابستگی هایش را مدیریت می کند. هر دو منبع واحد و زنجیر منبع / منبع آداپتور پذیرفته می شوند، به عنوان مثال شما می توانید منابع که به طور مستقیم عرضه لودر (استفاده از منبع <std :: را unique_ptr < لودر >>) یا کامپوزیت که شامل منبع <S> + برخی از زنجیره ای از SourceAdapter <S ...>، ...، SourceAdapter <...، std :: را unique_ptr < لودر >>. سازنده زنجیر را برای شما وصل می کند.

طریقه استفاده:

...
AspiredVersionsManagerBuilder::Options options = ManagerOptions();
std::unique_ptr<AspiredVersionsManagerBuilder> builder;
TF_CHECK_OK(AspiredVersionsManagerBuilder::Create(
    std::move(options), &builder));
builder->AddSource(std::move(some_source));
builder->AddSourceChain(
    std::move(source), std::move(source_adapter1),
    std::move(source_adapter2));
std::unique_ptr<Manager> manager = builder->Build();
...

توجه: سازنده یک تنها می تواند مورد استفاده برای ایجاد یک AspiredVersionsManager .

این کلاس امن نیست.

سازندگان و تخریب کنندگان

~AspiredVersionsManagerBuilder ()

انواع عمومی

Options استفاده كردن

توابع استاتیک عمومی

Create ( Options options, std::unique_ptr< AspiredVersionsManagerBuilder > *builder)
Status

توابع عمومی

AddSource (std::unique_ptr< S > source)
void
اتصال منبع به AspiredVersionsManager ساخته شده است و طول می کشد بر سر مالکیت آن است.
AddSourceChain (std::unique_ptr< S > source, std::unique_ptr< SA > first_source_adapter, std::unique_ptr< Args >... remaining_source_adapters)
void
یک زنجیره متشکل از یک منبع و یک زنجیره از آداپتورهای منبع، st
Build ()
std::unique_ptr< Manager >
ایجاد AspiredVersionsManager و به عنوان بازده آن مدیر رابط.

انواع عمومی

گزینه ها

AspiredVersionsManager::Options Options

توابع استاتیک عمومی

ايجاد كردن

Status Create(
  Options options,
  std::unique_ptr< AspiredVersionsManagerBuilder > *builder
)

توابع عمومی

AddSource

void AddSource(
  std::unique_ptr< S > source
)

اتصال منبع به AspiredVersionsManager ساخته شده است و طول می کشد بر سر مالکیت آن است.

نیاز به: الگو نوع S تبدیل به منبع <std :: را unique_ptr < لودر >>.

AddSourceChain

void AddSourceChain(
  std::unique_ptr< S > source,
  std::unique_ptr< SA > first_source_adapter,
  std::unique_ptr< Args >... remaining_source_adapters
)

یک زنجیره متشکل از یک منبع و یک زنجیره از آداپتورهای منبع، st

آداپتور نهایی در زنجیره، Loaders را برای مدیر منتشر می کند. آداپتور نهایی به مدیر متصل است. ما مالکیت کل زنجیره را در اختیار داریم.

نیاز: حداقل یک آداپتور منبع.

استفاده: builder->AddSourceChain( std::move(source)، std::move(source_adapter1)، std::move(source_adapter2));

ساختن

std::unique_ptr< Manager > Build()

ایجاد AspiredVersionsManager و به عنوان بازده آن مدیر رابط.

~AspiredVersionsManagerBuilder

 ~AspiredVersionsManagerBuilder()=default