static int moove_aux(int **tab, t_docker *data) { data->enum_moove = 0; if (data->len_a > 2 && data->last_a > tab[0][0] && (data->len_b > 2 && data->last_b < tab[1][0])) m_rr(data); else if (data->len_b > 2 && data->last_b < tab[1][0]) m_rb(data); else if (data->len_a > 1 && data->last_a > tab[0][data->len_a - 2] && data->len_b > 1 && data->last_b < tab[1][data->len_b - 2]) m_ss(data); else if (data->len_b > 1 && data->last_b < tab[1][data->len_b - 2]) m_sb(data); else if (data->len_a > 2 && tab[0][0] < tab[0][1] && data->len_b > 2 && tab[1][0] > data->last_b) m_rrr(data); else if (data->len_b > 2 && tab[1][0] > data->last_b) m_rrb(data); if (data->enum_moove > 0) { print_moove(data); data->empty > 1 ? ft_print_tab(data->tab, data) : 0; return (1); } else return (0); }
bool FAPFile::openString(std::string& input, const FAPU& fapu) { printf("open string now\n"); std::istringstream m_ss(oldStr+input); //m_ss<<input; printf("before clean m_faps size %d\n",m_FAPs.size()); m_FAPs.clear(); m_bLoaded = false; std::string comment; bool init = true; bool first =true; bool isMask = true; char stupidname[255]; int mask[68]; int row = 0; //int circle=(oldStr.length()+input.length())/330; //printf("dump m_ss\n------\n%s\n\n",m_ss.str().c_str()); while ( first )//only process a frame one time { printf("begin while circle\n"); first=false; if(m_ss.fail() || m_ss.bad()) return false; m_FPS=25; for (int i = 0; i < 68; ++i) { m_ss >> mask[i]; } std::vector<float> fap_set; printf("before reserve fap\n"); fap_set.reserve(68); printf("after fap reserve\n"); std::fill_n(std::back_inserter(fap_set), 68, 0.0f); for (int i = 0; i < 68; ++i) { if(mask[i] == 1) { if(i == 0) //viseme to decode { //not use now } else if (i == 1) // expression { //not use now } else // low level FAPs { // Simple variant for optimal performance, assumes that the input FAPs // are properly encoded by definition! int val; m_ss >> val; fap_set[i] = (float)val; } } else if(mask[i]!=0){ printf("err in mask\nerror\n\n\n\n\n"); } } printf("push back m_FAPs...\n-------\n-----------\n"); m_FAPs.push_back(fap_set); }