public NFCDataList(NFIDataList src) { for (int i = 0; i < src.Count(); i++) { switch (src.GetType(i)) { case VARIANT_TYPE.VTYPE_INT: AddInt(src.IntVal(i)); break; case VARIANT_TYPE.VTYPE_FLOAT: AddFloat(src.FloatVal(i)); break; case VARIANT_TYPE.VTYPE_STRING: AddString(src.StringVal(i)); break; case VARIANT_TYPE.VTYPE_OBJECT: AddObject(src.ObjectVal(i)); break; case VARIANT_TYPE.VTYPE_VECTOR2: AddVector2(src.Vector2Val(i)); break; case VARIANT_TYPE.VTYPE_VECTOR3: AddVector3(src.Vector3Val(i)); break; default: break; } } }
public override int FindVector3(int nCol, NFVector3 value, ref NFIDataList varResult) { foreach (int i in mhtRecordVec.Keys) { NFIDataList valueList = (NFIDataList)mhtRecordVec[i]; if (valueList.Vector3Val(nCol) == value) { varResult.AddInt(i); } } return(varResult.Count()); }
void AddBasePropertyFormOther(string strName, string strOther) { NFILogicClass xOtherClass = GetElement(strOther); NFILogicClass xLogicClass = GetElement(strName); if (null != xLogicClass && null != xOtherClass) { NFIDataList xValue = xOtherClass.GetPropertyManager().GetPropertyList(); for (int i = 0; i < xValue.Count(); ++i) { NFIProperty xProperty = xOtherClass.GetPropertyManager().GetProperty(xValue.StringVal(i)); xLogicClass.GetPropertyManager().AddProperty(xValue.StringVal(i), xProperty.GetData()); } } }
void InitRecord(NFGUID self, string strClassName) { NFILogicClass xLogicClass = mxLogicClassModule.GetElement(strClassName); NFIDataList xDataList = xLogicClass.GetRecordManager().GetRecordList(); for (int i = 0; i < xDataList.Count(); ++i) { string strRecordyName = xDataList.StringVal(i); NFIRecord xRecord = xLogicClass.GetRecordManager().GetRecord(strRecordyName); NFIObject xObject = GetObject(self); NFIRecordManager xRecordManager = xObject.GetRecordManager(); NFIRecord record = xRecordManager.AddRecord(strRecordyName, xRecord.GetRows(), xRecord.GetColsData()); if (record != null) { record.SetUpload(xRecord.GetUpload()); } } }
void InitProperty(NFGUID self, string strClassName) { NFILogicClass xLogicClass = mxLogicClassModule.GetElement(strClassName); NFIDataList xDataList = xLogicClass.GetPropertyManager().GetPropertyList(); for (int i = 0; i < xDataList.Count(); ++i) { string strPropertyName = xDataList.StringVal(i); NFIProperty xProperty = xLogicClass.GetPropertyManager().GetProperty(strPropertyName); NFIObject xObject = GetObject(self); NFIPropertyManager xPropertyManager = xObject.GetPropertyManager(); NFIProperty property = xPropertyManager.AddProperty(strPropertyName, xProperty.GetData()); //if property==null ,means this property alreay exist in manager if (property != null) { property.SetUpload(xProperty.GetUpload()); } } }
public override void Shut() { NFIDataList xRecordList = mRecordManager.GetRecordList(); if (null != xRecordList) { for (int i = 0; i < xRecordList.Count(); ++i) { string strRecordName = xRecordList.StringVal(i); NFIRecord xRecord = mRecordManager.GetRecord(strRecordName); if (null != xRecord) { xRecord.Clear(); } } } mRecordManager = null; mPropertyManager = null; return; }
public override NFIObject CreateObject(NFGUID self, int nContainerID, int nGroupID, string strClassName, string strConfigIndex, NFIDataList arg) { if (!mhtObject.ContainsKey(self)) { NFIObject xNewObject = new NFCObject(self, nContainerID, nGroupID, strClassName, strConfigIndex); mhtObject.Add(self, xNewObject); NFCDataList varConfigID = new NFCDataList(); varConfigID.AddString(strConfigIndex); xNewObject.GetPropertyManager().AddProperty("ConfigID", varConfigID); NFCDataList varConfigClass = new NFCDataList(); varConfigClass.AddString(strClassName); xNewObject.GetPropertyManager().AddProperty("ClassName", varConfigClass); if (arg.Count() % 2 == 0) { for (int i = 0; i < arg.Count() - 1; i += 2) { string strPropertyName = arg.StringVal(i); NFIDataList.VARIANT_TYPE eType = arg.GetType(i + 1); switch (eType) { case NFIDataList.VARIANT_TYPE.VTYPE_INT: { NFIDataList xDataList = new NFCDataList(); xDataList.AddInt(arg.IntVal(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; case NFIDataList.VARIANT_TYPE.VTYPE_FLOAT: { NFIDataList xDataList = new NFCDataList(); xDataList.AddFloat(arg.FloatVal(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; case NFIDataList.VARIANT_TYPE.VTYPE_STRING: { NFIDataList xDataList = new NFCDataList(); xDataList.AddString(arg.StringVal(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; case NFIDataList.VARIANT_TYPE.VTYPE_OBJECT: { NFIDataList xDataList = new NFCDataList(); xDataList.AddObject(arg.ObjectVal(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; case NFIDataList.VARIANT_TYPE.VTYPE_VECTOR2: { NFIDataList xDataList = new NFCDataList(); xDataList.AddVector2(arg.Vector2Val(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; case NFIDataList.VARIANT_TYPE.VTYPE_VECTOR3: { NFIDataList xDataList = new NFCDataList(); xDataList.AddVector3(arg.Vector3Val(i + 1)); xNewObject.GetPropertyManager().AddProperty(strPropertyName, xDataList); } break; default: break; } } } InitProperty(self, strClassName); InitRecord(self, strClassName); ClassHandleDel xHandleDel = (ClassHandleDel)mhtClassHandleDel[strClassName]; if (null != xHandleDel && null != xHandleDel.GetHandler()) { NFIObject.ClassEventHandler xHandlerList = xHandleDel.GetHandler(); xHandlerList(self, nContainerID, nGroupID, NFIObject.CLASS_EVENT_TYPE.OBJECT_CREATE, strClassName, strConfigIndex); xHandlerList(self, nContainerID, nGroupID, NFIObject.CLASS_EVENT_TYPE.OBJECT_LOADDATA, strClassName, strConfigIndex); xHandlerList(self, nContainerID, nGroupID, NFIObject.CLASS_EVENT_TYPE.OBJECT_CREATE_FINISH, strClassName, strConfigIndex); } //NFCLog.Instance.Log(NFCLog.LOG_LEVEL.DEBUG, "Create object: " + self.ToString() + " ClassName: " + strClassName + " SceneID: " + nContainerID + " GroupID: " + nGroupID); return(xNewObject); } return(null); }