//
// $Id: container_t.cpp,v 1.3 2002/11/27 00:21:34 mcoletti Exp $
//
#include <cassert>
#include <string>
#include <iostream>
#include <sdts++/container/sc_Subfield.h>
#include <sdts++/container/sc_Field.h>
using namespace std;
int
main(int argc, char *argv[])
{
sc_Subfield subfield, copied;
sc_Field field;
string tempstring;
field.push_back(sc_Subfield());
field.back().setMnemonic("X");
field.push_back(sc_Subfield());
field.back().setMnemonic("Y");
field.push_back(sc_Subfield());
field.back().setMnemonic("Z");
field.setMnemonic("PNT");
field.setName("Point");
sc_Field::iterator i;
int inc = 0;
for ( i = field.begin();
i != field.end();
i++ )
{
// cout << "Subfield Mnemonic: " << (*i).getMnemonic() << '\n';
(*i).setBUI32( 123 * inc++ );
// Test the != operator.
assert( copied != (*i) );
// Test the = operator.
copied = (*i);
// Test the == operator
assert( copied == (*i) );
}
unsigned long val;
inc = 0;
for ( i = field.begin();
i != field.end();
i++ )
{
// Check to make sure that the data is there.
assert( (*i).getBUI32(val) );
// Check to make sure that the data is correct.
assert( (val / 123) == inc );
inc++;
}
// Check to make sure that some information is being returned.
tempstring = field.getMnemonic();
assert( tempstring == "PNT" );
tempstring = field.getName();
assert( tempstring == "Point" );
return 0;
}
syntax highlighted by Code2HTML, v. 0.9.1