Exemple #1
0
/*
 * EPP timeout, according to the PC87332 manual
 * Semantics of clearing EPP timeout bit.
 * PC87332	- reading SPP_STR does it...
 * SMC		- write 1 to EPP timeout bit			XXX
 * Others	- (?) write 0 to EPP timeout bit
 */
static void
ppc_reset_epp_timeout(struct ppc_data *ppc)
{
	register char r;

	r = r_str(ppc);
	w_str(ppc, r | 0x1);
	w_str(ppc, r & 0xfe);

	return;
}
Exemple #2
0
int Preprocessor::crop(){
    string src = para.crop_src;
    string dst = para.crop_dst;
    unsigned int crop_x = para.crop_x;
    unsigned int crop_y = para.crop_y;
    unsigned int crop_w = para.crop_w;
    unsigned int crop_h = para.crop_h;
    unsigned int serial_beg = para.serial_beg;
    unsigned int serial_end = para.serial_end;
    unsigned int thread_num = para.thread_num;
    string in_pre = para.crop_in_pre;
    string in_post = para.crop_in_post;
    string out_pre = para.crop_out_pre;
    string out_post = para.crop_out_post;
    unsigned int image_depth = para.image_depth;
    unsigned int serial_bits = para.serial_bits;
    string sys_del = para.sys_del;
    string x_str(""), y_str(""), w_str(""), h_str("");
    stringstream str_buffer;
    str_buffer<<crop_x;
    str_buffer>>x_str;
    str_buffer.clear();
    str_buffer<<crop_y;
    str_buffer>>y_str;
    str_buffer.clear();
    str_buffer<<crop_w;
    str_buffer>>w_str;
    str_buffer.clear();   
    str_buffer<<crop_h;
    str_buffer>>h_str;
    str_buffer.clear();        
    cv::Rect roi(crop_x, crop_y, crop_w, crop_h);
#pragma omp parallel for num_threads(thread_num) 
    for(int serial_num = int(serial_beg); serial_num <= int(serial_end); ++ serial_num){
        cv::Mat out_image, in_image;
        stringstream tmp_strBuffer;
        string serial_str, out_name, image_path;
        tmp_strBuffer<<setw(serial_bits)<<setfill('0')<<serial_num;
        tmp_strBuffer>>serial_str;
        tmp_strBuffer.clear();
        cout<<serial_str<<" "<<omp_get_thread_num()<<endl;
        image_path = src + sys_del + in_pre + serial_str + in_post;
        in_image = cv::imread(image_path, CV_LOAD_IMAGE_UNCHANGED);
        if(!in_image.data){
            cout<<image_path<<" Loaded Error!"<<endl;
            continue;
        }
        if(crop_x < 0 || crop_x + crop_w > in_image.size().width || crop_y < 0 || crop_y + crop_h > in_image.size().height){
            cout<<"Out of Range Error!"<<endl;
            continue;
        }
        out_image = cv::Mat(in_image, roi);
        out_name = dst + sys_del + out_pre + serial_str + "_x" + x_str + "_y" + y_str + "_w" + w_str + "_h" +h_str + out_post;
        cout<<out_name<<endl;
        cv::imwrite(out_name, out_image);    
    
    }
    return 0;
}
Exemple #3
0
std::wstring hyperloop::getWString(JSStringRef sValue) {
	size_t sLength = JSStringGetMaximumUTF8CStringSize(sValue);
	char* cValue = new char[sLength];
	JSStringGetUTF8CString(sValue, cValue, sLength);
	std::string s_str = cValue;
	std::wstring w_str(s_str.begin(), s_str.end());
	return w_str;
}
Exemple #4
0
Platform::String^ Utils::getPlatformString(JSStringRef sValue) {
	size_t sLength = JSStringGetMaximumUTF8CStringSize(sValue);
	char* cValue = new char[sLength];
	JSStringGetUTF8CString(sValue, cValue, sLength);
	std::string s_str = cValue;
	std::wstring w_str(s_str.begin(), s_str.end());
	return ref new Platform::String(w_str.c_str());
}
Exemple #5
0
const TCHAR* String::t_str() const
{
  #if !defined(_UNICODE)
  return c_str();
  #else
  return w_str();
  #endif
}
Exemple #6
0
/**
 * putString
 */
JSValueRef putStringForJSBuffer (JSContextRef ctx, JSObjectRef function, JSObjectRef object, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
{
    BUFFER(buffer);
    ARGCOUNTMIN(1);
    auto string = HyperloopToString(ctx,arguments[0]);
    if (string!=nullptr)
    {
		std::wstring w_str(string->Begin());
		std::string s_str(w_str.begin(), w_str.end());
        const char *copy = s_str.c_str();
        size_t length = strlen(copy);
        CHECK_SIZE_AND_GROW(length,0);
        memcpy(buffer->buffer,copy,length);
    }
    return JSValueMakeUndefined(ctx);
}
Exemple #7
0
u_char
ppc_io(device_t ppcdev, int iop, u_char *addr, int cnt, u_char byte)
{
	struct ppc_data *ppc = DEVTOSOFTC(ppcdev);
	switch (iop) {
	case PPB_OUTSB_EPP:
	    bus_space_write_multi_1(ppc->bst, ppc->bsh, PPC_EPP_DATA, addr, cnt);
		break;
	case PPB_OUTSW_EPP:
	    bus_space_write_multi_2(ppc->bst, ppc->bsh, PPC_EPP_DATA, (u_int16_t *)addr, cnt);
		break;
	case PPB_OUTSL_EPP:
	    bus_space_write_multi_4(ppc->bst, ppc->bsh, PPC_EPP_DATA, (u_int32_t *)addr, cnt);
		break;
	case PPB_INSB_EPP:
	    bus_space_read_multi_1(ppc->bst, ppc->bsh, PPC_EPP_DATA, addr, cnt);
		break;
	case PPB_INSW_EPP:
	    bus_space_read_multi_2(ppc->bst, ppc->bsh, PPC_EPP_DATA, (u_int16_t *)addr, cnt);
		break;
	case PPB_INSL_EPP:
	    bus_space_read_multi_4(ppc->bst, ppc->bsh, PPC_EPP_DATA, (u_int32_t *)addr, cnt);
		break;
	case PPB_RDTR:
		return (r_dtr(ppc));
	case PPB_RSTR:
		return (r_str(ppc));
	case PPB_RCTR:
		return (r_ctr(ppc));
	case PPB_REPP_A:
		return (r_epp_A(ppc));
	case PPB_REPP_D:
		return (r_epp_D(ppc));
	case PPB_RECR:
		return (r_ecr(ppc));
	case PPB_RFIFO:
		return (r_fifo(ppc));
	case PPB_WDTR:
		w_dtr(ppc, byte);
		break;
	case PPB_WSTR:
		w_str(ppc, byte);
		break;
	case PPB_WCTR:
		w_ctr(ppc, byte);
		break;
	case PPB_WEPP_A:
		w_epp_A(ppc, byte);
		break;
	case PPB_WEPP_D:
		w_epp_D(ppc, byte);
		break;
	case PPB_WECR:
		w_ecr(ppc, byte);
		break;
	case PPB_WFIFO:
		w_fifo(ppc, byte);
		break;
	default:
		panic("%s: unknown I/O operation", __func__);
		break;
	}

	return (0);	/* not significative */
}
Exemple #8
0
std::wstring ToWString(const std::string &str)
{
    std::wstring w_str(str.length(), L' ');
    std::copy(str.begin(), str.end(), w_str.begin());
    return w_str;
}