christian@0: /* christian@0: * Postarc christian@0: * christian@0: * Author: christian@0: * Christian Lins christian@0: * christian@0: * Copyright: christian@0: * Copyright (C) 2012 Intevation GmbH christian@0: * christian@0: * This program is free software: you can redistribute it and/or modify christian@0: * it under the terms of the GNU Lesser General Public License as published by christian@0: * the Free Software Foundation, either version 3 of the License, or christian@0: * (at your option) any later version. christian@0: * christian@0: * This program is distributed in the hope that it will be useful, christian@0: * but WITHOUT ANY WARRANTY; without even the implied warranty of christian@0: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the christian@0: * GNU General Public License for more details. christian@0: * christian@0: * You should have received a copy of the GNU Lesser General Public License christian@0: * along with this program. If not, see . christian@0: */ christian@0: christian@0: using System; christian@0: using System.Collections.Generic; christian@0: using System.Linq; christian@0: using System.Text; christian@0: using ESRI.ArcGIS.Geodatabase; christian@0: using ESRI.ArcGIS.ADF.CATIDs; christian@0: using System.Runtime.InteropServices; christian@0: christian@0: namespace Postarc christian@0: { christian@0: /// christian@0: /// Provides configuration information for ArcCatalog when creating new object or feature classes. christian@0: /// The class description can be registered using the GeoObjectClassDescriptions static class in the ESRI.ArcGIS.ADF.CATIDs namespace. christian@0: /// christian@0: [Guid("4D5457B8-7378-4457-8FD8-7D6553A93EDD")] christian@0: public class PostarcClassDescription : IObjectClassDescription, IFeatureClassDescription christian@0: { christian@0: public string AliasName christian@0: { christian@0: get christian@0: { christian@0: return "Postarc Feature Alias Name"; christian@0: } christian@0: } christian@0: christian@0: public ESRI.ArcGIS.esriSystem.UID ClassExtensionCLSID christian@0: { christian@0: get { return null; } // No class extension christian@0: } christian@0: christian@0: public ESRI.ArcGIS.esriSystem.UID InstanceCLSID christian@0: { christian@0: get { throw new NotImplementedException(); } christian@0: } christian@0: christian@0: public string ModelName christian@0: { christian@0: get { throw new NotImplementedException(); } christian@0: } christian@0: christian@0: public bool ModelNameUnique christian@0: { christian@0: get { throw new NotImplementedException(); } christian@0: } christian@0: christian@0: public string Name christian@0: { christian@0: get christian@0: { christian@0: return "ClassDescription_CustomClass"; christian@0: } christian@0: } christian@0: christian@0: public IFields RequiredFields christian@0: { christian@0: get christian@0: { christian@0: IFieldsEdit fields = new FieldsClass(); christian@0: christian@0: IFieldEdit field = new FieldClass(); christian@0: field.Name_2 = "Shape"; christian@0: field.Type_2 = esriFieldType.esriFieldTypeGeometry; christian@0: fields.set_Field(1, field); christian@0: christian@0: return fields; christian@0: } christian@0: } christian@0: christian@0: /// christian@0: /// Simple features. christian@0: /// christian@0: public esriFeatureType FeatureType christian@0: { christian@0: get christian@0: { christian@0: return esriFeatureType.esriFTSimple; christian@0: } christian@0: } christian@0: christian@0: public string ShapeFieldName christian@0: { christian@0: get christian@0: { christian@0: return "Shape"; christian@0: } christian@0: } christian@0: } christian@0: }