Skip to content

Instantly share code, notes, and snippets.

View GilesBathgate's full-sized avatar
😄

Giles Bathgate GilesBathgate

😄
View GitHub Profile
import std.xml;
import std.string;
import std.container.stack;
class XmlWriter
{
this()
{
m_stack = new Stack!Element();
}
extern(C)
{
alias uint mp_limb_t;
struct __mpz_struct
{
int _mp_alloc;
int _mp_size;
mp_limb_t *_mp_d;
#include "stdafx.h"
#include <metahost.h>
#pragma comment(lib, "mscoree.lib")
int _tmain(int argc, _TCHAR* argv[])
{
ICLRMetaHost *pMetaHost = NULL;
HRESULT hr = CLRCreateInstance(CLSID_CLRMetaHost, IID_ICLRMetaHost,(LPVOID*)&pMetaHost);
}
module interop.net;
import core.sys.windows.windows;
import core.sys.windows.com;
import core.sys.windows.objidl;
import core.sys.windows.oaidl;
import core.sys.windows.wtypes;
pragma(lib, "mscoree.lib");
extern (Windows)
extern (C) void* _aaGetX(void** paa, const TypeInfo_AssociativeArray ti, in size_t valuesize, in void* pkey, out bool found) pure nothrow;
V* slot(K, V)(ref V[K] aa, K key, out bool found)
{
return cast(V*) _aaGetX(cast(void**)&aa, typeid(V[K]), V.sizeof, &key, found);
}
void update(K, V, C, U)(ref V[K] aa, K key, C create, U update)
if (is(C : V delegate()) || is(C : V function()) && (is(U : V delegate(ref V)) || is(U : V function(ref V))))
{
@GilesBathgate
GilesBathgate / Harvester.cs
Last active February 21, 2021 13:55
Harvester implementation
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Xml.Linq;
using WixSharp;
using WixSharp.CommonTasks;
namespace WixSharp
using Microsoft.Deployment.WindowsInstaller;
using System;
using WixSharp;
using WixSharp.CommonTasks;
namespace Setup1
{
class Program
{
static void Main()
G92 E0 ; zero extruder
G1 E-3.0 F1500 ; retract
G4 ; wait
M104 S0 ; turn off temperature
{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up
M106 S255 ; turn fan on
G1 X125 Y0 F3000.0 ; goto middle
M190 R0 T40 ; turn off bed and wait for cooldown
M107 ; turn off fan
G1 X0 Y200 F3000 ; home X axis
@GilesBathgate
GilesBathgate / main.cpp
Last active November 4, 2020 17:33
ID_support_handler benchmark.
#include <iostream>
static int allocations = 0;
static int totalBytes = 0;
//Logging allocator
template<class T>
struct Allogator {
typedef T value_type;
T* allocate(size_t n, const void* = nullptr)
@GilesBathgate
GilesBathgate / ID_support_handler_benchmark.cpp
Created November 9, 2020 17:47
ID_support_handler performance benchmark
#include <benchmark/benchmark.h>
#include <CGAL/Nef_3/ID_support_handler.h>
#include <CGAL/Nef_3/SNC_indexed_items.h>
// A bit unconventional ;)
static int data[][2]
#include "sample.data"
;
namespace CGAL {