/// <summary> /// Tries to find a row that is attached to this ID, and which has a specific schema. /// </summary> /// <param name="schema">The schema to search for.</param> /// <returns>The matching row (null if not found).</returns> /* * IRow GetRow(ISchema schema) * { * if (m_Rows!=null) * { * foreach(IRow row in m_Rows) * { * if (schema.Id == row.Schema.Id) * return row; * } * } * * return null; * } */ /// <summary> /// Creates an ID for an extracted feature. An extracted ID points only to /// ONE feature. If this ID is associated with any Row objects and more than /// one feature, the rows will be duplicated for each of the features that /// get extracted. /// </summary> /// <param name="xref">Info about the extract.</param> /// <param name="exFeat">The extracted feature.</param> /// <returns>The extract ID that was created.</returns> FeatureId Extract(ExTranslation xref, Feature exFeat) { throw new NotImplementedException("FeatureId.Extract"); /* * // Create a new ID. * FeatureId ex = new FeatureId(0); * * // Assign the key. * ex.m_Key = m_Key; * * // Point to the specified feature. * ex.m_Features = exFeat; * * // If this ID refers to any rows, create copies of the * // rows and attached them to the extract ID. * if (m_Rows!=null) * { * foreach(Row row in m_Rows) * { * // Extract the row. * Row exRow = row.Extract(xref,exFeat); * * // Assign the extract ID to the row (kind of a chicken * // and egg case here -- the row can't get the ID from * // the extract feature because we're still in the * // process of creating the ID for the feature). * * // Setting the ID defines a two-way cross-reference * // between the row and the ID. * exRow.Id = ex; * } * } * * // Return the ID we created. * return ex; */ }
internal Row Extract(ExTranslation xref, Feature xfeat) { throw new NotImplementedException("Row.Extract"); }
/// <summary> /// Tries to find a row that is attached to this ID, and which has a specific schema. /// </summary> /// <param name="schema">The schema to search for.</param> /// <returns>The matching row (null if not found).</returns> /* IRow GetRow(ISchema schema) { if (m_Rows!=null) { foreach(IRow row in m_Rows) { if (schema.Id == row.Schema.Id) return row; } } return null; } */ /// <summary> /// Creates an ID for an extracted feature. An extracted ID points only to /// ONE feature. If this ID is associated with any Row objects and more than /// one feature, the rows will be duplicated for each of the features that /// get extracted. /// </summary> /// <param name="xref">Info about the extract.</param> /// <param name="exFeat">The extracted feature.</param> /// <returns>The extract ID that was created.</returns> FeatureId Extract(ExTranslation xref, Feature exFeat) { throw new NotImplementedException("FeatureId.Extract"); /* // Create a new ID. FeatureId ex = new FeatureId(0); // Assign the key. ex.m_Key = m_Key; // Point to the specified feature. ex.m_Features = exFeat; // If this ID refers to any rows, create copies of the // rows and attached them to the extract ID. if (m_Rows!=null) { foreach(Row row in m_Rows) { // Extract the row. Row exRow = row.Extract(xref,exFeat); // Assign the extract ID to the row (kind of a chicken // and egg case here -- the row can't get the ID from // the extract feature because we're still in the // process of creating the ID for the feature). // Setting the ID defines a two-way cross-reference // between the row and the ID. exRow.Id = ex; } } // Return the ID we created. return ex; */ }