przepływ tensorowy:: porcja:: AspiredVersionsMenedżer Konstruktor
#include <aspired_versions_manager_builder.h>
Buduje AspiredVersionsManager z opcji i źródeł podłączonych do niego.
Streszczenie
Przejmuje na własność źródła, a powracający menedżer zajmuje się niszczeniem siebie i swoich zależności. Oba single źródła i łańcuchy źródło / source-adaptera są akceptowane, czyli można korzystać ze źródeł, które bezpośrednio zasilają załadunek ( Źródło <std :: unique_ptr < Loader >>) lub kompozytów, które składają Źródło <S> + jakiś łańcuch SourceAdapter <S ...>, ..., SourceAdapter <..., std :: unique_ptr < Loader >>. Konstruktor łączy łańcuch dla Ciebie.
Zastosowanie:
... 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(); ...
UWAGA: budowniczy może być używany tylko do zbudowania jednego AspiredVersionsManager .
Ta klasa nie jest bezpieczna wątkowo.
Konstruktory i destruktory | |
---|---|
~AspiredVersionsManagerBuilder () |
Typy publiczne | |
---|---|
Options | za pomocą |
Publiczne funkcje statyczne | |
---|---|
Create ( Options options, std::unique_ptr< AspiredVersionsManagerBuilder > *builder) | Status |
Funkcje publiczne | |
---|---|
AddSource (std::unique_ptr< S > source) | void Łączy źródła do AspiredVersionsManager budowane i przejmuje jego własności. |
AddSourceChain (std::unique_ptr< S > source, std::unique_ptr< SA > first_source_adapter, std::unique_ptr< Args >... remaining_source_adapters) | void Łączy łańcuch składający się ze źródła i łańcucha adapterów źródłowych, st |
Build () | std::unique_ptr< Manager > Buduje AspiredVersionsManager i zwraca go jako Menedżer interfejsu. |
Typy publiczne
Opcje
AspiredVersionsManager::Options Options
Publiczne funkcje statyczne
Tworzyć
Status Create( Options options, std::unique_ptr< AspiredVersionsManagerBuilder > *builder )
Funkcje publiczne
Dodajźródło
void AddSource( std::unique_ptr< S > source )
Łączy źródła do AspiredVersionsManager budowane i przejmuje jego własności.
Wymagania: Typ szablonu S będzie zamienny do źródła <std :: unique_ptr < Loader >>.
Dodaj łańcuch źródła
void AddSourceChain( std::unique_ptr< S > source, std::unique_ptr< SA > first_source_adapter, std::unique_ptr< Args >... remaining_source_adapters )
Łączy łańcuch składający się ze źródła i łańcucha adapterów źródłowych, st
ostatni adapter w łańcuchu emituje Loadery dla menedżera. Ostateczny adapter jest podłączony do menedżera. Przejmujemy na własność cały łańcuch.
WYMAGA: co najmniej jeden adapter źródłowy.
Sposób użycia: builder->AddSourceChain( std::move(source), std::move(source_adapter1), std::move(source_adapter2));
Zbudować
std::unique_ptr< Manager > Build()
Buduje AspiredVersionsManager i zwraca go jako Menedżer interfejsu.
~AspiredVersionsManagerBuilder
~AspiredVersionsManagerBuilder()=default