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

#include <nvram_config.h>

Classes

class  InstanceSpecific
 

Public Member Functions

 NvramConfig (size_t num_instances, int sim_type)
 
 NvramConfig (NvramConfig &&)
 
 ~NvramConfig ()
 
NvramConfigoperator= (NvramConfig &&)
 
bool SaveToFile (const std::string &file) const
 
InstanceSpecific ForInstance (int instance_num) const
 
std::vector< InstanceSpecificInstances () const
 
int sim_type () const
 

Static Public Member Functions

static void InitNvramConfigService (size_t num_instances, int sim_type)
 
static const NvramConfigGet ()
 
static void SaveToFile ()
 
static std::string ConfigFileLocation ()
 

Private Member Functions

bool LoadFromFile (const char *file)
 
void InitDefaultNvramConfig ()
 
 NvramConfig (const NvramConfig &)=delete
 
NvramConfigoperator= (const NvramConfig &)=delete
 

Static Private Member Functions

static NvramConfigBuildConfigImpl (size_t num_instances, int sim_type)
 

Private Attributes

size_t total_instances_
 
int sim_type_
 
std::unique_ptr< Json::Value > dictionary_
 

Static Private Attributes

static std::unique_ptr< NvramConfigs_nvram_config
 

Constructor & Destructor Documentation

◆ NvramConfig() [1/3]

cuttlefish::NvramConfig::NvramConfig ( size_t  num_instances,
int  sim_type 
)

◆ NvramConfig() [2/3]

cuttlefish::NvramConfig::NvramConfig ( NvramConfig &&  )
default

◆ ~NvramConfig()

cuttlefish::NvramConfig::~NvramConfig ( )
default

◆ NvramConfig() [3/3]

cuttlefish::NvramConfig::NvramConfig ( const NvramConfig )
privatedelete

Member Function Documentation

◆ BuildConfigImpl()

NvramConfig * cuttlefish::NvramConfig::BuildConfigImpl ( size_t  num_instances,
int  sim_type 
)
staticprivate

Creates the (initially empty) config object and populates it with values from the config file "modem_nvram.json" located in the cuttlefish instance path, or uses the default value if the config file not exists, Returns nullptr if there was an error loading from file

Bug: (b/315167296) Fall back to default nvram config if LoadFromFile fails.

◆ ConfigFileLocation()

std::string cuttlefish::NvramConfig::ConfigFileLocation ( )
static

◆ ForInstance()

NvramConfig::InstanceSpecific cuttlefish::NvramConfig::ForInstance ( int  instance_num) const

◆ Get()

const NvramConfig * cuttlefish::NvramConfig::Get ( )
static

◆ InitDefaultNvramConfig()

void cuttlefish::NvramConfig::InitDefaultNvramConfig ( )
private

◆ InitNvramConfigService()

void cuttlefish::NvramConfig::InitNvramConfigService ( size_t  num_instances,
int  sim_type 
)
static

◆ Instances()

std::vector< InstanceSpecific > cuttlefish::NvramConfig::Instances ( ) const

◆ LoadFromFile()

bool cuttlefish::NvramConfig::LoadFromFile ( const char *  file)
private

◆ operator=() [1/2]

NvramConfig & cuttlefish::NvramConfig::operator= ( const NvramConfig )
privatedelete

◆ operator=() [2/2]

NvramConfig & cuttlefish::NvramConfig::operator= ( NvramConfig &&  )
default

◆ SaveToFile() [1/2]

void cuttlefish::NvramConfig::SaveToFile ( )
static

◆ SaveToFile() [2/2]

bool cuttlefish::NvramConfig::SaveToFile ( const std::string &  file) const

◆ sim_type()

int cuttlefish::NvramConfig::sim_type ( ) const

Member Data Documentation

◆ dictionary_

std::unique_ptr<Json::Value> cuttlefish::NvramConfig::dictionary_
private

◆ s_nvram_config

std::unique_ptr< NvramConfig > cuttlefish::NvramConfig::s_nvram_config
staticprivate

◆ sim_type_

int cuttlefish::NvramConfig::sim_type_
private

◆ total_instances_

size_t cuttlefish::NvramConfig::total_instances_
private

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