انضم إلى مجتمع SIG TFX-Addons وساعد في جعل TFX أفضل! انضم إلى SIG TFX-Addons

تينسورفلو :: خدمة:: AspiredVersionsManagerBuilder

#include <aspired_versions_manager_builder.h>

يبني AspiredVersionsManager بخيارات ومصادر متصلة به.

ملخص

يتولى ملكية المصادر ويتولى المدير المرتجع تدمير نفسه وتبعياتها. يتم قبول كل من المصادر الفردية وسلاسل محول المصدر / المصدر ، أي يمكنك استخدام المصادر التي تزود اللوادر مباشرة ( المصدر <std :: unique_ptr < Loader >>) أو المركبات التي تتكون من المصدر <S> + بعض سلاسل SourceAdapter <S ، ...> ، ... ، SourceAdapter <... ، std :: unique_ptr < Loader >>. يقوم المنشئ بتوصيل السلسلة من أجلك.

الاستعمال:

...
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::Options Options

وظائف ثابتة عامة

يخلق

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

الوظائف العامة

AddSource

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

يربط المصدر بـ AspiredVersionsManager الذي يتم بناؤه ويتولى ملكيته.

المتطلبات: يكون نوع القالب S قابلاً للتحويل إلى المصدر <std :: unique_ptr < Loader >>.

AddSourceChain

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

يربط سلسلة تشتمل على مصدر وسلسلة من محولات المصدر ، st

المحول النهائي في السلسلة يصدر لوادر للمدير. المحول النهائي متصل بالمدير. نحن نأخذ ملكية السلسلة بأكملها.

المتطلبات: محول مصدر واحد على الأقل.

الاستخدام: builder-> AddSourceChain (std :: move (source) ، std :: move (source_adapter1) ، std :: move (source_adapter2)) ؛

يبني

std::unique_ptr< Manager > Build()

~ AspiredVersionsManagerBuilder

 ~AspiredVersionsManagerBuilder()=default