Project

General

Profile

« Previous | Next » 

Revision 7363eaa6

Added by Leszek Koltunski about 1 year ago

PruningTables now being correctly created in CreatorActivity and read in by the main app.

View differences:

src/main/java/org/distorted/objectlib/tablebases/TablebasesCube2.java
73 73

  
74 74
  public TablebasesCube2(Resources res)
75 75
    {
76
    super(res, new int[] {} ); // TODO
76
    super(res, new int[] {R.raw.cube_2_pruning5,R.raw.cube_2_pruning11} );
77 77
    }
78 78

  
79 79
///////////////////////////////////////////////////////////////////////////////////////////////////
src/main/java/org/distorted/objectlib/tablebases/TablebasesMITM.java
60 60
  public TablebasesMITM()
61 61
    {
62 62
    super();
63
    mInitialized = false;
63 64
    }
64 65

  
65 66
///////////////////////////////////////////////////////////////////////////////////////////////////
......
80 81

  
81 82
  public byte[][] getPacked()
82 83
    {
83
    int[] levels = getPruningLevels();
84
    int numLevels = levels.length;
85
    int maxLevel = 0;
84
    if( !mInitialized )
85
      {
86
      int[] levels = getPruningLevels();
87
      int numLevels= levels.length;
88
      int maxLevel = 0;
86 89

  
87
    for( int l : levels )
88
      if( l>maxLevel ) maxLevel = l;
90
      for( int l : levels )
91
        if( l>maxLevel ) maxLevel = l;
89 92

  
90
    createTablebase(maxLevel);
93
      createTablebase(maxLevel);
94
      mTables = new PruningTable[numLevels];
95
      mLevels = new int[numLevels];
91 96

  
92
    byte[][] data = new byte[numLevels][];
97
      for(int i=0; i<numLevels; i++)
98
        {
99
        mTables[i] = new PruningTable(mTablebase,levels[i]);
100
        mLevels[i] = mTables[i].getLevel();
101
        }
93 102

  
94
    for(int i=0; i<numLevels; i++)
95
      {
96
      PruningTable table = new PruningTable(mTablebase,levels[i]);
97
      data[i] = table.getPacked();
103
      mInitialized = true;
98 104
      }
99 105

  
106
    int num = mTables.length;
107
    byte[][] data = new byte[num][];
108
    for(int i=0; i<num; i++) data[i] = mTables[i].getPacked();
109

  
100 110
    return data;
101 111
    }
102 112

  

Also available in: Unified diff