示例#1
0
文件: sqclass.cpp 项目: q4a/scourge
void SQInstance::Init( SQSharedState *ss ) {
	_userpointer = NULL;
	_hook = NULL;
	__ObjAddRef( _class );
	_delegate = _class->_members;
	INIT_CHAIN();
	ADD_TO_CHAIN( &_sharedstate->_gc_chain, this );
}
示例#2
0
文件: sqtable.cpp 项目: noriter/nit
SQTable::SQTable(SQSharedState *ss,SQInteger nInitialSize)
{
	SQInteger pow2size=MINPOWER2;
	while(nInitialSize>pow2size)pow2size=pow2size<<1;
	AllocNodes(pow2size);
	_usednodes = 0;
	_delegate = NULL;
	INIT_CHAIN();
	ADD_TO_CHAIN(&_sharedstate->_gc_chain,this);
}
示例#3
0
文件: sqclass.cpp 项目: q4a/scourge
SQClass::SQClass( SQSharedState *ss, SQClass *base ) {
	_base = base;
	_typetag = 0;
	_metamethods.resize( MT_LAST ); //size it to max size
	if ( _base ) {
		_defaultvalues.copy( base->_defaultvalues );
		_methods.copy( base->_methods );
		_metamethods.copy( base->_metamethods );
		__ObjAddRef( _base );
	}
	_members = base ? base->_members->Clone() : SQTable::Create( ss, 0 );
	__ObjAddRef( _members );
	_locked = false;
	INIT_CHAIN();
	ADD_TO_CHAIN( &_sharedstate->_gc_chain, this );
}
示例#4
0
SQClass::SQClass(SQSharedState *ss,SQClass *base)
{
	_base = base;
	_typetag = 0;
	_hook = NULL;
	_udsize = 0;
	_locked = false;
	_constructoridx = -1;
	if(_base) {
		_constructoridx = _base->_constructoridx;
		_udsize = _base->_udsize;
		_defaultvalues.copy(base->_defaultvalues);
		_methods.copy(base->_methods);
		_COPY_VECTOR(_metamethods,base->_metamethods,MT_LAST);
		__ObjAddRef(_base);
	}
	_members = base?base->_members->Clone() : SQTable::Create(ss,0);
	__ObjAddRef(_members);
	
	INIT_CHAIN();
	ADD_TO_CHAIN(&_sharedstate->_gc_chain, this);
}
示例#5
0
	},{
		.name = "persistentreset",
		.help = "Set persistent variables = 0",
		.handler = eps_slave_reset_persistent,
	},{
		.name = "hardreset",
		.help = "Completely powercycle EPS",
		.handler = eps_slave_hardreset,
	},{
		.name = "resetwdt",
		.help = "Resets the WDT GND",
		.handler = eps_slave_wdt_gnd_reset,
	},{
		.name = "conf",
		.help = "Configuration",
		.chain = INIT_CHAIN(eps_slave_config_subcommands),
	}
};

command_t __root_command epsslave_commands[] = {
	{
		.name = "epsslave",
		.help = "EPS slave commands",
		.chain = INIT_CHAIN(eps_slavecommands),
	}
};

void cmd_epsslave_setup(void) {
	command_register(epsslave_commands);
}
示例#6
0
文件: cmd_com.c 项目: lirihe/arm
	},{
		.name = "random",
		.help = "Configure do randomization",
		.usage = "<bool>",
		.handler = cmd_com_conf_do_random,
	},{
		.name = "hkinterval",
		.help = "Configure hk interval",
		.usage = "<seconds>",
		.handler = cmd_com_conf_set_hkinterval,
	},{
		.name = "inhibit",
		.help = "Set the TX inhibit flag",
		.usage = "<value>",
		.handler = cmd_com_set_tx_inhibit,
	}
};

command_t __root_command com_commands[] = {
	{
		.name = "com",
		.help = "COM subsystem",
		.chain = INIT_CHAIN(com_subcommands),
	}
};

void cmd_com_setup(int node_arg) {
	com_node = node_arg;
	command_register(com_commands);
}
示例#7
0
文件: cmd_hub.c 项目: lirihe/arm
		.usage = "",
 		.handler = cmd_hub_reset_wdt,
	},{
		.name = "gwdt",
		.help = "GetWDT",
		.usage = "",
	 	.handler = cmd_hub_get_wdt,
	},{
		.name = "so",
		.help = "Set channel on/off",
		.usage = "<channel> <mode> <delay> (empty to read)",
 		.handler = cmd_hub_single_output,
	},{
		.name = "conf",
		.help = "Config",
		.chain = INIT_CHAIN(hub_conf_subcommands),
 	},{
		.name = "adc",
		.help = "Get ADC",
		.usage = "",
 		.handler = cmd_hub_adc,
	},{
		.name = "gyro",
		.help = "Gyro",
		.chain = INIT_CHAIN(hub_gyro_subcommands),
	},{
		.name = "knife",
		.help = "Do knife deploy",
		.usage = "<knife> <channel> <delay> <duration>",
		.handler = cmd_hub_knife,
	},