require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_RF__RF_DAG_H_)) {
    eval 'sub _RF__RF_DAG_H_ () {1;}' unless defined(&_RF__RF_DAG_H_);
    require 'rf_types.ph';
    require 'rf_threadstuff.ph';
    require 'rf_alloclist.ph';
    require 'rf_stripelocks.ph';
    require 'rf_layout.ph';
    require 'rf_dagflags.ph';
    require 'rf_acctrace.ph';
    require 'rf_memchunk.ph';
    eval 'sub RF_THREAD_CONTEXT () {0;}' unless defined(&RF_THREAD_CONTEXT);
    eval 'sub RF_INTR_CONTEXT () {1;}' unless defined(&RF_INTR_CONTEXT);
    eval 'sub RF_MAX_ANTECEDENTS () {20;}' unless defined(&RF_MAX_ANTECEDENTS);
    require 'sys/buf.ph';
    eval("sub rf_bwd1 () { 0; }") unless defined(&rf_bwd1);
    eval("sub rf_bwd2 () { 1; }") unless defined(&rf_bwd2);
    eval("sub rf_wait () { 2; }") unless defined(&rf_wait);
    eval("sub rf_fired () { 3; }") unless defined(&rf_fired);
    eval("sub rf_good () { 4; }") unless defined(&rf_good);
    eval("sub rf_bad () { 5; }") unless defined(&rf_bad);
    eval("sub rf_skipped () { 6; }") unless defined(&rf_skipped);
    eval("sub rf_recover () { 7; }") unless defined(&rf_recover);
    eval("sub rf_panic () { 8; }") unless defined(&rf_panic);
    eval("sub rf_undone () { 9; }") unless defined(&rf_undone);
    eval("sub rf_trueData () { 0; }") unless defined(&rf_trueData);
    eval("sub rf_antiData () { 1; }") unless defined(&rf_antiData);
    eval("sub rf_outputData () { 2; }") unless defined(&rf_outputData);
    eval("sub rf_control () { 3; }") unless defined(&rf_control);
    eval 'sub RF_DAG_PTRCACHESIZE () {40;}' unless defined(&RF_DAG_PTRCACHESIZE);
    eval 'sub RF_DAG_PARAMCACHESIZE () {12;}' unless defined(&RF_DAG_PARAMCACHESIZE);
    eval 'sub RF_DAGNODE_FLAG_NONE () {0x;}' unless defined(&RF_DAGNODE_FLAG_NONE);
    eval 'sub RF_DAGNODE_FLAG_YIELD () {0x1;}' unless defined(&RF_DAGNODE_FLAG_YIELD);
    eval("sub rf_enable () { 0; }") unless defined(&rf_enable);
    eval("sub rf_rollForward () { 1; }") unless defined(&rf_rollForward);
    eval("sub rf_rollBackward () { 2; }") unless defined(&rf_rollBackward);
    eval 'sub RF_MAX_HDR_SUCC () {1;}' unless defined(&RF_MAX_HDR_SUCC);
    eval 'sub RF_MAXCHUNKS () {10;}' unless defined(&RF_MAXCHUNKS);
    eval 'sub RF_ResetNode {
        my($_n_) = @_;
	    eval q( &do { ($_n_)-> &status =  &rf_wait; ($_n_)-> &numAntDone = 0; ($_n_)-> &numSuccFired = 0; ($_n_)-> &numSuccDone = 0; ($_n_)-> &next =  &NULL; }  &while (0));
    }' unless defined(&RF_ResetNode);
    eval 'sub RF_ResetDagHeader {
        my($_h_) = @_;
	    eval q( &do { ($_h_)-> &numNodesCompleted = 0; ($_h_)-> &numCommits = 0; ($_h_)-> &status =  &rf_enable; }  &while (0));
    }' unless defined(&RF_ResetDagHeader);
    eval 'sub RF_CREATE_DAG_FUNC_DECL {
        my($_name_) = @_;
	    eval q( &void $_name_ ( &RF_Raid_t *,  &RF_AccessStripeMap_t *,  &RF_DagHeader_t *,  &void *,  &RF_RaidAccessFlags_t,  &RF_AllocListElem_t *);  &void $_name_ (  &RF_Raid_t * &raidPtr,  &RF_AccessStripeMap_t * &asmap,  &RF_DagHeader_t * &dag_h,  &void * &bp,  &RF_RaidAccessFlags_t  &flags,  &RF_AllocListElem_t * &allocList ));
    }' unless defined(&RF_CREATE_DAG_FUNC_DECL);
}
1;
