My Project
Public Member Functions | Static Public Attributes | Friends | List of all members
resqml2_0_1::Grid2dRepresentation Class Reference
Inheritance diagram for resqml2_0_1::Grid2dRepresentation:
resqml2_0_1::AbstractSurfaceRepresentation resqml2::AbstractRepresentation resqml2::AbstractObject

Public Member Functions

 Grid2dRepresentation (resqml2::AbstractFeatureInterpretation *interp, resqml2::AbstractLocal3dCrs *crs, const std::string &guid, const std::string &title)
 
 Grid2dRepresentation (gsoap_resqml2_0_1::_resqml2__Grid2dRepresentation *fromGsoap)
 
 ~Grid2dRepresentation ()
 
virtual std::string getXmlTag () const
 
std::string getHdfProxyUuid () const
 
ULONG64 getNodeCountAlongIAxis () const
 
ULONG64 getNodeCountAlongJAxis () const
 
ULONG64 getXyzPointCountOfPatch (const unsigned int &patchIndex) const
 
void getXyzPointsOfPatch (const unsigned int &patchIndex, double *xyzPoints) const
 
void getZValues (double *values) const
 
void getZValuesInGlobalCrs (double *values) const
 
double getXOrigin () const
 
double getYOrigin () const
 
double getXOriginInGlobalCrs () const
 
double getYOriginInGlobalCrs () const
 
double getXJOffset () const
 
double getYJOffset () const
 
double getXJOffsetInGlobalCrs () const
 
double getYJOffsetInGlobalCrs () const
 
double getXIOffset () const
 
double getYIOffset () const
 
double getXIOffsetInGlobalCrs () const
 
double getYIOffsetInGlobalCrs () const
 
bool isJSpacingConstant () const
 
bool isISpacingConstant () const
 
double getJSpacing () const
 
void getJSpacing (double *const jSpacings) const
 
double getISpacing () const
 
void getISpacing (double *const iSpacings) const
 
void setGeometryAsArray2dOfLatticePoints3d (const unsigned int &numPointsInFastestDirection, const unsigned int &numPointsInSlowestDirection, const double &xOrigin, const double &yOrigin, const double &zOrigin, const double &xOffsetInFastestDirection, const double &yOffsetInFastestDirection, const double &zOffsetInFastestDirection, const double &xOffsetInSlowestDirection, const double &yOffsetInSlowestDirection, const double &zOffsetInSlowestDirection, const double &spacingInFastestDirection, const double &spacingInSlowestDirection)
 
void setGeometryAsArray2dOfExplicitZ (double *zValues, const unsigned int &numI, const unsigned int &numJ, resqml2::AbstractHdfProxy *proxy, Grid2dRepresentation *supportingGrid2dRepresentation, const unsigned int &startIndexI=0, const unsigned int &startIndexJ=0, const int &indexIncrementI=1, const int &indexIncrementJ=1)
 
void setGeometryAsArray2dOfExplicitZ (double *zValues, const unsigned int &numI, const unsigned int &numJ, resqml2::AbstractHdfProxy *proxy, const double &originX, const double &originY, const double &originZ, const double &offsetIX, const double &offsetIY, const double &offsetIZ, const double &spacingI, const double &offsetJX, const double &offsetJY, const double &offsetJZ, const double &spacingJ)
 
std::string getSupportingRepresentationUuid () const
 
Grid2dRepresentationgetSupportingRepresentation ()
 
int getIndexOriginOnSupportingRepresentation () const
 
int getIndexOriginOnSupportingRepresentation (const unsigned int &dimension) const
 
int getNodeCountOnSupportingRepresentation (const unsigned int &dimension) const
 
int getIndexOffsetOnSupportingRepresentation (const unsigned int &dimension) const
 
unsigned int getPatchCount () const
 
- Public Member Functions inherited from resqml2_0_1::AbstractSurfaceRepresentation
virtual ~AbstractSurfaceRepresentation ()
 
void pushBackOuterRing (PolylineRepresentation *outerRing)
 
void setSurfaceRole (const gsoap_resqml2_0_1::resqml2__SurfaceRole &surfaceRole)
 
const gsoap_resqml2_0_1::resqml2__SurfaceRole & getSurfaceRole () const
 
- Public Member Functions inherited from resqml2::AbstractRepresentation
virtual ~AbstractRepresentation ()
 
class AbstractLocal3dCrsgetLocalCrs () const
 
virtual std::string getLocalCrsUuid () const
 
class AbstractHdfProxygetHdfProxy () const
 
const std::vector< class AbstractProperty * > & getPropertySet () const
 
std::vector< class AbstractValuesProperty * > getValuesPropertySet () const
 
unsigned int getValuesPropertyCount () const
 
class AbstractValuesPropertygetValuesProperty (const unsigned int &index) const
 
void setInterpretation (class AbstractFeatureInterpretation *interp)
 
class AbstractFeatureInterpretationgetInterpretation () const
 
std::string getInterpretationUuid () const
 
std::string getInterpretationContentType () const
 
void addSubRepresentation (SubRepresentation *subRep)
 
std::vector< SubRepresentation * > getSubRepresentationSet () const
 
unsigned int getSubRepresentationCount () const
 
SubRepresentationgetSubRepresentation (const unsigned int &index) const
 
std::vector< SubRepresentation * > getFaultSubRepresentationSet () const
 
unsigned int getFaultSubRepresentationCount () const
 
SubRepresentationgetFaultSubRepresentation (const unsigned int &index) const
 
ULONG64 getXyzPointCountOfAllPatches () const
 
void getXyzPointsOfPatchInGlobalCrs (const unsigned int &patchIndex, double *xyzPoints) const
 
void getXyzPointsOfAllPatches (double *xyzPoints) const
 
void getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const
 
AbstractRepresentationgetSeismicSupportOfPatch (const unsigned int &patchIndex)
 
void pushBackIntoRepresentationSet (class RepresentationSetRepresentation *repSet, bool xml=true)
 
void setHdfProxy (resqml2::AbstractHdfProxy *proxy)
 
void addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, double *inlines, double *crosslines, const unsigned int &pointCount, resqml2::AbstractRepresentation *seismicSupport, resqml2::AbstractHdfProxy *proxy)
 
void addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, const double &startInline, const double &incrInline, const unsigned int &countInline, const double &startCrossline, const double &incrCrossline, const unsigned int &countCrossline, resqml2::AbstractRepresentation *seismicSupport)
 
void addSeismic2dCoordinatesToPatch (const unsigned int patchIndex, double *lineAbscissa, const unsigned int &pointCount, resqml2::AbstractRepresentation *seismicSupport, resqml2::AbstractHdfProxy *proxy)
 
void getSeismicLineAbscissaOfPointsOfPatch (const unsigned int &patchIndex, double *values)
 
- Public Member Functions inherited from resqml2::AbstractObject
bool isPartial () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (const time_t &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (const time_t &lastUpdate)
 
void setFormat (const std::string &format)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setMetadata (const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
gsoap_resqml2_0_1::eml__AbstractCitedDataObject * getGsoapProxy () const
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml__DataObjectReference * newResqmlReference () const
 
gsoap_resqml2_0_1::resqml2__ContactElementReference * newResqmlContactElementReference () const
 
common::EpcDocumentgetEpcDocument () const
 
virtual std::string getXmlNamespace () const
 
virtual std::string getResqmlVersion () const
 
std::string getContentType () const
 
std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
unsigned int getAliasCount () const
 
std::string getAliasAuthorityAtIndex (const unsigned int &index) const
 
std::string getAliasTitleAtIndex (const unsigned int &index) const
 
const std::vector< resqml2::Activity * > & getActivitySet () const
 
void addOrSetExtraMetadata (const std::string &key, const std::string &value)
 
std::tr1::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::string getExtraMetadata (const std::string &key)
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (const unsigned int &index) const
 
std::string getExtraMetadataStringValueAtIndex (const unsigned int &index) const
 

Static Public Attributes

static const char * XML_TAG = "Grid2dRepresentation"
 
- Static Public Attributes inherited from resqml2::AbstractRepresentation
static const char * XML_TAG = "AbstractRepresentation"
 

Friends

void Grid2dSetRepresentation::pushBackGeometryPatch (double *zValues, const unsigned int &numI, const unsigned int &numJ, resqml2::AbstractHdfProxy *proxy, Grid2dRepresentation *supportingGrid2dRepresentation, const unsigned int &startIndexI, const unsigned int &startIndexJ, const int &indexIncrementI, const int &indexIncrementJ)
 

Additional Inherited Members

- Public Types inherited from resqml2::AbstractRepresentation
enum  indexableElement {
  NODE = 0, EDGE = 1, FACE = 2, VOLUME = 3,
  PILLAR = 4
}
 
- Protected Member Functions inherited from resqml2_0_1::AbstractSurfaceRepresentation
 AbstractSurfaceRepresentation (resqml2::AbstractFeatureInterpretation *interp, resqml2::AbstractLocal3dCrs *crs)
 
 AbstractSurfaceRepresentation (gsoap_resqml2_0_1::resqml2__AbstractSurfaceRepresentation *fromGsoap)
 
gsoap_resqml2_0_1::resqml2__Point3dFromRepresentationLatticeArray * getPoint3dFromRepresentationLatticeArrayFromPointGeometryPatch (gsoap_resqml2_0_1::resqml2__PointGeometry *patch) const
 
gsoap_resqml2_0_1::resqml2__PointGeometry * createArray2dOfLatticePoints3d (const unsigned int &numPointsInFastestDirection, const unsigned int &numPointsInSlowestDirection, const double &xOrigin, const double &yOrigin, const double &zOrigin, const double &xOffsetInFastestDirection, const double &yOffsetInFastestDirection, const double &zOffsetInFastestDirection, const double &xOffsetInSlowestDirection, const double &yOffsetInSlowestDirection, const double &zOffsetInSlowestDirection, const double &spacingInFastestDirection, const double &spacingInSlowestDirection)
 
gsoap_resqml2_0_1::resqml2__PointGeometry * createArray2dOfExplicitZ (const unsigned int &patchIndex, double *zValues, const unsigned int &numI, const unsigned int &numJ, resqml2::AbstractHdfProxy *proxy, class Grid2dRepresentation *supportingRepresentation, const unsigned int &startGlobalIndex=0, const int &indexIncrementI=1, const int &indexIncrementJ=1)
 
gsoap_resqml2_0_1::resqml2__PointGeometry * createArray2dOfExplicitZ (const unsigned int &patchIndex, double *zValues, const unsigned int &numI, const unsigned int &numJ, resqml2::AbstractHdfProxy *proxy, const double &originX, const double &originY, const double &originZ, const double &offsetIX, const double &offsetIY, const double &offsetIZ, const double &spacingI, const double &offsetJX, const double &offsetJY, const double &offsetJZ, const double &spacingJ)
 
- Protected Member Functions inherited from resqml2::AbstractRepresentation
 AbstractRepresentation (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject)
 
 AbstractRepresentation (class AbstractFeatureInterpretation *interp, class AbstractLocal3dCrs *crs)
 
 AbstractRepresentation (gsoap_resqml2_0_1::resqml2__AbstractRepresentation *fromGsoap)
 
void pushBackSeismicSupport (AbstractRepresentation *seismicSupport)
 
void setXmlInterpretation (class AbstractFeatureInterpretation *interp)
 
gsoap_resqml2_0_1::resqml2__PointGeometry * createPointGeometryPatch2_0_1 (const unsigned int &patchIndex, double *points, unsigned long long *numPoints, const unsigned int &numDimensionsInArray, resqml2::AbstractHdfProxy *proxy)
 
std::string getHdfProxyUuidFromPointGeometryPatch (gsoap_resqml2_0_1::resqml2__PointGeometry *patch) const
 
gsoap_resqml2_0_1::resqml2__Seismic2dCoordinates * getSeismic2dCoordinates (const unsigned int &patchIndex) const
 
gsoap_resqml2_0_1::resqml2__Seismic3dCoordinates * getSeismic3dCoordinates (const unsigned int &patchIndex) const
 
- Protected Member Functions inherited from resqml2::AbstractObject
 AbstractObject (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject)
 Indicate whether methods update the XML (gSoap) or only the C++ classes of the API. More...
 
 AbstractObject (gsoap_resqml2_0_1::eml__AbstractCitedDataObject *proxy=nullptr)
 
void initMandatoryMetadata ()
 
void setMetadata (const std::string &guid, const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
- Static Protected Member Functions inherited from resqml2::AbstractObject
static void addActivityToResqmlObject (resqml2::Activity *activity, AbstractObject *resqmlObject)
 
- Protected Attributes inherited from resqml2_0_1::AbstractSurfaceRepresentation
std::vector< PolylineRepresentation * > outerRingSet
 
- Protected Attributes inherited from resqml2::AbstractRepresentation
class AbstractFeatureInterpretationinterpretation
 
resqml2::AbstractHdfProxyhdfProxy
 
class AbstractLocal3dCrslocalCrs
 
std::vector< AbstractRepresentation * > seismicSupportSet
 
std::vector< SubRepresentation * > subRepresentationSet
 
std::vector< AbstractProperty * > propertySet
 
std::vector< AbstractRepresentation * > seismicSupportedRepSet
 
std::vector< class RepresentationSetRepresentation * > representationSetRepresentationSet
 
- Protected Attributes inherited from resqml2::AbstractObject
gsoap_resqml2_0_1::eml__AbstractCitedDataObject * gsoapProxy2_0_1
 
common::EpcDocumentepcDocument
 
std::vector< resqml2::Activity * > activitySet
 
bool updateXml
 

Constructor & Destructor Documentation

resqml2_0_1::Grid2dRepresentation::Grid2dRepresentation ( resqml2::AbstractFeatureInterpretation interp,
resqml2::AbstractLocal3dCrs crs,
const std::string &  guid,
const std::string &  title 
)

Creates an instance of this class in a gsoap context.

Parameters
interpThe interpretation this representation represents.
crsThe local CRS where the geometry of this representation is given.
guidThe guid to set to the new instance. If empty then a new guid will be generated.
titleA title for the instance to create.
resqml2_0_1::Grid2dRepresentation::Grid2dRepresentation ( gsoap_resqml2_0_1::_resqml2__Grid2dRepresentation *  fromGsoap)
inline

Creates an instance of this class by wrapping a gsoap instance.

resqml2_0_1::Grid2dRepresentation::~Grid2dRepresentation ( )
inline

Destructor does nothing since the memory is managed by the gsoap context.

Member Function Documentation

int Grid2dRepresentation::getIndexOffsetOnSupportingRepresentation ( const unsigned int &  dimension) const

Get the index offset of the nodes of the current geometry on a particular dimension of the supporting representation.

int Grid2dRepresentation::getIndexOriginOnSupportingRepresentation ( ) const

Get the index of the origin of the current geometry on the supporting representation. The index is given by means of the formula iOrigin + jOrigin*iNodeCountOnSupportingRepresentation

int Grid2dRepresentation::getIndexOriginOnSupportingRepresentation ( const unsigned int &  dimension) const

Get the index of the origin of the current geometry on a particular dimension of the supporting representation.

double Grid2dRepresentation::getISpacing ( ) const

Get the constant I (slowest) spacing of this 2d grid representation.

Returns
The constant spacing in the I direction of the 2d grid representation.
void Grid2dRepresentation::getISpacing ( double *const  iSpacings) const

Get all the I (fastest) spacings of this 2d grid representation.

Parameters
iSpacingsThe count of this array souhld be ICellCount - 1. It must be preallocated.
Returns
All the spacings in the I direction of the 2d grid representation.
double Grid2dRepresentation::getJSpacing ( ) const

Get the constant J (fastest) spacing of this 2d grid representation.

Returns
The constant spacing in the J direction of the 2d grid representation.
void Grid2dRepresentation::getJSpacing ( double *const  jSpacings) const

Get all the J (fastest) spacings of this 2d grid representation.

Parameters
jSpacingsThe count of this array souhld be JCellCount - 1. It must be preallocated.
Returns
All the spacings in the J direction of the 2d grid representation.
ULONG64 Grid2dRepresentation::getNodeCountAlongIAxis ( ) const

Get the number of nodes in the I direction of the lattice 2d grid

ULONG64 Grid2dRepresentation::getNodeCountAlongJAxis ( ) const

Get the number of nodes in the J direction of the lattice 2d grid

int Grid2dRepresentation::getNodeCountOnSupportingRepresentation ( const unsigned int &  dimension) const

Get the number of nodes of the current geometry which is extracted from a particular dimension of the supporting representation.

Grid2dRepresentation* resqml2_0_1::Grid2dRepresentation::getSupportingRepresentation ( )
inline

Get the supporting representation of this representation

std::string Grid2dRepresentation::getSupportingRepresentationUuid ( ) const

Get the supporting representation uuid of this representation. Useful when the supporting representation is not accessible. At least we know its uuid.

double Grid2dRepresentation::getXIOffset ( ) const

Get the X (in local crs) offset between two consecutive nodes lying on the I axis. X coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The X offset point otherwise.
double Grid2dRepresentation::getXIOffsetInGlobalCrs ( ) const

Get the X (in global crs) offset between two consecutive nodes lying on the I axis. X coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The X offset point otherwise.
double Grid2dRepresentation::getXJOffset ( ) const

Get the X (in local crs) offset between two consecutive nodes lying on the J axis. X coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The X offset point otherwise.
double Grid2dRepresentation::getXJOffsetInGlobalCrs ( ) const

Get the X (in global crs) offset between two consecutive nodes lying on the J axis. X coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The X offset point otherwise.
virtual std::string resqml2_0_1::Grid2dRepresentation::getXmlTag ( ) const
inlinevirtual

Get the XML tag for the XML serialization of this instance

Implements resqml2::AbstractObject.

double Grid2dRepresentation::getXOrigin ( ) const

Get the X origin of this geometry. X coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The X origin point otherwise.
double Grid2dRepresentation::getXOriginInGlobalCrs ( ) const

Get the X origin of this geometry. X coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The X origin point otherwise.
ULONG64 Grid2dRepresentation::getXyzPointCountOfPatch ( const unsigned int &  patchIndex) const
virtual

Get the xyz point count in a given patch.

Implements resqml2::AbstractRepresentation.

void Grid2dRepresentation::getXyzPointsOfPatch ( const unsigned int &  patchIndex,
double *  xyzPoints 
) const
virtual

Get all the XYZ points of a particular patch of this representation. XYZ points are given in the local CRS.

Parameters
xyzPointsA linearized 2d array where the first (quickest) dimension is coordinate dimension (XYZ) and second dimension is vertex dimension. It must be pre allocated.

Implements resqml2::AbstractRepresentation.

double Grid2dRepresentation::getYIOffset ( ) const

Get the Y (in local crs) offset between two consecutive nodes lying on the I axis. Y coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The Y offset point otherwise.
double Grid2dRepresentation::getYIOffsetInGlobalCrs ( ) const

Get the Y (in global crs) offset between two consecutive nodes lying on the I axis. Y coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The Y offset point otherwise.
double Grid2dRepresentation::getYJOffset ( ) const

Get the Y (in local crs) offset between two consecutive nodes lying on the J axis. Y coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The Y offset point otherwise.
double Grid2dRepresentation::getYJOffsetInGlobalCrs ( ) const

Get the Y (in global crs) offset between two consecutive nodes lying on the J axis. Y coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The Y offset point otherwise.
double Grid2dRepresentation::getYOrigin ( ) const

Get the Y origin of this geometry. Y coordinate is given in the local CRS.

Returns
A double.NAN coordinate if something's wrong. The Y origin point otherwise.
double Grid2dRepresentation::getYOriginInGlobalCrs ( ) const

Get the Y origin of this geometry. Y coordinate is given in the global CRS.

Returns
A double.NAN coordinate if something's wrong. The Y origin point otherwise.
void Grid2dRepresentation::getZValues ( double *  values) const

Get all the z values of a patch located at a specific index of the geometry points. Z Values are given in the local CRS.

Parameters
valuesAll the z values of the selected patch. i dimension is the quickest.
void Grid2dRepresentation::getZValuesInGlobalCrs ( double *  values) const

Get all the z values of a patch located at a specific index of the geometry points. Z Values are given in the global CRS.

Parameters
valuesAll the z values of the selected patch. i dimension is the quickest.
bool Grid2dRepresentation::isISpacingConstant ( ) const

Checkes wether the spacing between nodes on I dimension is constant or not.

bool Grid2dRepresentation::isJSpacingConstant ( ) const

Checkes wether the spacing between nodes on J dimension is constant or not.

void Grid2dRepresentation::setGeometryAsArray2dOfExplicitZ ( double *  zValues,
const unsigned int &  numI,
const unsigned int &  numJ,
resqml2::AbstractHdfProxy proxy,
Grid2dRepresentation supportingGrid2dRepresentation,
const unsigned int &  startIndexI = 0,
const unsigned int &  startIndexJ = 0,
const int &  indexIncrementI = 1,
const int &  indexIncrementJ = 1 
)

Set the geometry patch for a lattice 2d grid. The set geometry is an array 2d of explicit Z based on an existing representation

void Grid2dRepresentation::setGeometryAsArray2dOfExplicitZ ( double *  zValues,
const unsigned int &  numI,
const unsigned int &  numJ,
resqml2::AbstractHdfProxy proxy,
const double &  originX,
const double &  originY,
const double &  originZ,
const double &  offsetIX,
const double &  offsetIY,
const double &  offsetIZ,
const double &  spacingI,
const double &  offsetJX,
const double &  offsetJY,
const double &  offsetJZ,
const double &  spacingJ 
)

Set the geometry patch for a lattice 2d grid. The set geometry is an array 2d of explicit Z.

void Grid2dRepresentation::setGeometryAsArray2dOfLatticePoints3d ( const unsigned int &  numPointsInFastestDirection,
const unsigned int &  numPointsInSlowestDirection,
const double &  xOrigin,
const double &  yOrigin,
const double &  zOrigin,
const double &  xOffsetInFastestDirection,
const double &  yOffsetInFastestDirection,
const double &  zOffsetInFastestDirection,
const double &  xOffsetInSlowestDirection,
const double &  yOffsetInSlowestDirection,
const double &  zOffsetInSlowestDirection,
const double &  spacingInFastestDirection,
const double &  spacingInSlowestDirection 
)

Set the geometry patch for a lattice 2d grid. The set geometry is an array 2d of lattice points3d.


The documentation for this class was generated from the following files: