Переглянути джерело

updated documentation main page

Alois Zoitl 16 роки тому
батько
коміт
9a8700fad1
4 змінених файлів з 558 додано та 82 видалено
  1. 380 0
      .cdtproject
  2. 146 78
      .project
  3. 2 2
      opener.doxyfile
  4. 30 2
      src/opener_api.h

+ 380 - 0
.cdtproject

@@ -0,0 +1,380 @@
+<?xml version="1.0"?>
+<?eclipse-cdt version="2.0"?>
+<cdtproject id="org.eclipse.cdt.make.core.make">
+  <extension point="org.eclipse.cdt.core.BinaryParser" id="org.eclipse.cdt.core.ELF"/>
+  <data>
+    
+    
+    
+    
+    
+    
+    
+    
+    <item id="org.eclipse.cdt.core.pathentry">
+      
+      
+      
+      
+      
+      
+      <pathentry kind="src" path=""/>
+      
+      
+      
+      
+      
+      
+      <pathentry kind="out" path=""/>
+      
+      
+      
+      
+      
+      
+      <pathentry kind="con" path="org.eclipse.cdt.managedbuilder.MANAGED_CONTAINER"/>
+      
+      
+      
+      
+      
+      
+      <pathentry kind="con" path="org.eclipse.cdt.make.core.DISCOVERED_SCANNER_INFO"/>
+      
+      
+      
+    
+    
+    
+    </item>
+    
+    
+    
+    
+  
+    
+    
+    
+    <item id="scannerConfiguration">
+      
+      
+      
+      
+      
+      
+      <autodiscovery enabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile" problemReportingEnabled="true"/>
+      
+      
+      
+      
+      
+      
+      <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+        
+        
+        
+        
+        
+        
+        <buildOutputProvider>
+          
+          
+          
+          
+          
+          
+          <openAction enabled="true" filePath=""/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="true"/>
+          
+          
+          
+        
+        
+        
+        </buildOutputProvider>
+        
+        
+        
+        
+        
+        
+        <scannerInfoProvider id="specsFile">
+          
+          
+          
+          
+          
+          
+          <runAction useDefault="true" command="gcc" arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="true"/>
+          
+          
+          
+        
+        
+        
+        </scannerInfoProvider>
+        
+        
+        
+      
+      
+      
+      </profile>
+      
+      
+      
+      
+      
+      
+      <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+        
+        
+        
+        
+        
+        
+        <buildOutputProvider>
+          
+          
+          
+          
+          
+          
+          <openAction enabled="false" filePath=""/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="true"/>
+          
+          
+          
+        
+        
+        
+        </buildOutputProvider>
+        
+        
+        
+        
+        
+        
+        <scannerInfoProvider id="makefileGenerator">
+          
+          
+          
+          
+          
+          
+          <runAction useDefault="true" command="make" arguments="-f ${project_name}_scd.mk"/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="false"/>
+          
+          
+          
+        
+        
+        
+        </scannerInfoProvider>
+        
+        
+        
+      
+      
+      
+      </profile>
+      
+      
+      
+      
+      
+      
+      <profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+        
+        
+        
+        
+        
+        
+        <buildOutputProvider>
+          
+          
+          
+          
+          
+          
+          <openAction enabled="false" filePath=""/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="true"/>
+          
+          
+          
+        
+        
+        
+        </buildOutputProvider>
+        
+        
+        
+        
+        
+        
+        <scannerInfoProvider id="specsFile">
+          
+          
+          
+          
+          
+          
+          <runAction useDefault="true" command="gcc" arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="false"/>
+          
+          
+          
+        
+        
+        
+        </scannerInfoProvider>
+        
+        
+        
+      
+      
+      
+      </profile>
+      
+      
+      
+      
+      
+      
+      <profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+        
+        
+        
+        
+        
+        
+        <buildOutputProvider>
+          
+          
+          
+          
+          
+          
+          <openAction enabled="false" filePath=""/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="true"/>
+          
+          
+          
+        
+        
+        
+        </buildOutputProvider>
+        
+        
+        
+        
+        
+        
+        <scannerInfoProvider id="specsFile">
+          
+          
+          
+          
+          
+          
+          <runAction useDefault="true" command="gcc" arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"/>
+          
+          
+          
+          
+          
+          
+          <parser enabled="false"/>
+          
+          
+          
+        
+        
+        
+        </scannerInfoProvider>
+        
+        
+        
+      
+      
+      
+      </profile>
+      
+      
+      
+    
+    
+    
+    </item>
+    
+    
+    
+  
+  
+    
+    <item id="org.eclipse.cdt.make.core.buildtargets">
+      <buildTargets>
+        <target name="all" targetID="org.eclipse.cdt.make.MakeTargetBuilder" path="bin/pc">
+          <buildCommand>make</buildCommand>
+          <buildArguments></buildArguments>
+          <buildTarget>all</buildTarget>
+          <stopOnError>false</stopOnError>
+          <useDefaultCommand>true</useDefaultCommand>
+        </target>
+        <target name="clean" targetID="org.eclipse.cdt.make.MakeTargetBuilder" path="bin/pc">
+          <buildCommand>make</buildCommand>
+          <buildArguments></buildArguments>
+          <buildTarget>clean</buildTarget>
+          <stopOnError>false</stopOnError>
+          <useDefaultCommand>true</useDefaultCommand>
+        </target>
+      </buildTargets>
+    </item>
+    
+  
+  </data>
+</cdtproject>

+ 146 - 78
.project

@@ -1,78 +1,146 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>OpENer</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
-			<triggers>clean,full,incremental,</triggers>
-			<arguments>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
-					<value>clean</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>?name?</key>
-					<value></value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.append_environment</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.stopOnError</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.buildCommand</key>
-					<value>make</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.contents</key>
-					<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
-					<value>false</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.enableFullBuild</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.buildArguments</key>
-					<value></value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
-					<value>all</value>
-				</dictionary>
-				<dictionary>
-					<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
-					<value>all</value>
-				</dictionary>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.cdt.core.ccnature</nature>
-		<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
-		<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
-		<nature>org.eclipse.cdt.core.cnature</nature>
-	</natures>
-</projectDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>opener</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.cdt.make.core.makeBuilder</name>
+			<triggers>clean,full,incremental,</triggers>
+			<arguments>
+				<dictionary>
+					<key>org.eclipse.cdt.core.errorOutputParser</key>
+					<value>org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.VCErrorParser;</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.append_environment</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.build.arguments</key>
+					<value></value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.build.command</key>
+					<value>make</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.build.target.auto</key>
+					<value>all</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.build.target.clean</key>
+					<value>clean</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.build.target.inc</key>
+					<value>all</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
+					<value>false</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableFullBuild</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enabledIncrementalBuild</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.environment</key>
+					<value></value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.stopOnError</key>
+					<value>false</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
+					<value>true</value>
+				</dictionary>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+			<triggers>clean,full,incremental,</triggers>
+			<arguments>
+				<dictionary>
+					<key>?name?</key>
+					<value></value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.append_environment</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
+					<value>all</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.buildArguments</key>
+					<value></value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.buildCommand</key>
+					<value>make</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
+					<value>clean</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.contents</key>
+					<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
+					<value>false</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.enableFullBuild</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
+					<value>all</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.stopOnError</key>
+					<value>true</value>
+				</dictionary>
+				<dictionary>
+					<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
+					<value>true</value>
+				</dictionary>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.cdt.make.core.ScannerConfigBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+		<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+		<nature>org.eclipse.cdt.core.cnature</nature>
+		<nature>org.eclipse.cdt.make.core.makeNature</nature>
+		<nature>org.eclipse.cdt.make.core.ScannerConfigNature</nature>
+	</natures>
+</projectDescription>

+ 2 - 2
opener.doxyfile

@@ -31,7 +31,7 @@ PROJECT_NAME = "OpENer - Open Source EtherNet/IP(TM)  I/O Target Stack"
 # This could be handy for archiving the generated documentation or 
 # if some version control system is used.
 
-PROJECT_NUMBER = 1
+PROJECT_NUMBER = 1.0
 
 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
 # base path where the generated documentation will be put. 
@@ -268,7 +268,7 @@ TYPEDEF_HIDES_STRUCT = NO
 # Private class members and static file members will be hidden unless 
 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
 
-EXTRACT_ALL = NO
+EXTRACT_ALL = YES
 
 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
 # will be included in the documentation.

+ 30 - 2
src/opener_api.h

@@ -13,7 +13,7 @@
 #include "ciperror.h"
 #include <opener_user_conf.h>
 
-/*! \mainpage OpENer - Open Source EtherNet/IP(TM) I/O Target Stack Documentation
+/*! \mainpage OpENer - Open Source EtherNet/IP(TM) Communication Stack Documentation
  *
  * EtherNet/IP stack for adapter devices (connection target); supports multiple
  * I/O and explicit connections; includes features and objects required by the
@@ -24,8 +24,36 @@
  *
  * This is the introduction.
  *
- * \section install_sec Installation
+ * \section install_sec Building
  * How to compile, install and run OpENer on a specific platform.
+ * \subsection build_req_sec Requirements
+ * OpENer has been developed to be highly portable. The default version targets PCs
+ * with a POSIX operating system and a BSD-socket network interface. To test this
+ * version we recommend a Linux PC or Windows with Cygwin (www.cygwin.com)
+ * installed. You will need to have the following installed:
+ *   - gcc, make, binutils, etc.
+ * 
+ * for normal building. These should be installed on most Linux installations and
+ * are part of the development packages of cygwin.
+ * 
+ * For the development itself we recommend the use of Eclipse with the CTD plugin
+ * (www.eclipse.org). For your convinience OpENer already comes with an Eclipse
+ * project file. This allows to just import the OpENer source tree into Eclipse.
+ * 
+ * \subsection compile_pcs_sec Compile for PCs
+ *   -# Directly in the shell
+ *       -# Go into the bin/pc directory
+ *       -# Invoke make
+ *       -# For invoking opener type:\n
+ *          ./opener ipaddress subnetmask gateway domainname hostaddress macaddress\n
+ *          e.g., ./opener 192.168.0.2 255.255.255.0 192.168.0.1 test.com testdevice 00 15 C5 BF D0 87 
+ *   -# Within Eclipse
+ *       -# Import the project
+ *       -# Go to the bin/pc folder in the make targets view
+ *       -# Choose all from the make targets
+ *       -# The resulting executable will be in the directory
+ *           ./bin/pc
+ *       -# The commandline parameters can be set in the run configuration dialog of Eclipse
  * 
  * \section porting_sec Porting OpENer
  *