//
// $Id: sb_iden_t.cpp,v 1.2 2002/10/10 20:35:25 mcoletti Exp $
//
#include <iostream>
#include <fstream>
using namespace std;
#include <sdts++/builder/sb_Iden.h>
#include <sdts++/io/sio_8211Converter.h>
#include <sdts++/io/sio_Reader.h>
#include <sdts++/container/sc_Record.h>
// binary 32 bit integer converter function
sio_8211Converter_BI32 bi32_converter;
const char* iden_str = "Standard Idenification";
const char* version = "Standard Version";
const char* doc_ref = "Document Reference";
const char* profile_iden = "Profile";
const char* profile_version = "Profile Version";
const char* profile_reference = "Profile Reference";
const char* title = "A Title";
const char* data_id = "Data ID";
const char* data_struct = "Data Structure";
const char* map_date = "Map Date";
const char* data_date = "Data Creation Date";
const long scale = 1234567;
const char* comment = "no";
const char* composites = "Y";
const char* vector_geometry = "Y";
const char* vector_topology = "N";
const char* raster = "N";
const long extern_ref = 1;
const long features_level = 3;
const long coding_level = 1;
const char* non_geo_dimension = "N";
const char* module_name = "FOON";
const long record_id = 23;
int
main( int argc, char** argv )
{
if ( ! argv[1] )
{
cerr << "usage: "
<< argv[0] << " 8211file " << endl;
return 1;
}
#ifdef WIN32
ifstream ddf( argv[1], ios::binary );
#else
ifstream ddf( argv[1] );
#endif
if ( ! ddf )
{
cerr << "couldn't open "
<< argv[1] << endl;
return 2;
}
sio_8211Reader reader( ddf );
sc_Record record;
sio_8211ForwardIterator i( reader );
while( i )
{
i.get( record );
cout << record;
cout << "\n***\n";
{
sb_Iden aIden( record );
//dumpSbObject( aIden );
cout << aIden << "\n";
}
++i;
}
sb_Iden iden;
iden.setStandardIdentification( iden_str );
iden.setStandardVersion( version );
iden.setStandardDocumentationReference( doc_ref );
iden.setProfileIdentification( profile_iden );
iden.setProfileVersion( profile_version );
iden.setProfileDocumentationReference( profile_reference );
iden.setTitle( title );
iden.setDataID( data_id );
iden.setDataStructure( data_struct );
iden.setMapDate( map_date );
iden.setDataSetCreationDate( data_date );
iden.setScale( scale );
iden.setComment( comment );
iden.setComposites( composites );
iden.setVectorGeometry( vector_geometry );
iden.setVectorTopology( vector_topology );
iden.setRaster( raster );
iden.setExternalSpatialReference( extern_ref );
iden.setFeaturesLevel( features_level );
iden.setCodingLevel( coding_level );
iden.setNonGeoSpatialDimensions( non_geo_dimension );
iden.setMnemonic( module_name );
iden.setID( record_id );
cout << iden << endl;
// ident.setAttributeID( sb_ForeignID const & );
if ( ! iden.getRecord( record ) )
{
cerr << "unable to get record from ident object\n";
exit(1);
}
cout << record;
exit( 0 );
}
syntax highlighted by Code2HTML, v. 0.9.1