- if ( s_bFCIterative ) {
- for ( unsigned int nCompactFactor = 1; nCompactFactor <= s_nFCCompactFactor; nCompactFactor *= 2 ) {
- for ( unsigned int nPass = 1; nPass <= s_nFCCombinePassCount; nPass *= 2 )
- m_args.push_back( { nCompactFactor, nPass } );
+ static std::vector< fc_param > get_test_parameters()
+ {
+ cds_test::config const& cfg = cds_test::stress_fixture::get_config( "IntrusiveStack_PushPop" );
+ bool bFCIterative = cfg.get_bool( "FCIterate", s_bFCIterative );
+ unsigned int nFCCombinePassCount = cfg.get_uint( "FCCombinePassCount", s_nFCCombinePassCount );
+ unsigned int nFCCompactFactor = cfg.get_uint( "FCCompactFactor", s_nFCCompactFactor );
+
+ std::vector< fc_param > args;
+ if ( bFCIterative ) {
+ for ( unsigned int nCompactFactor = 1; nCompactFactor <= nFCCompactFactor; nCompactFactor *= 2 ) {
+ for ( unsigned int nPass = 1; nPass <= nFCCombinePassCount; nPass *= 2 )
+ args.push_back( { nCompactFactor, nPass } );