The source code distribution was designed with the following goals in mind.
-
Users should be able to build the Plugin without referencing too many source files or using makefiles.
-
Clear separation between user modified code and read-only API code.
-
Upgrading the API to a new version should be as easy as possible.
Sample Distribution
-
Sample\ - Solution directory for the plugin package.
-
Hs_Sample\ - Project directory for the Plugin Package.
-
HsConfiguration.h - Plugin Package configuration header file. Read-only.
-
HsConfiguration.cpp - Plugin Package configuration implementation file.
-
HsAnalysis.h - HS/core stress analysis interface header file. Read-only.
-
HsAnalysis.cpp - HS/core stress analysis interface implementation file.
-
Ids.h - Header file defining IDs used in the plugin package.
-
CoreAnalysis.h - Core stress analysis logic header file.
-
CoreAnalysis.cpp - Core stress analysis logic implementation file.
-
-
hs_#_#_#\ - HS plugin API directory
-
hs.h - The master API include file. Read-only.
-
src\ - Internal HS API implementation files. Read-only.
-
-
To reference the HyperX API simply include the "hs" header file.
#include <hs.h>
Note that all HyperX types use the "hs" namespace. In header files, prefer to use the hs namepace. Header files can be pulled into many other files. Use the full namespace to avoid naming conflicts.
// A header file. hs::AnalysisResult ComputePlyStrength(const hs::Ply& ply)
In implementation (cpp) file you can use add a using directive to avoid the extra typing.
// An implementation file
using namespace hs;
AnalysisResult ComputePlyStrength(const Ply& ply)
{
// ...
}
For full instructions see the tutorial.
-
Unzip the source code files.
-
Create a DLL project in your IDE.
-
Add the top level files to the project.
HsConfiguration.*,HsAnalysis.*,Ids.h,CoreAnalysis.* -
Add a include directory for the hs_#_#_# folder.
-
Compile.
For full instructions see: Adding a New Version of the API.
-
Unzip the source code files.
-
Change the include directory to the new
hs_#_#_#folder. -
Recompile.
-
Fix compiler errors. Refer to the release notes for the required changes to your user code. See Analysis Plugin Release Notes.