Android-cuttlefish cvd tool
Public Member Functions | Private Member Functions | Private Attributes | List of all members
cuttlefish::InstanceNumsCalculator Class Reference

#include <instance_nums.h>

Collaboration diagram for cuttlefish::InstanceNumsCalculator:
Collaboration graph
[legend]

Public Member Functions

InstanceNumsCalculatorFromFlags (const std::vector< std::string > &) &
 
InstanceNumsCalculator FromFlags (const std::vector< std::string > &) &&
 
InstanceNumsCalculatorFromGlobalGflags () &
 
InstanceNumsCalculator FromGlobalGflags () &&
 
InstanceNumsCalculatorBaseInstanceNum (std::int32_t) &
 
InstanceNumsCalculator BaseInstanceNum (std::int32_t) &&
 
InstanceNumsCalculatorNumInstances (std::int32_t) &
 
InstanceNumsCalculator NumInstances (std::int32_t) &&
 
InstanceNumsCalculatorInstanceNums (const std::string &) &
 
InstanceNumsCalculator InstanceNums (const std::string &) &&
 
InstanceNumsCalculatorInstanceNums (std::vector< std::int32_t >) &
 
InstanceNumsCalculator InstanceNums (std::vector< std::int32_t >) &&
 
Result< std::vector< std::int32_t > > CalculateFromFlags ()
 
Result< std::vector< std::int32_t > > Calculate ()
 

Private Member Functions

template<typename T >
void TrySet (T &field, Result< T > result)
 

Private Attributes

Result< void > setter_result_
 
std::optional< std::int32_t > base_instance_num_
 
std::optional< std::int32_t > num_instances_
 
std::vector< std::int32_t > instance_nums_
 

Member Function Documentation

◆ BaseInstanceNum() [1/2]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::BaseInstanceNum ( std::int32_t  num) &

◆ BaseInstanceNum() [2/2]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::BaseInstanceNum ( std::int32_t  num) &&

◆ Calculate()

Result< std::vector< std::int32_t > > cuttlefish::InstanceNumsCalculator::Calculate ( )

◆ CalculateFromFlags()

Result< std::vector< std::int32_t > > cuttlefish::InstanceNumsCalculator::CalculateFromFlags ( )

Finds set of ids using the flags only.

Especially, this calculates the base from –instance_nums and –base_instance_num only

Processes such as cvd clients may see different user accounts, CUTTLEFISH_INSTANCE environment variable, etc, than the launcher effectively sees. This util method is still helpful for that.

◆ FromFlags() [1/2]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::FromFlags ( const std::vector< std::string > &  flags) &

◆ FromFlags() [2/2]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::FromFlags ( const std::vector< std::string > &  flags) &&

◆ FromGlobalGflags() [1/2]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::FromGlobalGflags ( ) &

◆ FromGlobalGflags() [2/2]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::FromGlobalGflags ( ) &&

◆ InstanceNums() [1/4]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::InstanceNums ( const std::string &  nums) &

◆ InstanceNums() [2/4]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::InstanceNums ( const std::string &  nums) &&

◆ InstanceNums() [3/4]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::InstanceNums ( std::vector< std::int32_t >  set) &

◆ InstanceNums() [4/4]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::InstanceNums ( std::vector< std::int32_t >  set) &&

◆ NumInstances() [1/2]

InstanceNumsCalculator & cuttlefish::InstanceNumsCalculator::NumInstances ( std::int32_t  num) &

◆ NumInstances() [2/2]

InstanceNumsCalculator cuttlefish::InstanceNumsCalculator::NumInstances ( std::int32_t  num) &&

◆ TrySet()

template<typename T >
void cuttlefish::InstanceNumsCalculator::TrySet ( T &  field,
Result< T >  result 
)
private

Member Data Documentation

◆ base_instance_num_

std::optional<std::int32_t> cuttlefish::InstanceNumsCalculator::base_instance_num_
private

◆ instance_nums_

std::vector<std::int32_t> cuttlefish::InstanceNumsCalculator::instance_nums_
private

◆ num_instances_

std::optional<std::int32_t> cuttlefish::InstanceNumsCalculator::num_instances_
private

◆ setter_result_

Result<void> cuttlefish::InstanceNumsCalculator::setter_result_
private

The documentation for this class was generated from the following files: