yapf/yapf_common.cpp
branchcustombridgeheads
changeset 5621 6ce400c0a2f4
parent 5616 0570ae953222
child 5626 1811beeb472f
equal deleted inserted replaced
5620:3b40a41f90d2 5621:6ce400c0a2f4
    25 	TRACKDIR_BIT_X_NE                    , //12
    25 	TRACKDIR_BIT_X_NE                    , //12
    26 	TRACKDIR_BIT_NONE                    , //13
    26 	TRACKDIR_BIT_NONE                    , //13
    27 	TRACKDIR_BIT_NONE                    , //14
    27 	TRACKDIR_BIT_NONE                    , //14
    28 	TRACKDIR_BIT_NONE                    , //15
    28 	TRACKDIR_BIT_NONE                    , //15
    29 };
    29 };
    30 
       
    31 const char* GetTrackdirName(Trackdir td)
       
    32 {
       
    33 	static const char * const td_names[] = {
       
    34 		"INVALID_TRACKDIR",
       
    35 		"X_NE",
       
    36 		"Y_SE",
       
    37 		"UPPER_E",
       
    38 		"LOWER_E",
       
    39 		"LEFT_S",
       
    40 		"RIGHT_S",
       
    41 		"<6>",
       
    42 		"<7>",
       
    43 		"X_SW",
       
    44 		"Y_NW",
       
    45 		"UPPER_W",
       
    46 		"LOWER_W",
       
    47 		"LEFT_N",
       
    48 		"RIGHT_N",
       
    49 		"TRACKDIR_END"
       
    50 	};
       
    51 	if (((int)td <= (int)TRACKDIR_END)) {
       
    52 		int idx = ((int8)td) + 1;
       
    53 		return td_names[idx];
       
    54 	}
       
    55 	return "<invalid value>";
       
    56 }
       
    57 
       
    58 CStrA GetTrackdirBitsName(TrackdirBits td_bits)
       
    59 {
       
    60 	CStrA name;
       
    61 	for(int tdb = td_bits; tdb != 0; tdb = KillFirstBit2x64(tdb)) {
       
    62 		name.Format("%s%s", name.Size() > 0 ? "+" : "", GetTrackdirName((Trackdir)FindFirstBit2x64(tdb)));
       
    63 	}
       
    64 	return name.Transfer();
       
    65 }