⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isession.h

📁 GIS格式转换软件vc源码.GIS格式转换软件vc源码.
💻 H
📖 第 1 页 / 共 3 页
字号:
   //-------------------------------------------------------------------
   /*! This method returns a new rectangle vector object.             */
   virtual IFMERectangleVector *createRectangleVector() const = 0;

   //-------------------------------------------------------------------
   /*! This method destroys a previously created rectangle vector object.*/
   virtual void destroyRectangleVector(IFMERectangleVector* &rectVect) const = 0;


   //-------------------------------------------------------------------
   /*! This method creates a feature vector on disk -- the vector that 
   // is returned MUST be freed eventually by the destroyFeatureVectorOnDisk 
   // method. maxEntriesInMemory determines how many features are stored 
   // in memory before the features are stored on disk. Note that any 
   // features put into this feature vector belong to the feature vector, 
   // as well as any features extracted from it no longer belong to the 
   // feature vector.                                                 */
   virtual IFMEFeatureVectorOnDisk* createFeatureVectorOnDisk
       (FME_UInt32 maxEntriesInMemory) const = 0;
   
   //-------------------------------------------------------------------
   /*! This method destroys a feature vector on disk. Any features inside
   // the feature vector are destroyed as well.                       */
   virtual void destroyFeatureVectorOnDisk
       (IFMEFeatureVectorOnDisk* &featVectOnDisk) const = 0;
   
   //-------------------------------------------------------------------
   /*! This method gets the values of the keyword for the session 
   // configuration. The string array returned will be empty if the 
   // keyword is invalid or does not exist in the current session 
   // configuration.                                                  */
   virtual void getSettings(const IFMEString &keyword, 
                            IFMEStringArray &values) = 0;

   //-------------------------------------------------------------------
   /*! This method will only accept the keyword kFME_DumpConfig
   // which will dump the current session configuration to the logfile. No 
   // action will be performed if the keyword is unrecognized. More keywords 
   // may be added in the future.*/
   virtual void logSettings(const char* keyword) = 0;

   //-------------------------------------------------------------------
   /*! This method retrieves the schema features defined in the DEF lines
   // that are prefixed with 'prefix' in the 'schemaFile'.  The 
   // 'macros' should be a name value pair array that defines
   // values for each macro used in the 'schemaFile'. */
   virtual FME_MsgNum getSchemaFeatures(const IFMEStringArray  &macros,
                                        const char*            prefix,
                                        const char*            schemaFile,
                                        IFMEFeatureVector      &schemaFeatures) = 0;

   //-------------------------------------------------------------------
   /*! This method returns the persistent cache object used for the session.  
   // The caller must not delete it.  
   //
   // If NULL is returned then the object could not be created and the 
   // application should use the getLastError*() functions
   // to retrieve the error.
   // 
   // This directives array is required for this method; the 
   // supported directives are:
   //
   // <dl>
   // <dt><b>"PERSISTENT_CACHE_NAME"</b> (C++ Constant: kFME_PersistentCacheName)</dt>
   // <dd>   This directive speciofies a name for the cache.<br>
   //        This directive is required.
   // </dd> 
   // <dt><b>"PERSISTENT_CACHE_PATH"</b> (C++ Constant: kFME_PersistentCachePath)</dt>
   // <dd>   This directive is optional.
   // </dd> 
   // </dl>                                                                    */
   virtual IFMEPersistentCache* persistentCache(const IFMEStringArray* directives) = 0;
      
   //-------------------------------------------------------------------
   /*! This method will populate an IFMEStringArray with values for the given
   // property category.  
   //
   //  If a property category is found, the array should be populated with
   //  <property>/<value> pairs, as appropriate for that property category.  Therefore
   //  the returned array should always have an even number of entries.
   //  The property category may choose to return an empty array.
   //  If the property category is recognized, the method will have a 
   //  return value of FME_TRUE; otherwise it will have a return value of FME_FALSE.
   //  <p>
   //  This method handles the following property categories:
   //  <dl>
   //  <dt><b>"fme_session_prop_license"</b> (C++ Constant: kFME_SessionPropLicense)</dt>
   //  <dd>Returns the licensing properties.  Each license property
   //      is returned as a property/value pair of entries.</dd>
   //  <dt> <b>"*"</b> (C++ Constant: kFME_SessionPropAll)</dt>
   //  <dd>Returns all properties for all known property categories.
   //      Each property is returned as a property/value pair of entries.</dd>
   //  </dl></p>
   //  
   //  <p>The following property categories are used to retrieve reader/writer format 
   //  information.  These categories will NOT be returned with the
   //  kFME_SessionPropAll property category nor the getAllProperties() method.
   //  The property categories below return FME_TRUE when successful, otherwise
   //  they return FME_FALSE and the properties array is left untouched.
   //
   //  <dl>
   //  <dt><b>"fme_session_prop_formats"</b> (C++ Constant: kFME_SessionPropFormats)</dt>
   //  <dd>Returns in the properties array the format names listed under 
   //      formats.db and the FDS format names. It returns all the formats
   //      no matter whether they are licensed or not. Unlike other 
   //      property categories the properties array returned is not an 
   //      array of name/value pairs, but an array of values.</dd>
   //  <dt><b>"fme_session_prop_format_info"</b> (C++ Constant: kFME_SessionPropFormatInfo)</dt>
   //  <dd>Returns the information for the format that is 
   //      specified in the properties array.  The caller must specified 
   //      the format name in the properties array through a 
   //      property/value pair, where the property must be
   //      kFME_FormatName and the value must be the name of the
   //      format, for example, "SHAPE".  The format information is
   //      returned as property/value pairs in the properties array.
   //
   //      <p>For example, to retrieve the format information for SHAPE:                          
   <pre>
   ...
   formatInfo->append(kFME_FormatName);
   formatInfo->append("SHAPE");         
   session->getProperties(kFME_SessionPropFormatInfo, *formatInfo);
   ...
   </pre></p>
   //      <p>After the getProperties() call, the formatInfo array  
   //         contains the property/value pairs representing the information 
   //         from the formats.db file from the SHAPE format.</p></dd>

   //  <dt><b>"fme_session_prop_format_property"</b> 
   //  (C++ Constant: kFME_SessionPropFormatProperty)</dt>
   //  <dd>Returns the value of the requested property for the specified format.      
   //      The format is specified in the properties array through a 
   //      property/value pair, where the property must be
   //      kFME_FormatName and the value must be the name of the
   //      format, for example, "SHAPE".
   //      
   //      The requested property is also specified in the properties array 
   //      through a property/value pair, where property is
   //      kFME_FormatName and the value must be one of the following:
   // 
   //           kFME_FormatLongName, kFME_DatasetType, kFME_Direction,
   //           kFME_Filter, kFME_CoordSysAware, kFME_SourceSettings,
   //           kFME_DestSettings, kFME_GenericTranslation, kFME_FormatName,
   //           kFME_AssocWithExts, kFME_UserCreated, kFME_FDSFile,
   //           kFME_FormatType, kFME_NativeSpatialIndex, kFME_Visible,
   //           kFME_FormatProperty    
   //                           
   //      <p>For example, to retrieve the FILE_EXTENSIONS information for SHAPE:                          
   <pre>
   ...
   formatInfo->append(kFME_FormatName);
   formatInfo->append("SHAPE");
   formatInfo->append(kFME_FormatProperty);
   formatInfo->append(kFME_Filter);         
   session->getProperties(kFME_SessionPropFormatProperty, *formatInfo);
   ...
   </pre></p>
   //      <p>After the getProperties() call, the file extensions are
   //         returned in the value of a property/value pair in the formatInfo
   //         array, where the property of the pair is kFME_Filter and the value
   //         are the file extensions for the SHAPE format.</p></dd>
   //    </dl>
   //
   */
   virtual FME_Boolean getProperties(const char* propertyCategory, IFMEStringArray& properties) = 0;
      
   //-------------------------------------------------------------------
   /*! This method will populate an IFMEStringArray with values for all
   // properties for all known property categories. 
   //
   //  For all properties found, the array should be populated with
   //  <property>/<value> pairs which are known.  Therefore
   //  the returned array should always have an even number of entries.
   //  The method itself will have a return value of FME_TRUE.
   //
   //  If no properties were found, the method itself will have a 
   //  return value of FME_FALSE.
   */
   virtual FME_Boolean getAllProperties(IFMEStringArray& properties) = 0;
   
   //-------------------------------------------------------------------
   /*! This function returns the IFMELicenseManager object used
   // for the session.  The caller must not delete it.  */
   virtual IFMELicenseManager* getLicenseManager() = 0;
      
   //-------------------------------------------------------------------
   /*! This function returns the disconnected edit object used for the session.  
   // The caller must not delete it.  
   //
   // If NULL is returned then the object could not be created and the 
   // application should use the getLastError*() functions
   // to retrieve the error.
   //              
   // Directives:
   // <dl>
   // <dt><b>"DISCONNECTED_EDIT_DB_NAME"</b> (C++ Constant: kFME_DisconnectedEditDBName)</dt>  
   // <dd> Name for the disconnected edit session. This
   //      is required and is used by the disconnected
   //      edit session to track information. The value 
   //      specifies a sub-directory that will be 
   //      created under the directory specified by 
   //      the DISCONNECTED_EDIT_DB_PATH directives.</dd>
   //                                  
   // <dt><b>"DISCONNECTED_EDIT_DB_PATH"</b> (C++ Constant: kFME_DisconnectedEditDBPath)</dt>   
   // <dd>Used in conjunction with the <b>DISCONNECTED_EDIT_DB_NAME</b> directive. It specifies the 
   //     directory in which the <b>DISCONNECTED_EDIT_DB_NAME</b> will be created.  This 
   //     directive is optional and if it is not specified 
   //     then the value for a temporary directory
   //     (ie. FME_TEMP) will be assumed. </dd>
   // </dl>
   */
   virtual IFMEDisconnectedEdit* disconnectedEdit(const IFMEStringArray* directives) = 0;

   //-------------------------------------------------------------------
   /*! This method returns the transformer manager object used for the session.  
   // The caller must not delete it.  
   //
   // If NULL is returned then the object could not be created and the 
   // application should use the getLastError*() functions
   // to retrieve the error.
   // 
   // This directives array is for future use, thus NULL should be passed in
   // */
   virtual IFMETransformerManager* transformerManager(const IFMEStringArray* directives) = 0;
   

   //-------------------------------------------------------------------
   // Oct 14, 2005 - Kevin Wiebe
   /*! This function returns the IFMEGeometryTools object used
   // for the session.  The caller must not delete it.
   */
   virtual IFMEGeometryTools *getGeometryTools() const = 0;

   //-------------------------------------------------------------------
   // Jan 04, 2006 - Matt Adam
   /*! For internal use only.
   */
   virtual IFMEWorkspaceLoader *createWorkspaceLoader(IFMEString& workspaceName) const = 0;

   //-------------------------------------------------------------------
   // Jan 04, 2006 - Matt Adam
   /*! For internal use only.
   */
   virtual void destroyWorkspaceLoader(IFMEWorkspaceLoader *& workspaceLoader) const = 0;

protected:
   
   //-------------------------------------------------------------------
   // Constructor
   IFMESession() {};
   
   //-------------------------------------------------------------------
   // Destructor
   virtual ~IFMESession() {};                      
   
private:
   // Hide methods that we don't want called.
   
   //---------------------------------------------------------------
   // copy constructor
   IFMESession(const IFMESession &other);
   
   //---------------------------------------------------------------
   // assignment operator.
   IFMESession &operator=(const IFMESession &other);
};
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -