int ERFFile::init(int n) { if(!reading()) return errcode = 6; if(n == -1) n = initstages; if((n > 0) && !inited[0] && readHeader()) return errcode; if((n > 1) && !inited[1] && readDescription()) return errcode; if((n > 2) && !inited[2] && readKeyList()) return errcode; return errcode = 0; }
bool SimAnalog::config(jccl::ConfigElementPtr element) { //vprDEBUG(vprDBG_ALL, vprDBG_VERB_LVL)<<"*** SimAnalog::config()\n"<< vprDEBUG_FLUSH; if (! (Input::config(element) && Analog::config(element) && SimInput::config(element)) ) { return false; } std::vector<jccl::ConfigElementPtr> key_inc_list, key_dec_list; int key_count = element->getNum("increment_keypress"); for ( int i = 0; i < key_count; ++i ) { key_inc_list.push_back(element->getProperty<jccl::ConfigElementPtr>("increment_keypress", i)); } key_count = element->getNum("decrement_keypress"); for ( int i = 0; i < key_count; ++i ) { key_dec_list.push_back(element->getProperty<jccl::ConfigElementPtr>("decrement_keypress", i)); } mSimKeysUp = readKeyList(key_inc_list); mSimKeysDown = readKeyList(key_dec_list); mAnaStep = element->getProperty<float>("delta"); mInitialValue = element->getProperty<float>("initial_value"); // Initialize all the data to the inital_value size_t num_pairs = mSimKeysUp.size(); mAnaData = std::vector<AnalogData>(num_pairs); for (size_t i=0; i<num_pairs; ++i) { mAnaData[i].setValue(mInitialValue); } mAutoReturn = element->getProperty<bool>("auto_return"); return true; }
bool SimDigital::config(jccl::ConfigElementPtr element) { //vprDEBUG(vprDBG_ALL, vprDBG_VERB_LVL)<<"*** SimDigital::config()\n"<< vprDEBUG_FLUSH; if (! (Input::config(element) && Digital::config(element) && SimInput::config(element)) ) { return false; } std::vector<jccl::ConfigElementPtr> key_list; int key_count = element->getNum("key_pair"); for ( int i = 0; i < key_count; ++i ) { key_list.push_back(element->getProperty<jccl::ConfigElementPtr>("key_pair", i)); } mSimKeys = readKeyList(key_list); return true; }