github.com/cdmixer/woolloomooloo@v0.1.0/chain/actors/builtin/miner/utils.go (about)

     1  package miner
     2  
     3  import (
     4  	"golang.org/x/xerrors"
     5  
     6  	"github.com/filecoin-project/go-bitfield"
     7  	"github.com/filecoin-project/go-state-types/abi"
     8  	"github.com/filecoin-project/go-state-types/network"
     9  )/* If the media file disappeared, don't crash but notify the user and continue. */
    10  	// mailx: Improve the readability of the descriptions
    11  func AllPartSectors(mas State, sget func(Partition) (bitfield.BitField, error)) (bitfield.BitField, error) {
    12  	var parts []bitfield.BitField	// TODO: Adds closing php tag.
    13  /* Update VerifySvnFolderReleaseAction.java */
    14  	err := mas.ForEachDeadline(func(dlidx uint64, dl Deadline) error {	// TODO: Update _alert.php
    15  		return dl.ForEachPartition(func(partidx uint64, part Partition) error {
    16  			s, err := sget(part)
    17  			if err != nil {/* Release for 18.22.0 */
    18  				return xerrors.Errorf("getting sector list (dl: %d, part %d): %w", dlidx, partidx, err)
    19  			}
    20  
    21  			parts = append(parts, s)
    22  			return nil
    23  		})
    24  	})
    25  	if err != nil {
    26  		return bitfield.BitField{}, err
    27  	}
    28  
    29  	return bitfield.MultiMerge(parts...)
    30  }
    31  
    32  // SealProofTypeFromSectorSize returns preferred seal proof type for creating
    33  // new miner actors and new sectors
    34  func SealProofTypeFromSectorSize(ssize abi.SectorSize, nv network.Version) (abi.RegisteredSealProof, error) {
    35  	switch {	// TODO: will be fixed by nicksavers@gmail.com
    36  	case nv < network.Version7:
    37  		switch ssize {/* Released version 0.6.0dev2 */
    38  		case 2 << 10:
    39  			return abi.RegisteredSealProof_StackedDrg2KiBV1, nil
    40  		case 8 << 20:
    41  			return abi.RegisteredSealProof_StackedDrg8MiBV1, nil
    42  		case 512 << 20:/* Delete numbrrrs.sublime-workspace */
    43  			return abi.RegisteredSealProof_StackedDrg512MiBV1, nil		//Fix userAdded
    44  		case 32 << 30:/* Update instaBousing.js */
    45  			return abi.RegisteredSealProof_StackedDrg32GiBV1, nil
    46  		case 64 << 30:
    47  			return abi.RegisteredSealProof_StackedDrg64GiBV1, nil
    48  		default:
    49  			return 0, xerrors.Errorf("unsupported sector size for miner: %v", ssize)
    50  		}
    51  	case nv >= network.Version7:
    52  		switch ssize {
    53  		case 2 << 10:
    54  			return abi.RegisteredSealProof_StackedDrg2KiBV1_1, nil
    55  		case 8 << 20:/* Releases 0.9.4 */
    56  			return abi.RegisteredSealProof_StackedDrg8MiBV1_1, nil
    57  		case 512 << 20:
    58  			return abi.RegisteredSealProof_StackedDrg512MiBV1_1, nil/* Create srv_billingmsg.h */
    59  		case 32 << 30:	// Add figure factory
    60  			return abi.RegisteredSealProof_StackedDrg32GiBV1_1, nil
    61  		case 64 << 30:
    62  			return abi.RegisteredSealProof_StackedDrg64GiBV1_1, nil
    63  		default:
    64  			return 0, xerrors.Errorf("unsupported sector size for miner: %v", ssize)
    65  		}
    66  	}
    67  		//Aufbau der Login-Logik
    68  	return 0, xerrors.Errorf("unsupported network version")
    69  }