bool CameraSystem::writeToDirectory(const std::string& directory) const { if (!boost::filesystem::is_directory(directory)) { boost::filesystem::create_directory(directory); } // write extrinsic data boost::filesystem::path extrinsicPath(directory); extrinsicPath /= "camera_system_extrinsics.txt"; writeToTextFile(extrinsicPath.string()); // write intrinsic data for (size_t i = 0; i < m_cameraVec.size(); ++i) { std::ostringstream oss; if (m_cameraVec.at(i)->cameraName().empty()) { oss << "camera_" << i << "_camera_calib.yaml"; } else { oss << m_cameraVec.at(i)->cameraName() << "_camera_calib.yaml"; } boost::filesystem::path intrinsicPath(directory); intrinsicPath /= oss.str(); m_cameraVec.at(i)->writeParametersToYamlFile(intrinsicPath.string()); } return true; }
int main() { FILE *fp; int choice; int i=0; if ((fp = fopen("books.dat","rb+"))==NULL) //create binary file with blank records if file pointer returns NULL { printf("File does not exist\nCreating Binary File with blank records..."); struct book blankBook = { "","",0,0,0.0,0.0}; fp = fopen("books.dat","wb+"); for ( i = 1; i <= 100; i++ ) //write 100 blank book structures { fwrite( &blankBook, sizeof( struct book ), 1, fp ); } fclose ( fp ); main(); } else //menu { while ( ( choice = enterChoice() ) != 5 ) { switch ( choice ) { case 1: writeToTextFile( fp ); break; case 2: updatePrice( fp ); break; case 3: newBook( fp ); break; case 4: deleteBook( fp ); break; default: printf( "Incorrect choice\n" ); break; } } fclose( fp ); } return 0; }