DEF_TEST(BBoxHierarchy, reporter) {
    // RTree
    {
        SkRTree* rtree = SkRTree::Create(RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN);
        SkAutoUnref au(rtree);
        tree_test_main(rtree, RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, reporter);

        // Rtree that orders input rectangles on deferred insert.
        SkRTree* unsortedRtree = SkRTree::Create(RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, 1, false);
        SkAutoUnref auo(unsortedRtree);
        tree_test_main(unsortedRtree, RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, reporter);
    }

    // QuadTree
    {
        SkQuadTree* quadtree = SkQuadTree::Create(
            SkIRect::MakeLTRB(-MAX_SIZE, -MAX_SIZE, MAX_SIZE, MAX_SIZE));
        SkAutoUnref au(quadtree);
        tree_test_main(quadtree, QUADTREE_MIN_CHILDREN, QUADTREE_MAX_CHILDREN, reporter);

        // QuadTree that orders input rectangles on deferred insert.
        SkQuadTree* unsortedQuadTree = SkQuadTree::Create(
            SkIRect::MakeLTRB(-MAX_SIZE, -MAX_SIZE, MAX_SIZE, MAX_SIZE));
        SkAutoUnref auo(unsortedQuadTree);
        tree_test_main(unsortedQuadTree, QUADTREE_MIN_CHILDREN, QUADTREE_MAX_CHILDREN, reporter);
    }
}
Example #2
0
struct zvolume *archive_directory_lha (struct zfile *zf)
{
    struct zvolume *zv;
    struct zarchive_info zai;
    LzHeader hdr;
    int i;

    _tzset();
    zv = zvolume_alloc (zf, ArchiveFormatLHA, NULL, NULL);
    while (get_header(zf, &hdr)) {
	struct znode *zn;
	int method;

	for (i = 0; methods[i]; i++) {
	    if (!strcmp (methods[i], hdr.method))
		method = i;
	}
	memset (&zai, 0, sizeof zai);
	zai.name = au (hdr.name);
	zai.size = hdr.original_size;
	zai.flags = hdr.attribute;
	if (hdr.extend_type != 0) {
		zai.tv.tv_sec = hdr.unix_last_modified_stamp -= _timezone;
	} else {
		struct tm t;
		uae_u32 v = hdr.last_modified_stamp;

		t.tm_sec = (v & 0x1f) * 2;
		t.tm_min = (v >> 5) & 0x3f;
		t.tm_hour = (v >> 11) & 0x1f;
		t.tm_mday = (v >> 16) & 0x1f;
		t.tm_mon = ((v >> 21) & 0xf) - 1;
		t.tm_year = ((v >> 25) & 0x7f) + 80;
		zai.tv.tv_sec = mktime (&t) - _timezone;
	}
	if (hdr.name[strlen(hdr.name) + 1] != 0)
	    zai.comment = au (&hdr.name[strlen(hdr.name) + 1]);
	if (method == LZHDIRS_METHOD_NUM) {
	    zvolume_adddir_abs (zv, &zai);
	} else {
	    zn = zvolume_addfile_abs (zv, &zai);
	    zn->offset = zfile_ftell(zf);
	    zn->packedsize = hdr.packed_size;
	    zn->method = method;
	}
	xfree (zai.name);
	xfree (zai.comment);
	zfile_fseek (zf, hdr.packed_size, SEEK_CUR);

    }
    return zv;
}
Example #3
0
File: fsdb.c Project: engur/PUAE
int fsdb_used_as_nname (a_inode *base, const TCHAR *nname)
{
	FILE *f;
	uae_u8 buf[1 + 4 + 257 + 257 + 81];

	f = get_fsdb (base, _T("r+b"));
	if (f == 0) {
//		if (currprefs.filesys_custom_uaefsdb && (base->volflags & MYVOLUMEINFO_STREAMS))
//			return custom_fsdb_used_as_nname (base, nname);
		return 0;
	}
	for (;;) {
		TCHAR *s;
		if (fread (buf, 1, sizeof buf, f) < sizeof buf)
			break;
		if (buf[0] == 0)
			continue;
		s = au ((char*)buf + 5 + 257);
		if (_tcscmp (s, nname) == 0) {
			xfree (s);
			fclose (f);
			return 1;
		}
		xfree (s);
	}
	fclose (f);
	return 0;
}
Example #4
0
FILE *moduleripper_fopen (const char *aname, const char *amode)
{
	TCHAR tmp2[MAX_DPATH];
	TCHAR tmp[MAX_DPATH];
	TCHAR *name, *mode;
	FILE *f;

	fetch_ripperpath (tmp, sizeof tmp);
	name = au (aname);
	mode = au (amode);
	_stprintf (tmp2, _T("%s%s"), tmp, name);
	f = uae_tfopen (tmp2, mode);
	xfree (mode);
	xfree (name);
	return f;
}
Example #5
0
int32_t uaenet_open (struct uaenetdata *sd, struct netdriverdata *tc, struct s2devstruct *user,
				uaenet_gotfunc *gotfunc, uaenet_getfunc *getfunc, int32_t promiscuous)
{
	char *s;

	s = ua (tc->name);
	sd->fp = pcap_open_live (s, 65536, promiscuous, 100, sd->errbuf);
	xfree (s);
	if (sd->fp == NULL) {
		TCHAR *ss = au (sd->errbuf);
		write_log ("'%s' failed to open: %s\n", tc->name, ss);
		xfree (ss);
		return 0;
	}
	sd->tc = tc;
	sd->user = user;
	sd->mtu = tc->mtu;
	sd->readbuffer = xmalloc (uint8_t, sd->mtu);
	sd->writebuffer = xmalloc (uint8_t, sd->mtu);
	sd->gotfunc = gotfunc;
	sd->getfunc = getfunc;

	uae_sem_init (&sd->change_sem, 0, 1);
	uae_sem_init (&sd->sync_semr, 0, 0);
	uae_start_thread ("uaenet_r", uaenet_trap_threadr, sd, &sd->tidr);
	uae_sem_wait (&sd->sync_semr);
	uae_sem_init (&sd->sync_semw, 0, 0);
	uae_start_thread ("uaenet_w", uaenet_trap_threadw, sd, &sd->tidw);
	uae_sem_wait (&sd->sync_semw);
	write_log ("uaenet initialized\n");
	return 1;
}
Example #6
0
 Z3_ast_vector Z3_API Z3_algebraic_roots(Z3_context c, Z3_ast p, unsigned n, Z3_ast a[]) {
     Z3_TRY;
     LOG_Z3_algebraic_roots(c, p, n, a);
     RESET_ERROR_CODE();
     polynomial::manager & pm = mk_c(c)->pm();
     polynomial_ref _p(pm);
     polynomial::scoped_numeral d(pm.m());
     expr2polynomial converter(mk_c(c)->m(), pm, 0, true);
     if (!converter.to_polynomial(to_expr(p), _p, d) ||
         static_cast<unsigned>(max_var(_p)) >= n + 1) {
         SET_ERROR_CODE(Z3_INVALID_ARG);
         return 0;
     }
     algebraic_numbers::manager & _am = am(c);
     scoped_anum_vector as(_am);
     if (!to_anum_vector(c, n, a, as)) {
         SET_ERROR_CODE(Z3_INVALID_ARG);
         return 0;
     }
     scoped_anum_vector roots(_am);
     {
         cancel_eh<algebraic_numbers::manager> eh(_am);
         api::context::set_interruptable si(*(mk_c(c)), eh);
         scoped_timer timer(mk_c(c)->params().m_timeout, &eh);
         vector_var2anum v2a(as);
         _am.isolate_roots(_p, v2a, roots);
     }
     Z3_ast_vector_ref* result = alloc(Z3_ast_vector_ref, mk_c(c)->m());
     mk_c(c)->save_object(result);
     for (unsigned i = 0; i < roots.size(); i++) {
         result->m_ast_vector.push_back(au(c).mk_numeral(roots.get(i), false));
     }
     RETURN_Z3(of_ast_vector(result));
     Z3_CATCH_RETURN(0);
 }
Example #7
0
 Z3_ast Z3_API Z3_algebraic_root(Z3_context c, Z3_ast a, unsigned k) {
     Z3_TRY;
     LOG_Z3_algebraic_root(c, a, k);
     RESET_ERROR_CODE();
     CHECK_IS_ALGEBRAIC_X(a, 0);
     if (k % 2 == 0) {
         if ((is_rational(c, a) && get_rational(c, a).is_neg()) ||
             (!is_rational(c, a) && am(c).is_neg(get_irrational(c, a)))) {
             SET_ERROR_CODE(Z3_INVALID_ARG);
             RETURN_Z3(0);
         }
     }
     algebraic_numbers::manager & _am = am(c);
     scoped_anum _r(_am);
     if (is_rational(c, a)) {
         scoped_anum av(_am);                                     
         _am.set(av, get_rational(c, a).to_mpq());   
         _am.root(av, k, _r);
     }
     else {
         algebraic_numbers::anum const & av = get_irrational(c, a);
         _am.root(av, k, _r);
     }
     expr * r = au(c).mk_numeral(_r, false);
     mk_c(c)->save_ast_trail(r);
     RETURN_Z3(of_ast(r));
     Z3_CATCH_RETURN(0);
 }
Example #8
0
static SkShader* ComposeShader_create2(JNIEnv* env, jobject,
                                       SkShader* shaderA, SkShader* shaderB, SkPorterDuff::Mode mode)
{
    SkAutoUnref au(SkPorterDuff::CreateXfermode(mode));

    return new SkComposeShader(shaderA, shaderB, (SkXfermode*)au.get());
}
Example #9
0
void AboutWidget::showEvent(QShowEvent *)
{
	QMPlay2GUI.restoreGeometry("AboutWidget/Geometry", this, 55);

	refreshLog();

	QFile cl(QMPlay2Core.getShareDir() + "ChangeLog");
	if (cl.open(QFile::ReadOnly))
	{
		clE->setPlainText(cl.readAll());
		cl.close();
	}

	QFile au(QMPlay2Core.getShareDir() + "AUTHORS");
	if (au.open(QFile::ReadOnly))
	{
		auE->setPlainText(au.readAll());
		au.close();
	}

	QFile f(QMPlay2Core.getLogFilePath());
	if (!f.exists() && f.open(QFile::WriteOnly)) //tworzy pusty plik dziennika, jeżeli nie istnieje
		f.close();
	if (f.exists())
		logWatcher.addPath(QMPlay2Core.getLogFilePath());
}
Example #10
0
File: fsdb.c Project: engur/PUAE
a_inode *fsdb_lookup_aino_aname (a_inode *base, const TCHAR *aname)
{
	FILE *f;

	f = get_fsdb (base, _T("r+b"));
	if (f == 0) {
//		if (currprefs.filesys_custom_uaefsdb && (base->volflags & MYVOLUMEINFO_STREAMS))
//			return custom_fsdb_lookup_aino_aname (base, aname);
		return 0;
	}
	for (;;) {
		uae_u8 buf[1 + 4 + 257 + 257 + 81];
		TCHAR *s;
		if (fread (buf, 1, sizeof buf, f) < sizeof buf)
			break;
		s = au ((char*)buf + 5);
		if (buf[0] != 0 && same_aname (s, aname)) {
			long pos = ftell (f) - sizeof buf;
			fclose (f);
			xfree (s);
			return aino_from_buf (base, buf, pos);
		}
		xfree (s);
	}
	fclose (f);
	return 0;
}
Example #11
0
static a_inode *custom_fsdb_lookup_aino (a_inode *base, const TCHAR *aname, int offset, int dontcreate)
{
	uae_u8 fsdb[UAEFSDB2_LEN];
	TCHAR *tmp1;
	HANDLE h;
	WIN32_FIND_DATA fd;
	static a_inode dummy;

	tmp1 = build_nname (base->nname, UAEFSDB_BEGINSX);
	if (!tmp1)
		return NULL;
	h = FindFirstFile (tmp1, &fd);
	if (h != INVALID_HANDLE_VALUE) {
		do {
			if (read_uaefsdb (base->nname, fd.cFileName, fsdb)) {
				TCHAR *s = au ((char*)fsdb + offset);
				if (same_aname (s, aname)) {
					int winmode;
					FindClose (h);
					xfree (tmp1);
					xfree (s);
					if (dontcreate)
						return &dummy;
					return aino_from_buf (base, fsdb, &winmode);
				}
				xfree (s);
			}
		} while (FindNextFile (h, &fd));
		FindClose (h);
	}
	xfree (tmp1);
	return NULL;
}
int SkFontHost::CountTables(SkFontID fontID) {
    SkStream* stream = SkFontHost::OpenStream(fontID);
    if (NULL == stream) {
        return 0;
    }

    SkAutoUnref au(stream);
    return count_tables(stream);
}
// Ensure that the 'getConservativeBounds' calls are returning bounds clamped
// to the render target
static void test_clip_bounds(skiatest::Reporter* reporter, GrContext* context) {

    static const int kXSize = 100;
    static const int kYSize = 100;

    GrTextureDesc desc;
    desc.fFlags     = kRenderTarget_GrTextureFlagBit;
    desc.fConfig    = kAlpha_8_GrPixelConfig;
    desc.fWidth     = kXSize;
    desc.fHeight    = kYSize;

    GrTexture* texture = context->createUncachedTexture(desc, NULL, 0);
    if (!texture) {
        return;
    }

    SkAutoUnref au(texture);

    SkIRect intScreen = SkIRect::MakeWH(kXSize, kYSize);
    SkRect screen;

    screen = SkRect::MakeWH(SkIntToScalar(kXSize),
                            SkIntToScalar(kYSize));

    SkRect clipRect(screen);
    clipRect.outset(10, 10);

    // create a clip stack that will (trivially) reduce to a single rect that
    // is larger than the screen
    SkClipStack stack;
    stack.clipDevRect(clipRect, SkRegion::kReplace_Op, false);

    bool isIntersectionOfRects = true;
    SkRect devStackBounds;

    stack.getConservativeBounds(0, 0, kXSize, kYSize,
                                &devStackBounds,
                                &isIntersectionOfRects);

    // make sure that the SkClipStack is behaving itself
    REPORTER_ASSERT(reporter, screen == devStackBounds);
    REPORTER_ASSERT(reporter, isIntersectionOfRects);

    // wrap the SkClipStack in a GrClipData
    GrClipData clipData;
    clipData.fClipStack = &stack;

    SkIRect devGrClipDataBound;
    clipData.getConservativeBounds(texture,
                                   &devGrClipDataBound,
                                   &isIntersectionOfRects);

    // make sure that GrClipData is behaving itself
    REPORTER_ASSERT(reporter, intScreen == devGrClipDataBound);
    REPORTER_ASSERT(reporter, isIntersectionOfRects);
}
Example #14
0
static int inquiry (struct dev_info_spti *di, int unitnum, uae_u8 *inquirydata)
{
	uae_u8 cmd[6] = { 0x12,0,0,0,36,0 }; /* INQUIRY */
	uae_u8 out[INQUIRY_SIZE] = { 0 };
	int outlen = sizeof (out);
	uae_u8 *p = execscsicmd_in_internal (di, unitnum, cmd, sizeof (cmd), &outlen);
	int inqlen = 0;

	di->isatapi = 0;
	di->removable = 0;
	di->type = 0x1f;
	if (!p) {
		if (log_scsi)
			write_log (L"SPTI: INQUIRY failed\n");
		return 0;
	}
	inqlen = outlen > INQUIRY_SIZE ? INQUIRY_SIZE : outlen;
	if (outlen >= 1) {
		di->type = p[0] & 31;
		di->removable = (p[1] & 0x80) ? 1 : 0;
	}
	if (outlen >= 2 && (p[0] & 31) == 5 && (p[2] & 7) == 0)
		di->isatapi = 1;
	memcpy (inquirydata, p, inqlen);
	if (log_scsi) {
		if (outlen >= INQUIRY_SIZE) {
			char tmp[20];
			TCHAR *s1, *s2;

			memcpy (tmp, p + 8, 8);
			tmp[8] = 0;
			s1 = au (tmp);
			memcpy (tmp, p + 16, 16);
			tmp[16] = 0;
			s2 = au (tmp);
			write_log (L"SPTI: INQUIRY: %02X%02X%02X %d '%s' '%s'\n",
				p[0], p[1], p[2], di->isatapi, s1, s2);
			xfree (s2);
			xfree (s1);
		}
	}
	return inqlen;
}
DEF_TEST(RTree, reporter) {
    SkRTree* rtree = SkRTree::Create(MIN_CHILDREN, MAX_CHILDREN);
    SkAutoUnref au(rtree);
    rtree_test_main(rtree, reporter);

    // Rtree that orders input rectangles on deferred insert.
    SkRTree* unsortedRtree = SkRTree::Create(MIN_CHILDREN, MAX_CHILDREN, 1, false);
    SkAutoUnref auo(unsortedRtree);
    rtree_test_main(unsortedRtree, reporter);
}
Example #16
0
 //<-- Changed by andkaz 08.04.2004 10:10:35
 //! Check whether Output debug string is enabled
 static bool IsDebugOutEnabled()
 {		
     bool bResult = false;
     if(klTraceCricSec)
     {
         TraceAutoUnlock au(klTraceCricSec);
         bResult = klTraceInfo && ((klTraceInfo->traceFlags & TF_ENABLE_DEBUGOUT) != 0);
     };		
     return bResult;
 }
Example #17
0
// multi_thread_checkpoint
bool multi_atomic(void)
{   bool ok = true;

    // OpenMP setup
    size_t num_threads = 4;      // number of threads
    omp_set_dynamic(0);          // turn off dynamic thread adjustment
    omp_set_num_threads( int(num_threads) );  // set number of OMP threads

    // check that multi-threading is possible on this machine
    if( omp_get_max_threads() < 2 )
    {   std::cout << "This machine does not support multi-threading: ";
    }

    // create checkpoint version of algorithm
    size_t n(1), m(1);
    ad_vector ax(n), ay(m);
    ax[0] = 2.0;
    size_t length_of_sum = 5000;
    long_sum_atomic atom_fun("long_sum", length_of_sum);

    // setup for using CppAD in paralle mode
    CppAD::thread_alloc::parallel_setup(num_threads, in_parallel, thread_num);
    CppAD::thread_alloc::hold_memory(true);
    CppAD::parallel_ad<double>();

    // place to hold result for each thread
    d_vector y(num_threads);
    for(size_t thread = 0; thread < num_threads; thread++)
        y[thread] = 0.0;

    # pragma omp parallel for
    for(int thread = 0; thread < int(num_threads); thread++)
    {   ad_vector au(n), av(m);
        au[0] = 1.0;
        CppAD::Independent(au);
        atom_fun(au, av);
        CppAD::ADFun<double> f(au, av);
        //
        d_vector x(n), v(m);
        x[0]      = double( thread + 1 );
        v         = f.Forward(0, x);
        //
        // this assigment has false sharing; i.e., will case cache resets
        // (conversion avoids boost vector conversion warning)
        y[size_t(thread)] = v[0];
    }

    // check the results
    for(size_t thread = 0; thread < num_threads; thread++)
    {   double check = double( length_of_sum * (thread + 1) );
        ok          &= check == y[thread];
    }
    return ok;
}
Int32 CComposeShader::NativeCreate2(
    /* [in] */ Int32 nativeShaderA,
    /* [in] */ Int32 nativeShaderB,
    /* [in] */ Int32 porterDuffMode)
{
    SkAutoUnref au(SkPorterDuff::CreateXfermode((SkPorterDuff::Mode)porterDuffMode));
    return (Int32)new SkComposeShader(
                (SkShader*)nativeShaderA,
                (SkShader*)nativeShaderB,
                (SkXfermode*)au.get());
}
Example #19
0
void tst_arith_rewriter() {
    ast_manager m;
    m.register_decl_plugins();
    arith_rewriter ar(m);
    arith_util au(m);
    expr_ref t1(m), t2(m), result(m);
    t1 = au.mk_numeral(rational(0),false);
    t2 = au.mk_numeral(rational(-3),false);
    expr* args[2] = { t1, t2 };
    ar.mk_mul(2, args, result);
    std::cout << mk_pp(result, m) << "\n";
}
Example #20
0
void tst_model_retrieval()
{          
    memory::initialize(0);
    front_end_params params;
    params.m_model = true;


    ast_manager m;
    m.register_decl_plugins();

    family_id array_fid = m.get_family_id(symbol("array"));
    array_util au(m);
    array_decl_plugin& ad = *static_cast<array_decl_plugin *>(m.get_plugin(array_fid));


    // arr_s and select_fn creation copy-pasted from z3.cpp

    parameter sparams[2]  = { parameter(to_sort(m.mk_bool_sort())), parameter(to_sort(m.mk_bool_sort())) };
    sort_ref arr_s(m.mk_sort(array_fid, ARRAY_SORT, 2, sparams), m);

    sort * domain2[2] = {arr_s, m.mk_bool_sort()};
    func_decl_ref select_fn(
        m.mk_func_decl(array_fid, OP_SELECT, 2, arr_s->get_parameters(), 2, domain2), m);


    app_ref a1(m.mk_const(symbol("a1"), arr_s), m);
    app_ref a2(m.mk_const(symbol("a2"), arr_s), m);

    // (= true (select a1 true))
    app_ref fml(m.mk_eq(m.mk_true(),
        m.mk_app(select_fn.get(), a1, m.mk_true())), m);

    smt::context ctx(m, params);
    ctx.assert_expr(fml);
    lbool check_result = ctx.check();
    std::cout<<((check_result==l_true) ? "satisfiable" : 
                (check_result==l_false) ? "unsatisfiable" : "unknown")<<"\n";
    ref<model> model;
    ctx.get_model(model);
    model_v2_pp(std::cout, *model, false);
    expr_ref a1_val(model->get_const_interp(a1->get_decl()), m);

    app_ref fml2(m.mk_eq(a2, a1_val), m);
    ctx.assert_expr(fml2);
    std::cout<<"--------------------------\n";
    ctx.display(std::cout);
    std::cout<<"--------------------------\n";
    check_result = ctx.check();
    ctx.display(std::cout);
    std::cout<<"--------------------------\n";
    std::cout<<((check_result==l_true) ? "satisfiable" : 
                (check_result==l_false) ? "unsatisfiable" : "unknown")<<"\n";
}
Example #21
0
static uae_u32 open_library (const char *name, uae_u32 min_version)
{
    syncdivisor = (3580000.0 * CYCLE_UNIT) / (double) syncbase;

    for (const char *c = name; *c; c++) {
        if (*c == '/' || *c == '\\' || *c == ':') {
            return UNI_ERROR_ILLEGAL_LIBRARY_NAME;
        }
    }

    TCHAR *tname = au (name);
    write_log (_T("uni: open native library '%s'\n"), tname);
    TCHAR *path = get_native_library_path (tname);
    free (tname);
    if (path == NULL) {
        write_log(_T("uni: library not found\n"));
        return UNI_ERROR_LIBRARY_NOT_FOUND;
    }

    write_log (_T("uni: found library at %s - opening\n"), path);
#ifdef _WIN32
    void *dl = LoadLibrary (path);
#else
    void *dl = dlopen (path, RTLD_NOW);
#endif
    free(path);
    if (dl == NULL) {
        write_log (_T("uni: error opening library errno %d\n"), errno);
        return UNI_ERROR_COULD_NOT_OPEN_LIBRARY;
    }

    // FIXME: check min version

    set_library_globals(dl);

    void *function_address = dl_symbol(dl, "uni_init");
    if (function_address) {
        int error = ((uni_init_function) function_address)();
        if (error) {
            dl_close(dl);
            return error;
        }
    }

    struct library_data *library_data = (struct library_data *) malloc(
            sizeof(struct library_data));
    memset(library_data, 0, sizeof(struct library_data));
    library_data->dl_handle = dl;

    uae_u32 handle = register_handle (library_data, NULL);
    write_log(_T("uni: opened library %08x (%p)\n"), handle, dl);
    return handle;
}
Example #22
0
FILE *moduleripper_fopen (const char *aname, const char *amode)
{
	TCHAR outname[MAX_DPATH];
	TCHAR *mode;
	FILE *f;

	moduleripper_filename(aname, outname, true);

	mode = au (amode);
	f = uae_tfopen (outname, mode);
	xfree (mode);
	return f;
}
Example #23
0
Int64 CComposeShader::NativeCreate2(
    /* [in] */ Int64 shaderAHandle,
    /* [in] */ Int64 shaderBHandle,
    /* [in] */ Int32 porterDuffModeHandle)
{
    SkShader* shaderA = reinterpret_cast<SkShader *>(shaderAHandle);
    SkShader* shaderB = reinterpret_cast<SkShader *>(shaderBHandle);
    SkPorterDuff::Mode porterDuffMode = static_cast<SkPorterDuff::Mode>(porterDuffModeHandle);
    SkAutoUnref au(SkPorterDuff::CreateXfermode(porterDuffMode));
    SkXfermode* mode = (SkXfermode*) au.get();
    SkShader* shader = new SkComposeShader(shaderA, shaderB, mode);
    return reinterpret_cast<Int64>(shader);
}
Example #24
0
DEF_TEST(BBoxHierarchy, reporter) {
    // RTree
    {
        SkRTree* rtree = SkRTree::Create(RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN);
        SkAutoUnref au(rtree);
        tree_test_main(rtree, RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, reporter);

        // Rtree that orders input rectangles on deferred insert.
        SkRTree* unsortedRtree = SkRTree::Create(RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, 1, false);
        SkAutoUnref auo(unsortedRtree);
        tree_test_main(unsortedRtree, RTREE_MIN_CHILDREN, RTREE_MAX_CHILDREN, reporter);
    }
}
Example #25
0
File: fsdb.c Project: engur/PUAE
static a_inode *aino_from_buf (a_inode *base, uae_u8 *buf, long off)
{
	uae_u32 mode;
	a_inode *aino = xcalloc (a_inode, 1);
	TCHAR *s;

	mode = do_get_mem_long ((uae_u32 *)(buf + 1));
	buf += 5;
	aino->aname = au ((char*)buf);
	buf += 257;
	s = au ((char*)buf);
	aino->nname = build_nname (base->nname, s);
	xfree (s);
	buf += 257;
	aino->comment = *buf != '\0' ? au ((char*)buf) : 0;
	fsdb_fill_file_attrs (base, aino);
	aino->amigaos_mode = mode;
	aino->has_dbentry = 1;
	aino->dirty = 0;
	aino->db_offset = off;
	return aino;
}
Example #26
0
void write_log (const char *format, ...)
{
    char buffer[WRITE_LOG_BUF_SIZE];
    va_list parms;
    TCHAR *b;

    va_start (parms, format);
    vsprintf (buffer, format, parms);
    b = au (buffer);
    write_log (b);
    xfree (b);
    va_end (parms);
}
Example #27
0
static void premsg (void)
{
#if 0
	static int done;
	char *as;
	char ast[32];
	TCHAR *ws;

	if (done)
		return;
	done = 1;

	ast[0] = 'A';
	ast[1] = 0x7f;
	ast[2] = 0x80;
	ast[3] = 0x81;
	ast[4] = 0x9f;
	ast[5] = 0;
	ws = au_fs (ast);

	MessageBoxA(NULL, "español", "ANSI", MB_OK);
	MessageBoxW(NULL, _T("español"), _T("UTF-16"), MB_OK);

	as = ua (_T("español"));
	MessageBoxA(NULL, as, "ANSI:2", MB_OK);
	ws = au (as);
	MessageBoxW(NULL, ws, _T("UTF-16:2"), MB_OK);
	xfree (ws);
	xfree (as);

	ws = au ("español");
	MessageBoxW(NULL, ws, _T("UTF-16:3"), MB_OK);
	as = ua (ws);
	MessageBoxA(NULL, as, "ANSI:3", MB_OK);
	xfree (ws);
	xfree (as);
#endif
}
Example #28
0
static int openprinter_ps (void)
{
	TCHAR *gsargv[] = {
		L"-dNOPAUSE", L"-dBATCH", L"-dNOPAGEPROMPT", L"-dNOPROMPT", L"-dQUIET", L"-dNoCancel",
		L"-sDEVICE=mswinpr2", NULL
	};
	int gsargc, gsargc2, i;
	TCHAR *tmpparms[100];
	TCHAR tmp[MAX_DPATH];
	char *gsparms[100];

	if (ptr_gsapi_new_instance (&gsinstance, NULL) < 0)
		return 0;
	cmdlineparser (currprefs.ghostscript_parameters, tmpparms, 100 - 10);

	gsargc2 = 0;
	gsparms[gsargc2++] = ua (L"WinUAE");
	for (gsargc = 0; gsargv[gsargc]; gsargc++) {
		gsparms[gsargc2++] = ua (gsargv[gsargc]);
	}
	for (i = 0; tmpparms[i]; i++)
		gsparms[gsargc2++] = ua (tmpparms[i]);
	if (currprefs.prtname[0]) {
		_stprintf (tmp, L"-sOutputFile=%%printer%%%s", currprefs.prtname);
		gsparms[gsargc2++] = ua (tmp);
	}
	if (postscript_print_debugging) {
		for (i = 0; i < gsargc2; i++) {
			TCHAR *parm = au (gsparms[i]);
			write_log (L"GSPARM%d: '%s'\n", i, parm);
			xfree (parm);
		}
	}
	__try {
		int rc = ptr_gsapi_init_with_args (gsinstance, gsargc2, gsparms);
		for (i = 0; i < gsargc2; i++) {
			xfree (gsparms[i]);
		}
		if (rc != 0) {
			write_log (L"GS failed, returncode %d\n", rc);
			return 0;
		}
		ptr_gsapi_run_string_begin (gsinstance, 0, &gs_exitcode);
	} __except (ExceptionFilter (GetExceptionInformation (), GetExceptionCode ())) {
		write_log (L"GS crashed\n");
		return 0;
	}
	psmode = 1;
	return 1;
}
Example #29
0
static uae_u32 REGPARAM2 res_getfunc (TrapContext *ctx)
{
	uaecptr funcname = m68k_areg (regs, 0);
	uae_char tmp[256];
	uae_u32 p;
	TCHAR *s;

	if (funcname == 0)
		return 0;
	strcpyah_safe (tmp, funcname, sizeof tmp);
	s = au (tmp);
	p = find_trap (s);
	xfree (s);
	return p;
}
Example #30
0
static void printbandiz(UCHAR *m, USHORT len){
	UCHAR *i,*j;

	i=j=m;
	while (i<m+len) {
		if (*i == 10) {
			TCHAR *u;
			*i=0;
			u = au ((char*)j);
			write_log (L"%s\n",u);
			xfree (u);
			j=i+1;
		}
		i++;
	}
}