本文整理汇总了C++中THROW_CIOERR函数的典型用法代码示例。如果您正苦于以下问题:C++ THROW_CIOERR函数的具体用法?C++ THROW_CIOERR怎么用?C++ THROW_CIOERR使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了THROW_CIOERR函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: saveContext
// saves full information stored in this status
// temporary variables are NOT stored
contextIOResultType
MisesMatStatus :: saveContext(DataStream &stream, ContextMode mode, void *obj)
{
contextIOResultType iores;
// save parent class status
if ( ( iores = StructuralMaterialStatus :: saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// write raw data
// write plastic strain (vector)
if ( ( iores = plasticStrain.storeYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// write cumulative plastic strain (scalar)
if ( !stream.write(kappa) ) {
THROW_CIOERR(CIO_IOERR);
}
// write damage (scalar)
if ( !stream.write(damage) ) {
THROW_CIOERR(CIO_IOERR);
}
return CIO_OK;
}
示例2: restoreIPContext
contextIOResultType
FiberedCrossSection :: restoreIPContext(DataStream &stream, ContextMode mode, GaussPoint *masterGp)
//
// restores full material context (saves state variables, that completely describe
// current state)
//
// restores also slaves of master gp
//
{
contextIOResultType iores;
if ( ( iores = CrossSection :: restoreIPContext(stream, mode, masterGp) ) != CIO_OK ) {
THROW_CIOERR(iores); // saved masterGp
}
for ( int i = 1; i <= numberOfFibers; i++ ) {
// creates also slaves if they don't exists
GaussPoint *slaveGP = this->giveSlaveGaussPoint(masterGp, i - 1);
StructuralMaterial *mat = dynamic_cast< StructuralMaterial * >( domain->giveMaterial( fiberMaterials.at(i) ) );
if ( ( iores = mat->restoreIPContext(stream, mode, slaveGP) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
return CIO_OK;
}
示例3: restoreContext
contextIOResultType XfemManager :: restoreContext(DataStream *stream, ContextMode mode, void *obj)
{
contextIOResultType iores;
if ( mode & CM_Definition ) {
if ( !stream->read(& this->numberOfEnrichmentItems, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
this->enrichmentItemList.resize(this->numberOfEnrichmentItems);
}
for ( int i = 1; i <= this->numberOfEnrichmentItems; i++ ) {
EnrichmentItem *obj;
if ( mode & CM_Definition ) {
std :: string name;
if ( !stream->read(name) ) {
THROW_CIOERR(CIO_IOERR);
}
std :: unique_ptr< EnrichmentItem > ei( classFactory.createEnrichmentItem(name.c_str(), i, this, this->domain) );
obj = ei.get();
enrichmentItemList.insert(enrichmentItemList.begin() + i-1, std :: move(ei));
} else {
obj = this->giveEnrichmentItem(i);
}
if ( ( iores = obj->restoreContext(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(CIO_IOERR);
}
}
return CIO_OK;
}
示例4: restoreContext
contextIOResultType Set :: restoreContext(DataStream &stream, ContextMode mode, void *obj)
{
contextIOResultType iores;
if ( ( iores = FEMComponent :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( mode & CM_Definition ) {
if ( ( iores = elements.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = elementBoundaries.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = elementEdges.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = nodes.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
this->totalNodes.clear();
return CIO_OK;
}
示例5: saveContext
contextIOResultType SimpleSlaveDof :: saveContext(DataStream &stream, ContextMode mode, void *obj)
//
// saves full node context (saves state variables, that completely describe
// current state)
//
{
contextIOResultType iores;
if ( ( iores = Dof :: saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( mode & CM_Definition ) {
if ( mode & CM_DefinitionGlobal ) {
int _masterGlobNum = dofManager->giveDomain()->giveDofManager(masterDofMngr)->giveGlobalNumber();
if ( !stream.write(_masterGlobNum) ) {
THROW_CIOERR(CIO_IOERR);
}
} else {
if ( !stream.write(masterDofMngr) ) {
THROW_CIOERR(CIO_IOERR);
}
}
}
return CIO_OK;
}
示例6: restoreContext
contextIOResultType
RheoChainMaterialStatus :: restoreContext(DataStream *stream, ContextMode mode, void *obj)
//
// restore the state variables from a stream
//
{
contextIOResultType iores;
if ( ( iores = StructuralMaterialStatus :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// read raw data
for ( int i = 0; i < nUnits; i++ ) {
if ( ( iores = hiddenVars [ i ].restoreYourself(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
if ( ( iores = shrinkageStrain.restoreYourself(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
return CIO_OK;
}
示例7: restoreContext
contextIOResultType
TransportMaterialStatus :: restoreContext(DataStream &stream, ContextMode mode, void *obj)
//
// restores full material context (saves state variables, that completely describe
// current state)
//
{
contextIOResultType iores;
if ( ( iores = MaterialStatus :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = gradient.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = field.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = flux.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
return CIO_OK;
}
示例8: restoreContext
contextIOResultType StaticStructural :: restoreContext(DataStream *stream, ContextMode mode, void *obj)
{
contextIOResultType iores;
int closeFlag = 0;
int istep, iversion;
FILE *file = NULL;
this->resolveCorrespondingStepNumber(istep, iversion, obj);
if ( stream == NULL ) {
if ( !this->giveContextFile(& file, istep, iversion, contextMode_read) ) {
THROW_CIOERR(CIO_IOERR); // override
}
stream = new FileDataStream(file);
closeFlag = 1;
}
if ( ( iores = StructuralEngngModel :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( ( iores = this->field->restoreContext(*stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( closeFlag ) {
fclose(file);
delete stream;
stream = NULL;
}
return CIO_OK;
}
示例9: saveContext
contextIOResultType MasterDof :: saveContext(DataStream &stream, ContextMode mode, void *obj)
//
// saves full node context (saves state variables, that completely describe
// current state)
//
{
contextIOResultType iores;
if ( ( iores = Dof :: saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( mode & CM_Definition ) {
if ( !stream.write(bc) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( !stream.write(ic) ) {
THROW_CIOERR(CIO_IOERR);
}
}
// store equation number of receiver
if ( !stream.write(equationNumber) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( ( mode & CM_UnknownDictState ) || ( dofManager->giveDomain()->giveEngngModel()->requiresUnknownsDictionaryUpdate() ) ) {
if ( ( iores = unknowns.saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
return CIO_OK;
}
示例10: restoreContext
contextIOResultType
PrimaryField :: restoreContext(DataStream &stream, ContextMode mode)
{
contextIOResultType iores(CIO_IOERR);
if ( !stream.read(actualStepNumber) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( !stream.read(actualStepIndx) ) {
THROW_CIOERR(CIO_IOERR);
}
for ( int i = 0; i <= nHistVectors; i++ ) {
if ( ( iores = solutionVectors[i].restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
for ( int i = 0; i <= nHistVectors; i++ ) {
solStepList[i] = TimeStep(emodel);
if ( ( iores = solStepList[i].restoreContext(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
}
return CIO_OK;
}
示例11: saveContext
contextIOResultType
PatchIntegrationRule :: saveContext(DataStream *stream, ContextMode mode, void *obj)
{
//
// saves full context (saves state variables, that completely describe
// current state)
//
// save parent data
contextIOResultType iores;
if ( ( iores = IntegrationRule :: saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// save patch data
if ( this->patch ) {
// store patch type
int _type = this->patch->givePatchType();
if ( !stream->write(& _type, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
patch->saveContext(stream, mode, obj);
} else {
OOFEM_ERROR("saveContex : can't store NULL patch");
}
return CIO_OK;
}
示例12: restoreContext
contextIOResultType
PatchIntegrationRule :: restoreContext(DataStream *stream, ContextMode mode, void *obj)
{
//
// restores full element context (saves state variables, that completely describe
// current state)
//
contextIOResultType iores;
if ( stream == NULL ) {
OOFEM_ERROR("restoreContex : can't write into NULL stream");
}
if ( ( iores = IntegrationRule :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// restore patch data
if ( this->patch ) {
delete this->patch;
}
int _ptype;
if ( !stream->read(& _ptype, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
// create new patch
this->patch = CreateUsrDefPatch( ( Patch :: PatchType ) _ptype, this->giveElement() );
this->patch->restoreContext(stream, mode, obj);
return CIO_OK;
}
示例13: restoreContext
contextIOResultType
MisesMatStatus :: restoreContext(DataStream &stream, ContextMode mode, void *obj)
//
// restores full information stored in stream to this Status
//
{
contextIOResultType iores;
// read parent class status
if ( ( iores = StructuralMaterialStatus :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// read plastic strain (vector)
if ( ( iores = plasticStrain.restoreYourself(stream) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
// read cumulative plastic strain (scalar)
if ( !stream.read(kappa) ) {
THROW_CIOERR(CIO_IOERR);
}
// read damage (scalar)
if ( !stream.read(damage) ) {
THROW_CIOERR(CIO_IOERR);
}
return CIO_OK; // return succes
}
示例14: saveContext
contextIOResultType
BinghamFluidMaterial2Status :: saveContext(DataStream *stream, ContextMode mode, void *obj)
//
// saves full ms context (saves state variables, that completely describe
// current state)
// saving the data in TDictionary is left to material (yield crit. level).
{
contextIOResultType iores;
if ( stream == NULL ) {
_error("saveContex : can't write into NULL stream");
}
if ( ( iores = FluidDynamicMaterialStatus :: saveContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( !stream->write(& devStrainMagnitude, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( !stream->write(& devStressMagnitude, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( ( iores = deviatoricStrainVector.storeYourself(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
return CIO_OK;
}
示例15: restoreContext
contextIOResultType
BinghamFluidMaterial2Status :: restoreContext(DataStream *stream, ContextMode mode, void *obj)
//
// restores full material context (saves state variables, that completely describe
// current state)
//
{
// FloatArray *s;
contextIOResultType iores;
if ( stream == NULL ) {
_error("saveContex : can't write into NULL stream");
}
if ( ( iores = FluidDynamicMaterialStatus :: restoreContext(stream, mode, obj) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
if ( !stream->read(& devStrainMagnitude, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( !stream->read(& devStressMagnitude, 1) ) {
THROW_CIOERR(CIO_IOERR);
}
if ( ( iores = deviatoricStrainVector.restoreYourself(stream, mode) ) != CIO_OK ) {
THROW_CIOERR(iores);
}
return CIO_OK;
}