@@ -726,110 +726,195 @@ End
726726/// IsTextWave
727727/// @{
728728
729- Function ITW_Works ()
730-
731- Make / FREE/ T wvText
732- CHECK ( IsTextWave ( wvText))
733-
734- Make / FREE/ D wvDouble
735- CHECK ( ! IsTextWave ( wvDouble))
736-
737- Make / FREE/ I wvInt
738- CHECK ( ! IsTextWave ( wvInt))
739-
740- Make / FREE/ R wvSingle
741- CHECK ( ! IsTextWave ( wvSingle))
729+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
730+ Function ITW_Works ( [ STRUCT IUTF_mData &m] )
731+
732+ string typeStr
733+ variable type
734+
735+ typeStr = m. s0
736+
737+ strswitch ( typeStr)
738+ case "TEXT_WAVE" :
739+ Make / FREE/ T wv
740+ CHECK ( IsTextWave ( wv))
741+ break
742+ case "WAVE_WAVE" :
743+ Make / FREE/ WAVE wv
744+ CHECK ( ! IsTextWave ( wv))
745+ break
746+ default :
747+ type = WaveTypeStringToNumber ( typeStr)
748+ Make / FREE/ Y= ( type) wv
749+ CHECK ( ! IsTextWave ( wv))
750+ break
751+ endswitch
742752End
743753
744754/// @}
745755
746756/// IsNumericWave
747757/// @{
748758
749- Function INW_Works ()
750-
751- Make / FREE/ D wvDouble
752- CHECK ( IsNumericWave ( wvDouble))
759+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
760+ Function INW_Works ( [ STRUCT IUTF_mData &m] )
753761
754- Make / FREE / I wvInt
755- CHECK ( IsNumericWave ( wvInt ))
762+ string typeStr
763+ variable type
756764
757- Make / FREE/ R wvSingle
758- CHECK ( IsNumericWave ( wvSingle))
765+ typeStr = m. s0
759766
760- Make / FREE/ T wvText
761- CHECK ( ! IsNumericWave ( wvText))
767+ strswitch ( typeStr)
768+ case "TEXT_WAVE" :
769+ Make / FREE/ T wv
770+ CHECK ( ! IsNumericWave ( wv))
771+ break
772+ case "WAVE_WAVE" :
773+ Make / FREE/ WAVE wv
774+ CHECK ( ! IsNumericWave ( wv))
775+ break
776+ default :
777+ type = WaveTypeStringToNumber ( typeStr)
778+ Make / FREE/ Y= ( type) wv
779+ CHECK ( IsNumericWave ( wv))
780+ break
781+ endswitch
762782End
763783
764784/// @}
765785
766786/// IsWaveRefWave
767787/// @{
768788
769- Function IWRW_Works ()
789+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
790+ Function IWRW_Works ( [ STRUCT IUTF_mData &m] )
770791
771- Make / FREE / WAVE wvRef
772- CHECK ( IsWaveRefWave ( wvRef ))
792+ string typeStr
793+ variable type
773794
774- Make / FREE/ D wvDouble
775- CHECK ( ! IsWaveRefWave ( wvDouble))
795+ typeStr = m. s0
776796
777- Make / FREE/ T wvText
778- CHECK ( ! IsWaveRefWave ( wvText))
797+ strswitch ( typeStr)
798+ case "TEXT_WAVE" :
799+ Make / FREE/ T wv
800+ CHECK ( ! IsWaveRefWave ( wv))
801+ break
802+ case "WAVE_WAVE" :
803+ Make / FREE/ WAVE wv
804+ CHECK ( IsWaveRefWave ( wv))
805+ break
806+ default :
807+ type = WaveTypeStringToNumber ( typeStr)
808+ Make / FREE/ Y= ( type) wv
809+ CHECK ( ! IsWaveRefWave ( wv))
810+ break
811+ endswitch
779812End
780813
781814/// @}
782815
783816/// IsFloatingPointWave
784817/// @{
785818
786- Function IFPW_Works ()
787-
788- Make / FREE/ D wvDouble
789- CHECK ( IsFloatingPointWave ( wvDouble))
790-
791- Make / FREE/ R wvSingle
792- CHECK ( IsFloatingPointWave ( wvSingle))
793-
794- Make / FREE/ I wvInt
795- CHECK ( ! IsFloatingPointWave ( wvInt))
796-
797- Make / FREE/ T wvText
798- CHECK ( ! IsFloatingPointWave ( wvText))
819+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
820+ Function IFPW_Works ( [ STRUCT IUTF_mData &m] )
821+
822+ string typeStr
823+ variable type
824+
825+ typeStr = m. s0
826+
827+ strswitch ( typeStr)
828+ case "TEXT_WAVE" :
829+ Make / FREE/ T wv
830+ CHECK ( ! IsFloatingPointWave ( wv))
831+ break
832+ case "WAVE_WAVE" :
833+ Make / FREE/ WAVE wv
834+ CHECK ( ! IsFloatingPointWave ( wv))
835+ break
836+ case "NT_FP64" :
837+ case "NT_FP32" :
838+ type = WaveTypeStringToNumber ( typeStr)
839+ Make / FREE/ Y= ( type) wv
840+ CHECK ( IsFloatingPointWave ( wv))
841+ break
842+ default :
843+ type = WaveTypeStringToNumber ( typeStr)
844+ Make / FREE/ Y= ( type) wv
845+ CHECK ( ! IsFloatingPointWave ( wv))
846+ break
847+ endswitch
799848End
800849
801850/// @}
802851
803852/// IsDoubleFloatingPointWave
804853/// @{
805854
806- Function IDFPW_Works ()
807-
808- Make / FREE/ D wvDouble
809- CHECK ( IsDoubleFloatingPointWave ( wvDouble))
810-
811- Make / FREE/ R wvSingle
812- CHECK ( ! IsDoubleFloatingPointWave ( wvSingle))
813-
814- Make / FREE/ I wvInt
815- CHECK ( ! IsDoubleFloatingPointWave ( wvInt))
855+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
856+ Function IDFPW_Works ( [ STRUCT IUTF_mData &m] )
857+
858+ string typeStr
859+ variable type
860+
861+ typeStr = m. s0
862+
863+ strswitch ( typeStr)
864+ case "TEXT_WAVE" :
865+ Make / FREE/ T wv
866+ CHECK ( ! IsDoubleFloatingPointWave ( wv))
867+ break
868+ case "WAVE_WAVE" :
869+ Make / FREE/ WAVE wv
870+ CHECK ( ! IsDoubleFloatingPointWave ( wv))
871+ break
872+ case "NT_FP64" :
873+ type = WaveTypeStringToNumber ( typeStr)
874+ Make / FREE/ Y= ( type) wv
875+ CHECK ( IsDoubleFloatingPointWave ( wv))
876+ break
877+ default :
878+ type = WaveTypeStringToNumber ( typeStr)
879+ Make / FREE/ Y= ( type) wv
880+ CHECK ( ! IsDoubleFloatingPointWave ( wv))
881+ break
882+ endswitch
816883End
817884
818885/// @}
819886
820887/// IsSingleFloatingPointWave
821888/// @{
822889
823- Function ISFPW_Works ()
824-
825- Make / FREE/ R wvSingle
826- CHECK ( IsSingleFloatingPointWave ( wvSingle))
827-
828- Make / FREE/ D wvDouble
829- CHECK ( ! IsSingleFloatingPointWave ( wvDouble))
830-
831- Make / FREE/ I wvInt
832- CHECK ( ! IsSingleFloatingPointWave ( wvInt))
890+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
891+ Function ISFPW_Works ( [ STRUCT IUTF_mData &m] )
892+
893+ string typeStr
894+ variable type
895+
896+ typeStr = m. s0
897+
898+ strswitch ( typeStr)
899+ case "TEXT_WAVE" :
900+ Make / FREE/ T wv
901+ CHECK ( ! IsSingleFloatingPointWave ( wv))
902+ break
903+ case "WAVE_WAVE" :
904+ Make / FREE/ WAVE wv
905+ CHECK ( ! IsSingleFloatingPointWave ( wv))
906+ break
907+ case "NT_FP32" :
908+ type = WaveTypeStringToNumber ( typeStr)
909+ Make / FREE/ Y= ( type) wv
910+ CHECK ( IsSingleFloatingPointWave ( wv))
911+ break
912+ default :
913+ type = WaveTypeStringToNumber ( typeStr)
914+ Make / FREE/ Y= ( type) wv
915+ CHECK ( ! IsSingleFloatingPointWave ( wv))
916+ break
917+ endswitch
833918End
834919
835920/// @}
@@ -852,16 +937,35 @@ End
852937/// IsComplexWave
853938/// @{
854939
855- Function ICW_Works ()
940+ // UTF_TD_GENERATOR s0:DataGenerators#GetSupportedWaveTypes
941+ Function ICW_Works ( [ STRUCT IUTF_mData &m] )
856942
857- Make / FREE / C wvComplex
858- CHECK ( IsComplexWave ( wvComplex ))
943+ string typeStr
944+ variable type
859945
860- Make / FREE/ D wvDouble
861- CHECK ( ! IsComplexWave ( wvDouble))
946+ typeStr = m. s0
862947
863- Make / FREE/ I wvInt
864- CHECK ( ! IsComplexWave ( wvInt))
948+ strswitch ( typeStr)
949+ case "TEXT_WAVE" :
950+ Make / FREE/ T wv
951+ CHECK ( ! IsComplexWave ( wv))
952+ break
953+ case "WAVE_WAVE" :
954+ Make / FREE/ WAVE wv
955+ CHECK ( ! IsComplexWave ( wv))
956+ break
957+ default :
958+ type = WaveTypeStringToNumber ( typeStr)
959+ Make / FREE/ Y= ( type) wv
960+ CHECK ( ! IsComplexWave ( wv))
961+ break
962+ endswitch
963+ End
964+
965+ Function ICW_WorksWithComplexWave ()
966+
967+ Make / FREE/ C wvComplex
968+ CHECK ( IsComplexWave ( wvComplex))
865969End
866970
867971/// @}
0 commit comments