텐서플로:: 피복재:: AspiredVersionsManagerBuilder

#include <aspired_versions_manager_builder.h>

구축 AspiredVersionsManager를 옵션과 연결된 소스와.

요약

소스의 소유권을 인수하고 반환된 관리자는 자체 및 종속성의 소멸을 처리합니다. 하나의 소스와 소스 / 소스 어댑터 체인 모두 허용됩니다, 즉 직접 로더를 공급 소스 (사용할 수있는 소스 <표준 :: unique_ptr < 로더 >>) 또는 구성 복합 소스 <S의> + 일부 체인 SourceAdapter <S를 ...> ... SourceAdapter <... 표준 : 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
소스와 소스 어댑터 체인으로 구성된 체인을 연결합니다.
Build ()
std::unique_ptr< Manager >
구축 AspiredVersionsManager 와 같은 수익률을 관리자 인터페이스.

공개 유형

옵션

AspiredVersionsManager::Options Options

공개 정적 함수

만들다

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

공공 기능

소스 추가

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

받는 사람 소스 연결 AspiredVersionsManager가 내장 소유권을 인수된다.

템플릿 타입 S는로 변환 가능 : 필수 소스 <표준 :: unique_ptr < 로더 >>.

소스체인 추가

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

소스와 소스 어댑터 체인으로 구성된 체인을 연결합니다.

체인의 최종 어댑터는 관리자용 로더를 내보냅니다. 최종 어댑터는 관리자에 연결됩니다. 우리는 전체 체인의 소유권을 갖습니다.

필요: 최소한 하나의 소스 어댑터.

사용법: 빌더->AddSourceChain( std::move(source), std::move(source_adapter1), std::move(source_adapter2));

짓다

std::unique_ptr< Manager > Build()

구축 AspiredVersionsManager 와 같은 수익률을 관리자 인터페이스.

~AspiredVersionsManagerBuilder

 ~AspiredVersionsManagerBuilder()=default