void CShellStep<T>::Serialize( stepArchive &ar)
{
  try{
    if (!isSerialized()){
      setSerialized();
      
      char out[128] = "(53%) ";
      strcat(out, this->name);
#if     NOTIFICATION 
  if (CRepresentationStep::m_pStep->m_bWriteFile)
      CRepresentationStep::m_pStep->m_pScribView->Notify( out);
#else //NOTIFICATION 
#endif//NOTIFICATION 

#ifdef  SHOWPROGRESS
  if (CRepresentationStep::m_pStep->m_bWriteFile)
      CRepresentationStep::m_pStep->m_pScribView->progressBarUpdate( 53);
#endif//SHOWPROGRESS

      writePre(ar);
      ar << "'', " ;
      writeNtuple(ar, m_pCFS_faces, m_pCFS_faces->GetSize());
      writePost(ar);

#ifdef   WRITEEULER
      CBaseStep* pBaseStep=NULL;
      backPtr( pBaseStep);
      if (NULL!=pBaseStep){
        CManifold_solid_brepStep* pManifold_solid_brepStep=(CManifold_solid_brepStep*) pBaseStep;
        pManifold_solid_brepStep->eulerCnt.m_numOpenShells++;
      }
#endif//WRITEEULER

      int is = m_pCFS_faces->GetSize();
      for ( int i = 0; i< is; i++){
        CFaceStep* pS = (CFaceStep*)m_pCFS_faces->GetAt(i);
        if (NULL != pS){
          pS->m_pBack = this;
          pS->Serialize(ar);
        }
      }
    }

  }
  catch(...){
    ar << "\n/*Errors detected in CShellStep::Serialize #\n";
//  ar << getNum();
    ar <<   ", but continuing*/\n" ;    
  }
#if     NOTIFICATION 
  if (CRepresentationStep::m_pStep->m_bWriteFile)
  CRepresentationStep::m_pStep->m_pScribView->Notify("(65%) CShellStep::Serialize");
#else //NOTIFICATION 
#endif//NOTIFICATION 

#ifdef  SHOWPROGRESS
  if (CRepresentationStep::m_pStep->m_bWriteFile)
  CRepresentationStep::m_pStep->m_pScribView->progressBarUpdate( 65);
#endif//SHOWPROGRESS
}
Example #2
0
void CDirectionStep::Serialize(stepArchive &ar)
{
  if (!isSerialized()){
    setSerialized();
    try{  //ack move it inside
        writePre( ar);
        ar <<  "'" << m_szLabelName << "',";
        ASSERT( m_bGood);
        if(!m_bGood){
//        ar <<  "( 1.0, 1.0, 1.0)";// wh 03/12/02
          ar <<  "( ";
          ar <<  restol;
          ar <<       ", ";
          ar <<  restol;
          ar <<            ", ";
          ar <<  restol;
          ar <<                 ")";
          ar << "\n/* Danger, zero length vector changed to dummy value!*/\n";
        } else {
          writeDouble(ar, m_direction_ratios, sizeof(m_direction_ratios )/sizeof(m_direction_ratios[0]));
        }
        writePost( ar);
    }
    catch(...){
      ar << "\n/*Errors detected in CPlacementStep::Serialize #\n";
  //  ar << getNum();
      ar <<   ", but continuing*/\n" ;    
    }
  }

}
void CProduct_definitionStep::Serialize(stepArchive &ar)
{
#if 0
  try{
    if (!isSerialized()){
      setSerialized();
      writePre(ar);
      ar << "'',#";
      ar << m_pPRODUCT_DEFINITION0->getNum();
      ar << ",#";
      ar << m_pPRODUCT_DEFINITION1->getNum();
      ar << ",";
      if (NULL != m_pPRODUCT_DEFINITION2){
        ar << "#";
        ar << m_pPRODUCT_DEFINITION2->getNum();
      } else {
        ar << "$";
      }
      writePost(ar);

      m_pPRODUCT_DEFINITION0->Serialize( ar);
      m_pPRODUCT_DEFINITION1->Serialize( ar);
      if (NULL != m_pPRODUCT_DEFINITION2){
        m_pPRODUCT_DEFINITION2->Serialize( ar);
      }
    }
  }
  catch(...){
    ar << "\n/*Errors detected in ::Serialize #\n";
//  ar << getNum();
    ar <<   ", but continuing*/\n" ;    
  }
#endif
}
Example #4
0
void CPlaneStep::Serialize( stepArchive &ar) {
    try {
        if (!isSerialized()) {
            setSerialized();
            writePre( ar);
            ar << "'',#";
            ar << m_pPosition->getNum();
            writePost( ar);
            ASSERT( this == m_pPosition->m_pBack );
            m_pPosition->Serialize(ar);
        }
    }
    catch(...) {
        ar << "\n/*Errors detected in ";
        ar << m_szTheClass;
        ar << "::Serialize  #\n";
//  ar << getNum();
        ar <<   ", but continuing*/\n" ;
    }
}
Example #5
0
void CLineStep::Serialize(stepArchive &ar)
{
  try{
    if (!isSerialized()){
      setSerialized();
      writePre(ar);
      ar << "'',#";
      ar << m_pPos->getNum();
      ar << ",#";
      ar << m_pDir->getNum();
      writePost(ar);

      m_pPos->Serialize( ar);
      m_pDir->Serialize( ar);
    }
  }
  catch(...){
      setSerialized();
      ar << "\n/*Error caught in CCurveStep::Serialize!*/\n";
  }

}
Example #6
0
void CCurveStep::Serialize(stepArchive &ar)
{
  try{
    if (!isSerialized()){
      setSerialized();
      writePre(ar);
      ar << "'',#";
//    ar << m_rPos.getNum();
      ar << ",#";
//    ar << m_rDir.getNum();
      writePost(ar);

//    m_rPos.Serialize( ar);
//    m_rDir.Serialize( ar);
    }
  }
  catch(...){
      setSerialized();
      ar << "\n/*Error caught in CCurveStep::Serialize!*/\n";
  }

}
Example #7
0
File: exempel.c Project: Hkau/kth
int main(int argc, char * argv[]) {
    int vikt;
    float lengd;
    Post * p = (Post *) malloc(sizeof(Post));
    p -> next = (Post *) malloc(sizeof(Post));

    printf("Vad heter du? ");
    fscanf(stdin, "%s", p->name);

    printf("Hur lång är du (m)? ");
    fscanf(stdin, "%f", &lengd);

    printf("Vad väger du (kg)? ");
    fscanf(stdin, "%d", &vikt);

    p -> bmi = vikt / (lengd * lengd);

    writePost(p);

    free(p->next);
    free(p);

    return 0;
}