Esempio n. 1
0
        unsafe private CsdbObject FilterImpl(Applicability app, FilterMode mode)
        {
            string objectXml = doc.OuterXml;
            string resultXml;
            int    size;

            int err = s1kdFilter(objectXml, objectXml.Length, app.InternalDefs, mode, out resultXml, out size);

            if (err != 0)
            {
                throw new Exception("Filtering failed (" + err + ")");
            }

            CsdbObject result = new CsdbObject();

            result.XmlDocument.LoadXml(resultXml);

            return(result);
        }
Esempio n. 2
0
 /// <summary>
 /// Filter the object on a given set of applicability definitions.
 /// </summary>
 /// <param name="app">The applicability definitions to filter on</param>
 /// <param name="mode">The filtering mode to use</param>
 /// <returns>
 /// The filtered CSDB object instance
 /// </returns>
 public CsdbObject Filter(Applicability app, FilterMode mode)
 {
     return(FilterImpl(app, mode));
 }