public static void AddRorgD5Templates(INodeTemplateFactory factory, EnOceanTemplateFactory enoceanFactory) { var nodeGuid = RorgD5Guid; Guid interfaceGuid = GenerateNewGuid(nodeGuid, 1); factory.CreateInterfaceType(interfaceGuid, "ENOCEAN.RORG_D5.NAME", "ENOCEAN.RORG_D5.DESCRIPTION", Int32.MaxValue, int.MaxValue, true); factory.CreateNodeTemplate(nodeGuid, "ENOCEAN.RORG_D5.NAME", "ENOCEAN.RORG_D5.DESCRIPTION", "enocean-rorg-D5", EnOceanDriverFactory.InterfaceGuid, interfaceGuid, false, false, true, false, true, NodeDataType.NoAttribute, int.MaxValue, false); enoceanFactory.AddTemplate(0xD5, nodeGuid); AddFunctionD5_00Templates(factory, interfaceGuid, enoceanFactory); }
private static void AddTypesD5_00_01_1Templates(INodeTemplateFactory factory, Guid funcInterfaceGuid, EnOceanTemplateFactory enoceanFactory) { Guid interfaceGuid = GenerateNewGuid(TypeD5_00_01_1Guid, 1); factory.CreateInterfaceType(interfaceGuid, "ENOCEAN.RORG_D5.FUNCTION_00.TYPE_01_1.NAME", "ENOCEAN.RORG_D5.FUNCTION_00.TYPE_01_1.DESCRIPTION", Int32.MaxValue, int.MaxValue, true); var nodeGuid = TypeD5_00_01_1Guid; factory.CreateNodeTemplate(nodeGuid, "ENOCEAN.RORG_D5.FUNCTION_00.TYPE_01_1.NAME", "ENOCEAN.RORG_D5.FUNCTION_00.TYPE_01_1.DESCRIPTION", "enocean-type-00", funcInterfaceGuid, interfaceGuid, false, false, true, false, true, NodeDataType.NoAttribute, int.MaxValue, false); factory.CreatePropertyTemplate(GenerateNewGuid(nodeGuid, 1), "ENOCEAN.SERIAL_NUMBER.NAME", "ENOCEAN.SERIAL_NUMBER.DESCRIPTION", "enocean-serialnumber", PropertyTemplateType.Text, nodeGuid, "COMMON.CATEGORY.ADDRESS", true, false, null, null, 0, 0); enoceanFactory.AddTemplate(0xD5, nodeGuid); AddDataFieldD5_00_01_1_COTemplates(factory, interfaceGuid); AddDataFieldD5_00_01_1_LRNTemplates(factory, interfaceGuid); }
private static void AddFunctionD5_00Templates(INodeTemplateFactory factory, Guid rorgInterfaceGuid, EnOceanTemplateFactory enoceanFactory) { Guid interfaceGuid = GenerateNewGuid(FunctionD5_00Guid, 1); factory.CreateInterfaceType(interfaceGuid, "ENOCEAN.RORG_D5.FUNCTION_00.NAME", "ENOCEAN.RORG_D5.FUNCTION_00.DESCRIPTION", Int32.MaxValue, int.MaxValue, true); factory.CreateNodeTemplate(FunctionD5_00Guid, "ENOCEAN.RORG_D5.FUNCTION_00.NAME", "ENOCEAN.RORG_D5.FUNCTION_00.DESCRIPTION", "enocean-function-00", rorgInterfaceGuid, interfaceGuid, false, false, true, false, true, NodeDataType.NoAttribute, int.MaxValue, false); enoceanFactory.AddTemplate(0xD5, FunctionD5_00Guid); AddTypesD5_00_01_1Templates(factory, interfaceGuid, enoceanFactory); }
public EnOceanDriver(IDriverContext driverContext, EnOceanTemplateFactory enoceanFactory) : base(driverContext, null) { _enoceanFactory = enoceanFactory; }