예제 #1
0
Controller::Controller(const char* name) :
	initialized_(false),
	name_(name),
	busy_(false),
	error_(0),
	changedTime_(0.0),
	mThread_(0)
{
	assert(strlen(name) < (unsigned int)MM::MaxStrLength);

	InitializeDefaultErrorMessages();

	// create pre-initialization properties
	// ------------------------------------

	// Name
	CreateProperty(MM::g_Keyword_Name, name_.c_str(), MM::String, true);

	// Port
	CPropertyAction* pAct = new CPropertyAction(this, &Controller::OnPort);
	CreateProperty(MM::g_Keyword_Port, "Undefined", MM::String, false, pAct, true);

	EnableDelay(); // signals that the delay setting will be used
	UpdateStatus();
}
예제 #2
0
///////////////////////////////////////////////////////////////////////////////
// XYStageH128
//
XYStage::XYStage() : // LIN 01/01/2012 DIDN'T RENAME FUNCTION. ASSUMING MMCORE WILL EXPECT TO CALL ON XYStage()
   CXYStageBase<XYStage>(),
   initialized_(false), 
   port_("Undefined"), 
   stepSizeXUm_(0.1), // LIN 01/02/2012 changed initial value from 0.0 to 0.1
   stepSizeYUm_(0.1), // LIN 01/02/2012 changed initial value from 0.0 to 0.1
   answerTimeoutMs_(1000),
   originX_(0),
   originY_(0),
   mirrorX_(false),
   mirrorY_(false),
   busy_(false) // LIN 01/01/2012 ADDED
{
   InitializeDefaultErrorMessages();

   // create pre-initialization properties
   // ------------------------------------

   // Name
   // CreateProperty(MM::g_Keyword_Name, g_LegacyXYStageDeviceName, MM::String, true); // LIN 01/01/2012 RENAMED

   // Description 
   CreateProperty(MM::g_Keyword_Description, "Prior H128 XY stage driver adapter", MM::String, true); // LIN 01/01/2012 RENAMED
   // Port
   CPropertyAction* pAct = new CPropertyAction (this, &XYStage::OnPort);
   CreateProperty(MM::g_Keyword_Port, "Undefined", MM::String, false, pAct, true);

   EnableDelay(); // LIN 01-01-2012 ADDED SO WE CAN SET DELAY INSTEAD OF QUERYING H128 BUSY STATUS

}
예제 #3
0
LMM5Shutter::LMM5Shutter() :
   changedTime_(0.0),
   state_(0),
   open_ (false),
   nrOutputs_(0)
{
   InitializeDefaultErrorMessages();

   EnableDelay();
}
예제 #4
0
LCShutter::LCShutter() : 
   initialized_(false), 
   nrLines_(4),
   state_(0),
   name_(g_DeviceNameLCShutter)
{
   InitializeDefaultErrorMessages();
   
   // custom error messages
   SetErrorText(ERR_BOARD_NOT_FOUND,GS_ERR_BOARD_NOT_FOUND);
   EnableDelay();
}
예제 #5
0
LCSafetyShutter::LCSafetyShutter() :
   changedTime_(0),
   initialized_(false),
   state_(0),
   name_(g_DeviceNameLCShutter)
{
   InitializeDefaultErrorMessages();
   
   // custom error messages
   SetErrorText(ERR_BOARD_NOT_FOUND,GS_ERR_BOARD_NOT_FOUND);
   SetErrorText(ERR_NOT_IN_THIS_FIRMWARE, GS_NOT_IN_THIS_FIRMWARE);
   EnableDelay();
}
예제 #6
0
Sapphire::Sapphire(const char* name) :
   initialized_(false), 
   //powerSetpoint_(0),
	//powerReadback_(0),
   state_(0),
   name_(name), 
   busy_(false),
   error_(0),
   changedTime_(0.0),
	queryToken_("?"),
	powerSetpointToken_("P"),
	powerReadbackToken_("P"),
	//CDRHToken_("CDRH"),  // if this is on, laser delays 5 SEC before turning on
   //CWToken_("CW"),
	laserOnToken_("L"),
	TECServoToken_("T"),
	headSerialNoToken_("HID"),
	headUsageHoursToken_("HH")
	//wavelengthToken_("WAVE"),
	//externalPowerControlToken_("EXT")



{
	//pDevImpl = new DevImpl(*this);
   assert(strlen(name) < (unsigned int) MM::MaxStrLength);

   InitializeDefaultErrorMessages();
   SetErrorText(ERR_DEVICE_NOT_FOUND, "No answer received.  Is the Coherent Sapphire connected to this serial port?");
   // create pre-initialization properties
   // ------------------------------------

   // Name
   CreateProperty(MM::g_Keyword_Name, name_.c_str(), MM::String, true);

   // Description
   CreateProperty(MM::g_Keyword_Description, "Coherent Sapphire Laser", MM::String, true);

   // Port
   CPropertyAction* pAct = new CPropertyAction (this, &Sapphire::OnPort);
   CreateProperty(MM::g_Keyword_Port, "Undefined", MM::String, false, pAct, true);

   EnableDelay(); // signals that the delay setting will be used
   UpdateStatus();
}
CArduinoNeoPixelShutter::CArduinoNeoPixelShutter() : initialized_(false), name_(g_DeviceNameArduinoNeoPixelShutter)  
{
   InitializeDefaultErrorMessages();
   EnableDelay();

   SetErrorText(ERR_NO_PORT_SET, "Hub Device not found.  The ArduinoNeoPixel Hub device is needed to create this device");

   // Name
   int ret = CreateProperty(MM::g_Keyword_Name, g_DeviceNameArduinoNeoPixelShutter, MM::String, true);
   assert(DEVICE_OK == ret);

   // Description
   ret = CreateProperty(MM::g_Keyword_Description, "ArduinoNeoPixel shutter driver", MM::String, true);
   assert(DEVICE_OK == ret);

   // parent ID display
   CreateHubIDProperty();
}