Example #1
0
int Cmp( const Row & r1, const Row & r2, const FieldList & fl ) {
	if ( r1.Size() <= r2.Size()  ) {
		for ( unsigned int i = 0; i < r1.Size() ; i++ ) {
			if ( fl.Size() == 0 || fl.Contains( i ) ) {
				if ( r1.At( i ) < r2.At(i) ) {
					return -1;
				}
				else if ( r1.At( i ) > r2.At(i) ) {
					return 1;
				}
			}
		}
		return r1.Size() < r2.Size() ? -1 : 0;
	}
	else {
		for ( unsigned int i = 0; i < r2.Size() ; i++ ) {
			if ( fl.Size() == 0 || fl.Contains( i ) ) {
				if ( r1.At( i ) < r2.At(i) ) {
					return -1;
				}
				else if ( r1.At( i ) > r2.At(i) ) {
					return 1;
				}
			}
		}
		return 1;
	}
}