Exemplo n.º 1
0
/** Create graphviz representation of this flograph.
 *  @param s is a string in which result is to be returned
 *  @return a reference to s
 */
string& Wflograph::toDotString(string& s) const {
	int i; vertex u; edge e;
	stringstream ss;
	ss << "digraph G { " << endl;
        ss << Util::node2string(src(),n(),s) 
           << " [ style = bold, peripheries = 2, color = red]; "
           << endl;
	ss << Util::node2string(snk(),n(),s) 
           << " [ style = bold, peripheries = 2, color = blue]; "
           << endl;
	for (u = 1; u <= n(); u++) {
                string su;
		for (e = firstOut(u); e != 0; e = nextOut(u,e)) {
                        vertex u = tail(e); vertex v = head(e);
                        if (e != 0) {
                                string s1;
                                su += Util::node2string(u,N,s1) + " -> "; 
                                s1.clear();
                                su += Util::node2string(v,N,s1); 
                                s1.clear(); su += " [label = \" ";
                                su += "(" + Util::num2string(cap(u,e),s1); 
                                s1.clear();
                                su += "," + Util::num2string(f(u,e),s1); 
                                s1.clear();
                                su += "," + Util::num2string(cost(u,e),s1) 
                                        +  ") \"];"; 
                        }
                }
                if (!su.empty())   ss << su << endl;
	}
	ss << " } " << endl;
	s = ss.str();
	return s;
}
Exemplo n.º 2
0
    std::streamsize read(Source& src, char* s, std::streamsize n)
    {
        typedef detail::counted_array_sink<char_type>  array_sink;
        typedef composite<filter_ref, array_sink>      filtered_array_sink;

        BOOST_ASSERT((flags() & f_write) == 0);
        if (flags() == 0) {
            flags() = f_read;
            buf().set(0, 0);
        }

        filtered_array_sink snk(filter(), array_sink(s, n));
        int_type status;
        for ( status = traits_type::good();
              snk.second().count() < n && status == traits_type::good(); )
        {
            status = buf().fill(src);
            buf().flush(snk);
        }
        return snk.second().count() == 0 &&
               status == traits_type::eof() 
                   ? 
               -1
                   : 
               snk.second().count();
    }
Exemplo n.º 3
0
void top_hclm_snk(void* inputFIFOs[], void* outputFIFOs[], Param inParams[], Param outParams[]){
	snk(
		/* NbS */ (Param) inParams[0],
		/* N   */ (Param) inParams[1],
		/* in  */ (float*) inputFIFOs[0],
		/* M   */ (char*) inputFIFOs[1]
	);
}
Exemplo n.º 4
0
void snk(void* inputFIFOs[], void* outputFIFOs[], Param inParams[], Param outParams[]){
	snk(
		/* size */ (Param) inParams[0],
		/* in   */ (Cplx16*) inputFIFOs[0]
	);
}
Exemplo n.º 5
0
void Radix2_fft_snk(void* inputFIFOs[], void* outputFIFOs[], Param inParams[], Param outParams[]){
	snk(
		/* size */ (Param) inParams[0],
		/* in   */ (CplxSp*) inputFIFOs[0]
	);
}