ipps.h 565 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844
  1. /* ////////////////////////////////// "ipps.h" /////////////////////////////////
  2. //
  3. // INTEL CORPORATION PROPRIETARY INFORMATION
  4. // This software is supplied under the terms of a license agreement or
  5. // nondisclosure agreement with Intel Corporation and may not be copied
  6. // or disclosed except in accordance with the terms of that agreement.
  7. // Copyright(c) 1999-2009 Intel Corporation. All Rights Reserved.
  8. //
  9. // Intel(R) Integrated Performance Primitives
  10. // Signal Processing (ippSP)
  11. //
  12. */
  13. #if !defined( __IPPS_H__ ) || defined( _OWN_BLDPCS )
  14. #define __IPPS_H__
  15. #ifndef __IPPDEFS_H__
  16. #include "ippdefs.h"
  17. #endif
  18. #ifdef __cplusplus
  19. extern "C" {
  20. #endif
  21. #if defined (_WIN32_WCE) && defined (_M_IX86) && defined (__stdcall)
  22. #define _IPP_STDCALL_CDECL
  23. #undef __stdcall
  24. #endif
  25. #if !defined( _OWN_BLDPCS )
  26. typedef struct {
  27. int left;
  28. int right;
  29. } IppsROI;
  30. #endif /* _OWN_BLDPCS */
  31. /* /////////////////////////////////////////////////////////////////////////////
  32. // Name: ippsGetLibVersion
  33. // Purpose: get the library version
  34. // Parameters:
  35. // Returns: pointer to structure describing version of the ipps library
  36. //
  37. // Notes: don't free the pointer
  38. */
  39. IPPAPI( const IppLibraryVersion*, ippsGetLibVersion, (void) )
  40. /* /////////////////////////////////////////////////////////////////////////////
  41. // Functions to allocate and free memory
  42. ///////////////////////////////////////////////////////////////////////////// */
  43. /* /////////////////////////////////////////////////////////////////////////////
  44. // Name: ippsMalloc
  45. // Purpose: 32-byte aligned memory allocation
  46. // Parameter:
  47. // len number of elements (according to their type)
  48. // Returns: pointer to allocated memory
  49. //
  50. // Notes: the memory allocated by ippsMalloc has to be free by ippsFree
  51. // function only.
  52. */
  53. IPPAPI( Ipp8u*, ippsMalloc_8u, (int len) )
  54. IPPAPI( Ipp16u*, ippsMalloc_16u, (int len) )
  55. IPPAPI( Ipp32u*, ippsMalloc_32u, (int len) )
  56. IPPAPI( Ipp8s*, ippsMalloc_8s, (int len) )
  57. IPPAPI( Ipp16s*, ippsMalloc_16s, (int len) )
  58. IPPAPI( Ipp32s*, ippsMalloc_32s, (int len) )
  59. IPPAPI( Ipp64s*, ippsMalloc_64s, (int len) )
  60. IPPAPI( Ipp32f*, ippsMalloc_32f, (int len) )
  61. IPPAPI( Ipp64f*, ippsMalloc_64f, (int len) )
  62. IPPAPI( Ipp8sc*, ippsMalloc_8sc, (int len) )
  63. IPPAPI( Ipp16sc*, ippsMalloc_16sc, (int len) )
  64. IPPAPI( Ipp32sc*, ippsMalloc_32sc, (int len) )
  65. IPPAPI( Ipp64sc*, ippsMalloc_64sc, (int len) )
  66. IPPAPI( Ipp32fc*, ippsMalloc_32fc, (int len) )
  67. IPPAPI( Ipp64fc*, ippsMalloc_64fc, (int len) )
  68. /* /////////////////////////////////////////////////////////////////////////////
  69. // Name: ippsFree
  70. // Purpose: free memory allocated by the ippsMalloc functions
  71. // Parameter:
  72. // ptr pointer to the memory allocated by the ippsMalloc functions
  73. //
  74. // Notes: use the function to free memory allocated by ippsMalloc_*
  75. */
  76. IPPAPI( void, ippsFree, (void* ptr) )
  77. /* /////////////////////////////////////////////////////////////////////////////
  78. // Vector Initialization functions
  79. ///////////////////////////////////////////////////////////////////////////// */
  80. /* /////////////////////////////////////////////////////////////////////////////
  81. // Name: ippsCopy
  82. // Purpose: copy data from source to destination vector
  83. // Parameters:
  84. // pSrc pointer to the input vector
  85. // pDst pointer to the output vector
  86. // len length of the vectors, number of items
  87. // Return:
  88. // ippStsNullPtrErr pointer(s) to the data is NULL
  89. // ippStsSizeErr length of the vectors is less or equal zero
  90. // ippStsNoErr otherwise
  91. */
  92. IPPAPI(IppStatus, ippsCopy_8u,( const Ipp8u* pSrc, Ipp8u* pDst, int len ))
  93. IPPAPI(IppStatus, ippsCopy_16s,( const Ipp16s* pSrc, Ipp16s* pDst, int len ))
  94. IPPAPI(IppStatus, ippsCopy_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst, int len ))
  95. IPPAPI(IppStatus, ippsCopy_32f,( const Ipp32f* pSrc, Ipp32f* pDst, int len ))
  96. IPPAPI(IppStatus, ippsCopy_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst, int len ))
  97. IPPAPI(IppStatus, ippsCopy_64f,( const Ipp64f* pSrc, Ipp64f* pDst, int len ))
  98. IPPAPI(IppStatus, ippsCopy_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst, int len ))
  99. IPPAPI(IppStatus, ippsCopy_32s,( const Ipp32s* pSrc, Ipp32s* pDst, int len ))
  100. IPPAPI(IppStatus, ippsCopy_32sc,( const Ipp32sc* pSrc, Ipp32sc* pDst, int len ))
  101. IPPAPI(IppStatus, ippsCopy_64s,( const Ipp64s* pSrc, Ipp64s* pDst, int len ))
  102. IPPAPI(IppStatus, ippsCopy_64sc,( const Ipp64sc* pSrc, Ipp64sc* pDst, int len ))
  103. /* /////////////////////////////////////////////////////////////////////////////
  104. // Name: ippsPackBits_32u8u
  105. // Purpose: Packing of bit's data from source to destination vector
  106. // Parameters:
  107. // pSrcBit pointer to the input vector with data bits
  108. // pSrcBits pointer to the input vector that specifies number of data bits
  109. // srcLen length of the pSrcBit and pSrcBits vectors, number of items
  110. // pDst pointer to the output vector
  111. // dstBitOffset offset in the first byte of the destination vector
  112. // pDstLenBit pointer to the length of the output vector, number of bits
  113. // Return:
  114. // ippStsNullPtrErr pointer(s) to the data is NULL
  115. // ippStsSizeErr length of the vectors is less or equal zero
  116. // ippStsSizeErr dstBitOffset is less zero
  117. //
  118. // ippStsOverlongString Warning: pSrcBits[i] < 0, or pSrcBits[i] > 32.
  119. //
  120. // ippStsNoErr otherwise
  121. */
  122. IPPAPI( IppStatus, ippsPackBits_32u8u,( const Ipp32u* pSrcBit,
  123. const int* pSrcBits,
  124. int srcLen,
  125. Ipp8u* pDst,
  126. int dstBitOffset,
  127. int* pDstLenBit ))
  128. /* /////////////////////////////////////////////////////////////////////////////
  129. // Name: ippsCopy_1u
  130. // Purpose: copy bit's data from source to destination vector
  131. // Parameters:
  132. // pSrc pointer to the input vector
  133. // srcBitOffset offset in the first byte of the source vector
  134. // pDst pointer to the output vector
  135. // dstBitOffset offset in the first byte of the destination vector
  136. // len length of the vectors, number of bits
  137. // Return:
  138. // ippStsNullPtrErr pointer(s) to the data is NULL
  139. // ippStsSizeErr length of the vectors is less or equal zero
  140. // ippStsNoErr otherwise
  141. */
  142. IPPAPI(IppStatus, ippsCopy_1u,
  143. ( const Ipp8u* pSrc, int srcBitOffset, Ipp8u* pDst, int dstBitOffset, int len ))
  144. /* /////////////////////////////////////////////////////////////////////////////
  145. // Name: ippsMove
  146. // Purpose: The ippsMove function copies "len" elements from src to dst.
  147. // If some regions of the source area and the destination overlap,
  148. // ippsMove ensures that the original source bytes in the overlapping
  149. // region are copied before being overwritten.
  150. //
  151. // Parameters:
  152. // pSrc pointer to the input vector
  153. // pDst pointer to the output vector
  154. // len length of the vectors, number of items
  155. // Return:
  156. // ippStsNullPtrErr pointer(s) to the data is NULL
  157. // ippStsSizeErr length of the vectors is less or equal zero
  158. // ippStsNoErr otherwise
  159. */
  160. IPPAPI ( IppStatus, ippsMove_8u,
  161. ( const Ipp8u* pSrc, Ipp8u* pDst, int len ))
  162. IPPAPI ( IppStatus, ippsMove_16s,
  163. ( const Ipp16s* pSrc, Ipp16s* pDst, int len ))
  164. IPPAPI ( IppStatus, ippsMove_16sc,
  165. ( const Ipp16sc* pSrc, Ipp16sc* pDst, int len ))
  166. IPPAPI ( IppStatus, ippsMove_32f,
  167. ( const Ipp32f* pSrc, Ipp32f* pDst, int len ))
  168. IPPAPI ( IppStatus, ippsMove_32fc,
  169. ( const Ipp32fc* pSrc, Ipp32fc* pDst, int len ))
  170. IPPAPI ( IppStatus, ippsMove_64f,
  171. ( const Ipp64f* pSrc, Ipp64f* pDst, int len ))
  172. IPPAPI ( IppStatus, ippsMove_64fc,
  173. ( const Ipp64fc* pSrc, Ipp64fc* pDst, int len ))
  174. IPPAPI ( IppStatus, ippsMove_32s,
  175. ( const Ipp32s* pSrc, Ipp32s* pDst, int len ))
  176. IPPAPI ( IppStatus, ippsMove_32sc,
  177. ( const Ipp32sc* pSrc, Ipp32sc* pDst, int len ))
  178. IPPAPI ( IppStatus, ippsMove_64s,
  179. ( const Ipp64s* pSrc, Ipp64s* pDst, int len ))
  180. IPPAPI ( IppStatus, ippsMove_64sc,
  181. ( const Ipp64sc* pSrc, Ipp64sc* pDst, int len ))
  182. /* /////////////////////////////////////////////////////////////////////////////
  183. // Name: ippsZero
  184. // Purpose: set elements of the vector to zero of corresponding type
  185. // Parameters:
  186. // pDst pointer to the destination vector
  187. // len length of the vectors
  188. // Return:
  189. // ippStsNullPtrErr pointer to the vector is NULL
  190. // ippStsSizeErr length of the vectors is less or equal zero
  191. // ippStsNoErr otherwise
  192. */
  193. IPPAPI ( IppStatus, ippsZero_8u,( Ipp8u* pDst, int len ))
  194. IPPAPI ( IppStatus, ippsZero_16s,( Ipp16s* pDst, int len ))
  195. IPPAPI ( IppStatus, ippsZero_16sc,( Ipp16sc* pDst, int len ))
  196. IPPAPI ( IppStatus, ippsZero_32f,( Ipp32f* pDst, int len ))
  197. IPPAPI ( IppStatus, ippsZero_32fc,( Ipp32fc* pDst, int len ))
  198. IPPAPI ( IppStatus, ippsZero_64f,( Ipp64f* pDst, int len ))
  199. IPPAPI ( IppStatus, ippsZero_64fc,( Ipp64fc* pDst, int len ))
  200. IPPAPI ( IppStatus, ippsZero_32s,( Ipp32s* pDst, int len ))
  201. IPPAPI ( IppStatus, ippsZero_32sc,( Ipp32sc* pDst, int len ))
  202. IPPAPI ( IppStatus, ippsZero_64s,( Ipp64s* pDst, int len ))
  203. IPPAPI ( IppStatus, ippsZero_64sc,( Ipp64sc* pDst, int len ))
  204. /* /////////////////////////////////////////////////////////////////////////////
  205. // Name: ippsSet
  206. // Purpose: set elements of the destination vector to the value
  207. // Parameters:
  208. // val value to set the elements of the vector
  209. // pDst pointer to the destination vector
  210. // len length of the vectors
  211. // Return:
  212. // ippStsNullPtrErr pointer to the vector is NULL
  213. // ippStsSizeErr length of the vector is less or equal zero
  214. // ippStsNoErr otherwise
  215. */
  216. IPPAPI ( IppStatus, ippsSet_8u,( Ipp8u val, Ipp8u* pDst, int len ))
  217. IPPAPI ( IppStatus, ippsSet_16s,( Ipp16s val, Ipp16s* pDst, int len ))
  218. IPPAPI ( IppStatus, ippsSet_16sc,( Ipp16sc val, Ipp16sc* pDst, int len ))
  219. IPPAPI ( IppStatus, ippsSet_32s,( Ipp32s val, Ipp32s* pDst, int len ))
  220. IPPAPI ( IppStatus, ippsSet_32sc,( Ipp32sc val, Ipp32sc* pDst, int len ))
  221. IPPAPI ( IppStatus, ippsSet_32f,( Ipp32f val, Ipp32f* pDst, int len ))
  222. IPPAPI ( IppStatus, ippsSet_32fc,( Ipp32fc val, Ipp32fc* pDst, int len ))
  223. IPPAPI ( IppStatus, ippsSet_64s,( Ipp64s val, Ipp64s* pDst, int len ))
  224. IPPAPI ( IppStatus, ippsSet_64sc,( Ipp64sc val, Ipp64sc* pDst, int len ))
  225. IPPAPI ( IppStatus, ippsSet_64f,( Ipp64f val, Ipp64f* pDst, int len ))
  226. IPPAPI ( IppStatus, ippsSet_64fc,( Ipp64fc val, Ipp64fc* pDst, int len ))
  227. /* ////////////////////////////////////////////////////////////////////////////
  228. // Name: ippsRandUniform_Direct_16s, ippsRandUniform_Direct_32f, ippsRandUniform_Direct_64f
  229. //
  230. // Purpose: Makes pseudo-random samples with a uniform distribution and places them in
  231. // the vector.
  232. //
  233. //
  234. // Return:
  235. // ippStsNoErr Ok
  236. // ippStsNullPtrErr The pointer to vector is NULL
  237. // ippStsBadSizeErr The length of the vector is less or equal zero
  238. //
  239. // Arguments:
  240. // low The lower bounds of the uniform distributions range.
  241. // high The upper bounds of the uniform distributions range.
  242. // pSeed The pointer to the seed value used by the pseudo-random number
  243. // generation algorithm.
  244. // pSrcDst The pointer to vector
  245. // len Vector's length
  246. */
  247. IPPAPI(IppStatus, ippsRandUniform_Direct_16s, (Ipp16s* pDst, int len, Ipp16s low, Ipp16s high,
  248. unsigned int* pSeed))
  249. IPPAPI(IppStatus, ippsRandUniform_Direct_32f, (Ipp32f* pDst, int len, Ipp32f low, Ipp32f high,
  250. unsigned int* pSeed))
  251. IPPAPI(IppStatus, ippsRandUniform_Direct_64f, (Ipp64f* pDst, int len, Ipp64f low, Ipp64f high,
  252. unsigned int* pSeed))
  253. /* ////////////////////////////////////////////////////////////////////////////
  254. // Name: ippsRandGauss_Direct_16s, ippsRandGauss_Direct_32f, ippsRandGauss_Direct_64f
  255. //
  256. // Purpose: Makes pseudo-random samples with a Normal distribution distribution and places
  257. // them in the vector.
  258. //
  259. //
  260. // Return:
  261. // ippStsNoErr Ok
  262. // ippStsNullPtrErr The pointer to vector is NULL
  263. // ippStsBadSizeErr The length of the vector is less or equal zero
  264. //
  265. // Arguments:
  266. // mean The mean of the Normal distribution.
  267. // stdev The standard deviation of the Normal distribution.
  268. // pSeed The pointer to the seed value used by the pseudo-random number
  269. // generation algorithm.
  270. // pSrcDst The pointer to vector
  271. // len Vector's length
  272. */
  273. IPPAPI(IppStatus, ippsRandGauss_Direct_16s, (Ipp16s* pDst, int len, Ipp16s mean, Ipp16s stdev,
  274. unsigned int* pSeed))
  275. IPPAPI(IppStatus, ippsRandGauss_Direct_32f, (Ipp32f* pDst, int len, Ipp32f mean, Ipp32f stdev,
  276. unsigned int* pSeed))
  277. IPPAPI(IppStatus, ippsRandGauss_Direct_64f, (Ipp64f* pDst, int len, Ipp64f mean, Ipp64f stdev,
  278. unsigned int* pSeed))
  279. /* ///////////////////////////////////////////////////////////////////////// */
  280. #if !defined( _OWN_BLDPCS )
  281. struct RandUniState_8u;
  282. struct RandUniState_16s;
  283. struct RandUniState_32f;
  284. typedef struct RandUniState_8u IppsRandUniState_8u;
  285. typedef struct RandUniState_16s IppsRandUniState_16s;
  286. typedef struct RandUniState_32f IppsRandUniState_32f;
  287. struct RandGaussState_8u;
  288. struct RandGaussState_16s;
  289. struct RandGaussState_32f;
  290. typedef struct RandGaussState_8u IppsRandGaussState_8u;
  291. typedef struct RandGaussState_16s IppsRandGaussState_16s;
  292. typedef struct RandGaussState_32f IppsRandGaussState_32f;
  293. #endif
  294. /* /////////////////////////////////////////////////////////////////////////
  295. // Name: ippsRandUniformInitAlloc_8u, ippsRandUniformInitAlloc_16s,
  296. // ippsRandUniformInitAlloc_32f
  297. // Purpose: Allocate and initialize parameters for the generator
  298. // of noise with uniform distribution.
  299. // Returns:
  300. // Parameters:
  301. // pRandUniState A pointer to the structure containing parameters for the
  302. // generator of noise.
  303. // low The lower bounds of the uniform distribution's range.
  304. // high The upper bounds of the uniform distribution's range.
  305. // seed The seed value used by the pseudo-random number generation
  306. // algorithm.
  307. //
  308. // Returns:
  309. // ippStsNullPtrErr pRandUniState==NULL
  310. // ippMemAllocErr Can not allocate random uniform state
  311. // ippStsNoErr No errors
  312. //
  313. */
  314. IPPAPI(IppStatus, ippsRandUniformInitAlloc_8u, (IppsRandUniState_8u** pRandUniState,
  315. Ipp8u low, Ipp8u high, unsigned int seed))
  316. IPPAPI(IppStatus, ippsRandUniformInitAlloc_16s, (IppsRandUniState_16s** pRandUniState,
  317. Ipp16s low, Ipp16s high, unsigned int seed))
  318. IPPAPI(IppStatus, ippsRandUniformInitAlloc_32f, (IppsRandUniState_32f** pRandUniState,
  319. Ipp32f low, Ipp32f high, unsigned int seed))
  320. /* /////////////////////////////////////////////////////////////////////////
  321. // Name: ippsRandUniform_8u, ippsRandUniform_16s,
  322. // ippsRandUniform_32f
  323. // Purpose: Makes pseudo-random samples with a uniform distribution
  324. // and places them in the vector.
  325. // Parameters:
  326. // pDst The pointer to vector
  327. // len Vector's length
  328. // pRandUniState A pointer to the structure containing parameters for the
  329. // generator of noise
  330. // Returns:
  331. // ippStsNullPtrErr pRandUniState==NULL
  332. // ippStsContextMatchErr pState->idCtx != idCtxRandUni
  333. // ippStsNoErr No errors
  334. */
  335. IPPAPI(IppStatus, ippsRandUniform_8u, (Ipp8u* pDst, int len, IppsRandUniState_8u* pRandUniState))
  336. IPPAPI(IppStatus, ippsRandUniform_16s, (Ipp16s* pDst, int len, IppsRandUniState_16s* pRandUniState))
  337. IPPAPI(IppStatus, ippsRandUniform_32f, (Ipp32f* pDst, int len, IppsRandUniState_32f* pRandUniState))
  338. /* /////////////////////////////////////////////////////////////////////////
  339. // Name: ippsRandUniformFree_8u, ippsRandUniformFree_16s
  340. // ippsRandUniformFree_32f
  341. // Purpose: Close random uniform state
  342. //
  343. // Parameters:
  344. // pRandUniState Pointer to the random uniform state
  345. //
  346. // Returns:
  347. // ippStsNullPtrErr pState==NULL
  348. // ippStsContextMatchErr pState->idCtx != idCtxRandUni
  349. // ippStsNoErr, No errors
  350. */
  351. IPPAPI (IppStatus, ippsRandUniformFree_8u, (IppsRandUniState_8u* pRandUniState))
  352. IPPAPI (IppStatus, ippsRandUniformFree_16s, (IppsRandUniState_16s* pRandUniState))
  353. IPPAPI (IppStatus, ippsRandUniformFree_32f, (IppsRandUniState_32f* pRandUniState))
  354. /* //////////////////////////////////////////////////////////////////////////////////
  355. /////////////////////////////////////////////////////////////////////////
  356. // Name: ippsRandGaussInitAlloc_8u, ippsRandGaussInitAlloc_16s,
  357. // ippsRandGaussInitAlloc_32f
  358. // Purpose: Allocate and initialize parameters for the generator of noise.
  359. // Returns:
  360. // Parameters:
  361. // pRandGaussState A pointer to the structure containing parameters for the
  362. // generator of noise.
  363. // mean The mean of the normal distribution.
  364. // stdDev The standard deviation of the normal distribution.
  365. // seed The seed value used by the pseudo-random number
  366. //
  367. // Returns:
  368. // ippStsNullPtrErr pRandGaussState==NULL
  369. // ippMemAllocErr Can not allocate normal random state
  370. // ippStsNoErr No errors
  371. //
  372. */
  373. IPPAPI(IppStatus, ippsRandGaussInitAlloc_8u, (IppsRandGaussState_8u** pRandGaussState,
  374. Ipp8u mean, Ipp8u stdDev, unsigned int seed))
  375. IPPAPI(IppStatus, ippsRandGaussInitAlloc_16s, (IppsRandGaussState_16s** pRandGaussState,
  376. Ipp16s mean, Ipp16s stdDev, unsigned int seed))
  377. IPPAPI(IppStatus, ippsRandGaussInitAlloc_32f, (IppsRandGaussState_32f** pRandGaussState,
  378. Ipp32f mean, Ipp32f stdDev, unsigned int seed))
  379. /* /////////////////////////////////////////////////////////////////////////
  380. // Name: ippsRandGauss_8u, ippsRandGauss_16s,
  381. // ippsRandGauss_32f
  382. // Purpose: Makes pseudo-random samples with a normal distribution
  383. // and places them in the vector.
  384. // Parameters:
  385. // pDst The pointer to vector
  386. // len Vector's length
  387. // pRandUniState A pointer to the structure containing parameters
  388. // for the generator of noise
  389. // ippStsContextMatchErr pState->idCtx != idCtxRandGauss
  390. // Returns:
  391. // ippStsNullPtrErr pRandGaussState==NULL
  392. // ippStsNoErr No errors
  393. */
  394. IPPAPI(IppStatus, ippsRandGauss_8u, (Ipp8u* pDst, int len, IppsRandGaussState_8u* pRandGaussState))
  395. IPPAPI(IppStatus, ippsRandGauss_16s, (Ipp16s* pDst, int len, IppsRandGaussState_16s* pRandGaussState))
  396. IPPAPI(IppStatus, ippsRandGauss_32f, (Ipp32f* pDst, int len, IppsRandGaussState_32f* pRandGaussState))
  397. /* /////////////////////////////////////////////////////////////////////////
  398. // Name: ippsRandGaussFree_8u, ippsRandGaussFree_16s,
  399. // ippsRandGaussFree_32f
  400. // Purpose: Close random normal state
  401. //
  402. // Parameters:
  403. // pRandUniState Pointer to the random normal state
  404. //
  405. // Returns:
  406. // ippStsNullPtrErr pState==NULL
  407. // ippStsContextMatchErr pState->idCtx != idCtxRandGauss
  408. // ippStsNoErr, No errors
  409. */
  410. IPPAPI (IppStatus, ippsRandGaussFree_8u, (IppsRandGaussState_8u* pRandGaussState))
  411. IPPAPI (IppStatus, ippsRandGaussFree_16s, (IppsRandGaussState_16s* pRandGaussState))
  412. IPPAPI (IppStatus, ippsRandGaussFree_32f, (IppsRandGaussState_32f* pRandGaussState))
  413. /* ////////////////////////////////////////////////////////////////////////////
  414. // Name: ippsRandGaussGetSize_16s
  415. //
  416. // Purpose: Gaussian sequence generator state variable size -
  417. // computes the size,in bytes,
  418. // of the state variable structure ippsRandGaussState_16s.
  419. // Return:
  420. // ippStsNoErr Ok
  421. // ippStsNullPtrErr pRandGaussStateSize==NULL
  422. // Arguments:
  423. // pRandGaussStateSize pointer to the computed values of the size
  424. // of the structure ippsRandGaussState_16s.
  425. */
  426. IPPAPI(IppStatus, ippsRandGaussGetSize_16s, (int * pRandGaussStateSize))
  427. /* //////////////////////////////////////////////////////////////////////////////////
  428. // Name: ippsRandGaussInit_16s
  429. // Purpose: Initializes the Gaussian sequence generator state structure with
  430. // given parameters (mean, variance, seed).
  431. // Parameters:
  432. // pRandGaussState A pointer to the structure containing parameters for the
  433. // generator of noise.
  434. // mean Mean of the normal distribution.
  435. // stdDev Standard deviation of the normal distribution.
  436. // seed Seed value used by the pseudo-random number generator
  437. //
  438. // Returns:
  439. // ippStsNullPtrErr pRandGaussState==NULL
  440. // ippMemAllocErr Can not allocate normal random state
  441. // ippStsNoErr No errors
  442. //
  443. */
  444. IPPAPI(IppStatus, ippsRandGaussInit_16s, (IppsRandGaussState_16s* pRandGaussState,
  445. Ipp16s mean, Ipp16s stdDev, unsigned int seed))
  446. /* ////////////////////////////////////////////////////////////////////////////
  447. // Name: ippsRandUniformGetSize_16s
  448. //
  449. // Purpose: Uniform sequence generator state variable size -
  450. // computes the size,in bytes,
  451. // of the state variable structure ippsRandIniState_16s.
  452. //
  453. // Return:
  454. // ippStsNoErr Ok
  455. // ippStsNullPtrErr pRandUniformStateSize==NULL
  456. // Arguments:
  457. // pRandGaussStateSize pointer to the computed value of the size
  458. // of the structure ippsRandUniState_16s.
  459. */
  460. IPPAPI(IppStatus, ippsRandUniformGetSize_16s, (int * pRandUniformStateSize))
  461. /* //////////////////////////////////////////////////////////////////////////////////
  462. // Name: ippsRandUniformInit_16s
  463. // Purpose: Initializes the uniform sequence generator state structure with
  464. // given parameters (boundaries, seed)
  465. // Parameters:
  466. // pRandUniState Pointer to the structure containing parameters for the
  467. // generator of noise.
  468. // low Lower bound of the uniform distribution's range.
  469. // high Upper bounds of the uniform distribution's range.
  470. // seed Seed value used by the pseudo-random number generation
  471. // algorithm.
  472. //
  473. */
  474. IPPAPI(IppStatus, ippsRandUniformInit_16s, (IppsRandUniState_16s* pRandUniState,
  475. Ipp16s low, Ipp16s high, unsigned int seed))
  476. /* /////////////////////////////////////////////////////////////////////////
  477. // Name: ippsVectorJaehne
  478. // Purpose: creates Jaehne vector
  479. //
  480. // Parameters:
  481. // pDst the pointer to the destination vector
  482. // len length of the vector
  483. // magn magnitude of the signal
  484. //
  485. // Return:
  486. // ippStsNoErr indicates no error
  487. // ippStsNullPtrErr indicates an error when the pDst pointer is NULL
  488. // ippStsBadSizeErr indicates an error when len is less or equal zero
  489. // ippStsJaehneErr indicates an error when magnitude value is negative
  490. //
  491. // Notes: pDst[n] = magn*sin(0.5*pi*n^2/len), n=0,1,2,..len-1.
  492. //
  493. */
  494. IPPAPI (IppStatus, ippsVectorJaehne_8u, (Ipp8u* pDst, int len, Ipp8u magn))
  495. IPPAPI (IppStatus, ippsVectorJaehne_8s, (Ipp8s* pDst, int len, Ipp8s magn))
  496. IPPAPI (IppStatus, ippsVectorJaehne_16u, (Ipp16u* pDst, int len, Ipp16u magn))
  497. IPPAPI (IppStatus, ippsVectorJaehne_16s, (Ipp16s* pDst, int len, Ipp16s magn))
  498. IPPAPI (IppStatus, ippsVectorJaehne_32u, (Ipp32u* pDst, int len, Ipp32u magn))
  499. IPPAPI (IppStatus, ippsVectorJaehne_32s, (Ipp32s* pDst, int len, Ipp32s magn))
  500. IPPAPI (IppStatus, ippsVectorJaehne_32f, (Ipp32f* pDst, int len, Ipp32f magn))
  501. IPPAPI (IppStatus, ippsVectorJaehne_64f, (Ipp64f* pDst, int len, Ipp64f magn))
  502. /* /////////////////////////////////////////////////////////////////////////////
  503. // Name: ippsTone_Direct
  504. // Purpose: generates a tone
  505. // Context:
  506. // Returns: IppStatus
  507. // ippStsNoErr Ok
  508. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  509. // ippStsSizeErr The length of vector is less or equal zero
  510. // ippStsToneMagnErr The magn value is less than or equal to zero
  511. // ippStsToneFreqErr The rFreq value is less than 0 or greater than or equal to 0.5
  512. // for real tone and 1.0 for complex tone
  513. // ippStsTonePhaseErr The phase value is less 0 or greater or equal 2*PI
  514. // Parameters:
  515. // magn Magnitude of the tone; that is, the maximum value
  516. // attained by the wave
  517. // rFreq Frequency of the tone relative to the sampling
  518. // frequency. It must be in range [0.0, 0.5) for real, and
  519. // [0.0, 1.0) for complex tone
  520. // pPhase Phase of the tone relative to a cosinewave. It must
  521. // be in range [0.0, 2*PI).
  522. // pDst Pointer to the destination vector.
  523. // len Length of the vector
  524. // hint Suggests using specific code
  525. // Notes:
  526. // for real: pDst[i] = magn * cos(IPP_2PI * rfreq * i + phase);
  527. // for cplx: pDst[i].re = magn * cos(IPP_2PI * rfreq * i + phase);
  528. // pDst[i].im = magn * sin(IPP_2PI * rfreq * i + phase);
  529. */
  530. IPPAPI(IppStatus, ippsTone_Direct_32f, (Ipp32f* pDst, int len, float magn,
  531. float rFreq, float* pPhase, IppHintAlgorithm hint))
  532. IPPAPI(IppStatus, ippsTone_Direct_32fc, (Ipp32fc* pDst, int len, float magn,
  533. float rFreq, float* pPhase, IppHintAlgorithm hint))
  534. IPPAPI(IppStatus, ippsTone_Direct_64f, (Ipp64f* pDst, int len, double magn,
  535. double rFreq, double* pPhase, IppHintAlgorithm hint))
  536. IPPAPI(IppStatus, ippsTone_Direct_64fc, (Ipp64fc* pDst, int len, double magn,
  537. double rFreq, double* pPhase, IppHintAlgorithm hint))
  538. IPPAPI(IppStatus, ippsTone_Direct_16s, (Ipp16s* pDst, int len, Ipp16s magn,
  539. float rFreq, float* pPhase, IppHintAlgorithm hint))
  540. IPPAPI(IppStatus, ippsTone_Direct_16sc, (Ipp16sc* pDst, int len, Ipp16s magn,
  541. float rFreq, float* pPhase, IppHintAlgorithm hint))
  542. #if !defined ( _OWN_BLDPCS )
  543. struct ToneState_16s;
  544. typedef struct ToneState_16s IppToneState_16s;
  545. #endif
  546. /*
  547. // Name: ippsToneInitAllocQ15_16s
  548. // Purpose: Allocates memory for the structure IppToneState_16s,
  549. // initializes it with a set of cosinwave parameters (magnitude,
  550. // frequency, phase).
  551. // Context:
  552. // Returns: IppStatus
  553. // ippStsNoErr Ok
  554. // ippStsNullPtrErr Double pointer to pToneState is NULL
  555. // ippStsToneMagnErr The magn value is less than or equal to zero
  556. // ippStsToneFreqErr The freqQ15 value is less than 0 or greater than 16383
  557. // ippStsTonePhaseErr The phaseQ15 value is less than 0 or greater than 205886
  558. // Parameters:
  559. // **pToneState Double pointer to the structure IppToneState_16s.
  560. // magn Magnitude of the tone; that is, the maximum value
  561. // attained by the wave.
  562. // rFreqQ15 Frequency of the tone relative to the sampling
  563. // frequency. It must be between 0 and 16383
  564. // phaseQ15 Phase of the tone relative to a cosinewave. It must
  565. // be between 0 and 205886.
  566. // Notes:
  567. */
  568. IPPAPI(IppStatus, ippsToneInitAllocQ15_16s, (IppToneState_16s** pToneState,
  569. Ipp16s magn, Ipp16s rFreqQ15, Ipp32s phaseQ15))
  570. /*
  571. // Name: ippsToneFree_16s
  572. // Purpose: Frees memory, which was allocated
  573. // for the structure IppToneState_16s.
  574. // Context:
  575. // Returns: IppStatus
  576. // ippStsNoErr Ok
  577. // ippStsNullPtrErr Pointer to pToneState is NULL
  578. // Parameters:
  579. // *pToneState Pointer to the structure IppToneState_16s.
  580. // Notes:
  581. */
  582. IPPAPI(IppStatus, ippsToneFree, (IppToneState_16s* pToneState))
  583. /*
  584. // Name: ippsToneGetStateSizeQ15_16s
  585. // Purpose: Computes the size, in bytes, of the structure IppToneState_16s
  586. // Context:
  587. // Returns: IppStatus
  588. // ippStsNoErr Ok
  589. // ippStsNullPtrErr Pointer to pToneState size is NULL
  590. // Parameters:
  591. // *pToneStateSize Pointer to the computed value of the size
  592. // of the structure IppToneState_16s.
  593. // Notes:
  594. */
  595. IPPAPI(IppStatus, ippsToneGetStateSizeQ15_16s, (int* pToneStateSize))
  596. /*
  597. // Name: ippsToneInitQ15_16s
  598. // Purpose: initializes the structure IppToneState_16s with
  599. // given set of cosinewave parameters (magnitude,
  600. // frequency, phase)
  601. // Context:
  602. // Returns: IppStatus
  603. // ippStsNoErr Ok
  604. // ippStsNullPtrErr Pointer to pToneState is NULL
  605. // ippStsToneMagnErr The magn value is less than or equal to zero
  606. // ippStsToneFreqErr The rFreqQ15 value is less than 0 or greater 16383
  607. // ippStsTonePhaseErr The phaseQ15 value is less than 0 or greater 205886
  608. // Parameters:
  609. // *pToneState Pointer to the structure IppToneState_16s.
  610. // magn Magnitude of the tone; that is, the maximum value
  611. // attained by the wave.
  612. // rFreqQ15 Frequency of the tone relative to the sampling
  613. // frequency. It must be between 0 and 16383
  614. // phaseQ15 Phase of the tone relative to a cosinewave. It must
  615. // be between 0 and 205886.
  616. // Notes:
  617. */
  618. IPPAPI(IppStatus, ippsToneInitQ15_16s, (IppToneState_16s* pToneState, Ipp16s magn,
  619. Ipp16s rFreqQ15, Ipp32s phaseQ15))
  620. /*
  621. // Name: ippsToneQ15_16s
  622. // Purpose: generates a tone
  623. // Context:
  624. // Returns: IppStatus
  625. // ippStsNoErr Ok
  626. // ippStsNullPtrErr One of the specified pointers is NULL
  627. // ippStsSizeErr len is less than or equal to 0
  628. // Parameters:
  629. // pDst Pointer to the destination vector.
  630. // len Length of the vector
  631. // *pToneState Pointer to the structure IppToneState_16s.
  632. // Notes:
  633. */
  634. IPPAPI(IppStatus, ippsToneQ15_16s, (Ipp16s* pDst, int len, IppToneState_16s* pToneState))
  635. /* /////////////////////////////////////////////////////////////////////////////
  636. // Name: ippsTriangle_Direct
  637. // Purpose: generates a Triangle
  638. // Context:
  639. // Returns: IppStatus
  640. // ippStsNoErr Ok
  641. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  642. // ippStsSizeErr The length of vector is less or equal zero
  643. // ippStsTrnglMagnErr The magn value is less or equal to zero
  644. // ippStsTrnglFreqErr The rfreq value is less 0 or greater or equal 0.5
  645. // ippStsTrnglPhaseErr The phase value is less 0 or greater or equal 2*PI
  646. // ippStsTrnglAsymErr The asym value is less -PI or greater or equal PI
  647. // Parameters:
  648. // magn Magnitude of the Triangle; that is, the maximum value
  649. // attained by the wave
  650. // rFreq Frequency of the Triangle relative to the sampling
  651. // frequency. It must be in range [0.0, 0.5)
  652. // pPhase POinter to the phase of the Triangle relative to acosinewave. It must
  653. // be in range [0.0, 2*PI)
  654. // asym Asymmetry of a triangle. It must be in range [-PI,PI).
  655. // pDst Pointer to destination vector.
  656. // len Length of the vector
  657. */
  658. IPPAPI(IppStatus, ippsTriangle_Direct_64f, (Ipp64f* pDst, int len, double magn,
  659. double rFreq, double asym, double* pPhase))
  660. IPPAPI(IppStatus, ippsTriangle_Direct_64fc, (Ipp64fc* pDst, int len, double magn,
  661. double rFreq, double asym, double* pPhase))
  662. IPPAPI(IppStatus, ippsTriangle_Direct_32f, (Ipp32f* pDst, int len, float magn,
  663. float rFreq, float asym, float* pPhase))
  664. IPPAPI(IppStatus, ippsTriangle_Direct_32fc, (Ipp32fc* pDst, int len, float magn,
  665. float rFreq, float asym, float* pPhase))
  666. IPPAPI(IppStatus, ippsTriangle_Direct_16s, (Ipp16s* pDst, int len, Ipp16s magn,
  667. float rFreq, float asym, float* pPhase))
  668. IPPAPI(IppStatus, ippsTriangle_Direct_16sc, (Ipp16sc* pDst, int len, Ipp16s magn,
  669. float rFreq, float asym, float* pPhase))
  670. #if !defined ( _OWN_BLDPCS )
  671. /* IPP Context triangle identification */
  672. struct TriangleState_16s;
  673. typedef struct TriangleState_16s IppTriangleState_16s;
  674. #endif
  675. /*
  676. // Name: ippsTriangleInitAllocQ15_16s
  677. // Purpose: Allocates memory for the structure IppTriangleState_16s,
  678. // initializes it with a set of wave parameters (magnitude,
  679. // frequency, phase, asymmetry).
  680. // Context:
  681. // Returns: IppStatus
  682. // ippStsNoErr Ok
  683. // ippStsNullPtrErr Double pointer to pTriangleState is NULL
  684. // ippStsTriangleMagnErr The magn value is less than or equal to zero
  685. // ippStsTriangleFreqErr The freqQ15 value is less than 0 or greater than 16383
  686. // ippStsTriangleAsymErr The phaseQ15 value is less than 0 or greater than 205886
  687. // ippStsTrianglePhaseErr The asymQ15 value is less than -102943 or greater than 102943
  688. // Parameters:
  689. // **pTriangleState Double pointer to the structure IppTriangleState_16s.
  690. // magn Magnitude of the Triangle; that is, the maximum value
  691. // attained by the wave.
  692. // rFreqQ15 Frequency of the Triangle relative to the sampling
  693. // frequency. It must be between 0 and 16383
  694. // phaseQ15 Phase of the Triangle relative to a wave. It must
  695. // be between 0 and 205886.
  696. // asymQ15 Asymmetry of the Triangle relative to a wave. It must
  697. // be between -102943 and 102943.
  698. // Notes:
  699. */
  700. IPPAPI(IppStatus, ippsTriangleInitAllocQ15_16s, (IppTriangleState_16s** pTriangleState,
  701. Ipp16s magn, Ipp16s rFreqQ15, Ipp32s phaseQ15, Ipp32s asymQ15))
  702. /*
  703. // Name: ippsTriangleFree_16s
  704. // Purpose: Frees memory, which was allocated
  705. // for the structure IppTriangleState_16s.
  706. // Context:
  707. // Returns: IppStatus
  708. // ippStsNoErr Ok
  709. // ippStsNullPtrErr Pointer to pTriangleState is NULL
  710. // Parameters:
  711. // *pTriangleState Pointer to the structure IppTriangleState_16s.
  712. // Notes:
  713. */
  714. IPPAPI(IppStatus, ippsTriangleFree, (IppTriangleState_16s* pTriangleState))
  715. /*
  716. // Name: ippsTriangleGetStateSizeQ15_16s
  717. // Purpose: Computes the size, in bytes, of the structure IppTriangleState_16s
  718. // Context:
  719. // Returns: IppStatus
  720. // ippStsNoErr Ok
  721. // ippStsNullPtrErr Pointer to pTriangleState size is NULL
  722. // Parameters:
  723. // *pTriangleStateSize Pointer to the computed value of the size
  724. // of the structure IppTriangleState_16s.
  725. // Notes:
  726. */
  727. IPPAPI(IppStatus, ippsTriangleGetStateSizeQ15_16s, (int* pTriangleStateSize))
  728. /*
  729. // Name: ippsTriangleInitQ15_16s
  730. // Purpose: Initializes the structure IppTriangleState_16s
  731. // with a given set of cosinewave parameters (magnitude,
  732. // frequency, phase)
  733. // Context:
  734. // Returns: IppStatus
  735. // ippStsNoErr Ok
  736. // ippStsNullPtrErr The pointer to pTriangleState is NULL
  737. // ippStsTrngleMagnErr The magn value is less than or equal to zero
  738. // ippStsTrngleFreqErr The freqQ15 value is less than 0 or greater than 16383
  739. // ippStsTrnglePhaseErr The phaseQ15 value is less than 0 or greater than 205886
  740. // ippStsTrngleAsymErr The asymQ15 value is less than -102943 or greater than 102943
  741. // Parameters:
  742. // *pTriangleState Pointer to the structure IppTriangleState_16s.
  743. // magn Magnitude of the Triangle; that is, the maximum value
  744. // attained by the wave.
  745. // rFreqQ15 Frequency of the Triangle relative to the sampling
  746. // frequency. It must be between 0 and 16383
  747. // phaseQ15 Phase of the Triangle relative to a wave. It must
  748. // be between 0 and 205886.
  749. // asymQ15 Asymmetry of the Triangle relative to a wave. It must
  750. // be between -102943 and 102943.
  751. // Notes:
  752. */
  753. IPPAPI(IppStatus, ippsTriangleInitQ15_16s, (IppTriangleState_16s* pTriangleState,
  754. Ipp16s magn, Ipp16s rFreqQ15, Ipp32s phaseQ15, Ipp32s asymQ15))
  755. /*
  756. // Name: ippsTriangleQ15_16s
  757. // Purpose: generates a Triangle
  758. // Context:
  759. // Returns: IppStatus
  760. // ippStsNoErr Ok
  761. // Parameters:
  762. // pDst The pointer to destination vector.
  763. // len The length of vector
  764. // *pTriangleState Pointer to the structure IppTriangleState_16s.
  765. // Notes:
  766. */
  767. IPPAPI(IppStatus, ippsTriangleQ15_16s, (Ipp16s* pDst, int len, IppTriangleState_16s* pTriangleState))
  768. /* /////////////////////////////////////////////////////////////////////////////
  769. // Name: ippsToneQ15_Direct_16s
  770. // Purpose: generates a tone
  771. // Context:
  772. // Returns: IppStatus
  773. // ippStsNoErr Ok
  774. // ippStsNullPtrErr The pointer to the destination vector is NULL
  775. // ippStsSizeErr The length of the vector is less than or equal to zero
  776. // ippStsToneMagnErr The magn value is less than or equal to zero
  777. // ippStsToneFreqErr The rFreqQ15 value is less than 0 or greater than 16383
  778. // ippStsTonePhaseErr The phaseQ15 value is less than 0 or greater than 205886
  779. // Parameters:
  780. // pDst Pointer to the destination vector.
  781. // len Length of the vector
  782. // magn Magnitude of the tone; that is, the maximum value
  783. // attained by the wave.It must be between 0 and 32767
  784. // rFreqQ15 Frequency of the tone relative to the sampling
  785. // frequency. It must be between 0 and 16383
  786. // phaseQ15 Phase of the tone relative to a cosinewave. It must
  787. // be between 0 and 205886.
  788. */
  789. IPPAPI(IppStatus, ippsToneQ15_Direct_16s, (Ipp16s* pDst, int len,
  790. Ipp16s magn, Ipp16s rFreqQ15, Ipp32s phaseQ15))
  791. /* /////////////////////////////////////////////////////////////////////////////
  792. // Name: ippsTriangleQ15_Direct_16s
  793. // Purpose: generates a Triangle
  794. // Context:
  795. // Returns: IppStatus
  796. // ippStsNoErr Ok
  797. // ippStsNullPtrErr The pointer to the destination vector is NULL
  798. // ippStsSizeErr The length of the vector is less than or equal to zero
  799. // ippStsTriangleMagnErr The magn value is less than or equal to zero
  800. // ippStsTriangleFreqErr The rFfreqQ15 value is less than 0 or greater than 16383
  801. // ippStsTriangleAsymErr The asymQ15 value is less than 0 or greater than 205886
  802. // ippStsTrianglePhaseErr The phaseQ15 value is less than -102943 or greater than 102943
  803. // Parameters:
  804. // pDst Pointer to the destination vector.
  805. // len Length of the vector
  806. // mag Magnitude of the Triangle; that is, the maximum value
  807. // attained by the wave. It must be between 0 and 32767.
  808. // rFreqQ15 Frequency of the Triangle relative to the sampling
  809. // frequency. It must be between 0 and 16383
  810. // phaseQ15 The phase of the Triangle relative to a wave. It must
  811. // be between 0 and 205886.
  812. // asymQ15 The asymmetry of the Triangle relative to a wave. It must
  813. // be between -102943 and 102943.
  814. // Notes:
  815. */
  816. IPPAPI(IppStatus, ippsTriangleQ15_Direct_16s, ( Ipp16s* pDst, int len,
  817. Ipp16s magn, Ipp16s rFreqQ15,
  818. Ipp32s phaseQ15, Ipp32s asymQ15))
  819. /* /////////////////////////////////////////////////////////////////////////
  820. // Name: ippsVectorRamp_8u, ippsVectorRamp_8s,
  821. // ippsVectorRamp_16u, ippsVectorRamp_16s,
  822. // ippsVectorRamp_32u, ippsVectorRamp_32s,
  823. // ippsVectorRamp_32f, ippsVectorRamp_64f
  824. // Purpose: Creates ramp vector
  825. //
  826. // Parameters:
  827. // pDst A pointer to the destination vector
  828. // len Vector's length
  829. // offset Offset value
  830. // slope Slope coefficient
  831. //
  832. // Return:
  833. // ippStsNoErr No error
  834. // ippStsNullPtrErr pDst pointer is NULL
  835. // ippStsBadSizeErr Vector's length is less or equal zero
  836. // ippStsNoErr No error
  837. //
  838. // Notes: Dst[n] = offset + slope * n
  839. //
  840. */
  841. IPPAPI (IppStatus, ippsVectorRamp_8u, (Ipp8u* pDst, int len, float offset, float slope))
  842. IPPAPI (IppStatus, ippsVectorRamp_8s, (Ipp8s* pDst, int len, float offset, float slope))
  843. IPPAPI (IppStatus, ippsVectorRamp_16u, (Ipp16u* pDst, int len, float offset, float slope))
  844. IPPAPI (IppStatus, ippsVectorRamp_16s, (Ipp16s* pDst, int len, float offset, float slope))
  845. IPPAPI (IppStatus, ippsVectorRamp_32u, (Ipp32u* pDst, int len, float offset, float slope))
  846. IPPAPI (IppStatus, ippsVectorRamp_32s, (Ipp32s* pDst, int len, float offset, float slope))
  847. IPPAPI (IppStatus, ippsVectorRamp_32f, (Ipp32f* pDst, int len, float offset, float slope))
  848. IPPAPI (IppStatus, ippsVectorRamp_64f, (Ipp64f* pDst, int len, float offset, float slope))
  849. /* /////////////////////////////////////////////////////////////////////////////
  850. // Convert functions
  851. ///////////////////////////////////////////////////////////////////////////// */
  852. /* /////////////////////////////////////////////////////////////////////////////
  853. // Name: ippsReal
  854. // Purpose: form vector with real part of the input complex vector
  855. // Parameters:
  856. // pSrc pointer to the input complex vector
  857. // pDstRe pointer to the output vector to store the real part
  858. // len length of the vectors, number of items
  859. // Return:
  860. // ippStsNullPtrErr pointer(s) to the data is NULL
  861. // ippStsSizeErr length of the vectors is less or equal zero
  862. // ippStsNoErr otherwise
  863. */
  864. IPPAPI(IppStatus, ippsReal_64fc,(const Ipp64fc* pSrc, Ipp64f* pDstRe, int len))
  865. IPPAPI(IppStatus, ippsReal_32fc,(const Ipp32fc* pSrc, Ipp32f* pDstRe, int len))
  866. IPPAPI(IppStatus, ippsReal_16sc,(const Ipp16sc* pSrc, Ipp16s* pDstRe, int len))
  867. /* /////////////////////////////////////////////////////////////////////////////
  868. // Name: ippsImag
  869. // Purpose: form vector with imaginary part of the input complex vector
  870. // Parameters:
  871. // pSrc pointer to the input complex vector
  872. // pDstRe pointer to the output vector to store the real part
  873. // len length of the vectors, number of items
  874. // Return:
  875. // ippStsNullPtrErr pointer(s) to the data is NULL
  876. // ippStsSizeErr length of the vectors is less or equal zero
  877. // ippStsNoErr otherwise
  878. */
  879. IPPAPI(IppStatus, ippsImag_64fc,(const Ipp64fc* pSrc, Ipp64f* pDstIm, int len))
  880. IPPAPI(IppStatus, ippsImag_32fc,(const Ipp32fc* pSrc, Ipp32f* pDstIm, int len))
  881. IPPAPI(IppStatus, ippsImag_16sc,(const Ipp16sc* pSrc, Ipp16s* pDstIm, int len))
  882. /* /////////////////////////////////////////////////////////////////////////////
  883. // Name: ippsCplxToReal
  884. // Purpose: form the real and imaginary parts of the input complex vector
  885. // Parameters:
  886. // pSrc pointer to the input complex vector
  887. // pDstRe pointer to output vector to store the real part
  888. // pDstIm pointer to output vector to store the imaginary part
  889. // len length of the vectors, number of items
  890. // Return:
  891. // ippStsNullPtrErr pointer(s) to the data is NULL
  892. // ippStsSizeErr length of the vectors is less or equal zero
  893. // ippStsNoErr otherwise
  894. */
  895. IPPAPI(IppStatus, ippsCplxToReal_64fc,( const Ipp64fc* pSrc, Ipp64f* pDstRe,
  896. Ipp64f* pDstIm, int len ))
  897. IPPAPI(IppStatus, ippsCplxToReal_32fc,( const Ipp32fc* pSrc, Ipp32f* pDstRe,
  898. Ipp32f* pDstIm, int len ))
  899. IPPAPI(IppStatus, ippsCplxToReal_16sc,( const Ipp16sc* pSrc, Ipp16s* pDstRe,
  900. Ipp16s* pDstIm, int len ))
  901. /* /////////////////////////////////////////////////////////////////////////////
  902. // Name: ippsRealToCplx
  903. // Purpose: form complex vector from the real and imaginary components
  904. // Parameters:
  905. // pSrcRe pointer to the input vector with real part, may be NULL
  906. // pSrcIm pointer to the input vector with imaginary part, may be NULL
  907. // pDst pointer to the output complex vector
  908. // len length of the vectors
  909. // Return:
  910. // ippStsNullPtrErr pointer to the destination data is NULL
  911. // ippStsSizeErr length of the vectors is less or equal zero
  912. // ippStsNoErr otherwise
  913. //
  914. // Notes: one of the two input pointers may be NULL. In this case
  915. // the corresponding values of the output complex elements is 0
  916. */
  917. IPPAPI(IppStatus, ippsRealToCplx_64f,( const Ipp64f* pSrcRe,
  918. const Ipp64f* pSrcIm, Ipp64fc* pDst, int len ))
  919. IPPAPI(IppStatus, ippsRealToCplx_32f,( const Ipp32f* pSrcRe,
  920. const Ipp32f* pSrcIm, Ipp32fc* pDst, int len ))
  921. IPPAPI(IppStatus, ippsRealToCplx_16s,( const Ipp16s* pSrcRe,
  922. const Ipp16s* pSrcIm, Ipp16sc* pDst, int len ))
  923. /* /////////////////////////////////////////////////////////////////////////////
  924. // Names: ippsConj, ippsConjFlip
  925. // Purpose: complex conjugate data vector
  926. // Parameters:
  927. // pSrc pointer to the input vector
  928. // pDst pointer to the output vector
  929. // len length of the vectors
  930. // Return:
  931. // ippStsNullPtrErr pointer(s) to the data is NULL
  932. // ippStsSizeErr length of the vectors is less or equal zero
  933. // ippStsNoErr otherwise
  934. // Notes:
  935. // the ConjFlip version conjugates and stores result in reverse order
  936. */
  937. IPPAPI ( IppStatus, ippsConj_64fc_I, ( Ipp64fc* pSrcDst, int len ))
  938. IPPAPI ( IppStatus, ippsConj_32fc_I, ( Ipp32fc* pSrcDst, int len ))
  939. IPPAPI ( IppStatus, ippsConj_16sc_I, ( Ipp16sc* pSrcDst, int len ))
  940. IPPAPI ( IppStatus, ippsConj_64fc,
  941. ( const Ipp64fc* pSrc, Ipp64fc* pDst, int len ))
  942. IPPAPI ( IppStatus, ippsConj_32fc,
  943. ( const Ipp32fc* pSrc, Ipp32fc* pDst, int len ))
  944. IPPAPI ( IppStatus, ippsConj_16sc,
  945. ( const Ipp16sc* pSrc, Ipp16sc* pDst, int len ))
  946. IPPAPI ( IppStatus, ippsConjFlip_64fc,
  947. ( const Ipp64fc* pSrc, Ipp64fc* pDst, int len ))
  948. IPPAPI ( IppStatus, ippsConjFlip_32fc,
  949. ( const Ipp32fc* pSrc, Ipp32fc* pDst, int len ))
  950. IPPAPI ( IppStatus, ippsConjFlip_16sc,
  951. ( const Ipp16sc* pSrc, Ipp16sc* pDst, int len ))
  952. IPPAPI ( IppStatus, ippsConjCcs_64fc_I,
  953. ( Ipp64fc* pSrcDst, int lenDst ))
  954. IPPAPI ( IppStatus, ippsConjCcs_32fc_I,
  955. ( Ipp32fc* pSrcDst, int lenDst ))
  956. IPPAPI ( IppStatus, ippsConjCcs_16sc_I,
  957. ( Ipp16sc* pSrcDst, int lenDst ))
  958. IPPAPI ( IppStatus, ippsConjCcs_64fc,
  959. ( const Ipp64f* pSrc, Ipp64fc* pDst, int lenDst ))
  960. IPPAPI ( IppStatus, ippsConjCcs_32fc,
  961. ( const Ipp32f* pSrc, Ipp32fc* pDst, int lenDst ))
  962. IPPAPI ( IppStatus, ippsConjCcs_16sc,
  963. ( const Ipp16s* pSrc, Ipp16sc* pDst, int lenDst ))
  964. IPPAPI ( IppStatus, ippsConjPack_64fc_I,
  965. ( Ipp64fc* pSrcDst, int lenDst ))
  966. IPPAPI ( IppStatus, ippsConjPack_32fc_I,
  967. ( Ipp32fc* pSrcDst, int lenDst ))
  968. IPPAPI ( IppStatus, ippsConjPack_16sc_I,
  969. ( Ipp16sc* pSrcDst, int lenDst ))
  970. IPPAPI ( IppStatus, ippsConjPack_64fc,
  971. ( const Ipp64f* pSrc, Ipp64fc* pDst, int lenDst ))
  972. IPPAPI ( IppStatus, ippsConjPack_32fc,
  973. ( const Ipp32f* pSrc, Ipp32fc* pDst, int lenDst ))
  974. IPPAPI ( IppStatus, ippsConjPack_16sc,
  975. ( const Ipp16s* pSrc, Ipp16sc* pDst, int lenDst ))
  976. IPPAPI ( IppStatus, ippsConjPerm_64fc_I,
  977. ( Ipp64fc* pSrcDst, int lenDst ))
  978. IPPAPI ( IppStatus, ippsConjPerm_32fc_I,
  979. ( Ipp32fc* pSrcDst, int lenDst ))
  980. IPPAPI ( IppStatus, ippsConjPerm_16sc_I,
  981. ( Ipp16sc* pSrcDst, int lenDst ))
  982. IPPAPI ( IppStatus, ippsConjPerm_64fc,
  983. ( const Ipp64f* pSrc, Ipp64fc* pDst, int lenDst ))
  984. IPPAPI ( IppStatus, ippsConjPerm_32fc,
  985. ( const Ipp32f* pSrc, Ipp32fc* pDst, int lenDst ))
  986. IPPAPI ( IppStatus, ippsConjPerm_16sc,
  987. ( const Ipp16s* pSrc, Ipp16sc* pDst, int lenDst ))
  988. /* /////////////////////////////////////////////////////////////////////////////
  989. // Name: ippsConvert
  990. // Purpose: Converts integer data to floating point data
  991. // Parameters:
  992. // pSrc pointer to integer data to be converted
  993. // pDst pointer to the destination vector
  994. // len length of the vectors
  995. // Return:
  996. // ippStsNullPtrErr pointer(s) to the data is NULL
  997. // ippStsSizeErr length of the vectors is less or equal zero
  998. // ippStsNoErr otherwise
  999. */
  1000. IPPAPI(IppStatus,ippsConvert_8s16s,(const Ipp8s* pSrc,Ipp16s* pDst,int len))
  1001. IPPAPI(IppStatus,ippsConvert_16s32s,(const Ipp16s* pSrc, Ipp32s* pDst, int len))
  1002. IPPAPI(IppStatus,ippsConvert_32s16s,(const Ipp32s* pSrc, Ipp16s* pDst, int len))
  1003. IPPAPI(IppStatus,ippsConvert_8s32f,(const Ipp8s* pSrc,Ipp32f* pDst,int len))
  1004. IPPAPI(IppStatus,ippsConvert_8u32f,(const Ipp8u* pSrc,Ipp32f* pDst,int len))
  1005. IPPAPI(IppStatus,ippsConvert_16s32f,(const Ipp16s* pSrc,Ipp32f* pDst,int len))
  1006. IPPAPI(IppStatus,ippsConvert_16u32f,(const Ipp16u* pSrc,Ipp32f* pDst,int len))
  1007. IPPAPI(IppStatus,ippsConvert_32s64f,(const Ipp32s* pSrc,Ipp64f* pDst,int len))
  1008. IPPAPI(IppStatus,ippsConvert_32s32f,(const Ipp32s* pSrc,Ipp32f* pDst,int len))
  1009. IPPAPI(IppStatus,ippsConvert_64s64f,(const Ipp64s* pSrc,Ipp64f* pDst, Ipp32u len))
  1010. IPPAPI(IppStatus,ippsConvert_16s8s_Sfs,(const Ipp16s* pSrc, Ipp8s* pDst,
  1011. Ipp32u len, IppRoundMode rndMode, int scaleFactor))
  1012. /* /////////////////////////////////////////////////////////////////////////////
  1013. // Name: ippsConvert
  1014. // Purpose: convert floating point data to integer data
  1015. // Parameters:
  1016. // pSrc pointer to the input floating point data to be converted
  1017. // pDst pointer to destination vector
  1018. // len length of the vectors
  1019. // rndMode Rounding mode which can be ippRndZero or ippRndNear
  1020. // scaleFactor scale factor value
  1021. // Return:
  1022. // ippStsNullPtrErr pointer(s) to the data NULL
  1023. // ippStsSizeErr length of the vectors is less or equal zero
  1024. // ippStsNoErr otherwise
  1025. // Note:
  1026. // an out-of-range result will be saturated
  1027. */
  1028. IPPAPI(IppStatus,ippsConvert_32f8s_Sfs,(const Ipp32f* pSrc, Ipp8s* pDst,
  1029. int len, IppRoundMode rndMode, int scaleFactor))
  1030. IPPAPI(IppStatus,ippsConvert_32f8u_Sfs,(const Ipp32f* pSrc, Ipp8u* pDst,
  1031. int len, IppRoundMode rndMode, int scaleFactor))
  1032. IPPAPI(IppStatus,ippsConvert_32f16s_Sfs,(const Ipp32f* pSrc, Ipp16s* pDst,
  1033. int len, IppRoundMode rndMode, int scaleFactor))
  1034. IPPAPI(IppStatus,ippsConvert_32f16u_Sfs,(const Ipp32f* pSrc, Ipp16u* pDst,
  1035. int len, IppRoundMode rndMode, int scaleFactor))
  1036. IPPAPI(IppStatus,ippsConvert_64f32s_Sfs,(const Ipp64f* pSrc, Ipp32s* pDst,
  1037. int len, IppRoundMode rndMode, int scaleFactor))
  1038. IPPAPI(IppStatus,ippsConvert_32f32s_Sfs,(const Ipp32f* pSrc, Ipp32s* pDst,
  1039. int len, IppRoundMode rndMode, int scaleFactor))
  1040. IPPAPI(IppStatus,ippsConvert_64f16s_Sfs,(const Ipp64f* pSrc, Ipp16s* pDst,
  1041. int len, IppRoundMode rndMode, int scaleFactor))
  1042. IPPAPI(IppStatus,ippsConvert_64f64s_Sfs,(const Ipp64f* pSrc, Ipp64s* pDst,
  1043. Ipp32u len, IppRoundMode rndMode, int scaleFactor))
  1044. /* /////////////////////////////////////////////////////////////////////////////
  1045. // Name: ippsConvert_32f64f
  1046. // Purpose: Converts floating point data Ipp32f
  1047. // to floating point data Ipp64f
  1048. // Parameters:
  1049. // pSrc pointer to the input vector
  1050. // pDst pointer to the output vector
  1051. // len length of the vectors
  1052. // Return:
  1053. // ippStsNullPtrErr pointer(s) to the data is NULL
  1054. // ippStsSizeErr length of the vectors is less or equal zero
  1055. // ippStsNoErr otherwise
  1056. */
  1057. IPPAPI ( IppStatus, ippsConvert_32f64f,
  1058. ( const Ipp32f* pSrc, Ipp64f* pDst, int len ))
  1059. /* /////////////////////////////////////////////////////////////////////////////
  1060. // Name: ippsConvert_64f32f
  1061. // Purpose: Converts floating point data Ipp64f
  1062. // to floating point data Ipp32f
  1063. // Parameters:
  1064. // pSrc pointer to the input vector
  1065. // pDst pointer to the output vector
  1066. // len length of the vectors
  1067. // Return:
  1068. // ippStsNullPtrErr pointer(s) to the data is NULL
  1069. // ippStsSizeErr length of the vectors is less or equal zero
  1070. // ippStsNoErr otherwise
  1071. // Note:
  1072. // an out-of-range result will be saturated
  1073. */
  1074. IPPAPI ( IppStatus, ippsConvert_64f32f,
  1075. ( const Ipp64f* pSrc, Ipp32f* pDst, int len ))
  1076. /* /////////////////////////////////////////////////////////////////////////////
  1077. // Name: ippsConvert
  1078. // Purpose: Converts integer data to floating point data
  1079. // Parameters:
  1080. // pSrc pointer to integer data to be converted
  1081. // pDst pointer to the destination vector
  1082. // len length of the vectors
  1083. // scaleFactor scale factor value
  1084. // Return:
  1085. // ippStsNullPtrErr pointer(s) to the data is NULL
  1086. // ippStsSizeErr length of the vectors is less or equal zero
  1087. // ippStsNoErr otherwise
  1088. */
  1089. IPPAPI ( IppStatus, ippsConvert_16s32f_Sfs,
  1090. ( const Ipp16s* pSrc, Ipp32f* pDst, int len, int scaleFactor ))
  1091. IPPAPI ( IppStatus, ippsConvert_16s64f_Sfs,
  1092. ( const Ipp16s* pSrc, Ipp64f* pDst, int len, int scaleFactor ))
  1093. IPPAPI ( IppStatus, ippsConvert_32s32f_Sfs,
  1094. ( const Ipp32s* pSrc, Ipp32f* pDst, int len, int scaleFactor ))
  1095. IPPAPI ( IppStatus, ippsConvert_32s64f_Sfs,
  1096. ( const Ipp32s* pSrc, Ipp64f* pDst, int len, int scaleFactor ))
  1097. IPPAPI( IppStatus, ippsConvert_32s16s_Sfs,
  1098. ( const Ipp32s* pSrc, Ipp16s* pDst, int len,
  1099. int scaleFactor ))
  1100. /* /////////////////////////////////////////////////////////////////////////////
  1101. // Name: ippsConvert
  1102. // Purpose: Converts 24u data to 32u or 32f data.
  1103. // Converts 32u or 32f data to 24u data.
  1104. // Converts 24s data to 32s or 32f data.
  1105. // Converts 32s or 32f data to 24s data.
  1106. // Parameters:
  1107. // pSrc pointer to the input vector
  1108. // pDst pointer to the output vector
  1109. // len length of the vectors
  1110. // scaleFactor scale factor value
  1111. // Return:
  1112. // ippStsNullPtrErr pointer(s) to the data is NULL
  1113. // ippStsSizeErr length of the vectors is less or equal zero
  1114. // ippStsNoErr otherwise
  1115. */
  1116. IPPAPI( IppStatus, ippsConvert_24u32u,
  1117. ( const Ipp8u* pSrc, Ipp32u* pDst, int len ))
  1118. IPPAPI( IppStatus, ippsConvert_32u24u_Sfs,
  1119. ( const Ipp32u* pSrc, Ipp8u* pDst, int len,
  1120. int scaleFactor ))
  1121. IPPAPI( IppStatus, ippsConvert_24u32f,
  1122. ( const Ipp8u* pSrc, Ipp32f* pDst, int len ))
  1123. IPPAPI( IppStatus, ippsConvert_32f24u_Sfs,
  1124. ( const Ipp32f* pSrc, Ipp8u* pDst, int len,
  1125. int scaleFactor ))
  1126. IPPAPI( IppStatus, ippsConvert_24s32s,
  1127. ( const Ipp8u* pSrc, Ipp32s* pDst, int len ))
  1128. IPPAPI( IppStatus, ippsConvert_32s24s_Sfs,
  1129. ( const Ipp32s* pSrc, Ipp8u* pDst, int len,
  1130. int scaleFactor ))
  1131. IPPAPI( IppStatus, ippsConvert_24s32f,
  1132. ( const Ipp8u* pSrc, Ipp32f* pDst, int len ))
  1133. IPPAPI( IppStatus, ippsConvert_32f24s_Sfs,
  1134. ( const Ipp32f* pSrc, Ipp8u* pDst, int len,
  1135. int scaleFactor ))
  1136. #if !defined( _OWN_BLDPCS )
  1137. typedef Ipp16s Ipp16f;
  1138. #endif
  1139. /* /////////////////////////////////////////////////////////////////////////////
  1140. // Name: ippsConvert_16s16f
  1141. // Purpose: Converts integer data to floating point data
  1142. // Parameters:
  1143. // pSrc pointer to integer data to be converted
  1144. // pDst pointer to the destination vector
  1145. // len length of the vectors
  1146. // rndMode Rounding mode which can be ippRndZero or ippRndNear
  1147. // Return:
  1148. // ippStsNullPtrErr pointer(s) to the data is NULL
  1149. // ippStsSizeErr length of the vectors is less or equal zero
  1150. // ippStsNoErr otherwise
  1151. */
  1152. IPPAPI(IppStatus,ippsConvert_16s16f,(const Ipp16s* pSrc,Ipp16f* pDst,int len,IppRoundMode rndMode))
  1153. /* /////////////////////////////////////////////////////////////////////////////
  1154. // Name: ippsConvert_16f16s_Sfs
  1155. // Purpose: convert floating point data to integer data
  1156. // Parameters:
  1157. // pSrc pointer to the input floating point data to be converted
  1158. // pDst pointer to destination vector
  1159. // len length of the vectors
  1160. // rndMode Rounding mode which can be ippRndZero or ippRndNear
  1161. // scaleFactor scale factor value
  1162. // Return:
  1163. // ippStsNullPtrErr pointer(s) to the data NULL
  1164. // ippStsSizeErr length of the vectors is less or equal zero
  1165. // ippStsNoErr otherwise
  1166. // Note:
  1167. // an out-of-range result will be saturated
  1168. */
  1169. IPPAPI(IppStatus,ippsConvert_16f16s_Sfs,(const Ipp16f* pSrc,Ipp16s* pDst,int len,IppRoundMode rndMode,int scaleFactor))
  1170. /* /////////////////////////////////////////////////////////////////////////////
  1171. // Name: ippsConvert_32f16f
  1172. // Purpose: Converts floating point data Ipp32f
  1173. // to floating point data Ipp16f
  1174. // Parameters:
  1175. // pSrc pointer to the input vector
  1176. // pDst pointer to the output vector
  1177. // len length of the vectors
  1178. // rndMode Rounding mode which can be ippRndZero or ippRndNear
  1179. // Return:
  1180. // ippStsNullPtrErr pointer(s) to the data is NULL
  1181. // ippStsSizeErr length of the vectors is less or equal zero
  1182. // ippStsNoErr otherwise
  1183. */
  1184. IPPAPI(IppStatus,ippsConvert_32f16f,(const Ipp32f* pSrc,Ipp16f* pDst,int len,IppRoundMode rndMode))
  1185. /* /////////////////////////////////////////////////////////////////////////////
  1186. // Name: ippsConvert_16f32f
  1187. // Purpose: Converts floating point data Ipp16f
  1188. // to floating point data Ipp32f
  1189. // Parameters:
  1190. // pSrc pointer to the input vector
  1191. // pDst pointer to the output vector
  1192. // len length of the vectors
  1193. Return:
  1194. // ippStsNullPtrErr pointer(s) to the data is NULL
  1195. // ippStsSizeErr length of the vectors is less or equal zero
  1196. // ippStsNoErr otherwise
  1197. */
  1198. IPPAPI(IppStatus,ippsConvert_16f32f,(const Ipp16f* pSrc,Ipp32f* pDst,int len))
  1199. /* /////////////////////////////////////////////////////////////////////////////
  1200. // Name: ippsConvert
  1201. // Purpose: convert integer data to integer data
  1202. // Parameters:
  1203. // pSrc pointer to the input integer data to be converted
  1204. // pDst pointer to destination vector
  1205. // len length of the vectors
  1206. // rndMode Rounding mode which can be ippRndZero or ippRndNear
  1207. // scaleFactor scale factor value
  1208. // Return:
  1209. // ippStsNullPtrErr pointer(s) to the data NULL
  1210. // ippStsSizeErr length of the vectors is less or equal zero
  1211. // ippStsNoErr otherwise
  1212. // Note:
  1213. // an out-of-range result will be saturated
  1214. */
  1215. IPPAPI(IppStatus,ippsConvert_64s32s_Sfs,(const Ipp64s* pSrc, Ipp32s* pDst,
  1216. int len, IppRoundMode rndMode, int scaleFactor))
  1217. /* /////////////////////////////////////////////////////////////////////////////
  1218. // Name: ippsThreshold
  1219. // Purpose: execute threshold operation on every element of the vector
  1220. // Parameters:
  1221. // level level of the threshold operation
  1222. // pSrcDst pointer to the vector for in-place operation
  1223. // pSrc pointer to the input vector
  1224. // pDst pointer to the output vector
  1225. // len length of the vectors
  1226. // relOp comparison mode, cmpLess or cmpGreater
  1227. // Return:
  1228. // ippStsNullPtrErr pointer(s) to the data is NULL
  1229. // ippStsSizeErr length of the vectors is less or equal zero
  1230. // ippStsThreshNegLevelErr negative level value in complex operation
  1231. // ippStsBadArgErr relOp is no cmpLess and no cmpGreater
  1232. // ippStsNoErr otherwise
  1233. // Notes:
  1234. // real data
  1235. // cmpLess : pDst[n] = pSrc[n] < level ? level : pSrc[n];
  1236. // cmpGreater : pDst[n] = pSrc[n] > level ? level : pSrc[n];
  1237. // complex data
  1238. // cmpLess : pDst[n] = abs(pSrc[n]) < level ? pSrc[n]*k : pSrc[n];
  1239. // cmpGreater : pDst[n] = abs(pSrc[n]) > level ? pSrc[n]*k : pSrc[n];
  1240. // where k = level / abs(pSrc[n]);
  1241. */
  1242. IPPAPI(IppStatus,ippsThreshold_32f_I,( Ipp32f* pSrcDst, int len,
  1243. Ipp32f level, IppCmpOp relOp ))
  1244. IPPAPI(IppStatus,ippsThreshold_32fc_I,( Ipp32fc* pSrcDst, int len,
  1245. Ipp32f level, IppCmpOp relOp ))
  1246. IPPAPI(IppStatus,ippsThreshold_64f_I,( Ipp64f* pSrcDst, int len,
  1247. Ipp64f level, IppCmpOp relOp ))
  1248. IPPAPI(IppStatus,ippsThreshold_64fc_I,( Ipp64fc* pSrcDst, int len,
  1249. Ipp64f level, IppCmpOp relOp ))
  1250. IPPAPI(IppStatus,ippsThreshold_16s_I,( Ipp16s* pSrcDst, int len,
  1251. Ipp16s level, IppCmpOp relOp ))
  1252. IPPAPI(IppStatus,ippsThreshold_16sc_I,( Ipp16sc* pSrcDst, int len,
  1253. Ipp16s level, IppCmpOp relOp ))
  1254. IPPAPI(IppStatus,ippsThreshold_32f,( const Ipp32f* pSrc, Ipp32f* pDst,
  1255. int len, Ipp32f level, IppCmpOp relOp ))
  1256. IPPAPI(IppStatus,ippsThreshold_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst,
  1257. int len, Ipp32f level, IppCmpOp relOp ))
  1258. IPPAPI(IppStatus,ippsThreshold_64f,( const Ipp64f* pSrc, Ipp64f* pDst,
  1259. int len, Ipp64f level, IppCmpOp relOp ))
  1260. IPPAPI(IppStatus,ippsThreshold_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst,
  1261. int len, Ipp64f level, IppCmpOp relOp ))
  1262. IPPAPI(IppStatus,ippsThreshold_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  1263. int len, Ipp16s level, IppCmpOp relOp ))
  1264. IPPAPI(IppStatus,ippsThreshold_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst,
  1265. int len, Ipp16s level, IppCmpOp relOp))
  1266. /* /////////////////////////////////////////////////////////////////////////////
  1267. // Name: ippsThresholdLT
  1268. // ippsThresholdGT
  1269. // Purpose: execute threshold operation on every element of the vector,
  1270. // "less than" for ippsThresoldLT
  1271. // "greater than for ippsThresholdGT
  1272. // Parameters:
  1273. // pSrcDst pointer to the vector for in-place operation
  1274. // pSrc pointer to the input vector
  1275. // pDst pointer to the output vector
  1276. // len length of the vectors
  1277. // level level of the threshold operation
  1278. // Return:
  1279. // ippStsNullPtrErr pointer(s) to the data is NULL
  1280. // ippStsSizeErr length of the vectors is less or equal zero
  1281. // ippStsThreshNegLevelErr negative level value in complex operation
  1282. // ippStsNoErr otherwise
  1283. */
  1284. IPPAPI(IppStatus,ippsThreshold_LT_32f_I,( Ipp32f* pSrcDst, int len,
  1285. Ipp32f level ))
  1286. IPPAPI(IppStatus,ippsThreshold_LT_32fc_I,( Ipp32fc* pSrcDst, int len,
  1287. Ipp32f level ))
  1288. IPPAPI(IppStatus,ippsThreshold_LT_64f_I,( Ipp64f* pSrcDst, int len,
  1289. Ipp64f level ))
  1290. IPPAPI(IppStatus,ippsThreshold_LT_64fc_I,( Ipp64fc* pSrcDst, int len,
  1291. Ipp64f level ))
  1292. IPPAPI(IppStatus,ippsThreshold_LT_16s_I,( Ipp16s* pSrcDst, int len,
  1293. Ipp16s level ))
  1294. IPPAPI(IppStatus,ippsThreshold_LT_16sc_I,( Ipp16sc* pSrcDst, int len,
  1295. Ipp16s level ))
  1296. IPPAPI(IppStatus,ippsThreshold_LT_32f,( const Ipp32f* pSrc, Ipp32f* pDst,
  1297. int len, Ipp32f level ))
  1298. IPPAPI(IppStatus,ippsThreshold_LT_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst,
  1299. int len, Ipp32f level ))
  1300. IPPAPI(IppStatus,ippsThreshold_LT_64f,( const Ipp64f* pSrc, Ipp64f* pDst,
  1301. int len, Ipp64f level ))
  1302. IPPAPI(IppStatus,ippsThreshold_LT_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst,
  1303. int len, Ipp64f level ))
  1304. IPPAPI(IppStatus,ippsThreshold_LT_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  1305. int len, Ipp16s level ))
  1306. IPPAPI(IppStatus,ippsThreshold_LT_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst,
  1307. int len, Ipp16s level ))
  1308. IPPAPI(IppStatus,ippsThreshold_LT_32s_I,(Ipp32s* pSrcDst,int len,Ipp32s level))
  1309. IPPAPI(IppStatus,ippsThreshold_LT_32s,(const Ipp32s* pSrc,Ipp32s* pDst,int len,Ipp32s level))
  1310. IPPAPI(IppStatus,ippsThreshold_GT_32f_I,( Ipp32f* pSrcDst, int len,
  1311. Ipp32f level ))
  1312. IPPAPI(IppStatus,ippsThreshold_GT_32fc_I,( Ipp32fc* pSrcDst, int len,
  1313. Ipp32f level ))
  1314. IPPAPI(IppStatus,ippsThreshold_GT_64f_I,( Ipp64f* pSrcDst, int len,
  1315. Ipp64f level ))
  1316. IPPAPI(IppStatus,ippsThreshold_GT_64fc_I,( Ipp64fc* pSrcDst, int len,
  1317. Ipp64f level ))
  1318. IPPAPI(IppStatus,ippsThreshold_GT_16s_I,( Ipp16s* pSrcDst, int len,
  1319. Ipp16s level ))
  1320. IPPAPI(IppStatus,ippsThreshold_GT_16sc_I,( Ipp16sc* pSrcDst, int len,
  1321. Ipp16s level ))
  1322. IPPAPI(IppStatus,ippsThreshold_GT_32f,( const Ipp32f* pSrc, Ipp32f* pDst,
  1323. int len, Ipp32f level ))
  1324. IPPAPI(IppStatus,ippsThreshold_GT_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst,
  1325. int len, Ipp32f level ))
  1326. IPPAPI(IppStatus,ippsThreshold_GT_64f,( const Ipp64f* pSrc, Ipp64f* pDst,
  1327. int len, Ipp64f level ))
  1328. IPPAPI(IppStatus,ippsThreshold_GT_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst,
  1329. int len, Ipp64f level ))
  1330. IPPAPI(IppStatus,ippsThreshold_GT_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  1331. int len, Ipp16s level ))
  1332. IPPAPI(IppStatus,ippsThreshold_GT_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst,
  1333. int len, Ipp16s level ))
  1334. /* /////////////////////////////////////////////////////////////////////////////
  1335. // Name: ippsThreshold_LTAbs
  1336. // ippsThreshold_GTAbs
  1337. // Purpose: execute threshold by abolute value operation on every element
  1338. // of the vector
  1339. // "less than" for ippsThresold_LTAbs
  1340. // "greater than for ippsThreshold_GTAbs
  1341. // Parameters:
  1342. // pSrcDst pointer to the vector for in-place operation
  1343. // pSrc pointer to the input vector
  1344. // pDst pointer to the output vector
  1345. // len length of the vectors
  1346. // level level of the threshold operation
  1347. // Return:
  1348. // ippStsNullPtrErr pointer(s) to the data is NULL
  1349. // ippStsSizeErr length of the vectors is less or equal zero
  1350. // ippStsThreshNegLevelErr negative level value in complex operation
  1351. // ippStsNoErr otherwise
  1352. */
  1353. IPPAPI(IppStatus,ippsThreshold_LTAbs_32f,(const Ipp32f* pSrc, Ipp32f *pDst,
  1354. int len, Ipp32f level))
  1355. IPPAPI(IppStatus,ippsThreshold_LTAbs_64f,(const Ipp64f* pSrc, Ipp64f *pDst,
  1356. int len, Ipp64f level))
  1357. IPPAPI(IppStatus,ippsThreshold_LTAbs_16s,(const Ipp16s* pSrc, Ipp16s *pDst,
  1358. int len, Ipp16s level))
  1359. IPPAPI(IppStatus,ippsThreshold_LTAbs_32s,(const Ipp32s* pSrc, Ipp32s *pDst,
  1360. int len, Ipp32s level))
  1361. IPPAPI(IppStatus,ippsThreshold_LTAbs_32f_I,(Ipp32f *pSrcDst,
  1362. int len, Ipp32f level))
  1363. IPPAPI(IppStatus,ippsThreshold_LTAbs_64f_I,(Ipp64f *pSrcDst,
  1364. int len, Ipp64f level))
  1365. IPPAPI(IppStatus,ippsThreshold_LTAbs_16s_I,(Ipp16s *pSrcDst,
  1366. int len, Ipp16s level))
  1367. IPPAPI(IppStatus,ippsThreshold_LTAbs_32s_I,(Ipp32s *pSrcDst,
  1368. int len, Ipp32s level))
  1369. IPPAPI(IppStatus,ippsThreshold_GTAbs_32f,(const Ipp32f* pSrc, Ipp32f *pDst,
  1370. int len, Ipp32f level))
  1371. IPPAPI(IppStatus,ippsThreshold_GTAbs_64f,(const Ipp64f* pSrc, Ipp64f *pDst,
  1372. int len, Ipp64f level))
  1373. IPPAPI(IppStatus,ippsThreshold_GTAbs_16s,(const Ipp16s* pSrc, Ipp16s *pDst,
  1374. int len, Ipp16s level))
  1375. IPPAPI(IppStatus,ippsThreshold_GTAbs_32s,(const Ipp32s* pSrc, Ipp32s *pDst,
  1376. int len, Ipp32s level))
  1377. IPPAPI(IppStatus,ippsThreshold_GTAbs_32f_I,(Ipp32f *pSrcDst,
  1378. int len, Ipp32f level))
  1379. IPPAPI(IppStatus,ippsThreshold_GTAbs_64f_I,(Ipp64f *pSrcDst,
  1380. int len, Ipp64f level))
  1381. IPPAPI(IppStatus,ippsThreshold_GTAbs_16s_I,(Ipp16s *pSrcDst,
  1382. int len, Ipp16s level))
  1383. IPPAPI(IppStatus,ippsThreshold_GTAbs_32s_I,(Ipp32s *pSrcDst,
  1384. int len, Ipp32s level))
  1385. /* /////////////////////////////////////////////////////////////////////////////
  1386. // Name: ippsThresholdLTValue
  1387. // ippsThresholdGTValue
  1388. // Purpose: execute threshold operation on every element of the vector with
  1389. // replace on value,
  1390. // "less than" for ippsThresoldLTValue
  1391. // "greater than for ippsThresholdGTValue
  1392. // Parameters:
  1393. // pSrcDst pointer to the vector for in-place operation
  1394. // pSrc pointer to the input vector
  1395. // pDst pointer to the output vector
  1396. // len length of the vectors
  1397. // level level of the threshold operation
  1398. // value value of replace
  1399. // Return:
  1400. // ippStsNullPtrErr pointer(s) to the data is NULL
  1401. // ippStsSizeErr length of the vectors is less or equal zero
  1402. // ippStsThreshNegLevelErr negative level value in complex operation
  1403. // ippStsNoErr otherwise
  1404. */
  1405. IPPAPI(IppStatus,ippsThreshold_LTVal_32f_I,( Ipp32f* pSrcDst, int len,
  1406. Ipp32f level, Ipp32f value ))
  1407. IPPAPI(IppStatus,ippsThreshold_LTVal_32fc_I,( Ipp32fc* pSrcDst, int len,
  1408. Ipp32f level, Ipp32fc value ))
  1409. IPPAPI(IppStatus,ippsThreshold_LTVal_64f_I,( Ipp64f* pSrcDst, int len,
  1410. Ipp64f level, Ipp64f value ))
  1411. IPPAPI(IppStatus,ippsThreshold_LTVal_64fc_I,( Ipp64fc* pSrcDst, int len,
  1412. Ipp64f level, Ipp64fc value ))
  1413. IPPAPI(IppStatus,ippsThreshold_LTVal_16s_I,( Ipp16s* pSrcDst, int len,
  1414. Ipp16s level, Ipp16s value ))
  1415. IPPAPI(IppStatus,ippsThreshold_LTVal_16sc_I,( Ipp16sc* pSrcDst, int len,
  1416. Ipp16s level, Ipp16sc value ))
  1417. IPPAPI(IppStatus,ippsThreshold_LTVal_32f,( const Ipp32f* pSrc, Ipp32f* pDst,
  1418. int len, Ipp32f level, Ipp32f value ))
  1419. IPPAPI(IppStatus,ippsThreshold_LTVal_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst,
  1420. int len, Ipp32f level, Ipp32fc value ))
  1421. IPPAPI(IppStatus,ippsThreshold_LTVal_64f,( const Ipp64f* pSrc, Ipp64f* pDst,
  1422. int len, Ipp64f level, Ipp64f value ))
  1423. IPPAPI(IppStatus,ippsThreshold_LTVal_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst,
  1424. int len, Ipp64f level, Ipp64fc value ))
  1425. IPPAPI(IppStatus,ippsThreshold_LTVal_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  1426. int len, Ipp16s level, Ipp16s value ))
  1427. IPPAPI(IppStatus,ippsThreshold_LTVal_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst,
  1428. int len, Ipp16s level, Ipp16sc value ))
  1429. IPPAPI(IppStatus,ippsThreshold_GTVal_32f_I,( Ipp32f* pSrcDst, int len,
  1430. Ipp32f level, Ipp32f value ))
  1431. IPPAPI(IppStatus,ippsThreshold_GTVal_32fc_I,( Ipp32fc* pSrcDst, int len,
  1432. Ipp32f level, Ipp32fc value ))
  1433. IPPAPI(IppStatus,ippsThreshold_GTVal_64f_I,( Ipp64f* pSrcDst, int len,
  1434. Ipp64f level, Ipp64f value ))
  1435. IPPAPI(IppStatus,ippsThreshold_GTVal_64fc_I,( Ipp64fc* pSrcDst, int len,
  1436. Ipp64f level, Ipp64fc value ))
  1437. IPPAPI(IppStatus,ippsThreshold_GTVal_16s_I,( Ipp16s* pSrcDst, int len,
  1438. Ipp16s level, Ipp16s value ))
  1439. IPPAPI(IppStatus,ippsThreshold_GTVal_16sc_I,( Ipp16sc* pSrcDst, int len,
  1440. Ipp16s level, Ipp16sc value ))
  1441. IPPAPI(IppStatus,ippsThreshold_GTVal_32f,( const Ipp32f* pSrc, Ipp32f* pDst,
  1442. int len, Ipp32f level, Ipp32f value ))
  1443. IPPAPI(IppStatus,ippsThreshold_GTVal_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst,
  1444. int len, Ipp32f level, Ipp32fc value ))
  1445. IPPAPI(IppStatus,ippsThreshold_GTVal_64f,( const Ipp64f* pSrc, Ipp64f* pDst,
  1446. int len, Ipp64f level, Ipp64f value ))
  1447. IPPAPI(IppStatus,ippsThreshold_GTVal_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst,
  1448. int len, Ipp64f level, Ipp64fc value ))
  1449. IPPAPI(IppStatus,ippsThreshold_GTVal_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  1450. int len, Ipp16s level, Ipp16s value ))
  1451. IPPAPI(IppStatus,ippsThreshold_GTVal_16sc,( const Ipp16sc* pSrc, Ipp16sc* pDst,
  1452. int len, Ipp16s level, Ipp16sc value ))
  1453. /* /////////////////////////////////////////////////////////////////////////////
  1454. // Names: ippsThresholdLTInv
  1455. //
  1456. // Purpose: replace elements of vector values by their inversion after
  1457. // threshold operation
  1458. // Parameters:
  1459. // level level of threshold operation
  1460. // pSrcDst pointer to the vector in in-place operation
  1461. // pSrc pointer to the source vector
  1462. // pDst pointer to the destination vector
  1463. // len length of the vectors
  1464. // Return:
  1465. // ippStsNullPtrErr pointer(s) to the data is NULL
  1466. // ippStsSizeErr length of the vector is less or equal zero
  1467. // ippStsThreshNegLevelErr negative level value
  1468. // ippStsInvZero level value and source element value are zero
  1469. // ippStsNoErr otherwise
  1470. */
  1471. IPPAPI(IppStatus,ippsThreshold_LTInv_32f_I,(Ipp32f* pSrcDst,int len,Ipp32f level))
  1472. IPPAPI(IppStatus,ippsThreshold_LTInv_32fc_I,(Ipp32fc* pSrcDst,int len,Ipp32f level))
  1473. IPPAPI(IppStatus,ippsThreshold_LTInv_64f_I,(Ipp64f* pSrcDst,int len,Ipp64f level))
  1474. IPPAPI(IppStatus,ippsThreshold_LTInv_64fc_I,(Ipp64fc* pSrcDst,int len,Ipp64f level))
  1475. IPPAPI(IppStatus,ippsThreshold_LTInv_32f,(const Ipp32f* pSrc,Ipp32f* pDst,int len,Ipp32f level))
  1476. IPPAPI(IppStatus,ippsThreshold_LTInv_32fc,(const Ipp32fc* pSrc,Ipp32fc* pDst,int len,Ipp32f level))
  1477. IPPAPI(IppStatus,ippsThreshold_LTInv_64f,(const Ipp64f* pSrc,Ipp64f* pDst,int len,Ipp64f level))
  1478. IPPAPI(IppStatus,ippsThreshold_LTInv_64fc,(const Ipp64fc* pSrc,Ipp64fc* pDst,int len,Ipp64f level))
  1479. /* ///////////////////////////////////////////////////////////////////////////// */
  1480. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_32f_I,( Ipp32f* pSrcDst, int len,
  1481. Ipp32f levelLT, Ipp32f valueLT, Ipp32f levelGT, Ipp32f valueGT ))
  1482. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_64f_I,( Ipp64f* pSrcDst, int len,
  1483. Ipp64f levelLT, Ipp64f valueLT, Ipp64f levelGT, Ipp64f valueGT ))
  1484. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_32f,( const Ipp32f* pSrc,
  1485. Ipp32f* pDst, int len, Ipp32f levelLT, Ipp32f valueLT, Ipp32f levelGT,
  1486. Ipp32f valueGT ))
  1487. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_64f,( const Ipp64f* pSrc,
  1488. Ipp64f* pDst, int len, Ipp64f levelLT, Ipp64f valueLT, Ipp64f levelGT,
  1489. Ipp64f valueGT ))
  1490. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_16s_I,( Ipp16s* pSrcDst, int len,
  1491. Ipp16s levelLT, Ipp16s valueLT, Ipp16s levelGT, Ipp16s valueGT ))
  1492. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_16s,( const Ipp16s* pSrc,
  1493. Ipp16s* pDst, int len, Ipp16s levelLT, Ipp16s valueLT, Ipp16s levelGT,
  1494. Ipp16s valueGT ))
  1495. IPPAPI(IppStatus,ippsThreshold_GT_32s_I,(Ipp32s* pSrcDst,int len,Ipp32s level))
  1496. IPPAPI(IppStatus,ippsThreshold_GT_32s,(const Ipp32s* pSrc,Ipp32s* pDst,int len,Ipp32s level))
  1497. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_32s_I,( Ipp32s* pSrcDst, int len,
  1498. Ipp32s levelLT, Ipp32s valueLT, Ipp32s levelGT, Ipp32s valueGT ))
  1499. IPPAPI(IppStatus,ippsThreshold_LTValGTVal_32s,( const Ipp32s* pSrc,
  1500. Ipp32s* pDst, int len, Ipp32s levelLT, Ipp32s valueLT, Ipp32s levelGT, Ipp32s valueGT ))
  1501. /* /////////////////////////////////////////////////////////////////////////////
  1502. // Names: ippsCartToPolar
  1503. //
  1504. // Purpose: Convert cartesian coordinate to polar. Input data are formed as
  1505. // a complex vector.
  1506. //
  1507. // Parameters:
  1508. // pSrc an input complex vector
  1509. // pDstMagn an output vector to store the magnitude components
  1510. // pDstPhase an output vector to store the phase components (in radians)
  1511. // len a length of the array
  1512. // Return:
  1513. // ippStsNoErr Ok
  1514. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1515. // ippStsSizeErr The length of the arrays is less or equal zero
  1516. //
  1517. */
  1518. IPPAPI(IppStatus, ippsCartToPolar_32fc,(const Ipp32fc* pSrc, Ipp32f* pDstMagn,
  1519. Ipp32f* pDstPhase, int len))
  1520. IPPAPI(IppStatus, ippsCartToPolar_64fc,(const Ipp64fc* pSrc, Ipp64f* pDstMagn,
  1521. Ipp64f* pDstPhase, int len))
  1522. /* /////////////////////////////////////////////////////////////////////////////
  1523. // Names: ippsCartToPolar
  1524. //
  1525. // Purpose: Convert cartesian coordinate to polar. Input data are formed as
  1526. // two real vectors.
  1527. //
  1528. // Parameters:
  1529. // pSrcRe an input vector containing the coordinates X
  1530. // pSrcIm an input vector containing the coordinates Y
  1531. // pDstMagn an output vector to store the magnitude components
  1532. // pDstPhase an output vector to store the phase components (in radians)
  1533. // len a length of the array
  1534. // Return:
  1535. // ippStsNoErr Ok
  1536. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1537. // ippStsSizeErr The length of the arrays is less or equal zero
  1538. //
  1539. */
  1540. IPPAPI(IppStatus, ippsCartToPolar_32f,(const Ipp32f* pSrcRe, const Ipp32f*
  1541. pSrcIm, Ipp32f* pDstMagn, Ipp32f* pDstPhase, int len))
  1542. IPPAPI(IppStatus, ippsCartToPolar_64f,(const Ipp64f* pSrcRe, const Ipp64f*
  1543. pSrcIm, Ipp64f* pDstMagn, Ipp64f* pDstPhase, int len))
  1544. /* /////////////////////////////////////////////////////////////////////////////
  1545. // Names: ippsPolarToCart
  1546. //
  1547. // Purpose: Convert polar coordinate to cartesian. Output data are formed as
  1548. // a complex vector.
  1549. //
  1550. // Parameters:
  1551. // pDstMagn an input vector containing the magnitude components
  1552. // pDstPhase an input vector containing the phase components(in radians)
  1553. // pDst an output complex vector to store the cartesian coordinates
  1554. // len a length of the arrays
  1555. // Return:
  1556. // ippStsNoErr Ok
  1557. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1558. // ippStsSizeErr The length of the arrays is less or equal zero
  1559. //
  1560. */
  1561. IPPAPI(IppStatus, ippsPolarToCart_32fc,(const Ipp32f* pSrcMagn,
  1562. const Ipp32f* pSrcPhase, Ipp32fc* pDst, int len))
  1563. IPPAPI(IppStatus, ippsPolarToCart_64fc,(const Ipp64f* pSrcMagn,
  1564. const Ipp64f* pSrcPhase, Ipp64fc* pDst, int len))
  1565. IPPAPI(IppStatus, ippsPolarToCart_32sc,(const Ipp32s* pSrcMagn,
  1566. const Ipp32s* pSrcPhase, int phaseFixedPoint, Ipp32sc* pDst, int len))
  1567. IPPAPI(IppStatus, ippsPolarToCart_16sc,(const Ipp16s* pSrcMagn,
  1568. const Ipp16s* pSrcPhase, int phaseFixedPoint, Ipp16sc* pDst, int len))
  1569. /* /////////////////////////////////////////////////////////////////////////////
  1570. // Names: ippsPolarToCart
  1571. //
  1572. // Purpose: Convert polar coordinate to cartesian. Output data are formed as
  1573. // two real vectors.
  1574. //
  1575. // Parameters:
  1576. // pDstMagn an input vector containing the magnitude components
  1577. // pDstPhase an input vector containing the phase components(in radians)
  1578. // pSrcRe an output complex vector to store the coordinates X
  1579. // pSrcIm an output complex vector to store the coordinates Y
  1580. // len a length of the arrays
  1581. // Return:
  1582. // ippStsNoErr Ok
  1583. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1584. // ippStsSizeErr The length of the arrays is less or equal zero
  1585. //
  1586. */
  1587. IPPAPI(IppStatus, ippsPolarToCart_32f,(const Ipp32f* pSrcMagn,
  1588. const Ipp32f* pSrcPhase, Ipp32f* pDstRe, Ipp32f* pDstIm, int len))
  1589. IPPAPI(IppStatus, ippsPolarToCart_64f,(const Ipp64f* pSrcMagn,
  1590. const Ipp64f* pSrcPhase, Ipp64f* pDstRe, Ipp64f* pDstIm, int len))
  1591. /* /////////////////////////////////////////////////////////////////////////////
  1592. // Names: ippsCartToPolar
  1593. //
  1594. // Purpose: Convert cartesian coordinate to polar. Input data are formed as
  1595. // a complex vector.
  1596. //
  1597. // Parameters:
  1598. // pSrc an input complex vector
  1599. // pDstMagn an output vector to store the magnitude components
  1600. // pDstPhase an output vector to store the phase components (in radians)
  1601. // len a length of the array
  1602. // magnScaleFactor scale factor of the magnitude companents
  1603. // phaseScaleFactor scale factor of the phase companents
  1604. // Return:
  1605. // ippStsNoErr Ok
  1606. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1607. // ippStsSizeErr The length of the arrays is less or equal zero
  1608. //
  1609. */
  1610. IPPAPI(IppStatus, ippsCartToPolar_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16s* pDstMagn, Ipp16s* pDstPhase, int len, int magnScaleFactor, int phaseScaleFactor))
  1611. /* /////////////////////////////////////////////////////////////////////////////
  1612. // Names: ippsPolarToCart
  1613. //
  1614. // Purpose: Convert polar coordinate to cartesian. Output data are formed as
  1615. // a complex vector.
  1616. //
  1617. // Parameters:
  1618. // pDstMagn an input vector containing the magnitude components
  1619. // pDstPhase an input vector containing the phase components(in radians)
  1620. // pDst an output complex vector to store the cartesian coordinates
  1621. // len a length of the arrays
  1622. // magnScaleFactor scale factor of the magnitude companents
  1623. // phaseScaleFactor scale factor of the phase companents
  1624. // Return:
  1625. // ippStsNoErr Ok
  1626. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1627. // ippStsSizeErr The length of the arrays is less or equal zero
  1628. //
  1629. */
  1630. IPPAPI(IppStatus, ippsPolarToCart_16sc_Sfs, (const Ipp16s* pSrcMagn, const Ipp16s* pSrcPhase, Ipp16sc* pDst, int len, int magnScaleFactor, int phaseScaleFactor))
  1631. /* /////////////////////////////////////////////////////////////////////////////
  1632. // Companding functions
  1633. ///////////////////////////////////////////////////////////////////////////// */
  1634. /* /////////////////////////////////////////////////////////////////////////////
  1635. // Name: ippsALawToLin
  1636. // Purpose: convert from A-Law to linear PCM value
  1637. // Parameters:
  1638. // pSrc pointer to the input vector containing A-Law values
  1639. // pDst pointer to the output vector for store linear PCM values
  1640. // len length of the vectors, number of items
  1641. // Return:
  1642. // ippStsNullPtrErr pointer(s) to the data is NULL
  1643. // ippStsSizeErr length of the vectors is less or equal zero
  1644. // ippStsNoErr otherwise
  1645. */
  1646. IPPAPI(IppStatus, ippsALawToLin_8u32f, (const Ipp8u* pSrc, Ipp32f* pDst, int len))
  1647. IPPAPI(IppStatus, ippsALawToLin_8u16s, (const Ipp8u* pSrc, Ipp16s* pDst, int len))
  1648. /* /////////////////////////////////////////////////////////////////////////////
  1649. // Name: ippsMuLawToLin
  1650. // Purpose: convert from Mu-Law to linear PCM value
  1651. // Parameters:
  1652. // pSrc pointer to the input vector containing Mu-Law values
  1653. // pDst pointer to the output vector for store linear PCM values
  1654. // len length of the vectors, number of items
  1655. // Return:
  1656. // ippStsNullPtrErr pointer(s) to the data is NULL
  1657. // ippStsSizeErr length of the vectors is less or equal zero
  1658. // ippStsNoErr otherwise
  1659. */
  1660. IPPAPI(IppStatus, ippsMuLawToLin_8u32f, (const Ipp8u* pSrc, Ipp32f* pDst, int len))
  1661. IPPAPI(IppStatus, ippsMuLawToLin_8u16s, (const Ipp8u* pSrc, Ipp16s* pDst, int len))
  1662. /* /////////////////////////////////////////////////////////////////////////////
  1663. // Name: ippsLinToALaw
  1664. // Purpose: convert from linear PCM to A-Law value
  1665. // Parameters:
  1666. // pSrc pointer to the input vector containing linear PCM values
  1667. // pDst pointer to the output vector for store A-Law values
  1668. // len length of the vectors, number of items
  1669. // Return:
  1670. // ippStsNullPtrErr pointer(s) to the data is NULL
  1671. // ippStsSizeErr length of the vectors is less or equal zero
  1672. // ippStsNoErr otherwise
  1673. */
  1674. IPPAPI(IppStatus, ippsLinToALaw_32f8u, (const Ipp32f* pSrc, Ipp8u* pDst, int len))
  1675. IPPAPI(IppStatus, ippsLinToALaw_16s8u, (const Ipp16s* pSrc, Ipp8u* pDst, int len))
  1676. /* /////////////////////////////////////////////////////////////////////////////
  1677. // Name: ippsMuLawToLin
  1678. // Purpose: convert from linear PCM to Mu-Law value
  1679. // Parameters:
  1680. // pSrc pointer to the input vector containing linear PCM values
  1681. // pDst pointer to the output vector for store Mu-Law values
  1682. // len length of the vectors, number of items
  1683. // Return:
  1684. // ippStsNullPtrErr pointer(s) to the data is NULL
  1685. // ippStsSizeErr length of the vectors is less or equal zero
  1686. // ippStsNoErr otherwise
  1687. */
  1688. IPPAPI(IppStatus, ippsLinToMuLaw_32f8u, (const Ipp32f* pSrc, Ipp8u* pDst, int len))
  1689. IPPAPI(IppStatus, ippsLinToMuLaw_16s8u, (const Ipp16s* pSrc, Ipp8u* pDst, int len))
  1690. /* /////////////////////////////////////////////////////////////////////////////
  1691. // Name: ippsALawToMuLaw, ippsMuLawToALaw
  1692. // Purpose: convert from A-Law to Mu-Law and vice-versa
  1693. // Parameters:
  1694. // pSrc pointer to the input vector containing A-Law or Mu-Law values
  1695. // pDst pointer to the output vector for store Mu-Law or A-Law values
  1696. // len length of the vectors, number of items
  1697. // Return:
  1698. // ippStsNullPtrErr pointer(s) to the data is NULL
  1699. // ippStsSizeErr length of the vectors is less or equal zero
  1700. // ippStsNoErr otherwise
  1701. */
  1702. IPPAPI(IppStatus, ippsALawToMuLaw_8u, (const Ipp8u* pSrc, Ipp8u* pDst, int len))
  1703. IPPAPI(IppStatus, ippsMuLawToALaw_8u, (const Ipp8u* pSrc, Ipp8u* pDst, int len))
  1704. /* /////////////////////////////////////////////////////////////////////////////
  1705. // Names:
  1706. // ippsPreemphasize_32f
  1707. // Purpose:
  1708. // Compute the preemphasizes a single precision real signal.
  1709. // Parameters:
  1710. // pSrcDst pointer to the vector for in-place operation.
  1711. // len length of the input vector.
  1712. // val The multiplier to be used in the preemphasis difference equation
  1713. // y(n) = x(n) - a * x(n-1) where y is the preemphasized output
  1714. // and x is the input. Usually a value of 0.95 is used for speech
  1715. // audio signals.
  1716. // Return:
  1717. // ippStsNoErr Ok
  1718. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  1719. // ippStsSizeErr The length of the arrays is less or equal zero
  1720. */
  1721. IPPAPI(IppStatus, ippsPreemphasize_32f,(Ipp32f* pSrcDst, int len, Ipp32f val))
  1722. IPPAPI(IppStatus, ippsPreemphasize_16s,(Ipp16s* pSrcDst, int len, Ipp32f val))
  1723. /* /////////////////////////////////////////////////////////////////////////////
  1724. // Name: ippsFlip
  1725. // Purpose: dst[i] = src[len-i-1], i=0..len-1
  1726. // Parameters:
  1727. // pSrc pointer to the input vector
  1728. // pDst pointer to the output vector
  1729. // len length of the vectors, number of items
  1730. // Return:
  1731. // ippStsNullPtrErr pointer(s) to the data is NULL
  1732. // ippStsSizeErr length of the vectors is less or equal zero
  1733. // ippStsNoErr otherwise
  1734. */
  1735. IPPAPI(IppStatus, ippsFlip_8u,( const Ipp8u* pSrc, Ipp8u* pDst, int len ))
  1736. IPPAPI(IppStatus, ippsFlip_8u_I,( Ipp8u* pSrcDst, int len ))
  1737. IPPAPI(IppStatus, ippsFlip_16u,( const Ipp16u* pSrc, Ipp16u* pDst, int len ))
  1738. IPPAPI(IppStatus, ippsFlip_16u_I,( Ipp16u* pSrcDst, int len ))
  1739. IPPAPI(IppStatus, ippsFlip_32f,( const Ipp32f* pSrc, Ipp32f* pDst, int len ))
  1740. IPPAPI(IppStatus, ippsFlip_32f_I,( Ipp32f* pSrcDst, int len ))
  1741. IPPAPI(IppStatus, ippsFlip_64f,( const Ipp64f* pSrc, Ipp64f* pDst, int len ))
  1742. IPPAPI(IppStatus, ippsFlip_64f_I,( Ipp64f* pSrcDst, int len ))
  1743. IPPAPI(IppStatus, ippsFlip_32fc,( const Ipp32fc* pSrc, Ipp32fc* pDst, int len ))
  1744. IPPAPI(IppStatus, ippsFlip_32fc_I,( Ipp32fc* pSrcDst, int len ))
  1745. IPPAPI(IppStatus, ippsFlip_64fc,( const Ipp64fc* pSrc, Ipp64fc* pDst, int len ))
  1746. IPPAPI(IppStatus, ippsFlip_64fc_I,( Ipp64fc* pSrcDst, int len ))
  1747. /* ////////////////////////////////////////////////////////////////////////////
  1748. // Names: ippsUpdateLinear_16s32s_I
  1749. // Purpose: Calc Update Linear value
  1750. // Return:
  1751. // IPP_NO_ERR Ok
  1752. // IPP_NULL_PTR_ERR Pointer to pSrc or pointer to pSrcDst is NULL
  1753. // IPP_BADSIZE_ERR The length of the array is less or equal zero
  1754. // Parameters:
  1755. // pSrc pointer to vector
  1756. // len a length of the array
  1757. // pSrcDst pointer to input and output
  1758. // srcShiftRight shiftright of src (0<=srcShiftRight<=15)
  1759. // alpha weight
  1760. // hint code specific use hints
  1761. //
  1762. */
  1763. IPPAPI(IppStatus,ippsUpdateLinear_16s32s_I,(const Ipp16s* pSrc,int len,
  1764. Ipp32s* pSrcDst, int srcShiftRight,Ipp16s alpha, IppHintAlgorithm hint))
  1765. /* ////////////////////////////////////////////////////////////////////////////
  1766. // Names: ippsUpdatePower_16s32s_I
  1767. // Purpose: Calc Update Power value
  1768. // Return:
  1769. // IPP_NO_ERR Ok
  1770. // IPP_NULL_PTR_ERR Pointer to pSrc or pointer to pSrcDst is NULL
  1771. // IPP_BADSIZE_ERR The length of the array is less or equal zero
  1772. // Parameters:
  1773. // pSrc pointer to vector
  1774. // len a length of the array
  1775. // pSrcDst pointer to input and output
  1776. // srcShiftRight shiftright of src (0<=srcShiftRight<=31)
  1777. // alpha weight
  1778. // hint code specific use hints
  1779. //
  1780. */
  1781. IPPAPI(IppStatus,ippsUpdatePower_16s32s_I,(const Ipp16s* pSrc,int len,
  1782. Ipp32s* pSrcDst, int srcShiftRight,Ipp16s alpha, IppHintAlgorithm hint))
  1783. /* /////////////////////////////////////////////////////////////////////////////
  1784. // Name: ippsJoin_32f16s_D2L
  1785. // Purpose: Join of vectors.
  1786. // Parameters:
  1787. // pSrc pointer to pointers to the input vectors
  1788. // pDst pointer to the output vector
  1789. // nChannels number of channels
  1790. // chanlen length of the channel
  1791. // Return:
  1792. // ippStsNullPtrErr pointer(s) to the data is NULL
  1793. // ippStsSizeErr nChannels or chanlen are less or equal zero
  1794. // ippStsNoErr otherwise
  1795. //
  1796. */
  1797. IPPAPI( IppStatus, ippsJoin_32f16s_D2L, ( const Ipp32f** pSrc,
  1798. int nChannels, int chanLen, Ipp16s* pDst ) )
  1799. /* /////////////////////////////////////////////////////////////////////////////
  1800. // Name: ippsJoinScaled_32f16s_D2L
  1801. // ippsJoinScaled_32f24s_D2L
  1802. //
  1803. // Purpose: Join of vectors.
  1804. // Parameters:
  1805. // pSrc pointer to pointers to the input vectors
  1806. // pDst pointer to the output vector
  1807. // nChannels number of channels
  1808. // chanlen length of the channel
  1809. // Return:
  1810. // ippStsNullPtrErr pointer(s) to the data is NULL
  1811. // ippStsSizeErr nChannels or chanlen are less or equal zero
  1812. // ippStsNoErr otherwise
  1813. //
  1814. // Note: Default region of the src data is [-1.0,1.0].
  1815. */
  1816. IPPAPI( IppStatus, ippsJoinScaled_32f16s_D2L,
  1817. ( const Ipp32f** pSrc, int nChannels, int chanLen, Ipp16s* pDst ) )
  1818. IPPAPI( IppStatus, ippsJoinScaled_32f24s_D2L,
  1819. ( const Ipp32f** pSrc, int nChannels, int chanLen, Ipp8u* pDst ) )
  1820. /* /////////////////////////////////////////////////////////////////////////////
  1821. // Name: ippsSplitScaled_16s32f_D2L
  1822. // ippsSplitScaled_24s32f_D2L
  1823. //
  1824. // Purpose: Split of vector.
  1825. // Parameters:
  1826. // pSrc pointer to the input vector
  1827. // pDst pointer to pointers to the output vectors
  1828. // nChannels number of channels
  1829. // chanlen length of the channel
  1830. // Return:
  1831. // ippStsNullPtrErr pointer(s) to the data is NULL
  1832. // ippStsSizeErr nChannels or chanlen are less or equal zero
  1833. // ippStsNoErr otherwise
  1834. //
  1835. // Note: Region of the dst data is [-1.0,1.0].
  1836. */
  1837. IPPAPI( IppStatus, ippsSplitScaled_16s32f_D2L,
  1838. ( const Ipp16s* pSrc, Ipp32f** pDst, int nChannels, int chanLen ) )
  1839. IPPAPI( IppStatus, ippsSplitScaled_24s32f_D2L,
  1840. ( const Ipp8u* pSrc, Ipp32f** pDst, int nChannels, int chanLen ) )
  1841. /* /////////////////////////////////////////////////////////////////////////////
  1842. // Name: ippsSwapBytes
  1843. // Purpose: switches from a "big endian" order to the "little endian" order and vice-versa
  1844. // Parameters:
  1845. // pSrc pointer to the source vector
  1846. // pSrcDst pointer to the source/destination vector
  1847. // pDst pointer to the destination vector
  1848. // len length of the vectors
  1849. // Return:
  1850. // ippStsNullPtrErr pointer to the vector is NULL
  1851. // ippStsSizeErr length of the vectors is less or equal zero
  1852. // ippStsNoErr otherwise
  1853. */
  1854. IPPAPI(IppStatus, ippsSwapBytes_16u_I, ( Ipp16u* pSrcDst, int len ))
  1855. IPPAPI(IppStatus, ippsSwapBytes_24u_I, ( Ipp8u* pSrcDst, int len ))
  1856. IPPAPI(IppStatus, ippsSwapBytes_32u_I, ( Ipp32u* pSrcDst, int len ))
  1857. IPPAPI(IppStatus, ippsSwapBytes_64u_I, ( Ipp64u* pSrcDst, int len ))
  1858. IPPAPI(IppStatus, ippsSwapBytes_16u, ( const Ipp16u* pSrc, Ipp16u* pDst, int len ))
  1859. IPPAPI(IppStatus, ippsSwapBytes_24u, ( const Ipp8u* pSrc, Ipp8u* pDst, int len ))
  1860. IPPAPI(IppStatus, ippsSwapBytes_32u, ( const Ipp32u* pSrc, Ipp32u* pDst, int len ))
  1861. IPPAPI(IppStatus, ippsSwapBytes_64u, ( const Ipp64u* pSrc, Ipp64u* pDst, int len ))
  1862. /* /////////////////////////////////////////////////////////////////////////////
  1863. // Arithmetic functions
  1864. ///////////////////////////////////////////////////////////////////////////// */
  1865. /* ////////////////////////////////////////////////////////////////////////////
  1866. // Names: ippsAdd, ippsSub, ippsMul
  1867. //
  1868. // Purpose: add, subtract and multiply operations upon every element of
  1869. // the source vector
  1870. // Arguments:
  1871. // pSrc pointer to the source vector
  1872. // pSrcDst pointer to the source/destination vector
  1873. // pSrc1 pointer to the first source vector
  1874. // pSrc2 pointer to the second source vector
  1875. // pDst pointer to the destination vector
  1876. // len length of the vectors
  1877. // scaleFactor scale factor value
  1878. // Return:
  1879. // ippStsNullPtrErr pointer(s) to the data is NULL
  1880. // ippStsSizeErr length of the vectors is less or equal zero
  1881. // ippStsNoErr otherwise
  1882. // Note:
  1883. // AddC(X,v,Y) : Y[n] = X[n] + v
  1884. // MulC(X,v,Y) : Y[n] = X[n] * v
  1885. // SubC(X,v,Y) : Y[n] = X[n] - v
  1886. // SubCRev(X,v,Y) : Y[n] = v - X[n]
  1887. // Sub(X,Y) : Y[n] = Y[n] - X[n]
  1888. // Sub(X,Y,Z) : Z[n] = Y[n] - X[n]
  1889. */
  1890. IPPAPI(IppStatus, ippsAddC_16s_I, (Ipp16s val, Ipp16s* pSrcDst, int len))
  1891. IPPAPI(IppStatus, ippsSubC_16s_I, (Ipp16s val, Ipp16s* pSrcDst, int len))
  1892. IPPAPI(IppStatus, ippsMulC_16s_I, (Ipp16s val, Ipp16s* pSrcDst, int len))
  1893. IPPAPI(IppStatus, ippsAddC_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  1894. IPPAPI(IppStatus, ippsAddC_32fc_I, (Ipp32fc val, Ipp32fc* pSrcDst, int len))
  1895. IPPAPI(IppStatus, ippsSubC_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  1896. IPPAPI(IppStatus, ippsSubC_32fc_I, (Ipp32fc val, Ipp32fc* pSrcDst, int len))
  1897. IPPAPI(IppStatus, ippsSubCRev_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  1898. IPPAPI(IppStatus, ippsSubCRev_32fc_I, (Ipp32fc val, Ipp32fc* pSrcDst, int len))
  1899. IPPAPI(IppStatus, ippsMulC_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  1900. IPPAPI(IppStatus, ippsMulC_32fc_I, (Ipp32fc val, Ipp32fc* pSrcDst, int len))
  1901. IPPAPI(IppStatus, ippsAddC_64f_I, (Ipp64f val, Ipp64f* pSrcDst, int len))
  1902. IPPAPI(IppStatus, ippsAddC_64fc_I, (Ipp64fc val, Ipp64fc* pSrcDst, int len))
  1903. IPPAPI(IppStatus, ippsSubC_64f_I, (Ipp64f val, Ipp64f* pSrcDst, int len))
  1904. IPPAPI(IppStatus, ippsSubC_64fc_I, (Ipp64fc val, Ipp64fc* pSrcDst, int len))
  1905. IPPAPI(IppStatus, ippsSubCRev_64f_I, (Ipp64f val, Ipp64f* pSrcDst, int len))
  1906. IPPAPI(IppStatus, ippsSubCRev_64fc_I, (Ipp64fc val, Ipp64fc* pSrcDst, int len))
  1907. IPPAPI(IppStatus, ippsMulC_64f_I, (Ipp64f val, Ipp64f* pSrcDst, int len))
  1908. IPPAPI(IppStatus, ippsMulC_64fc_I, (Ipp64fc val, Ipp64fc* pSrcDst, int len))
  1909. IPPAPI(IppStatus, ippsMulC_32f16s_Sfs, (const Ipp32f* pSrc, Ipp32f val,
  1910. Ipp16s* pDst, int len, int scaleFactor))
  1911. IPPAPI(IppStatus, ippsMulC_Low_32f16s, (const Ipp32f* pSrc, Ipp32f val,
  1912. Ipp16s* pDst, int len))
  1913. IPPAPI(IppStatus, ippsAddC_8u_ISfs, (Ipp8u val, Ipp8u* pSrcDst,
  1914. int len, int scaleFactor))
  1915. IPPAPI(IppStatus, ippsSubC_8u_ISfs, (Ipp8u val, Ipp8u* pSrcDst,
  1916. int len, int scaleFactor))
  1917. IPPAPI(IppStatus, ippsSubCRev_8u_ISfs, (Ipp8u val, Ipp8u* pSrcDst,
  1918. int len, int scaleFactor))
  1919. IPPAPI(IppStatus, ippsMulC_8u_ISfs, (Ipp8u val, Ipp8u* pSrcDst,
  1920. int len, int scaleFactor))
  1921. IPPAPI(IppStatus, ippsAddC_16s_ISfs, (Ipp16s val, Ipp16s* pSrcDst,
  1922. int len, int scaleFactor))
  1923. IPPAPI(IppStatus, ippsSubC_16s_ISfs, (Ipp16s val, Ipp16s* pSrcDst,
  1924. int len, int scaleFactor))
  1925. IPPAPI(IppStatus, ippsMulC_16s_ISfs, (Ipp16s val, Ipp16s* pSrcDst,
  1926. int len, int scaleFactor))
  1927. IPPAPI(IppStatus, ippsAddC_16sc_ISfs, (Ipp16sc val, Ipp16sc* pSrcDst,
  1928. int len, int scaleFactor))
  1929. IPPAPI(IppStatus, ippsSubC_16sc_ISfs, (Ipp16sc val, Ipp16sc* pSrcDst,
  1930. int len, int scaleFactor))
  1931. IPPAPI(IppStatus, ippsMulC_16sc_ISfs, (Ipp16sc val, Ipp16sc* pSrcDst,
  1932. int len, int scaleFactor))
  1933. IPPAPI(IppStatus, ippsSubCRev_16s_ISfs, (Ipp16s val, Ipp16s* pSrcDst,
  1934. int len, int scaleFactor))
  1935. IPPAPI(IppStatus, ippsSubCRev_16sc_ISfs, (Ipp16sc val, Ipp16sc* pSrcDst,
  1936. int len, int scaleFactor))
  1937. IPPAPI(IppStatus, ippsAddC_32s_ISfs, (Ipp32s val, Ipp32s* pSrcDst,
  1938. int len, int scaleFactor))
  1939. IPPAPI(IppStatus, ippsAddC_32sc_ISfs, (Ipp32sc val, Ipp32sc* pSrcDst,
  1940. int len, int scaleFactor))
  1941. IPPAPI(IppStatus, ippsSubC_32s_ISfs, (Ipp32s val, Ipp32s* pSrcDst,
  1942. int len, int scaleFactor))
  1943. IPPAPI(IppStatus, ippsSubC_32sc_ISfs, (Ipp32sc val, Ipp32sc* pSrcDst,
  1944. int len, int scaleFactor))
  1945. IPPAPI(IppStatus, ippsSubCRev_32s_ISfs, (Ipp32s val, Ipp32s* pSrcDst,
  1946. int len, int scaleFactor))
  1947. IPPAPI(IppStatus, ippsSubCRev_32sc_ISfs, (Ipp32sc val, Ipp32sc* pSrcDst,
  1948. int len, int scaleFactor))
  1949. IPPAPI(IppStatus, ippsMulC_32s_ISfs, (Ipp32s val, Ipp32s* pSrcDst,
  1950. int len, int scaleFactor))
  1951. IPPAPI(IppStatus, ippsMulC_32sc_ISfs, (Ipp32sc val, Ipp32sc* pSrcDst,
  1952. int len, int scaleFactor))
  1953. IPPAPI(IppStatus, ippsAddC_32f, (const Ipp32f* pSrc, Ipp32f val,
  1954. Ipp32f* pDst, int len))
  1955. IPPAPI(IppStatus, ippsAddC_32fc, (const Ipp32fc* pSrc, Ipp32fc val,
  1956. Ipp32fc* pDst, int len))
  1957. IPPAPI(IppStatus, ippsSubC_32f, (const Ipp32f* pSrc, Ipp32f val,
  1958. Ipp32f* pDst, int len))
  1959. IPPAPI(IppStatus, ippsSubC_32fc, (const Ipp32fc* pSrc, Ipp32fc val,
  1960. Ipp32fc* pDst, int len))
  1961. IPPAPI(IppStatus, ippsSubCRev_32f, (const Ipp32f* pSrc, Ipp32f val,
  1962. Ipp32f* pDst, int len))
  1963. IPPAPI(IppStatus, ippsSubCRev_32fc, (const Ipp32fc* pSrc, Ipp32fc val,
  1964. Ipp32fc* pDst, int len))
  1965. IPPAPI(IppStatus, ippsMulC_32f, (const Ipp32f* pSrc, Ipp32f val,
  1966. Ipp32f* pDst, int len))
  1967. IPPAPI(IppStatus, ippsMulC_32fc, (const Ipp32fc* pSrc, Ipp32fc val,
  1968. Ipp32fc* pDst, int len))
  1969. IPPAPI(IppStatus, ippsAddC_64f, (const Ipp64f* pSrc, Ipp64f val,
  1970. Ipp64f* pDst, int len))
  1971. IPPAPI(IppStatus, ippsAddC_64fc, (const Ipp64fc* pSrc, Ipp64fc val,
  1972. Ipp64fc* pDst, int len))
  1973. IPPAPI(IppStatus, ippsSubC_64f, (const Ipp64f* pSrc, Ipp64f val,
  1974. Ipp64f* pDst, int len))
  1975. IPPAPI(IppStatus, ippsSubC_64fc, (const Ipp64fc* pSrc, Ipp64fc val,
  1976. Ipp64fc* pDst, int len))
  1977. IPPAPI(IppStatus, ippsSubCRev_64f, (const Ipp64f* pSrc, Ipp64f val,
  1978. Ipp64f* pDst, int len))
  1979. IPPAPI(IppStatus, ippsSubCRev_64fc, (const Ipp64fc* pSrc, Ipp64fc val,
  1980. Ipp64fc* pDst, int len))
  1981. IPPAPI(IppStatus, ippsMulC_64f, (const Ipp64f* pSrc, Ipp64f val,
  1982. Ipp64f* pDst, int len))
  1983. IPPAPI(IppStatus, ippsMulC_64fc, (const Ipp64fc* pSrc, Ipp64fc val,
  1984. Ipp64fc* pDst, int len))
  1985. IPPAPI(IppStatus, ippsAddC_8u_Sfs, (const Ipp8u* pSrc, Ipp8u val,
  1986. Ipp8u* pDst, int len, int scaleFactor))
  1987. IPPAPI(IppStatus, ippsSubC_8u_Sfs, (const Ipp8u* pSrc, Ipp8u val,
  1988. Ipp8u* pDst, int len, int scaleFactor))
  1989. IPPAPI(IppStatus, ippsSubCRev_8u_Sfs, (const Ipp8u* pSrc, Ipp8u val,
  1990. Ipp8u* pDst, int len, int scaleFactor))
  1991. IPPAPI(IppStatus, ippsMulC_8u_Sfs, (const Ipp8u* pSrc, Ipp8u val,
  1992. Ipp8u* pDst, int len, int scaleFactor))
  1993. IPPAPI(IppStatus, ippsAddC_16s_Sfs, (const Ipp16s* pSrc, Ipp16s val,
  1994. Ipp16s* pDst, int len, int scaleFactor))
  1995. IPPAPI(IppStatus, ippsAddC_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc val,
  1996. Ipp16sc* pDst, int len, int scaleFactor))
  1997. IPPAPI(IppStatus, ippsSubC_16s_Sfs, (const Ipp16s* pSrc, Ipp16s val,
  1998. Ipp16s* pDst, int len, int scaleFactor))
  1999. IPPAPI(IppStatus, ippsSubC_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc val,
  2000. Ipp16sc* pDst, int len, int scaleFactor))
  2001. IPPAPI(IppStatus, ippsSubCRev_16s_Sfs, (const Ipp16s* pSrc, Ipp16s val,
  2002. Ipp16s* pDst, int len, int scaleFactor))
  2003. IPPAPI(IppStatus, ippsSubCRev_16sc_Sfs,(const Ipp16sc* pSrc, Ipp16sc val,
  2004. Ipp16sc* pDst, int len, int scaleFactor))
  2005. IPPAPI(IppStatus, ippsMulC_16s_Sfs, (const Ipp16s* pSrc, Ipp16s val,
  2006. Ipp16s* pDst, int len, int scaleFactor))
  2007. IPPAPI(IppStatus, ippsMulC_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc val,
  2008. Ipp16sc* pDst, int len, int scaleFactor))
  2009. IPPAPI(IppStatus, ippsAddC_32s_Sfs, (const Ipp32s* pSrc, Ipp32s val,
  2010. Ipp32s* pDst, int len, int scaleFactor))
  2011. IPPAPI(IppStatus, ippsAddC_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc val,
  2012. Ipp32sc* pDst, int len, int scaleFactor))
  2013. IPPAPI(IppStatus, ippsSubC_32s_Sfs, (const Ipp32s* pSrc, Ipp32s val,
  2014. Ipp32s* pDst, int len, int scaleFactor))
  2015. IPPAPI(IppStatus, ippsSubC_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc val,
  2016. Ipp32sc* pDst, int len, int scaleFactor))
  2017. IPPAPI(IppStatus, ippsSubCRev_32s_Sfs, (const Ipp32s* pSrc, Ipp32s val,
  2018. Ipp32s* pDst, int len, int scaleFactor))
  2019. IPPAPI(IppStatus, ippsSubCRev_32sc_Sfs,(const Ipp32sc* pSrc, Ipp32sc val,
  2020. Ipp32sc* pDst, int len, int scaleFactor))
  2021. IPPAPI(IppStatus, ippsMulC_32s_Sfs, (const Ipp32s* pSrc, Ipp32s val,
  2022. Ipp32s* pDst, int len, int scaleFactor))
  2023. IPPAPI(IppStatus, ippsMulC_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc val,
  2024. Ipp32sc* pDst, int len, int scaleFactor))
  2025. IPPAPI(IppStatus, ippsAdd_16s_I, (const Ipp16s* pSrc,
  2026. Ipp16s* pSrcDst, int len))
  2027. IPPAPI(IppStatus, ippsSub_16s_I, (const Ipp16s* pSrc,
  2028. Ipp16s* pSrcDst, int len))
  2029. IPPAPI(IppStatus, ippsMul_16s_I, (const Ipp16s* pSrc,
  2030. Ipp16s* pSrcDst, int len))
  2031. IPPAPI(IppStatus, ippsAdd_32f_I, (const Ipp32f* pSrc,
  2032. Ipp32f* pSrcDst, int len))
  2033. IPPAPI(IppStatus, ippsAdd_32fc_I, (const Ipp32fc* pSrc,
  2034. Ipp32fc* pSrcDst, int len))
  2035. IPPAPI(IppStatus, ippsSub_32f_I, (const Ipp32f* pSrc,
  2036. Ipp32f* pSrcDst, int len))
  2037. IPPAPI(IppStatus, ippsSub_32fc_I, (const Ipp32fc* pSrc,
  2038. Ipp32fc* pSrcDst, int len))
  2039. IPPAPI(IppStatus, ippsMul_32f_I, (const Ipp32f* pSrc,
  2040. Ipp32f* pSrcDst, int len))
  2041. IPPAPI(IppStatus, ippsMul_32fc_I, (const Ipp32fc* pSrc,
  2042. Ipp32fc* pSrcDst, int len))
  2043. IPPAPI(IppStatus, ippsAdd_64f_I, (const Ipp64f* pSrc,
  2044. Ipp64f* pSrcDst, int len))
  2045. IPPAPI(IppStatus, ippsAdd_64fc_I, (const Ipp64fc* pSrc,
  2046. Ipp64fc* pSrcDst, int len))
  2047. IPPAPI(IppStatus, ippsSub_64f_I, (const Ipp64f* pSrc,
  2048. Ipp64f* pSrcDst, int len))
  2049. IPPAPI(IppStatus, ippsSub_64fc_I, (const Ipp64fc* pSrc,
  2050. Ipp64fc* pSrcDst, int len))
  2051. IPPAPI(IppStatus, ippsMul_64f_I, (const Ipp64f* pSrc,
  2052. Ipp64f* pSrcDst, int len))
  2053. IPPAPI(IppStatus, ippsMul_64fc_I, (const Ipp64fc* pSrc,
  2054. Ipp64fc* pSrcDst, int len))
  2055. IPPAPI(IppStatus, ippsAdd_8u_ISfs, (const Ipp8u* pSrc, Ipp8u* pSrcDst,
  2056. int len, int scaleFactor))
  2057. IPPAPI(IppStatus, ippsSub_8u_ISfs, (const Ipp8u* pSrc, Ipp8u* pSrcDst,
  2058. int len, int scaleFactor))
  2059. IPPAPI(IppStatus, ippsMul_8u_ISfs, (const Ipp8u* pSrc, Ipp8u* pSrcDst,
  2060. int len, int scaleFactor))
  2061. IPPAPI(IppStatus, ippsAdd_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst,
  2062. int len, int scaleFactor))
  2063. IPPAPI(IppStatus, ippsAdd_16sc_ISfs, (const Ipp16sc* pSrc, Ipp16sc* pSrcDst,
  2064. int len, int scaleFactor))
  2065. IPPAPI(IppStatus, ippsSub_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst,
  2066. int len, int scaleFactor))
  2067. IPPAPI(IppStatus, ippsSub_16sc_ISfs, (const Ipp16sc* pSrc, Ipp16sc* pSrcDst,
  2068. int len, int scaleFactor))
  2069. IPPAPI(IppStatus, ippsMul_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst,
  2070. int len, int scaleFactor))
  2071. IPPAPI(IppStatus, ippsMul_16sc_ISfs, (const Ipp16sc* pSrc, Ipp16sc* pSrcDst,
  2072. int len, int scaleFactor))
  2073. IPPAPI(IppStatus, ippsAdd_32s_ISfs, (const Ipp32s* pSrc, Ipp32s* pSrcDst,
  2074. int len, int scaleFactor))
  2075. IPPAPI(IppStatus, ippsAdd_32sc_ISfs, (const Ipp32sc* pSrc, Ipp32sc* pSrcDst,
  2076. int len, int scaleFactor))
  2077. IPPAPI(IppStatus, ippsSub_32s_ISfs, (const Ipp32s* pSrc, Ipp32s* pSrcDst,
  2078. int len, int scaleFactor))
  2079. IPPAPI(IppStatus, ippsSub_32sc_ISfs, (const Ipp32sc* pSrc, Ipp32sc* pSrcDst,
  2080. int len, int scaleFactor))
  2081. IPPAPI(IppStatus, ippsMul_32s_ISfs, (const Ipp32s* pSrc, Ipp32s* pSrcDst,
  2082. int len, int scaleFactor))
  2083. IPPAPI(IppStatus, ippsMul_32sc_ISfs, (const Ipp32sc* pSrc, Ipp32sc* pSrcDst,
  2084. int len, int scaleFactor))
  2085. IPPAPI(IppStatus, ippsAdd_8u16u, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2086. Ipp16u* pDst, int len))
  2087. IPPAPI(IppStatus, ippsMul_8u16u, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2088. Ipp16u* pDst, int len))
  2089. IPPAPI(IppStatus, ippsAdd_16s, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2090. Ipp16s* pDst, int len))
  2091. IPPAPI(IppStatus, ippsSub_16s, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2092. Ipp16s* pDst, int len))
  2093. IPPAPI(IppStatus, ippsMul_16s, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2094. Ipp16s* pDst, int len))
  2095. IPPAPI(IppStatus, ippsAdd_16u, (const Ipp16u* pSrc1, const Ipp16u* pSrc2,
  2096. Ipp16u* pDst, int len))
  2097. IPPAPI(IppStatus, ippsAdd_32u, (const Ipp32u* pSrc1, const Ipp32u* pSrc2,
  2098. Ipp32u* pDst, int len))
  2099. IPPAPI(IppStatus, ippsAdd_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2100. Ipp32f* pDst, int len))
  2101. IPPAPI(IppStatus, ippsSub_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2102. Ipp32f* pDst, int len))
  2103. IPPAPI(IppStatus, ippsMul_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2104. Ipp32f* pDst, int len))
  2105. IPPAPI(IppStatus, ippsAdd_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2,
  2106. Ipp32f* pDst, int len))
  2107. IPPAPI(IppStatus, ippsAdd_32fc, (const Ipp32fc* pSrc1, const Ipp32fc* pSrc2,
  2108. Ipp32fc* pDst, int len))
  2109. IPPAPI(IppStatus, ippsSub_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2,
  2110. Ipp32f* pDst, int len))
  2111. IPPAPI(IppStatus, ippsSub_32fc, (const Ipp32fc* pSrc1, const Ipp32fc* pSrc2,
  2112. Ipp32fc* pDst, int len))
  2113. IPPAPI(IppStatus, ippsMul_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2,
  2114. Ipp32f* pDst, int len))
  2115. IPPAPI(IppStatus, ippsMul_32fc, (const Ipp32fc* pSrc1, const Ipp32fc* pSrc2,
  2116. Ipp32fc* pDst, int len))
  2117. IPPAPI(IppStatus, ippsAdd_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2,
  2118. Ipp64f* pDst, int len))
  2119. IPPAPI(IppStatus, ippsAdd_64fc, (const Ipp64fc* pSrc1, const Ipp64fc* pSrc2,
  2120. Ipp64fc* pDst, int len))
  2121. IPPAPI(IppStatus, ippsSub_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2,
  2122. Ipp64f* pDst, int len))
  2123. IPPAPI(IppStatus, ippsSub_64fc, (const Ipp64fc* pSrc1, const Ipp64fc* pSrc2,
  2124. Ipp64fc* pDst, int len))
  2125. IPPAPI(IppStatus, ippsMul_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2,
  2126. Ipp64f* pDst, int len))
  2127. IPPAPI(IppStatus, ippsMul_64fc, (const Ipp64fc* pSrc1, const Ipp64fc* pSrc2,
  2128. Ipp64fc* pDst, int len))
  2129. IPPAPI(IppStatus, ippsAdd_8u_Sfs, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2130. Ipp8u* pDst, int len, int scaleFactor))
  2131. IPPAPI(IppStatus, ippsSub_8u_Sfs, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2132. Ipp8u* pDst, int len, int scaleFactor))
  2133. IPPAPI(IppStatus, ippsMul_8u_Sfs, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2134. Ipp8u* pDst, int len, int scaleFactor))
  2135. IPPAPI(IppStatus, ippsAdd_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2136. Ipp16s* pDst, int len, int scaleFactor))
  2137. IPPAPI(IppStatus, ippsAdd_16sc_Sfs, (const Ipp16sc* pSrc1, const Ipp16sc* pSrc2,
  2138. Ipp16sc* pDst, int len, int scaleFactor))
  2139. IPPAPI(IppStatus, ippsSub_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2140. Ipp16s* pDst, int len, int scaleFactor))
  2141. IPPAPI(IppStatus, ippsSub_16sc_Sfs, (const Ipp16sc* pSrc1, const Ipp16sc* pSrc2,
  2142. Ipp16sc* pDst, int len, int scaleFactor))
  2143. IPPAPI(IppStatus, ippsMul_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2144. Ipp16s* pDst, int len, int scaleFactor))
  2145. IPPAPI(IppStatus, ippsMul_16sc_Sfs, (const Ipp16sc* pSrc1, const Ipp16sc* pSrc2,
  2146. Ipp16sc* pDst, int len, int scaleFactor))
  2147. IPPAPI(IppStatus, ippsMul_16s32s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2148. Ipp32s* pDst, int len, int scaleFactor))
  2149. IPPAPI(IppStatus, ippsAdd_32s_Sfs, (const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2150. Ipp32s* pDst, int len, int scaleFactor))
  2151. IPPAPI(IppStatus, ippsAdd_64s_Sfs, (const Ipp64s* pSrc1, const Ipp64s* pSrc2,
  2152. Ipp64s* pDst, Ipp32u len, int scaleFactor))
  2153. IPPAPI(IppStatus, ippsAdd_32sc_Sfs, (const Ipp32sc* pSrc1, const Ipp32sc* pSrc2,
  2154. Ipp32sc* pDst, int len, int scaleFactor))
  2155. IPPAPI(IppStatus, ippsSub_32s_Sfs, (const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2156. Ipp32s* pDst, int len, int scaleFactor))
  2157. IPPAPI(IppStatus, ippsSub_32sc_Sfs, (const Ipp32sc* pSrc1, const Ipp32sc* pSrc2,
  2158. Ipp32sc* pDst, int len, int scaleFactor))
  2159. IPPAPI(IppStatus, ippsMul_32s_Sfs, (const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2160. Ipp32s* pDst, int len, int scaleFactor))
  2161. IPPAPI(IppStatus, ippsMul_32sc_Sfs, (const Ipp32sc* pSrc1, const Ipp32sc* pSrc2,
  2162. Ipp32sc* pDst, int len, int scaleFactor))
  2163. IPPAPI(IppStatus, ippsMul_16u16s_Sfs, (const Ipp16u* pSrc1, const Ipp16s* pSrc2,
  2164. Ipp16s* pDst, int len, int scaleFactor))
  2165. IPPAPI(IppStatus, ippsMul_32s32sc_ISfs, (const Ipp32s* pSrc, Ipp32sc* pSrcDst,
  2166. int len, int scaleFactor))
  2167. IPPAPI(IppStatus, ippsMul_32s32sc_Sfs, (const Ipp32s* pSrc1, const Ipp32sc* pSrc2,
  2168. Ipp32sc* pDst, int len, int scaleFactor))
  2169. IPPAPI(IppStatus, ippsMul_Low_32s_Sfs, ( const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2170. Ipp32s* pDst, int len, int scaleFactor))
  2171. IPPAPI(IppStatus, ippsMul_32f32fc_I, (const Ipp32f* pSrc, Ipp32fc* pSrcDst,
  2172. int len))
  2173. IPPAPI(IppStatus, ippsMul_32f32fc, (const Ipp32f* pSrc1, const Ipp32fc* pSrc2,
  2174. Ipp32fc* pDst, int len))
  2175. IPPAPI(IppStatus, ippsAdd_16s32s_I, (const Ipp16s* pSrc, Ipp32s* pSrcDst, int len))
  2176. IPPAPI(IppStatus, ippsAddC_16u_ISfs, (Ipp16u val, Ipp16u* pSrcDst, int len, int scaleFactor))
  2177. IPPAPI(IppStatus, ippsAddC_16u_Sfs, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len, int scaleFactor))
  2178. IPPAPI(IppStatus, ippsAdd_16u_ISfs, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len, int scaleFactor))
  2179. IPPAPI(IppStatus, ippsAdd_16u_Sfs, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len, int scaleFactor))
  2180. IPPAPI(IppStatus, ippsSubC_16u_ISfs, (Ipp16u val, Ipp16u* pSrcDst, int len, int scaleFactor))
  2181. IPPAPI(IppStatus, ippsSubC_16u_Sfs, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len, int scaleFactor))
  2182. IPPAPI(IppStatus, ippsSubCRev_16u_ISfs, (Ipp16u val, Ipp16u* pSrcDst, int len, int scaleFactor))
  2183. IPPAPI(IppStatus, ippsSubCRev_16u_Sfs, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len, int scaleFactor))
  2184. IPPAPI(IppStatus, ippsSub_16u_ISfs, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len, int scaleFactor))
  2185. IPPAPI(IppStatus, ippsSub_16u_Sfs, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len, int scaleFactor))
  2186. IPPAPI(IppStatus, ippsMulC_16u_ISfs, (Ipp16u val, Ipp16u* pSrcDst, int len, int scaleFactor))
  2187. IPPAPI(IppStatus, ippsMulC_16u_Sfs, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len, int scaleFactor))
  2188. IPPAPI(IppStatus, ippsMul_16u_ISfs, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len, int scaleFactor))
  2189. IPPAPI(IppStatus, ippsMul_16u_Sfs, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len, int scaleFactor))
  2190. IPPAPI(IppStatus, ippsMulC_64s_ISfs, (Ipp64s val, Ipp64s* pSrcDst, Ipp32u len, int scaleFactor))
  2191. IPPAPI(IppStatus, ippsMulC_64f64s_ISfs, (Ipp64f val, Ipp64s* pSrcDst, Ipp32u len, int scaleFactor))
  2192. /* /////////////////////////////////////////////////////////////////////////////
  2193. // Name: ippsAddProduct
  2194. // Purpose: multiplies elements of two source vectors and adds product to
  2195. // the accumulator vector
  2196. // Parameters:
  2197. // pSrc1 pointer to the first source vector
  2198. // pSrc2 pointer to the second source vector
  2199. // pSrcDst pointer to the source/destination (accumulator) vector
  2200. // len length of the vectors
  2201. // scaleFactor scale factor value
  2202. // Return:
  2203. // ippStsNullPtrErr pointer to the vector is NULL
  2204. // ippStsSizeErr length of the vectors is less or equal zero
  2205. // ippStsNoErr otherwise
  2206. //
  2207. // Notes: pSrcDst[n] = pSrcDst[n] + pSrc1[n] * pSrc2[n], n=0,1,2,..len-1.
  2208. */
  2209. IPPAPI(IppStatus, ippsAddProduct_16s_Sfs, ( const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2210. Ipp16s* pSrcDst, int len, int scaleFactor ))
  2211. IPPAPI(IppStatus, ippsAddProduct_16s32s_Sfs, ( const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2212. Ipp32s* pSrcDst, int len, int scaleFactor ))
  2213. IPPAPI(IppStatus, ippsAddProduct_32s_Sfs, ( const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2214. Ipp32s* pSrcDst, int len, int scaleFactor ))
  2215. IPPAPI(IppStatus, ippsAddProduct_32f, ( const Ipp32f* pSrc1, const Ipp32f* pSrc2,
  2216. Ipp32f* pSrcDst, int len ))
  2217. IPPAPI(IppStatus, ippsAddProduct_64f, ( const Ipp64f* pSrc1, const Ipp64f* pSrc2,
  2218. Ipp64f* pSrcDst, int len ))
  2219. IPPAPI(IppStatus, ippsAddProduct_32fc, ( const Ipp32fc* pSrc1, const Ipp32fc* pSrc2,
  2220. Ipp32fc* pSrcDst, int len ))
  2221. IPPAPI(IppStatus, ippsAddProduct_64fc, ( const Ipp64fc* pSrc1, const Ipp64fc* pSrc2,
  2222. Ipp64fc* pSrcDst, int len ))
  2223. /* /////////////////////////////////////////////////////////////////////////////
  2224. // Names: ippsSqr
  2225. // Purpose: compute square value for every element of the source vector
  2226. // Parameters:
  2227. // pSrcDst pointer to the source/destination vector
  2228. // pSrc pointer to the input vector
  2229. // pDst pointer to the output vector
  2230. // len length of the vectors
  2231. // scaleFactor scale factor value
  2232. // Return:
  2233. // ippStsNullPtrErr pointer(s) the source data NULL
  2234. // ippStsSizeErr length of the vectors is less or equal zero
  2235. // ippStsNoErr otherwise
  2236. */
  2237. IPPAPI(IppStatus,ippsSqr_32f_I,(Ipp32f* pSrcDst, int len))
  2238. IPPAPI(IppStatus,ippsSqr_32fc_I,(Ipp32fc* pSrcDst, int len))
  2239. IPPAPI(IppStatus,ippsSqr_64f_I,(Ipp64f* pSrcDst, int len))
  2240. IPPAPI(IppStatus,ippsSqr_64fc_I,(Ipp64fc* pSrcDst, int len))
  2241. IPPAPI(IppStatus,ippsSqr_32f,(const Ipp32f* pSrc, Ipp32f* pDst, int len))
  2242. IPPAPI(IppStatus,ippsSqr_32fc,(const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  2243. IPPAPI(IppStatus,ippsSqr_64f,(const Ipp64f* pSrc, Ipp64f* pDst, int len))
  2244. IPPAPI(IppStatus,ippsSqr_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  2245. IPPAPI(IppStatus,ippsSqr_16s_ISfs,(Ipp16s* pSrcDst, int len, int scaleFactor))
  2246. IPPAPI(IppStatus,ippsSqr_16sc_ISfs,(Ipp16sc* pSrcDst, int len, int scaleFactor))
  2247. IPPAPI(IppStatus,ippsSqr_16s_Sfs,(const Ipp16s* pSrc, Ipp16s* pDst, int len,
  2248. int scaleFactor))
  2249. IPPAPI(IppStatus,ippsSqr_16sc_Sfs,(const Ipp16sc* pSrc, Ipp16sc* pDst, int len,
  2250. int scaleFactor))
  2251. IPPAPI(IppStatus,ippsSqr_8u_ISfs,(Ipp8u* pSrcDst, int len, int scaleFactor))
  2252. IPPAPI(IppStatus,ippsSqr_8u_Sfs,(const Ipp8u* pSrc, Ipp8u* pDst, int len,
  2253. int scaleFactor))
  2254. IPPAPI(IppStatus,ippsSqr_16u_ISfs,(Ipp16u* pSrcDst, int len, int scaleFactor))
  2255. IPPAPI(IppStatus,ippsSqr_16u_Sfs,(const Ipp16u* pSrc, Ipp16u* pDst, int len,
  2256. int scaleFactor))
  2257. /* ////////////////////////////////////////////////////////////////////////////
  2258. // Name: ippsDiv
  2259. //
  2260. // Purpose: divide every element of the source vector by the scalar value
  2261. // or by corresponding element of the second source vector
  2262. // Arguments:
  2263. // val the divisor value
  2264. // pSrc pointer to the divisor source vector
  2265. // pSrc1 pointer to the divisor source vector
  2266. // pSrc2 pointer to the dividend source vector
  2267. // pDst pointer to the destination vector
  2268. // pSrcDst pointer to the source/destination vector
  2269. // len vector's length, number of items
  2270. // scaleFactor scale factor parameter value
  2271. // Return:
  2272. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2273. // ippStsSizeErr length of the vector is less or equal zero
  2274. // ippStsDivByZeroErr the scalar divisor value is zero
  2275. // ippStsDivByZero Warning status if an element of divisor vector is
  2276. // zero. If the dividend is zero than result is
  2277. // NaN, if the dividend is not zero than result
  2278. // is Infinity with correspondent sign. The
  2279. // execution is not aborted. For the integer operation
  2280. // zero instead of NaN and the corresponding bound
  2281. // values instead of Infinity
  2282. // ippStsNoErr otherwise
  2283. // Note:
  2284. // DivC(v,X,Y) : Y[n] = X[n] / v
  2285. // DivC(v,X) : X[n] = X[n] / v
  2286. // Div(X,Y) : Y[n] = Y[n] / X[n]
  2287. // Div(X,Y,Z) : Z[n] = Y[n] / X[n]
  2288. */
  2289. IPPAPI(IppStatus, ippsDiv_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2,
  2290. Ipp32f* pDst, int len))
  2291. IPPAPI(IppStatus, ippsDiv_32fc, (const Ipp32fc* pSrc1, const Ipp32fc* pSrc2,
  2292. Ipp32fc* pDst, int len))
  2293. IPPAPI(IppStatus, ippsDiv_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2,
  2294. Ipp64f* pDst, int len))
  2295. IPPAPI(IppStatus, ippsDiv_64fc, (const Ipp64fc* pSrc1, const Ipp64fc* pSrc2,
  2296. Ipp64fc* pDst, int len))
  2297. IPPAPI(IppStatus, ippsDiv_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  2298. Ipp16s* pDst, int len, int scaleFactor))
  2299. IPPAPI(IppStatus, ippsDiv_8u_Sfs, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  2300. Ipp8u* pDst, int len, int scaleFactor))
  2301. IPPAPI(IppStatus, ippsDiv_16sc_Sfs, (const Ipp16sc* pSrc1,
  2302. const Ipp16sc* pSrc2, Ipp16sc* pDst, int len, int scaleFactor))
  2303. IPPAPI(IppStatus, ippsDivC_32f, (const Ipp32f* pSrc, Ipp32f val,
  2304. Ipp32f* pDst, int len))
  2305. IPPAPI(IppStatus, ippsDivC_32fc, (const Ipp32fc* pSrc, Ipp32fc val,
  2306. Ipp32fc* pDst, int len))
  2307. IPPAPI(IppStatus, ippsDivC_64f, (const Ipp64f* pSrc, Ipp64f val,
  2308. Ipp64f* pDst, int len))
  2309. IPPAPI(IppStatus, ippsDivC_64fc, (const Ipp64fc* pSrc, Ipp64fc val,
  2310. Ipp64fc* pDst, int len))
  2311. IPPAPI(IppStatus, ippsDivC_16s_Sfs, (const Ipp16s* pSrc, Ipp16s val,
  2312. Ipp16s* pDst, int len, int scaleFactor))
  2313. IPPAPI(IppStatus, ippsDivC_8u_Sfs, (const Ipp8u* pSrc, Ipp8u val,
  2314. Ipp8u* pDst, int len, int scaleFactor))
  2315. IPPAPI(IppStatus, ippsDivC_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc val,
  2316. Ipp16sc* pDst, int len, int scaleFactor))
  2317. IPPAPI(IppStatus, ippsDiv_32f_I, (const Ipp32f* pSrc,
  2318. Ipp32f* pSrcDst, int len))
  2319. IPPAPI(IppStatus, ippsDiv_32fc_I, (const Ipp32fc* pSrc,
  2320. Ipp32fc* pSrcDst, int len))
  2321. IPPAPI(IppStatus, ippsDiv_64f_I, (const Ipp64f* pSrc,
  2322. Ipp64f* pSrcDst, int len))
  2323. IPPAPI(IppStatus, ippsDiv_64fc_I, (const Ipp64fc* pSrc,
  2324. Ipp64fc* pSrcDst, int len))
  2325. IPPAPI(IppStatus, ippsDiv_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst,
  2326. int len, int scaleFactor))
  2327. IPPAPI(IppStatus, ippsDiv_8u_ISfs, (const Ipp8u* pSrc, Ipp8u* pSrcDst,
  2328. int len, int scaleFactor))
  2329. IPPAPI(IppStatus, ippsDiv_16sc_ISfs, (const Ipp16sc* pSrc, Ipp16sc* pSrcDst,
  2330. int len, int scaleFactor))
  2331. IPPAPI(IppStatus, ippsDiv_32s_Sfs, (const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  2332. Ipp32s* pDst, int len, int scaleFactor))
  2333. IPPAPI(IppStatus, ippsDiv_32s_ISfs, (const Ipp32s* pSrc, Ipp32s* pSrcDst,
  2334. int len, int ScaleFactor))
  2335. IPPAPI(IppStatus, ippsDiv_32s16s_Sfs, (const Ipp16s* pSrc1, const Ipp32s* pSrc2,
  2336. Ipp16s* pDst, int len, int scaleFactor))
  2337. IPPAPI(IppStatus, ippsDivC_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  2338. IPPAPI(IppStatus, ippsDivC_32fc_I, (Ipp32fc val, Ipp32fc* pSrcDst, int len))
  2339. IPPAPI(IppStatus, ippsDivC_64f_I, (Ipp64f val, Ipp64f* pSrcDst, int len))
  2340. IPPAPI(IppStatus, ippsDivC_64fc_I, (Ipp64fc val, Ipp64fc* pSrcDst, int len))
  2341. IPPAPI(IppStatus, ippsDivC_16s_ISfs, (Ipp16s val, Ipp16s* pSrcDst,
  2342. int len, int scaleFactor))
  2343. IPPAPI(IppStatus, ippsDivC_8u_ISfs, (Ipp8u val, Ipp8u* pSrcDst,
  2344. int len, int scaleFactor))
  2345. IPPAPI(IppStatus, ippsDivC_16sc_ISfs, (Ipp16sc val, Ipp16sc* pSrcDst,
  2346. int len, int scaleFactor))
  2347. IPPAPI(IppStatus, ippsDivCRev_16u, (const Ipp16u* pSrc, Ipp16u val,
  2348. Ipp16u* pDst, int len))
  2349. IPPAPI(IppStatus, ippsDivCRev_32f, (const Ipp32f* pSrc, Ipp32f val,
  2350. Ipp32f* pDst, int len))
  2351. IPPAPI(IppStatus, ippsDivCRev_16u_I, (Ipp16u val, Ipp16u* pSrcDst, int len))
  2352. IPPAPI(IppStatus, ippsDivCRev_32f_I, (Ipp32f val, Ipp32f* pSrcDst, int len))
  2353. IPPAPI(IppStatus, ippsDivC_16u_ISfs, (Ipp16u val, Ipp16u* pSrcDst, int len, int scaleFactor))
  2354. IPPAPI(IppStatus, ippsDivC_16u_Sfs, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len, int scaleFactor))
  2355. IPPAPI(IppStatus, ippsDiv_16u_ISfs, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len, int scaleFactor))
  2356. IPPAPI(IppStatus, ippsDiv_16u_Sfs, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len, int scaleFactor))
  2357. IPPAPI( IppStatus, ippsDivC_64s_ISfs, ( Ipp64s val, Ipp64s* pSrcDst, Ipp32u len, int scaleFactor))
  2358. /* /////////////////////////////////////////////////////////////////////////////
  2359. // Names: ippsSqrt
  2360. // Purpose: compute square root value for every element of the source vector
  2361. // pSrc pointer to the source vector
  2362. // pDst pointer to the destination vector
  2363. // pSrcDst pointer to the source/destination vector
  2364. // len length of the vector(s), number of items
  2365. // scaleFactor scale factor value
  2366. // Return:
  2367. // ippStsNullPtrErr pointer to vector is NULL
  2368. // ippStsSizeErr length of the vector is less or equal zero
  2369. // ippStsSqrtNegArg negative value in real sequence
  2370. // ippStsNoErr otherwise
  2371. */
  2372. IPPAPI(IppStatus,ippsSqrt_32f_I,(Ipp32f* pSrcDst,int len))
  2373. IPPAPI(IppStatus,ippsSqrt_32fc_I,(Ipp32fc* pSrcDst,int len))
  2374. IPPAPI(IppStatus,ippsSqrt_64f_I,(Ipp64f* pSrcDst,int len))
  2375. IPPAPI(IppStatus,ippsSqrt_64fc_I,(Ipp64fc* pSrcDst,int len))
  2376. IPPAPI(IppStatus,ippsSqrt_32f,(const Ipp32f* pSrc,Ipp32f* pDst,int len))
  2377. IPPAPI(IppStatus,ippsSqrt_32fc,(const Ipp32fc* pSrc,Ipp32fc* pDst,int len))
  2378. IPPAPI(IppStatus,ippsSqrt_64f,(const Ipp64f* pSrc,Ipp64f* pDst,int len))
  2379. IPPAPI(IppStatus,ippsSqrt_64fc,(const Ipp64fc* pSrc,Ipp64fc* pDst,int len))
  2380. IPPAPI(IppStatus,ippsSqrt_16s_ISfs,(Ipp16s* pSrcDst,int len,int scaleFactor))
  2381. IPPAPI(IppStatus,ippsSqrt_16sc_ISfs,(Ipp16sc* pSrcDst,int len,int scaleFactor))
  2382. IPPAPI(IppStatus,ippsSqrt_16s_Sfs,(const Ipp16s* pSrc,Ipp16s* pDst,int len,
  2383. int scaleFactor))
  2384. IPPAPI(IppStatus,ippsSqrt_16sc_Sfs,(const Ipp16sc* pSrc,Ipp16sc* pDst,int len,
  2385. int scaleFactor))
  2386. IPPAPI(IppStatus,ippsSqrt_64s_ISfs,(Ipp64s* pSrcDst,int len,int scaleFactor))
  2387. IPPAPI(IppStatus,ippsSqrt_64s_Sfs,(const Ipp64s* pSrc,Ipp64s* pDst,int len,
  2388. int scaleFactor))
  2389. IPPAPI(IppStatus,ippsSqrt_8u_ISfs,(Ipp8u* pSrcDst, int len, int scaleFactor))
  2390. IPPAPI(IppStatus,ippsSqrt_8u_Sfs,(const Ipp8u* pSrc, Ipp8u* pDst, int len,
  2391. int scaleFactor))
  2392. IPPAPI(IppStatus,ippsSqrt_16u_ISfs,(Ipp16u* pSrcDst, int len, int scaleFactor))
  2393. IPPAPI(IppStatus,ippsSqrt_16u_Sfs,(const Ipp16u* pSrc, Ipp16u* pDst, int len,
  2394. int scaleFactor))
  2395. IPPAPI(IppStatus,ippsSqrt_32s16s_Sfs,(const Ipp32s* pSrc,Ipp16s* pDst,
  2396. int len, int scaleFactor))
  2397. IPPAPI(IppStatus,ippsSqrt_64s16s_Sfs,(const Ipp64s* pSrc,Ipp16s* pDst,
  2398. int len, int scaleFactor))
  2399. /* /////////////////////////////////////////////////////////////////////////////
  2400. // Names: ippsCubrt
  2401. // Purpose: Compute cube root of every elements of the source vector
  2402. // Parameters:
  2403. // pSrc pointer to the source vector
  2404. // pDst pointer to the destination vector
  2405. // len length of the vector(s)
  2406. // ScaleFactor scale factor value
  2407. // Return:
  2408. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2409. // ippStsSizeErr length of the vector(s) is less or equal 0
  2410. // ippStsNoErr otherwise
  2411. */
  2412. IPPAPI(IppStatus, ippsCubrt_32s16s_Sfs, ( const Ipp32s* pSrc, Ipp16s* pDst, int Len, int sFactor))
  2413. IPPAPI(IppStatus, ippsCubrt_32f, ( const Ipp32f* pSrc, Ipp32f* pDst, int Len))
  2414. /* /////////////////////////////////////////////////////////////////////////////
  2415. // Names: ippsAbs
  2416. // Purpose: compute absolute value of each element of the source vector
  2417. // Parameters:
  2418. // pSrcDst pointer to the source/destination vector
  2419. // pSrc pointer to the source vector
  2420. // pDst pointer to the destination vector
  2421. // len length of the vector(s), number of items
  2422. // Return:
  2423. // ippStsNullPtrErr pointer(s) to data vector is NULL
  2424. // ippStsSizeErr length of a vector is less or equal 0
  2425. // ippStsNoErr otherwise
  2426. */
  2427. IPPAPI(IppStatus,ippsAbs_32f_I,(Ipp32f* pSrcDst,int len))
  2428. IPPAPI(IppStatus,ippsAbs_64f_I,(Ipp64f* pSrcDst,int len))
  2429. IPPAPI(IppStatus,ippsAbs_16s_I,(Ipp16s* pSrcDst,int len))
  2430. IPPAPI(IppStatus,ippsAbs_32f,(const Ipp32f* pSrc, Ipp32f* pDst,int len))
  2431. IPPAPI(IppStatus,ippsAbs_64f,(const Ipp64f* pSrc, Ipp64f* pDst,int len))
  2432. IPPAPI(IppStatus,ippsAbs_16s,(const Ipp16s* pSrc, Ipp16s* pDst,int len))
  2433. IPPAPI(IppStatus,ippsAbs_32s_I,(Ipp32s* pSrcDst,int len))
  2434. IPPAPI(IppStatus,ippsAbs_32s,(const Ipp32s* pSrc, Ipp32s* pDst,int len))
  2435. /* /////////////////////////////////////////////////////////////////////////////
  2436. // Names: ippsMagnitude
  2437. // Purpose: compute magnitude of every complex element of the source
  2438. // Parameters:
  2439. // pSrcDst pointer to the source/destination vector
  2440. // pSrc pointer to the source vector
  2441. // pDst pointer to the destination vector
  2442. // len length of the vector(s), number of items
  2443. // scaleFactor scale factor value
  2444. // Return:
  2445. // ippStsNullPtrErr pointer(s) to data vector is NULL
  2446. // ippStsSizeErr length of a vector is less or equal 0
  2447. // ippStsNoErr otherwise
  2448. // Notes:
  2449. // dst = sqrt( src.re^2 + src.im^2 )
  2450. */
  2451. IPPAPI(IppStatus,ippsMagnitude_32fc, (const Ipp32fc* pSrc,Ipp32f* pDst,int len))
  2452. IPPAPI(IppStatus,ippsMagnitude_64fc, (const Ipp64fc* pSrc,Ipp64f* pDst,int len))
  2453. IPPAPI(IppStatus,ippsMagnitude_16sc32f,(const Ipp16sc* pSrc,Ipp32f* pDst,int len))
  2454. IPPAPI(IppStatus,ippsMagnitude_16sc_Sfs,(const Ipp16sc* pSrc,Ipp16s* pDst,
  2455. int len,int scaleFactor))
  2456. IPPAPI(IppStatus,ippsMagnitude_32f,(const Ipp32f* pSrcRe,const Ipp32f* pSrcIm,
  2457. Ipp32f* pDst,int len))
  2458. IPPAPI(IppStatus,ippsMagnitude_64f,(const Ipp64f* pSrcRe,const Ipp64f* pSrcIm,
  2459. Ipp64f* pDst,int len))
  2460. IPPAPI(IppStatus,ippsMagnitude_16s_Sfs,(const Ipp16s* pSrcRe,const Ipp16s* pSrcIm,
  2461. Ipp16s* pDst,int len,int scaleFactor))
  2462. IPPAPI(IppStatus,ippsMagnitude_32sc_Sfs,(const Ipp32sc* pSrc,Ipp32s* pDst,
  2463. int len,int scaleFactor))
  2464. IPPAPI(IppStatus,ippsMagnitude_16s32f,(const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  2465. Ipp32f* pDst, int len))
  2466. IPPAPI(IppStatus, ippsMagSquared_32sc32s_Sfs, (const Ipp32sc* pSrc, Ipp32s* pDst, int len, int scaleFactor))
  2467. IPPAPI(IppStatus, ippsMagSquared_32fc64f, (const Ipp32fc* pSrc, Ipp64f* pDst, int len))
  2468. /* /////////////////////////////////////////////////////////////////////////////
  2469. // Names: ippsExp
  2470. // Purpose: compute exponent value for all elements of the source vector
  2471. // Parameters:
  2472. // pSrcDst pointer to the source/destination vector
  2473. // pSrc pointer to the source vector
  2474. // pDst pointer to the destination vector
  2475. // len length of the vector(s)
  2476. // scaleFactor scale factor value
  2477. // Return:
  2478. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2479. // ippStsSizeErr length of the vector(s) is less or equal 0
  2480. // ippStsNoErr otherwise
  2481. */
  2482. IPPAPI(IppStatus, ippsExp_32f_I,(Ipp32f* pSrcDst, int len))
  2483. IPPAPI(IppStatus, ippsExp_64f_I,(Ipp64f* pSrcDst, int len))
  2484. IPPAPI(IppStatus, ippsExp_16s_ISfs,(Ipp16s* pSrcDst, int len, int scaleFactor))
  2485. IPPAPI(IppStatus, ippsExp_32s_ISfs,(Ipp32s* pSrcDst, int len, int scaleFactor))
  2486. IPPAPI(IppStatus, ippsExp_64s_ISfs,(Ipp64s* pSrcDst, int len, int scaleFactor))
  2487. IPPAPI(IppStatus, ippsExp_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  2488. IPPAPI(IppStatus, ippsExp_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  2489. IPPAPI(IppStatus, ippsExp_16s_Sfs,(const Ipp16s* pSrc, Ipp16s* pDst, int len,
  2490. int scaleFactor))
  2491. IPPAPI(IppStatus, ippsExp_32s_Sfs,(const Ipp32s* pSrc, Ipp32s* pDst, int len,
  2492. int scaleFactor))
  2493. IPPAPI(IppStatus, ippsExp_64s_Sfs,(const Ipp64s* pSrc, Ipp64s* pDst, int len,
  2494. int scaleFactor))
  2495. IPPAPI(IppStatus, ippsExp_32f64f,(const Ipp32f* pSrc, Ipp64f* pDst, int len))
  2496. /* /////////////////////////////////////////////////////////////////////////////
  2497. // Names: ippsLn
  2498. // Purpose: compute natural logarithm of every elements of the source vector
  2499. // Parameters:
  2500. // pSrcDst pointer to the source/destination vector
  2501. // pSrc pointer to the source vector
  2502. // pDst pointer to the destination vector
  2503. // len length of the vector(s)
  2504. // ScaleFactor scale factor value
  2505. // Return:
  2506. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2507. // ippStsSizeErr length of the vector(s) is less or equal 0
  2508. // ippStsLnZeroArg zero value in the source vector
  2509. // ippStsLnNegArg negative value in the source vector
  2510. // ippStsNoErr otherwise
  2511. // Notes:
  2512. // Ln( x<0 ) = NaN
  2513. // Ln( 0 ) = -Inf
  2514. */
  2515. IPPAPI(IppStatus, ippsLn_32f_I,(Ipp32f* pSrcDst, int len))
  2516. IPPAPI(IppStatus, ippsLn_64f_I,(Ipp64f* pSrcDst, int len))
  2517. IPPAPI(IppStatus, ippsLn_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  2518. IPPAPI(IppStatus, ippsLn_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  2519. IPPAPI(IppStatus, ippsLn_64f32f,(const Ipp64f* pSrc, Ipp32f* pDst, int len))
  2520. IPPAPI(IppStatus, ippsLn_16s_ISfs,(Ipp16s* pSrcDst, int len, int scaleFactor))
  2521. IPPAPI(IppStatus, ippsLn_16s_Sfs,(const Ipp16s* pSrc, Ipp16s* pDst, int len, int scaleFactor))
  2522. IPPAPI(IppStatus, ippsLn_32s16s_Sfs, ( const Ipp32s* pSrc, Ipp16s* pDst, int Len, int scaleFactor))
  2523. IPPAPI(IppStatus, ippsLn_32s_ISfs,( Ipp32s* pSrcDst, int Len, int scaleFactor))
  2524. IPPAPI(IppStatus, ippsLn_32s_Sfs, ( const Ipp32s* pSrc, Ipp32s* pDst, int Len, int scaleFactor))
  2525. /* /////////////////////////////////////////////////////////////////////////////
  2526. // Names: ipps10Log10_32s_ISfs
  2527. // ipps10Log10_32s_Sfs
  2528. //
  2529. // Purpose: compute decimal logarithm multiplied by 10 of every elements
  2530. // of the source vector (for integer only).
  2531. //
  2532. // Parameters:
  2533. // pSrcDst pointer to the source/destination vector
  2534. // pSrc pointer to the source vector
  2535. // pDst pointer to the destination vector
  2536. // Len length of the vector(s)
  2537. // ScaleFactor scale factor value
  2538. // Return:
  2539. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2540. // ippStsSizeErr length of the vector(s) is less or equal 0
  2541. // ippStsLnZeroArg zero value in the source vector
  2542. // ippStsLnNegArg negative value in the source vector
  2543. // ippStsNoErr otherwise
  2544. //
  2545. */
  2546. IPPAPI(IppStatus, ipps10Log10_32s_ISfs,( Ipp32s* pSrcDst, int Len, int scaleFactor))
  2547. IPPAPI(IppStatus, ipps10Log10_32s_Sfs, ( const Ipp32s* pSrc, Ipp32s* pDst, int Len, int scaleFactor))
  2548. /* /////////////////////////////////////////////////////////////////////////////
  2549. // Names: ippsSumLn
  2550. // Purpose: computes sum of natural logarithm every elements of the source vector
  2551. // Parameters:
  2552. // pSrc pointer to the source vector
  2553. // pSum pointer to the result
  2554. // len length of the vector
  2555. // Return:
  2556. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  2557. // ippStsSizeErr length of the vector(s) is less or equal 0
  2558. // ippStsLnZeroArg zero value in the source vector
  2559. // ippStsLnNegArg negative value in the source vector
  2560. // ippStsNoErr otherwise
  2561. */
  2562. IPPAPI(IppStatus, ippsSumLn_32f,(const Ipp32f* pSrc, int len, Ipp32f* pSum))
  2563. IPPAPI(IppStatus, ippsSumLn_64f,(const Ipp64f* pSrc, int len, Ipp64f* pSum))
  2564. IPPAPI(IppStatus, ippsSumLn_32f64f,(const Ipp32f* pSrc, int len, Ipp64f* pSum))
  2565. IPPAPI(IppStatus, ippsSumLn_16s32f,(const Ipp16s* pSrc, int len, Ipp32f* pSum))
  2566. /* ////////////////////////////////////////////////////////////////////////////
  2567. // Names: ippsSortAscend, ippsSortDescend
  2568. //
  2569. // Purpose: Execute sorting of all elemens of the vector.
  2570. // ippsSortAscend is sorted in increasing order.
  2571. // ippsSortDescend is sorted in decreasing order.
  2572. // Arguments:
  2573. // pSrcDst pointer to the source/destination vector
  2574. // len length of the vector
  2575. // Return:
  2576. // ippStsNullPtrErr pointer to the data is NULL
  2577. // ippStsSizeErr length of the vector is less or equal zero
  2578. // ippStsNoErr otherwise
  2579. */
  2580. IPPAPI(IppStatus, ippsSortAscend_8u_I, (Ipp8u* pSrcDst, int len))
  2581. IPPAPI(IppStatus, ippsSortAscend_16s_I, (Ipp16s* pSrcDst, int len))
  2582. IPPAPI(IppStatus, ippsSortAscend_16u_I, (Ipp16u* pSrcDst, int len))
  2583. IPPAPI(IppStatus, ippsSortAscend_32s_I, (Ipp32s* pSrcDst, int len))
  2584. IPPAPI(IppStatus, ippsSortAscend_32f_I, (Ipp32f* pSrcDst, int len))
  2585. IPPAPI(IppStatus, ippsSortAscend_64f_I, (Ipp64f* pSrcDst, int len))
  2586. IPPAPI(IppStatus, ippsSortDescend_8u_I, (Ipp8u* pSrcDst, int len))
  2587. IPPAPI(IppStatus, ippsSortDescend_16s_I, (Ipp16s* pSrcDst, int len))
  2588. IPPAPI(IppStatus, ippsSortDescend_16u_I, (Ipp16u* pSrcDst, int len))
  2589. IPPAPI(IppStatus, ippsSortDescend_32s_I, (Ipp32s* pSrcDst, int len))
  2590. IPPAPI(IppStatus, ippsSortDescend_32f_I, (Ipp32f* pSrcDst, int len))
  2591. IPPAPI(IppStatus, ippsSortDescend_64f_I, (Ipp64f* pSrcDst, int len))
  2592. IPPAPI(IppStatus,ippsSortIndexAscend_8u_I, (Ipp8u* pSrcDst, int* pDstIdx, int len ))
  2593. IPPAPI(IppStatus,ippsSortIndexAscend_16s_I,(Ipp16s* pSrcDst, int* pDstIdx, int len ))
  2594. IPPAPI(IppStatus,ippsSortIndexAscend_16u_I,(Ipp16u* pSrcDst, int* pDstIdx, int len ))
  2595. IPPAPI(IppStatus,ippsSortIndexAscend_32s_I,(Ipp32s* pSrcDst, int* pDstIdx, int len ))
  2596. IPPAPI(IppStatus,ippsSortIndexAscend_32f_I,(Ipp32f* pSrcDst, int* pDstIdx, int len ))
  2597. IPPAPI(IppStatus,ippsSortIndexAscend_64f_I,(Ipp64f* pSrcDst, int* pDstIdx, int len ))
  2598. IPPAPI(IppStatus,ippsSortIndexDescend_8u_I, (Ipp8u* pSrcDst, int* pDstIdx, int len ))
  2599. IPPAPI(IppStatus,ippsSortIndexDescend_16s_I,(Ipp16s* pSrcDst, int* pDstIdx, int len ))
  2600. IPPAPI(IppStatus,ippsSortIndexDescend_16u_I,(Ipp16u* pSrcDst, int* pDstIdx, int len ))
  2601. IPPAPI(IppStatus,ippsSortIndexDescend_32s_I,(Ipp32s* pSrcDst, int* pDstIdx, int len ))
  2602. IPPAPI(IppStatus,ippsSortIndexDescend_32f_I,(Ipp32f* pSrcDst, int* pDstIdx, int len ))
  2603. IPPAPI(IppStatus,ippsSortIndexDescend_64f_I,(Ipp64f* pSrcDst, int* pDstIdx, int len ))
  2604. /* /////////////////////////////////////////////////////////////////////////////////////
  2605. // Names: ippsSortRadixAscend, ippsSortRadixDescend
  2606. //
  2607. // Purpose: Rearrange elements of input vector using radix sort algorithm.
  2608. // ippsSortRadixAscend - sorts input array in increasing order
  2609. // ippsSortRadixDescend - sorts input array in decreasing order
  2610. //
  2611. // Arguments:
  2612. // pSrcDst pointer to the source/destination vector
  2613. // pTmp pointer to the temporary vector (same size as input one)
  2614. // len length of the vectors
  2615. // Return:
  2616. // ippStsNullPtrErr pointer to the data or temporary placeholders is NULL
  2617. // ippStsSizeErr length of the vectors is less or equal zero
  2618. // ippStsNoErr otherwise
  2619. */
  2620. IPPAPI(IppStatus, ippsSortRadixAscend_32f_I, (Ipp32f *pSrcDst, Ipp32f *pTmp, Ipp32s len))
  2621. IPPAPI(IppStatus, ippsSortRadixAscend_32s_I, (Ipp32s *pSrcDst, Ipp32s *pTmp, Ipp32s len))
  2622. IPPAPI(IppStatus, ippsSortRadixAscend_32u_I, (Ipp32u *pSrcDst, Ipp32u *pTmp, Ipp32s len))
  2623. IPPAPI(IppStatus, ippsSortRadixAscend_16s_I, (Ipp16s *pSrcDst, Ipp16s *pTmp, Ipp32s len))
  2624. IPPAPI(IppStatus, ippsSortRadixAscend_16u_I, (Ipp16u *pSrcDst, Ipp16u *pTmp, Ipp32s len))
  2625. IPPAPI(IppStatus, ippsSortRadixAscend_8u_I, (Ipp8u *pSrcDst, Ipp8u *pTmp, Ipp32s len))
  2626. IPPAPI(IppStatus, ippsSortRadixAscend_64f_I, (Ipp64f *pSrcDst, Ipp64f *pTmp, Ipp32s len))
  2627. IPPAPI(IppStatus, ippsSortRadixDescend_32f_I, (Ipp32f *pSrcDst, Ipp32f *pTmp, Ipp32s len))
  2628. IPPAPI(IppStatus, ippsSortRadixDescend_32s_I, (Ipp32s *pSrcDst, Ipp32s *pTmp, Ipp32s len))
  2629. IPPAPI(IppStatus, ippsSortRadixDescend_32u_I, (Ipp32u *pSrcDst, Ipp32u *pTmp, Ipp32s len))
  2630. IPPAPI(IppStatus, ippsSortRadixDescend_16s_I, (Ipp16s *pSrcDst, Ipp16s *pTmp, Ipp32s len))
  2631. IPPAPI(IppStatus, ippsSortRadixDescend_16u_I, (Ipp16u *pSrcDst, Ipp16u *pTmp, Ipp32s len))
  2632. IPPAPI(IppStatus, ippsSortRadixDescend_8u_I, (Ipp8u *pSrcDst, Ipp8u *pTmp, Ipp32s len))
  2633. IPPAPI(IppStatus, ippsSortRadixDescend_64f_I, (Ipp64f *pSrcDst, Ipp64f *pTmp, Ipp32s len))
  2634. /* /////////////////////////////////////////////////////////////////////////////////////
  2635. // Names: ippsSortRadixIndexAscend, ippsSortRadixIndexDescend
  2636. //
  2637. // Purpose: Indirectly sorts possibly sparse input vector, using indexes.
  2638. // For a dense input array the following will be true:
  2639. //
  2640. // ippsSortRadixIndexAscend - pSrc[pDstIndx[i-1]] <= pSrc[pDstIndx[i]];
  2641. // ippsSortRadixIndexDescend - pSrc[pDstIndx[i]] <= pSrc[pDstIndx[i-1]];
  2642. //
  2643. // Arguments:
  2644. // pSrc pointer to the first element of a sparse input vector;
  2645. // srcStrideBytes step between two consecutive elements of input vector in bytes;
  2646. // pDstIndx pointer to the output indexes vector;
  2647. // pTmpIndx pointer to the temporary indexes vector (same size as output one);
  2648. // len length of the vectors;
  2649. // Return:
  2650. // ippStsNullPtrErr pointer to the data or temporary placeholders is NULL
  2651. // ippStsSizeErr length of the vectors is less or equal zero
  2652. // ippStsNoErr otherwise
  2653. */
  2654. IPPAPI(IppStatus, ippsSortRadixIndexAscend_32f, (const Ipp32f * const pSrc, Ipp32s srcStrideBytes,
  2655. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2656. IPPAPI(IppStatus, ippsSortRadixIndexAscend_32s, (const Ipp32s * const pSrc, Ipp32s srcStrideBytes,
  2657. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2658. IPPAPI(IppStatus, ippsSortRadixIndexAscend_32u, (const Ipp32u * const pSrc, Ipp32s srcStrideBytes,
  2659. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2660. IPPAPI(IppStatus, ippsSortRadixIndexAscend_16s, (const Ipp16s * const pSrc, Ipp32s srcStrideBytes,
  2661. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2662. IPPAPI(IppStatus, ippsSortRadixIndexAscend_16u, (const Ipp16u * const pSrc, Ipp32s srcStrideBytes,
  2663. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2664. IPPAPI(IppStatus, ippsSortRadixIndexAscend_8u, (const Ipp8u * const pSrc, Ipp32s srcStrideBytes,
  2665. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2666. IPPAPI(IppStatus, ippsSortRadixIndexDescend_32f, (const Ipp32f * const pSrc, Ipp32s srcStrideBytes,
  2667. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2668. IPPAPI(IppStatus, ippsSortRadixIndexDescend_32s, (const Ipp32s * const pSrc, Ipp32s srcStrideBytes,
  2669. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2670. IPPAPI(IppStatus, ippsSortRadixIndexDescend_32u, (const Ipp32u * const pSrc, Ipp32s srcStrideBytes,
  2671. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2672. IPPAPI(IppStatus, ippsSortRadixIndexDescend_16s, (const Ipp16s * const pSrc, Ipp32s srcStrideBytes,
  2673. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2674. IPPAPI(IppStatus, ippsSortRadixIndexDescend_16u, (const Ipp16u * const pSrc, Ipp32s srcStrideBytes,
  2675. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2676. IPPAPI(IppStatus, ippsSortRadixIndexDescend_8u, (const Ipp8u * const pSrc, Ipp32s srcStrideBytes,
  2677. Ipp32s *pDstIndx, Ipp32s *pTmpIndx, Ipp32s len))
  2678. /* /////////////////////////////////////////////////////////////////////////////
  2679. // Vector Measures Functions
  2680. ///////////////////////////////////////////////////////////////////////////// */
  2681. /* /////////////////////////////////////////////////////////////////////////////
  2682. // Names: ippsSum
  2683. // Purpose: sum all elements of the source vector
  2684. // Parameters:
  2685. // pSrc pointer to the source vector
  2686. // pSum pointer to the result
  2687. // len length of the vector
  2688. // scaleFactor scale factor value
  2689. // Return:
  2690. // ippStsNullPtrErr pointer to the vector or result is NULL
  2691. // ippStsSizeErr length of the vector is less or equal 0
  2692. // ippStsNoErr otherwise
  2693. */
  2694. IPPAPI(IppStatus,ippsSum_32f, (const Ipp32f* pSrc,int len, Ipp32f* pSum,
  2695. IppHintAlgorithm hint))
  2696. IPPAPI(IppStatus,ippsSum_64f, (const Ipp64f* pSrc,int len, Ipp64f* pSum))
  2697. IPPAPI(IppStatus,ippsSum_32fc,(const Ipp32fc* pSrc,int len, Ipp32fc* pSum,
  2698. IppHintAlgorithm hint))
  2699. IPPAPI(IppStatus,ippsSum_16s32s_Sfs, (const Ipp16s* pSrc, int len,
  2700. Ipp32s* pSum, int scaleFactor))
  2701. IPPAPI(IppStatus,ippsSum_16sc32sc_Sfs,(const Ipp16sc* pSrc, int len,
  2702. Ipp32sc* pSum, int scaleFactor))
  2703. IPPAPI(IppStatus,ippsSum_16s_Sfs, (const Ipp16s* pSrc, int len,
  2704. Ipp16s* pSum, int scaleFactor))
  2705. IPPAPI(IppStatus,ippsSum_16sc_Sfs, (const Ipp16sc* pSrc, int len,
  2706. Ipp16sc* pSum, int scaleFactor))
  2707. IPPAPI(IppStatus,ippsSum_32s_Sfs, (const Ipp32s* pSrc, int len,
  2708. Ipp32s* pSum, int scaleFactor))
  2709. IPPAPI(IppStatus,ippsSum_64fc,(const Ipp64fc* pSrc,int len, Ipp64fc* pSum))
  2710. /* /////////////////////////////////////////////////////////////////////////////
  2711. // Names: ippsMean
  2712. // Purpose: compute average value of all elements of the source vector
  2713. // Parameters:
  2714. // pSrc pointer to the source vector
  2715. // pMean pointer to the result
  2716. // len length of the source vector
  2717. // scaleFactor scale factor value
  2718. // Return:
  2719. // ippStsNullPtrErr pointer(s) to the vector or the result is NULL
  2720. // ippStsSizeErr length of the vector is less or equal 0
  2721. // ippStsNoErr otherwise
  2722. */
  2723. IPPAPI(IppStatus,ippsMean_32f, (const Ipp32f* pSrc,int len,Ipp32f* pMean,
  2724. IppHintAlgorithm hint))
  2725. IPPAPI(IppStatus,ippsMean_32fc,(const Ipp32fc* pSrc,int len,Ipp32fc* pMean,
  2726. IppHintAlgorithm hint))
  2727. IPPAPI(IppStatus,ippsMean_64f, (const Ipp64f* pSrc,int len,Ipp64f* pMean))
  2728. IPPAPI(IppStatus,ippsMean_16s_Sfs, (const Ipp16s* pSrc,int len,
  2729. Ipp16s* pMean,int scaleFactor))
  2730. IPPAPI(IppStatus,ippsMean_16sc_Sfs,(const Ipp16sc* pSrc,int len,
  2731. Ipp16sc* pMean,int scaleFactor))
  2732. IPPAPI(IppStatus,ippsMean_64fc,(const Ipp64fc* pSrc,int len,Ipp64fc* pMean))
  2733. IPPAPI(IppStatus,ippsMean_32s_Sfs,(const Ipp32s *pSrc,int len,Ipp32s *pMean,
  2734. int scaleFactor ) )
  2735. /* /////////////////////////////////////////////////////////////////////////////
  2736. // Names: ippsStdDev
  2737. // Purpose: compute standard deviation value of all elements of the vector
  2738. // Parameters:
  2739. // pSrc pointer to the vector
  2740. // len length of the vector
  2741. // pStdDev pointer to the result
  2742. // scaleFactor scale factor value
  2743. // Return:
  2744. // ippStsNoErr Ok
  2745. // ippStsNullPtrErr pointer to the vector or the result is NULL
  2746. // ippStsSizeErr length of the vector is less than 2
  2747. // Functionality:
  2748. // std = sqrt( sum( (x[n] - mean(x))^2, n=0..len-1 ) / (len-1) )
  2749. */
  2750. IPPAPI(IppStatus,ippsStdDev_32f,(const Ipp32f* pSrc,int len,Ipp32f* pStdDev,
  2751. IppHintAlgorithm hint))
  2752. IPPAPI(IppStatus,ippsStdDev_64f,(const Ipp64f* pSrc,int len,Ipp64f* pStdDev))
  2753. IPPAPI(IppStatus,ippsStdDev_16s32s_Sfs,(const Ipp16s* pSrc,int len,
  2754. Ipp32s* pStdDev,int scaleFactor))
  2755. IPPAPI(IppStatus,ippsStdDev_16s_Sfs,(const Ipp16s* pSrc,int len,
  2756. Ipp16s* pStdDev,int scaleFactor))
  2757. /* /////////////////////////////////////////////////////////////////////////////
  2758. // Names: ippsMeanStdDev
  2759. // Purpose: compute standard deviation value and mean value
  2760. // of all elements of the vector
  2761. // Parameters:
  2762. // pSrc pointer to the vector
  2763. // len length of the vector
  2764. // pStdDev pointer to the result
  2765. // pMean pointer to the result
  2766. // scaleFactor scale factor value
  2767. // Return:
  2768. // ippStsNoErr Ok
  2769. // ippStsNullPtrErr pointer to the vector or the result is NULL
  2770. // ippStsSizeErr length of the vector is less than 2
  2771. // Functionality:
  2772. // std = sqrt( sum( (x[n] - mean(x))^2, n=0..len-1 ) / (len-1) )
  2773. */
  2774. IPPAPI(IppStatus,ippsMeanStdDev_32f,(const Ipp32f* pSrc, int len, Ipp32f* pMean, Ipp32f* pStdDev,
  2775. IppHintAlgorithm hint))
  2776. IPPAPI(IppStatus,ippsMeanStdDev_64f,(const Ipp64f* pSrc, int len, Ipp64f* pMean, Ipp64f* pStdDev))
  2777. IPPAPI(IppStatus,ippsMeanStdDev_16s32s_Sfs,(const Ipp16s* pSrc,int len, Ipp32s* pMean, Ipp32s* pStdDev,
  2778. int scaleFactor))
  2779. IPPAPI(IppStatus,ippsMeanStdDev_16s_Sfs,(const Ipp16s* pSrc,int len, Ipp16s* pMean, Ipp16s* pStdDev,
  2780. int scaleFactor))
  2781. /* /////////////////////////////////////////////////////////////////////////////
  2782. // Names: ippsMax
  2783. // Purpose: find maximum value among all elements of the source vector
  2784. // Parameters:
  2785. // pSrc pointer to the source vector
  2786. // pMax pointer to the result
  2787. // len length of the vector
  2788. // Return:
  2789. // ippStsNullPtrErr pointer(s) to the vector or the result is NULL
  2790. // ippStsSizeErr length of the vector is less or equal 0
  2791. // ippStsNoErr otherwise
  2792. */
  2793. IPPAPI(IppStatus,ippsMax_32f,(const Ipp32f* pSrc,int len,Ipp32f* pMax))
  2794. IPPAPI(IppStatus,ippsMax_64f,(const Ipp64f* pSrc,int len,Ipp64f* pMax))
  2795. IPPAPI(IppStatus,ippsMax_16s,(const Ipp16s* pSrc,int len,Ipp16s* pMax))
  2796. /* /////////////////////////////////////////////////////////////////////////////
  2797. // Names: ippsMaxIndx
  2798. //
  2799. // Purpose: find element with max value and return the value and the index
  2800. // Parameters:
  2801. // pSrc pointer to the input vector
  2802. // len length of the vector
  2803. // pMax address to place max value found
  2804. // pIndx address to place index found, may be NULL
  2805. // Return:
  2806. // ippStsNullPtrErr pointer(s) to the data is NULL
  2807. // ippStsSizeErr length of the vector is less or equal zero
  2808. // ippStsNoErr otherwise
  2809. */
  2810. IPPAPI ( IppStatus, ippsMaxIndx_16s,
  2811. ( const Ipp16s* pSrc, int len, Ipp16s* pMax, int* pIndx ))
  2812. IPPAPI ( IppStatus, ippsMaxIndx_32f,
  2813. ( const Ipp32f* pSrc, int len, Ipp32f* pMax, int* pIndx ))
  2814. IPPAPI ( IppStatus, ippsMaxIndx_64f,
  2815. ( const Ipp64f* pSrc, int len, Ipp64f* pMax, int* pIndx ))
  2816. /* /////////////////////////////////////////////////////////////////////////////
  2817. // Names: ippsMin
  2818. // Purpose: find minimum value among all elements of the source vector
  2819. // Parameters:
  2820. // pSrc pointer to the source vector
  2821. // pMin pointer to the result
  2822. // len length of the vector
  2823. // Return:
  2824. // ippStsNullPtrErr pointer(s) to the vector or the result is NULL
  2825. // ippStsSizeErr length of the vector is less or equal 0
  2826. // ippStsNoErr otherwise
  2827. */
  2828. IPPAPI(IppStatus,ippsMin_32f,(const Ipp32f* pSrc,int len,Ipp32f* pMin))
  2829. IPPAPI(IppStatus,ippsMin_64f,(const Ipp64f* pSrc,int len,Ipp64f* pMin))
  2830. IPPAPI(IppStatus,ippsMin_16s,(const Ipp16s* pSrc,int len,Ipp16s* pMin))
  2831. /* /////////////////////////////////////////////////////////////////////////////
  2832. // Names: ippsMinIndx
  2833. //
  2834. // Purpose: find element with min value and return the value and the index
  2835. // Parameters:
  2836. // pSrc pointer to the input vector
  2837. // len length of the vector
  2838. // pMin address to place min value found
  2839. // pIndx address to place index found, may be NULL
  2840. // Return:
  2841. // ippStsNullPtrErr pointer(s) to the data is NULL
  2842. // ippStsSizeErr length of the vector is less or equal zero
  2843. // ippStsNoErr otherwise
  2844. */
  2845. IPPAPI ( IppStatus, ippsMinIndx_16s,
  2846. ( const Ipp16s* pSrc, int len, Ipp16s* pMin, int* pIndx ))
  2847. IPPAPI ( IppStatus, ippsMinIndx_32f,
  2848. ( const Ipp32f* pSrc, int len, Ipp32f* pMin, int* pIndx ))
  2849. IPPAPI ( IppStatus, ippsMinIndx_64f,
  2850. ( const Ipp64f* pSrc, int len, Ipp64f* pMin, int* pIndx ))
  2851. /* ////////////////////////////////////////////////////////////////////////////
  2852. // Names: ippsMinEvery, ippsMaxEvery
  2853. // Purpose: calculation min/max value for every element of two vectors
  2854. // Parameters:
  2855. // pSrc pointer to input vector
  2856. // pSrcDst pointer to input/output vector
  2857. // len vector's length
  2858. // Return:
  2859. // ippStsNullPtrErr pointer(s) to the data is NULL
  2860. // ippStsSizeErr vector`s length is less or equal zero
  2861. // ippStsNoErr otherwise
  2862. */
  2863. IPPAPI(IppStatus, ippsMinEvery_16s_I, (const Ipp16s* pSrc, Ipp16s* pSrcDst, int len))
  2864. IPPAPI(IppStatus, ippsMinEvery_32s_I, (const Ipp32s* pSrc, Ipp32s* pSrcDst, int len))
  2865. IPPAPI(IppStatus, ippsMinEvery_32f_I, (const Ipp32f* pSrc, Ipp32f* pSrcDst, int len))
  2866. IPPAPI(IppStatus, ippsMaxEvery_16s_I, (const Ipp16s* pSrc, Ipp16s* pSrcDst, int len))
  2867. IPPAPI(IppStatus, ippsMaxEvery_32s_I, (const Ipp32s* pSrc, Ipp32s* pSrcDst, int len))
  2868. IPPAPI(IppStatus, ippsMaxEvery_32f_I, (const Ipp32f* pSrc, Ipp32f* pSrcDst, int len))
  2869. IPPAPI(IppStatus, ippsMinEvery_64f_I, (const Ipp64f* pSrc, Ipp64f* pSrcDst, Ipp32u len))
  2870. IPPAPI(IppStatus, ippsMaxEvery_8u_I, (const Ipp8u* pSrc, Ipp8u* pSrcDst, int len ))
  2871. IPPAPI(IppStatus, ippsMinEvery_8u_I, (const Ipp8u* pSrc, Ipp8u* pSrcDst, int len ))
  2872. IPPAPI(IppStatus, ippsMaxEvery_16u_I,(const Ipp16u* pSrc, Ipp16u* pSrcDst, int len ))
  2873. IPPAPI(IppStatus, ippsMinEvery_16u_I,(const Ipp16u* pSrc, Ipp16u* pSrcDst, int len ))
  2874. IPPAPI(IppStatus, ippsMinMax_64f,(const Ipp64f* pSrc, int len, Ipp64f* pMin, Ipp64f* pMax))
  2875. IPPAPI(IppStatus, ippsMinMax_32f,(const Ipp32f* pSrc, int len, Ipp32f* pMin, Ipp32f* pMax))
  2876. IPPAPI(IppStatus, ippsMinMax_32s,(const Ipp32s* pSrc, int len, Ipp32s* pMin, Ipp32s* pMax))
  2877. IPPAPI(IppStatus, ippsMinMax_32u,(const Ipp32u* pSrc, int len, Ipp32u* pMin, Ipp32u* pMax))
  2878. IPPAPI(IppStatus, ippsMinMax_16s,(const Ipp16s* pSrc, int len, Ipp16s* pMin, Ipp16s* pMax))
  2879. IPPAPI(IppStatus, ippsMinMax_16u,(const Ipp16u* pSrc, int len, Ipp16u* pMin, Ipp16u* pMax))
  2880. IPPAPI(IppStatus, ippsMinMax_8u, (const Ipp8u* pSrc, int len, Ipp8u* pMin, Ipp8u* pMax))
  2881. IPPAPI(IppStatus, ippsMinMaxIndx_64f,(const Ipp64f* pSrc, int len, Ipp64f* pMin, int* pMinIndx,
  2882. Ipp64f* pMax, int* pMaxIndx))
  2883. IPPAPI(IppStatus, ippsMinMaxIndx_32f,(const Ipp32f* pSrc, int len, Ipp32f* pMin, int* pMinIndx,
  2884. Ipp32f* pMax, int* pMaxIndx))
  2885. IPPAPI(IppStatus, ippsMinMaxIndx_32s,(const Ipp32s* pSrc, int len, Ipp32s* pMin, int* pMinIndx,
  2886. Ipp32s* pMax, int* pMaxIndx))
  2887. IPPAPI(IppStatus, ippsMinMaxIndx_32u,(const Ipp32u* pSrc, int len, Ipp32u* pMin, int* pMinIndx,
  2888. Ipp32u* pMax, int* pMaxIndx))
  2889. IPPAPI(IppStatus, ippsMinMaxIndx_16s,(const Ipp16s* pSrc, int len, Ipp16s* pMin, int* pMinIndx,
  2890. Ipp16s* pMax, int* pMaxIndx))
  2891. IPPAPI(IppStatus, ippsMinMaxIndx_16u,(const Ipp16u* pSrc, int len, Ipp16u* pMin, int* pMinIndx,
  2892. Ipp16u* pMax, int* pMaxIndx))
  2893. IPPAPI(IppStatus, ippsMinMaxIndx_8u, (const Ipp8u* pSrc, int len, Ipp8u* pMin, int* pMinIndx,
  2894. Ipp8u* pMax, int* pMaxIndx))
  2895. IPPAPI(IppStatus, ippsMin_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMin))
  2896. IPPAPI(IppStatus, ippsMax_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMax))
  2897. IPPAPI(IppStatus, ippsMinIndx_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMin, int* pIndx))
  2898. IPPAPI(IppStatus, ippsMaxIndx_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMax, int* pIndx))
  2899. IPPAPI(IppStatus, ippsMinAbs_16s, (const Ipp16s* pSrc, int len, Ipp16s* pMinAbs))
  2900. IPPAPI(IppStatus, ippsMaxAbs_16s, (const Ipp16s* pSrc, int len, Ipp16s* pMaxAbs))
  2901. IPPAPI(IppStatus, ippsMinAbsIndx_16s, (const Ipp16s* pSrc, int len, Ipp16s* pMinAbs, int* pIndx))
  2902. IPPAPI(IppStatus, ippsMaxAbsIndx_16s, (const Ipp16s* pSrc, int len, Ipp16s* pMaxAbs, int* pIndx))
  2903. IPPAPI(IppStatus, ippsMinAbs_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMinAbs))
  2904. IPPAPI(IppStatus, ippsMaxAbs_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMaxAbs))
  2905. IPPAPI(IppStatus, ippsMinAbsIndx_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMinAbs, int* pIndx))
  2906. IPPAPI(IppStatus, ippsMaxAbsIndx_32s, (const Ipp32s* pSrc, int len, Ipp32s* pMaxAbs, int* pIndx))
  2907. /* /////////////////////////////////////////////////////////////////////////////
  2908. // Names:
  2909. // ippsPhase_64fc
  2910. // ippsPhase_32fc
  2911. // ippsPhase_16sc_Sfs
  2912. // ippsPhase_16sc32f
  2913. // Purpose:
  2914. // Compute the phase (in radians) of complex vector elements.
  2915. // Parameters:
  2916. // pSrcRe - an input complex vector
  2917. // pDst - an output vector to store the phase components;
  2918. // len - a length of the arrays.
  2919. // scaleFactor - a scale factor of output results (only for integer data)
  2920. // Return:
  2921. // ippStsNoErr Ok
  2922. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  2923. // ippStsBadSizeErr The length of the arrays is less or equal zero
  2924. */
  2925. IPPAPI(IppStatus, ippsPhase_64fc,(const Ipp64fc* pSrc, Ipp64f* pDst, int len))
  2926. IPPAPI(IppStatus, ippsPhase_32fc,(const Ipp32fc* pSrc, Ipp32f* pDst, int len))
  2927. IPPAPI(IppStatus, ippsPhase_16sc32f,(const Ipp16sc* pSrc, Ipp32f* pDst, int len))
  2928. IPPAPI(IppStatus, ippsPhase_16sc_Sfs,(const Ipp16sc* pSrc, Ipp16s* pDst, int len,
  2929. int scaleFactor))
  2930. /* /////////////////////////////////////////////////////////////////////////////
  2931. // Names:
  2932. // ippsPhase_64f
  2933. // ippsPhase_32f
  2934. // ippsPhase_16s_Sfs
  2935. // ippsPhase_16s32f
  2936. // Purpose:
  2937. // Compute the phase of complex data formed as two real vectors.
  2938. // Parameters:
  2939. // pSrcRe - an input vector containing a real part of complex data
  2940. // pSrcIm - an input vector containing an imaginary part of complex data
  2941. // pDst - an output vector to store the phase components
  2942. // len - a length of the arrays.
  2943. // scaleFactor - a scale factor of output results (only for integer data)
  2944. // Return:
  2945. // ippStsNoErr Ok
  2946. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  2947. // ippStsBadSizeErr The length of the arrays is less or equal zero
  2948. */
  2949. IPPAPI(IppStatus, ippsPhase_64f,(const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  2950. Ipp64f* pDst, int len))
  2951. IPPAPI(IppStatus, ippsPhase_32f,(const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  2952. Ipp32f* pDst, int len))
  2953. IPPAPI(IppStatus, ippsPhase_16s_Sfs,(const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  2954. Ipp16s* pDst, int len, int scaleFactor))
  2955. IPPAPI(IppStatus, ippsPhase_16s32f,(const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  2956. Ipp32f* pDst, int len))
  2957. /* /////////////////////////////////////////////////////////////////////////////
  2958. // Names:
  2959. // ippsPhase_32sc_Sfs
  2960. // Purpose:
  2961. // Compute the phase (in radians) of complex vector elements.
  2962. // Parameters:
  2963. // pSrcRe - an input complex vector
  2964. // pDst - an output vector to store the phase components;
  2965. // len - a length of the arrays.
  2966. // scaleFactor - a scale factor of output results (only for integer data)
  2967. // Return:
  2968. // ippStsNoErr Ok
  2969. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  2970. // ippStsBadSizeErr The length of the arrays is less or equal zero
  2971. */
  2972. IPPAPI(IppStatus, ippsPhase_32sc_Sfs,(const Ipp32sc* pSrc, Ipp32s* pDst, int len,
  2973. int scaleFactor))
  2974. /* /////////////////////////////////////////////////////////////////////////////
  2975. // Names:
  2976. // ippsMaxOrder_64f
  2977. // ippsMaxOrder_32f
  2978. // ippsMaxOrder_32s
  2979. // ippsMaxOrder_16s
  2980. // Purpose:
  2981. // Determines the maximal number of binary digits for data representation.
  2982. // Parameters:
  2983. // pSrc The pointer on input signal vector.
  2984. // pOrder Pointer to result value.
  2985. // len The length of the input vector.
  2986. // Return:
  2987. // ippStsNoErr Ok
  2988. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  2989. // ippStsSizeErr The length of the arrays is less or equal zero
  2990. // ippStsNanArg If not a number is met in a input value
  2991. */
  2992. IPPAPI(IppStatus, ippsMaxOrder_64f,(const Ipp64f* pSrc, int len, int* pOrder))
  2993. IPPAPI(IppStatus, ippsMaxOrder_32f,(const Ipp32f* pSrc, int len, int* pOrder))
  2994. IPPAPI(IppStatus, ippsMaxOrder_32s,(const Ipp32s* pSrc, int len, int* pOrder))
  2995. IPPAPI(IppStatus, ippsMaxOrder_16s,(const Ipp16s* pSrc, int len, int* pOrder))
  2996. /* /////////////////////////////////////////////////////////////////////////////
  2997. // Names: ippsArctan
  2998. //
  2999. // Purpose: compute arctangent value for all elements of the source vector
  3000. //
  3001. // Return:
  3002. // stsNoErr Ok
  3003. // stsNullPtrErr Some of pointers to input or output data are NULL
  3004. // stsBadSizeErr The length of the arrays is less or equal zero
  3005. //
  3006. // Parameters:
  3007. // pSrcDst pointer to the source/destination vector
  3008. // pSrc pointer to the source vector
  3009. // pDst pointer to the destination vector
  3010. // len a length of the array
  3011. //
  3012. */
  3013. IPPAPI(IppStatus, ippsArctan_32f_I,( Ipp32f* pSrcDst, int len))
  3014. IPPAPI(IppStatus, ippsArctan_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  3015. IPPAPI(IppStatus, ippsArctan_64f_I,( Ipp64f* pSrcDst, int len))
  3016. IPPAPI(IppStatus, ippsArctan_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  3017. /* /////////////////////////////////////////////////////////////////////////////
  3018. // Name: ippsFindNearestOne
  3019. // Purpose: Searches the table for an element closest to the reference value
  3020. // and returns its value and index
  3021. // Context:
  3022. // Returns: IppStatus
  3023. // ippStsNoErr Ok
  3024. // ippStsNullPtrErr At least one of the specified pointers is NULL
  3025. // ippStsSizeErr The length of the table is less than or equal to zero
  3026. // Parameters:
  3027. // inpVal reference Value
  3028. // pOutVal pointer to the found value
  3029. // pOutIndx pointer to the found index
  3030. // pTable table for search
  3031. // tblLen length of the table
  3032. // Notes:
  3033. // The table should contain monotonically increasing values
  3034. */
  3035. IPPAPI(IppStatus, ippsFindNearestOne_16u, (Ipp16u inpVal, Ipp16u* pOutVal, int* pOutIndex, const Ipp16u *pTable, int tblLen))
  3036. /* /////////////////////////////////////////////////////////////////////////////
  3037. // Name: ippsFindNearest
  3038. // Purpose: Searches the table for elements closest to the reference values
  3039. // and the their indexes
  3040. // Context:
  3041. // Returns: IppStatus
  3042. // ippStsNoErr Ok
  3043. // ippStsNullPtrErr At least one of the specified pointers is NULL
  3044. // ippStsSizeErr The length of table or pVals is less than or equal to zero
  3045. // Parameters:
  3046. // pVals pointer to the reference values vector
  3047. // pOutVals pointer to the vector with the found values
  3048. // pOutIndexes pointer to the array with indexes of the found elements
  3049. // len length of the input vector
  3050. // pTable table for search
  3051. // tblLen length of the table
  3052. // Notes:
  3053. // The table should contain monotonically increasing values
  3054. */
  3055. IPPAPI(IppStatus, ippsFindNearest_16u, (const Ipp16u* pVals, Ipp16u* pOutVals, int* pOutIndexes, int len, const Ipp16u *pTable, int tblLen))
  3056. /* /////////////////////////////////////////////////////////////////////////////
  3057. // Vector logical functions
  3058. ///////////////////////////////////////////////////////////////////////////// */
  3059. /* ////////////////////////////////////////////////////////////////////////////
  3060. // Names: ippsAnd, ippsOr, ippsXor, ippsNot, ippsLShiftC, ippsRShiftC
  3061. // Purpose: logical operations and vector shifts
  3062. // Parameters:
  3063. // val 1) value to be ANDed/ORed/XORed with each element of the vector (And, Or, Xor);
  3064. // 2) position`s number which vector elements to be SHIFTed on (ShiftC)
  3065. // pSrc pointer to input vector
  3066. // pSrcDst pointer to input/output vector
  3067. // pSrc1 pointer to first input vector
  3068. // pSrc2 pointer to second input vector
  3069. // pDst pointer to output vector
  3070. // len vector's length
  3071. // Return:
  3072. // ippStsNullPtrErr pointer(s) to the data is NULL
  3073. // ippStsSizeErr vector`s length is less or equal zero
  3074. // ippStsShiftErr shift`s value is less zero
  3075. // ippStsNoErr otherwise
  3076. */
  3077. IPPAPI(IppStatus, ippsAndC_8u_I, (Ipp8u val, Ipp8u* pSrcDst, int len))
  3078. IPPAPI(IppStatus, ippsAndC_8u, (const Ipp8u* pSrc, Ipp8u val, Ipp8u* pDst, int len))
  3079. IPPAPI(IppStatus, ippsAndC_16u_I, (Ipp16u val, Ipp16u* pSrcDst, int len))
  3080. IPPAPI(IppStatus, ippsAndC_16u, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len))
  3081. IPPAPI(IppStatus, ippsAndC_32u_I, (Ipp32u val, Ipp32u* pSrcDst, int len))
  3082. IPPAPI(IppStatus, ippsAndC_32u, (const Ipp32u* pSrc, Ipp32u val, Ipp32u* pDst, int len))
  3083. IPPAPI(IppStatus, ippsAnd_8u_I, (const Ipp8u* pSrc, Ipp8u* pSrcDst, int len))
  3084. IPPAPI(IppStatus, ippsAnd_8u, (const Ipp8u* pSrc1, const Ipp8u* pSrc2, Ipp8u* pDst, int len))
  3085. IPPAPI(IppStatus, ippsAnd_16u_I, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len))
  3086. IPPAPI(IppStatus, ippsAnd_16u, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len))
  3087. IPPAPI(IppStatus, ippsAnd_32u_I, (const Ipp32u* pSrc, Ipp32u* pSrcDst, int len))
  3088. IPPAPI(IppStatus, ippsAnd_32u, (const Ipp32u* pSrc1, const Ipp32u* pSrc2, Ipp32u* pDst, int len))
  3089. IPPAPI(IppStatus, ippsOrC_8u_I, (Ipp8u val, Ipp8u* pSrcDst, int len))
  3090. IPPAPI(IppStatus, ippsOrC_8u, (const Ipp8u* pSrc, Ipp8u val, Ipp8u* pDst, int len))
  3091. IPPAPI(IppStatus, ippsOrC_16u_I, (Ipp16u val, Ipp16u* pSrcDst, int len))
  3092. IPPAPI(IppStatus, ippsOrC_16u, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len))
  3093. IPPAPI(IppStatus, ippsOrC_32u_I, (Ipp32u val, Ipp32u* pSrcDst, int len))
  3094. IPPAPI(IppStatus, ippsOrC_32u, (const Ipp32u* pSrc, Ipp32u val, Ipp32u* pDst, int len))
  3095. IPPAPI(IppStatus, ippsOr_8u_I, (const Ipp8u* pSrc, Ipp8u* pSrcDst, int len))
  3096. IPPAPI(IppStatus, ippsOr_8u, (const Ipp8u* pSrc1, const Ipp8u* pSrc2, Ipp8u* pDst, int len))
  3097. IPPAPI(IppStatus, ippsOr_16u_I, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len))
  3098. IPPAPI(IppStatus, ippsOr_16u, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len))
  3099. IPPAPI(IppStatus, ippsOr_32u_I, (const Ipp32u* pSrc, Ipp32u* pSrcDst, int len))
  3100. IPPAPI(IppStatus, ippsOr_32u, (const Ipp32u* pSrc1, const Ipp32u* pSrc2, Ipp32u* pDst, int len))
  3101. IPPAPI(IppStatus, ippsXorC_8u_I, (Ipp8u val, Ipp8u* pSrcDst, int len))
  3102. IPPAPI(IppStatus, ippsXorC_8u, (const Ipp8u* pSrc, Ipp8u val, Ipp8u* pDst, int len))
  3103. IPPAPI(IppStatus, ippsXorC_16u_I, (Ipp16u val, Ipp16u* pSrcDst, int len))
  3104. IPPAPI(IppStatus, ippsXorC_16u, (const Ipp16u* pSrc, Ipp16u val, Ipp16u* pDst, int len))
  3105. IPPAPI(IppStatus, ippsXorC_32u_I, (Ipp32u val, Ipp32u* pSrcDst, int len))
  3106. IPPAPI(IppStatus, ippsXorC_32u, (const Ipp32u* pSrc, Ipp32u val, Ipp32u* pDst, int len))
  3107. IPPAPI(IppStatus, ippsXor_8u_I, (const Ipp8u* pSrc, Ipp8u* pSrcDst, int len))
  3108. IPPAPI(IppStatus, ippsXor_8u, (const Ipp8u* pSrc1, const Ipp8u* pSrc2, Ipp8u* pDst, int len))
  3109. IPPAPI(IppStatus, ippsXor_16u_I, (const Ipp16u* pSrc, Ipp16u* pSrcDst, int len))
  3110. IPPAPI(IppStatus, ippsXor_16u, (const Ipp16u* pSrc1, const Ipp16u* pSrc2, Ipp16u* pDst, int len))
  3111. IPPAPI(IppStatus, ippsXor_32u_I, (const Ipp32u* pSrc, Ipp32u* pSrcDst, int len))
  3112. IPPAPI(IppStatus, ippsXor_32u, (const Ipp32u* pSrc1, const Ipp32u* pSrc2, Ipp32u* pDst, int len))
  3113. IPPAPI(IppStatus, ippsNot_8u_I, (Ipp8u* pSrcDst, int len))
  3114. IPPAPI(IppStatus, ippsNot_8u, (const Ipp8u* pSrc, Ipp8u* pDst, int len))
  3115. IPPAPI(IppStatus, ippsNot_16u_I, (Ipp16u* pSrcDst, int len))
  3116. IPPAPI(IppStatus, ippsNot_16u, (const Ipp16u* pSrc, Ipp16u* pDst, int len))
  3117. IPPAPI(IppStatus, ippsNot_32u_I, (Ipp32u* pSrcDst, int len))
  3118. IPPAPI(IppStatus, ippsNot_32u, (const Ipp32u* pSrc, Ipp32u* pDst, int len))
  3119. IPPAPI(IppStatus, ippsLShiftC_8u_I, (int val, Ipp8u* pSrcDst, int len))
  3120. IPPAPI(IppStatus, ippsLShiftC_8u, (const Ipp8u* pSrc, int val, Ipp8u* pDst, int len))
  3121. IPPAPI(IppStatus, ippsLShiftC_16u_I, (int val, Ipp16u* pSrcDst, int len))
  3122. IPPAPI(IppStatus, ippsLShiftC_16u, (const Ipp16u* pSrc, int val, Ipp16u* pDst, int len))
  3123. IPPAPI(IppStatus, ippsLShiftC_16s_I, (int val, Ipp16s* pSrcDst, int len))
  3124. IPPAPI(IppStatus, ippsLShiftC_16s, (const Ipp16s* pSrc, int val, Ipp16s* pDst, int len))
  3125. IPPAPI(IppStatus, ippsLShiftC_32s_I, (int val, Ipp32s* pSrcDst, int len))
  3126. IPPAPI(IppStatus, ippsLShiftC_32s, (const Ipp32s* pSrc, int val, Ipp32s* pDst, int len))
  3127. IPPAPI(IppStatus, ippsRShiftC_8u_I, (int val, Ipp8u* pSrcDst, int len))
  3128. IPPAPI(IppStatus, ippsRShiftC_8u, (const Ipp8u* pSrc, int val, Ipp8u* pDst, int len))
  3129. IPPAPI(IppStatus, ippsRShiftC_16u_I, (int val, Ipp16u* pSrcDst, int len))
  3130. IPPAPI(IppStatus, ippsRShiftC_16u, (const Ipp16u* pSrc, int val, Ipp16u* pDst, int len))
  3131. IPPAPI(IppStatus, ippsRShiftC_16s_I, (int val, Ipp16s* pSrcDst, int len))
  3132. IPPAPI(IppStatus, ippsRShiftC_16s, (const Ipp16s* pSrc, int val, Ipp16s* pDst, int len))
  3133. IPPAPI(IppStatus, ippsRShiftC_32s_I, (int val, Ipp32s* pSrcDst, int len))
  3134. IPPAPI(IppStatus, ippsRShiftC_32s, (const Ipp32s* pSrc, int val, Ipp32s* pDst, int len))
  3135. /* /////////////////////////////////////////////////////////////////////////////
  3136. // Dot Product Functions
  3137. ///////////////////////////////////////////////////////////////////////////// */
  3138. /* /////////////////////////////////////////////////////////////////////////////
  3139. // Name: ippsDotProd
  3140. // Purpose: compute Dot Product value
  3141. // Arguments:
  3142. // pSrc1 pointer to the source vector
  3143. // pSrc2 pointer to the another source vector
  3144. // len vector's length, number of items
  3145. // pDp pointer to the result
  3146. // scaleFactor scale factor value
  3147. // Return:
  3148. // ippStsNullPtrErr pointer(s) pSrc pDst is NULL
  3149. // ippStsSizeErr length of the vectors is less or equal 0
  3150. // ippStsNoErr otherwise
  3151. // Notes:
  3152. // the functions don't conjugate one of the source vectors
  3153. */
  3154. IPPAPI(IppStatus, ippsDotProd_32f, (const Ipp32f* pSrc1,
  3155. const Ipp32f* pSrc2, int len, Ipp32f* pDp))
  3156. IPPAPI(IppStatus, ippsDotProd_32fc,(const Ipp32fc* pSrc1,
  3157. const Ipp32fc* pSrc2, int len, Ipp32fc* pDp))
  3158. IPPAPI(IppStatus, ippsDotProd_32f32fc,(const Ipp32f* pSrc1,
  3159. const Ipp32fc* pSrc2, int len, Ipp32fc* pDp))
  3160. IPPAPI(IppStatus, ippsDotProd_64f, (const Ipp64f* pSrc1,
  3161. const Ipp64f* pSrc2, int len, Ipp64f* pDp))
  3162. IPPAPI(IppStatus, ippsDotProd_64fc,(const Ipp64fc* pSrc1,
  3163. const Ipp64fc* pSrc2, int len, Ipp64fc* pDp))
  3164. IPPAPI(IppStatus, ippsDotProd_64f64fc,(const Ipp64f* pSrc1,
  3165. const Ipp64fc* pSrc2, int len, Ipp64fc* pDp))
  3166. IPPAPI(IppStatus, ippsDotProd_16s_Sfs, (const Ipp16s* pSrc1,
  3167. const Ipp16s* pSrc2, int len, Ipp16s* pDp, int scaleFactor))
  3168. IPPAPI(IppStatus, ippsDotProd_16sc_Sfs,(const Ipp16sc* pSrc1,
  3169. const Ipp16sc* pSrc2, int len, Ipp16sc* pDp, int scaleFactor))
  3170. IPPAPI(IppStatus, ippsDotProd_16s16sc_Sfs, (const Ipp16s* pSrc1,
  3171. const Ipp16sc* pSrc2, int len, Ipp16sc* pDp, int scaleFactor))
  3172. IPPAPI(IppStatus, ippsDotProd_16s64s, (const Ipp16s* pSrc1,
  3173. const Ipp16s* pSrc2, int len, Ipp64s* pDp))
  3174. IPPAPI(IppStatus, ippsDotProd_16sc64sc, (const Ipp16sc* pSrc1,
  3175. const Ipp16sc* pSrc2, int len, Ipp64sc* pDp))
  3176. IPPAPI(IppStatus, ippsDotProd_16s16sc64sc,(const Ipp16s* pSrc1,
  3177. const Ipp16sc* pSrc2, int len, Ipp64sc* pDp))
  3178. IPPAPI(IppStatus, ippsDotProd_16s32f, (const Ipp16s* pSrc1,
  3179. const Ipp16s* pSrc2, int len, Ipp32f* pDp))
  3180. IPPAPI(IppStatus, ippsDotProd_16sc32fc, (const Ipp16sc* pSrc1,
  3181. const Ipp16sc* pSrc2, int len, Ipp32fc* pDp))
  3182. IPPAPI(IppStatus, ippsDotProd_16s16sc32fc,(const Ipp16s* pSrc1,
  3183. const Ipp16sc* pSrc2, int len, Ipp32fc* pDp))
  3184. IPPAPI ( IppStatus, ippsDotProd_32f64f,
  3185. ( const Ipp32f* pSrc1, const Ipp32f* pSrc2, int len, Ipp64f* pDp ))
  3186. IPPAPI ( IppStatus, ippsDotProd_32fc64fc,
  3187. ( const Ipp32fc* pSrc1, const Ipp32fc* pSrc2, int len, Ipp64fc* pDp ))
  3188. IPPAPI ( IppStatus, ippsDotProd_32f32fc64fc,
  3189. ( const Ipp32f* pSrc1, const Ipp32fc* pSrc2, int len, Ipp64fc* pDp ))
  3190. IPPAPI ( IppStatus, ippsDotProd_16s32s_Sfs,
  3191. ( const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  3192. int len, Ipp32s* pDp, int scaleFactor ))
  3193. IPPAPI ( IppStatus, ippsDotProd_16sc32sc_Sfs,
  3194. ( const Ipp16sc* pSrc1, const Ipp16sc* pSrc2,
  3195. int len, Ipp32sc* pDp, int scaleFactor ))
  3196. IPPAPI ( IppStatus, ippsDotProd_16s16sc32sc_Sfs,
  3197. ( const Ipp16s* pSrc1, const Ipp16sc* pSrc2,
  3198. int len, Ipp32sc* pDp, int scaleFactor ))
  3199. IPPAPI ( IppStatus, ippsDotProd_32s_Sfs,
  3200. ( const Ipp32s* pSrc1, const Ipp32s* pSrc2,
  3201. int len, Ipp32s* pDp, int scaleFactor ))
  3202. IPPAPI ( IppStatus, ippsDotProd_32sc_Sfs,
  3203. ( const Ipp32sc* pSrc1, const Ipp32sc* pSrc2,
  3204. int len, Ipp32sc* pDp, int scaleFactor ))
  3205. IPPAPI ( IppStatus, ippsDotProd_32s32sc_Sfs,
  3206. ( const Ipp32s* pSrc1, const Ipp32sc* pSrc2,
  3207. int len, Ipp32sc* pDp, int scaleFactor ))
  3208. IPPAPI ( IppStatus, ippsDotProd_16s32s32s_Sfs,
  3209. ( const Ipp16s* pSrc1, const Ipp32s* pSrc2,
  3210. int len, Ipp32s* pDp, int scaleFactor ))
  3211. /* /////////////////////////////////////////////////////////////////////////////
  3212. // Names:
  3213. // ippsPowerSpectr_64fc
  3214. // ippsPowerSpectr_32fc
  3215. // ippsPowerSpectr_16sc_Sfs
  3216. // ippsPowerSpectr_16sc32f
  3217. // Purpose:
  3218. // Compute the power spectrum of complex vector
  3219. // Parameters:
  3220. // pSrcRe - pointer to the real part of input vector.
  3221. // pSrcIm - pointer to the image part of input vector.
  3222. // pDst - pointer to the result.
  3223. // len - vector length.
  3224. // scaleFactor - scale factor for rezult (only for integer data).
  3225. // Return:
  3226. // ippStsNullPtrErr indicates that one or more pointers to the data is NULL.
  3227. // ippStsSizeErr indicates that vector length is less or equal zero.
  3228. // ippStsNoErr otherwise.
  3229. */
  3230. IPPAPI(IppStatus, ippsPowerSpectr_64fc,(const Ipp64fc* pSrc, Ipp64f* pDst, int len))
  3231. IPPAPI(IppStatus, ippsPowerSpectr_32fc,(const Ipp32fc* pSrc, Ipp32f* pDst, int len))
  3232. IPPAPI(IppStatus, ippsPowerSpectr_16sc_Sfs,(const Ipp16sc* pSrc, Ipp16s* pDst,
  3233. int len, int scaleFactor))
  3234. IPPAPI(IppStatus, ippsPowerSpectr_16sc32f, (const Ipp16sc* pSrc, Ipp32f* pDst,
  3235. int len))
  3236. /* /////////////////////////////////////////////////////////////////////////////
  3237. // Names:
  3238. // ippsPowerSpectr_64f
  3239. // ippsPowerSpectr_32f
  3240. // ippsPowerSpectr_16s_Sfs
  3241. // ippsPowerSpectr_16s32f
  3242. // Purpose:
  3243. // Compute the power spectrum of complex data formed as two real vectors
  3244. // Parameters:
  3245. // pSrcRe - pointer to the real part of input vector.
  3246. // pSrcIm - pointer to the image part of input vector.
  3247. // pDst - pointer to the result.
  3248. // len - vector length.
  3249. // scaleFactor - scale factor for rezult (only for integer data).
  3250. // Return:
  3251. // ippStsNullPtrErr indicates that one or more pointers to the data is NULL.
  3252. // ippStsSizeErr indicates that vector length is less or equal zero.
  3253. // ippStsNoErr otherwise.
  3254. */
  3255. IPPAPI(IppStatus, ippsPowerSpectr_64f,(const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  3256. Ipp64f* pDst, int len))
  3257. IPPAPI(IppStatus, ippsPowerSpectr_32f,(const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  3258. Ipp32f* pDst, int len))
  3259. IPPAPI(IppStatus, ippsPowerSpectr_16s_Sfs,(const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  3260. Ipp16s* pDst, int len, int scaleFactor))
  3261. IPPAPI(IppStatus, ippsPowerSpectr_16s32f, (const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  3262. Ipp32f* pDst, int len))
  3263. /* /////////////////////////////////////////////////////////////////////////////
  3264. // Linear Transform
  3265. ///////////////////////////////////////////////////////////////////////////// */
  3266. /* /////////////////////////////////////////////////////////////////////////////
  3267. // Names:
  3268. // ippsNormalize_64fc
  3269. // ippsNormalize_32fc
  3270. // ippsNormalize_16sc_Sfs
  3271. // Purpose:
  3272. // Complex vector normalization using offset and division method.
  3273. // Parameters:
  3274. // pSrc - an input complex vector
  3275. // pDst - an output complex vector
  3276. // len - a length of the arrays.
  3277. // vsub - complex a subtrahend
  3278. // vdiv - denominator
  3279. // scaleFactor - a scale factor of output results (only for integer data)
  3280. // Return:
  3281. // ippStsNoErr Ok
  3282. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  3283. // ippStsSizeErr The length of the arrays is less or equal zero
  3284. // ippStsDivByZeroErr denominator equal zero or less than float
  3285. // format minimum
  3286. */
  3287. IPPAPI(IppStatus, ippsNormalize_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst,
  3288. int len, Ipp64fc vsub, Ipp64f vdiv))
  3289. IPPAPI(IppStatus, ippsNormalize_32fc,(const Ipp32fc* pSrc, Ipp32fc* pDst,
  3290. int len, Ipp32fc vsub, Ipp32f vdiv))
  3291. IPPAPI(IppStatus, ippsNormalize_16sc_Sfs,(const Ipp16sc* pSrc, Ipp16sc* pDst,
  3292. int len, Ipp16sc vsub, int vdiv, int scaleFactor))
  3293. /* /////////////////////////////////////////////////////////////////////////////
  3294. // Names:
  3295. // ippsNormalize_64f
  3296. // ippsNormalize_32f
  3297. // ippsNormalize_16s_Sfs
  3298. // Purpose:
  3299. // Normalize elements of real vector with the help of offset and division.
  3300. // Parameters:
  3301. // pSrc - an input vector of real data
  3302. // pDst - an output vector of real data
  3303. // len - a length of the arrays.
  3304. // vsub - subtrahend
  3305. // vdiv - denominator
  3306. // scaleFactor - a scale factor of output results (only for integer data)
  3307. // Return:
  3308. // ippStsNoErr Ok
  3309. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  3310. // ippStsSizeErr The length of the arrays is less or equal zero
  3311. // ippStsDivByZeroErr denominator equal zero or less than float
  3312. // format minimum
  3313. */
  3314. IPPAPI(IppStatus, ippsNormalize_64f,(const Ipp64f* pSrc, Ipp64f* pDst, int len,
  3315. Ipp64f vsub, Ipp64f vdiv))
  3316. IPPAPI(IppStatus, ippsNormalize_32f,(const Ipp32f* pSrc, Ipp32f* pDst, int len,
  3317. Ipp32f vsub, Ipp32f vdiv))
  3318. IPPAPI(IppStatus, ippsNormalize_16s_Sfs,(const Ipp16s* pSrc, Ipp16s* pDst,
  3319. int len, Ipp16s vsub, int vdiv, int scaleFactor ))
  3320. /* /////////////////////////////////////////////////////////////////////////////
  3321. // Definitions for FFT Functions
  3322. ///////////////////////////////////////////////////////////////////////////// */
  3323. #if !defined( _OWN_BLDPCS )
  3324. typedef struct FFTSpec_C_32fc IppsFFTSpec_C_32fc;
  3325. typedef struct FFTSpec_C_32f IppsFFTSpec_C_32f;
  3326. typedef struct FFTSpec_R_32f IppsFFTSpec_R_32f;
  3327. typedef struct FFTSpec_C_64fc IppsFFTSpec_C_64fc;
  3328. typedef struct FFTSpec_C_64f IppsFFTSpec_C_64f;
  3329. typedef struct FFTSpec_R_64f IppsFFTSpec_R_64f;
  3330. typedef struct FFTSpec_C_16sc IppsFFTSpec_C_16sc;
  3331. typedef struct FFTSpec_C_16s IppsFFTSpec_C_16s;
  3332. typedef struct FFTSpec_R_16s IppsFFTSpec_R_16s;
  3333. typedef struct FFTSpec_C_32sc IppsFFTSpec_C_32sc;
  3334. typedef struct FFTSpec_C_32s IppsFFTSpec_C_32s;
  3335. typedef struct FFTSpec_R_32s IppsFFTSpec_R_32s;
  3336. typedef struct FFTSpec_R_16s32s IppsFFTSpec_R_16s32s;
  3337. #endif /* _OWN_BLDPCS */
  3338. /* /////////////////////////////////////////////////////////////////////////////
  3339. // FFT Get Size Functions
  3340. ///////////////////////////////////////////////////////////////////////////// */
  3341. /* /////////////////////////////////////////////////////////////////////////////
  3342. // Name: ippsFFTGetSize_C, ippsFFTGetSize_R
  3343. // Purpose: get sizes of the FFTSpec and buffers (on bytes)
  3344. // Arguments:
  3345. // order - base-2 logarithm of the number of samples in FFT
  3346. // flag - normalization flag
  3347. // hint - code specific use hints
  3348. // pSpecSize - where write size of FFTSpec
  3349. // pSpecBufferSize - where write size of buffer for FFTInit functions
  3350. // pBufferSize - where write size of buffer for FFT calculation
  3351. // Return:
  3352. // ippStsNoErr no errors
  3353. // ippStsNullPtrErr pSpecSize == NULL or pSpecBufferSize == NULL or
  3354. // pBufferSize == NULL
  3355. // ippStsFftOrderErr bad the order value
  3356. // ippStsFftFlagErr bad the normalization flag value
  3357. */
  3358. IPPAPI (IppStatus, ippsFFTGetSize_C_32fc,
  3359. ( int order, int flag, IppHintAlgorithm hint,
  3360. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3361. IPPAPI (IppStatus, ippsFFTGetSize_C_32f,
  3362. ( int order, int flag, IppHintAlgorithm hint,
  3363. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3364. IPPAPI (IppStatus, ippsFFTGetSize_R_32f,
  3365. ( int order, int flag, IppHintAlgorithm hint,
  3366. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3367. IPPAPI (IppStatus, ippsFFTGetSize_C_64fc,
  3368. ( int order, int flag, IppHintAlgorithm hint,
  3369. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3370. IPPAPI (IppStatus, ippsFFTGetSize_C_64f,
  3371. ( int order, int flag, IppHintAlgorithm hint,
  3372. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3373. IPPAPI (IppStatus, ippsFFTGetSize_R_64f,
  3374. ( int order, int flag, IppHintAlgorithm hint,
  3375. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3376. IPPAPI (IppStatus, ippsFFTGetSize_C_16sc,
  3377. ( int order, int flag, IppHintAlgorithm hint,
  3378. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3379. IPPAPI (IppStatus, ippsFFTGetSize_C_16s,
  3380. ( int order, int flag, IppHintAlgorithm hint,
  3381. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3382. IPPAPI (IppStatus, ippsFFTGetSize_R_16s,
  3383. ( int order, int flag, IppHintAlgorithm hint,
  3384. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3385. IPPAPI (IppStatus, ippsFFTGetSize_C_32sc,
  3386. ( int order, int flag, IppHintAlgorithm hint,
  3387. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3388. IPPAPI (IppStatus, ippsFFTGetSize_C_32s,
  3389. ( int order, int flag, IppHintAlgorithm hint,
  3390. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3391. IPPAPI (IppStatus, ippsFFTGetSize_R_32s,
  3392. ( int order, int flag, IppHintAlgorithm hint,
  3393. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3394. IPPAPI (IppStatus, ippsFFTGetSize_R_16s32s,
  3395. ( int order, int flag, IppHintAlgorithm hint,
  3396. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  3397. /* /////////////////////////////////////////////////////////////////////////////
  3398. // FFT Context Functions
  3399. ///////////////////////////////////////////////////////////////////////////// */
  3400. /* /////////////////////////////////////////////////////////////////////////////
  3401. // Name: ippsFFTInit_C, ippsFFTInit_R
  3402. // Purpose: initialize of FFT context
  3403. // Arguments:
  3404. // order - base-2 logarithm of the number of samples in FFT
  3405. // flag - normalization flag
  3406. // hint - code specific use hints
  3407. // ppFFTSpec - where write pointer to new context
  3408. // pSpec - pointer to area for FFTSpec
  3409. // pSpecBuffer - pointer to work buffer
  3410. // Return:
  3411. // ippStsNoErr no errors
  3412. // ippStsNullPtrErr ppFFTSpec == NULL or
  3413. // pSpec == NULL or pSpecBuffer == NULL
  3414. // ippStsFftOrderErr bad the order value
  3415. // ippStsFftFlagErr bad the normalization flag value
  3416. */
  3417. IPPAPI (IppStatus, ippsFFTInit_C_32fc,
  3418. ( IppsFFTSpec_C_32fc** ppFFTSpec,
  3419. int order, int flag, IppHintAlgorithm hint,
  3420. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3421. IPPAPI (IppStatus, ippsFFTInit_C_32f,
  3422. ( IppsFFTSpec_C_32f** ppFFTSpec,
  3423. int order, int flag, IppHintAlgorithm hint,
  3424. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3425. IPPAPI (IppStatus, ippsFFTInit_R_32f,
  3426. ( IppsFFTSpec_R_32f** ppFFTSpec,
  3427. int order, int flag, IppHintAlgorithm hint,
  3428. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3429. IPPAPI (IppStatus, ippsFFTInit_C_64fc,
  3430. ( IppsFFTSpec_C_64fc** ppFFTSpec,
  3431. int order, int flag, IppHintAlgorithm hint,
  3432. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3433. IPPAPI (IppStatus, ippsFFTInit_C_64f,
  3434. ( IppsFFTSpec_C_64f** ppFFTSpec,
  3435. int order, int flag, IppHintAlgorithm hint,
  3436. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3437. IPPAPI (IppStatus, ippsFFTInit_R_64f,
  3438. ( IppsFFTSpec_R_64f** ppFFTSpec,
  3439. int order, int flag, IppHintAlgorithm hint,
  3440. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3441. IPPAPI (IppStatus, ippsFFTInit_C_16sc,
  3442. ( IppsFFTSpec_C_16sc** ppFFTSpec,
  3443. int order, int flag, IppHintAlgorithm hint,
  3444. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3445. IPPAPI (IppStatus, ippsFFTInit_C_16s,
  3446. ( IppsFFTSpec_C_16s** ppFFTSpec,
  3447. int order, int flag, IppHintAlgorithm hint,
  3448. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3449. IPPAPI (IppStatus, ippsFFTInit_R_16s,
  3450. ( IppsFFTSpec_R_16s** ppFFTSpec,
  3451. int order, int flag, IppHintAlgorithm hint,
  3452. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3453. IPPAPI (IppStatus, ippsFFTInit_C_32sc,
  3454. ( IppsFFTSpec_C_32sc** ppFFTSpec,
  3455. int order, int flag, IppHintAlgorithm hint,
  3456. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3457. IPPAPI (IppStatus, ippsFFTInit_C_32s,
  3458. ( IppsFFTSpec_C_32s** ppFFTSpec,
  3459. int order, int flag, IppHintAlgorithm hint,
  3460. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3461. IPPAPI (IppStatus, ippsFFTInit_R_32s,
  3462. ( IppsFFTSpec_R_32s** ppFFTSpec,
  3463. int order, int flag, IppHintAlgorithm hint,
  3464. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3465. IPPAPI (IppStatus, ippsFFTInit_R_16s32s,
  3466. ( IppsFFTSpec_R_16s32s** ppFFTSpec,
  3467. int order, int flag, IppHintAlgorithm hint,
  3468. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  3469. /* /////////////////////////////////////////////////////////////////////////////
  3470. // Name: ippsFFTInitAlloc_C, ippsFFTInitAlloc_R
  3471. // Purpose: create and initialize of FFT context
  3472. // Arguments:
  3473. // order - base-2 logarithm of the number of samples in FFT
  3474. // flag - normalization flag
  3475. // hint - code specific use hints
  3476. // ppFFTSpec - where write pointer to new context
  3477. // Return:
  3478. // ippStsNoErr no errors
  3479. // ippStsNullPtrErr ppFFTSpec == NULL
  3480. // ippStsFftOrderErr bad the order value
  3481. // ippStsFftFlagErr bad the normalization flag value
  3482. // ippStsMemAllocErr memory allocation error
  3483. */
  3484. IPPAPI (IppStatus, ippsFFTInitAlloc_C_32fc,
  3485. ( IppsFFTSpec_C_32fc** ppFFTSpec,
  3486. int order, int flag, IppHintAlgorithm hint ))
  3487. IPPAPI (IppStatus, ippsFFTInitAlloc_C_32f,
  3488. ( IppsFFTSpec_C_32f** ppFFTSpec,
  3489. int order, int flag, IppHintAlgorithm hint ))
  3490. IPPAPI (IppStatus, ippsFFTInitAlloc_R_32f,
  3491. ( IppsFFTSpec_R_32f** ppFFTSpec,
  3492. int order, int flag, IppHintAlgorithm hint ))
  3493. IPPAPI (IppStatus, ippsFFTInitAlloc_C_64fc,
  3494. ( IppsFFTSpec_C_64fc** ppFFTSpec,
  3495. int order, int flag, IppHintAlgorithm hint ))
  3496. IPPAPI (IppStatus, ippsFFTInitAlloc_C_64f,
  3497. ( IppsFFTSpec_C_64f** ppFFTSpec,
  3498. int order, int flag, IppHintAlgorithm hint ))
  3499. IPPAPI (IppStatus, ippsFFTInitAlloc_R_64f,
  3500. ( IppsFFTSpec_R_64f** ppFFTSpec,
  3501. int order, int flag, IppHintAlgorithm hint ))
  3502. IPPAPI (IppStatus, ippsFFTInitAlloc_C_16sc,
  3503. ( IppsFFTSpec_C_16sc** ppFFTSpec,
  3504. int order, int flag, IppHintAlgorithm hint ))
  3505. IPPAPI (IppStatus, ippsFFTInitAlloc_C_16s,
  3506. ( IppsFFTSpec_C_16s** ppFFTSpec,
  3507. int order, int flag, IppHintAlgorithm hint ))
  3508. IPPAPI (IppStatus, ippsFFTInitAlloc_R_16s,
  3509. ( IppsFFTSpec_R_16s** ppFFTSpec,
  3510. int order, int flag, IppHintAlgorithm hint ))
  3511. IPPAPI (IppStatus, ippsFFTInitAlloc_C_32sc,
  3512. ( IppsFFTSpec_C_32sc** ppFFTSpec,
  3513. int order, int flag, IppHintAlgorithm hint ))
  3514. IPPAPI (IppStatus, ippsFFTInitAlloc_C_32s,
  3515. ( IppsFFTSpec_C_32s** ppFFTSpec,
  3516. int order, int flag, IppHintAlgorithm hint ))
  3517. IPPAPI (IppStatus, ippsFFTInitAlloc_R_32s,
  3518. ( IppsFFTSpec_R_32s** ppFFTSpec,
  3519. int order, int flag, IppHintAlgorithm hint ))
  3520. IPPAPI (IppStatus, ippsFFTInitAlloc_R_16s32s,
  3521. ( IppsFFTSpec_R_16s32s** ppFFTSpec,
  3522. int order, int flag, IppHintAlgorithm hint ))
  3523. /* /////////////////////////////////////////////////////////////////////////////
  3524. // Name: ippsFFTFree_C, ippsFFTFree_R
  3525. // Purpose: delete FFT context
  3526. // Arguments:
  3527. // pFFTSpec - pointer to FFT context to be deleted
  3528. // Return:
  3529. // ippStsNoErr no errors
  3530. // ippStsNullPtrErr pFFTSpec == NULL
  3531. // ippStsContextMatchErr bad context identifier
  3532. */
  3533. IPPAPI (IppStatus, ippsFFTFree_C_32fc, ( IppsFFTSpec_C_32fc* pFFTSpec ))
  3534. IPPAPI (IppStatus, ippsFFTFree_C_32f, ( IppsFFTSpec_C_32f* pFFTSpec ))
  3535. IPPAPI (IppStatus, ippsFFTFree_R_32f, ( IppsFFTSpec_R_32f* pFFTSpec ))
  3536. IPPAPI (IppStatus, ippsFFTFree_C_64fc, ( IppsFFTSpec_C_64fc* pFFTSpec ))
  3537. IPPAPI (IppStatus, ippsFFTFree_C_64f, ( IppsFFTSpec_C_64f* pFFTSpec ))
  3538. IPPAPI (IppStatus, ippsFFTFree_R_64f, ( IppsFFTSpec_R_64f* pFFTSpec ))
  3539. IPPAPI (IppStatus, ippsFFTFree_C_16sc, ( IppsFFTSpec_C_16sc* pFFTSpec ))
  3540. IPPAPI (IppStatus, ippsFFTFree_C_16s, ( IppsFFTSpec_C_16s* pFFTSpec ))
  3541. IPPAPI (IppStatus, ippsFFTFree_R_16s, ( IppsFFTSpec_R_16s* pFFTSpec ))
  3542. IPPAPI (IppStatus, ippsFFTFree_C_32sc, ( IppsFFTSpec_C_32sc* pFFTSpec ))
  3543. IPPAPI (IppStatus, ippsFFTFree_C_32s, ( IppsFFTSpec_C_32s* pFFTSpec ))
  3544. IPPAPI (IppStatus, ippsFFTFree_R_32s, ( IppsFFTSpec_R_32s* pFFTSpec ))
  3545. IPPAPI (IppStatus, ippsFFTFree_R_16s32s, ( IppsFFTSpec_R_16s32s* pFFTSpec ))
  3546. /* /////////////////////////////////////////////////////////////////////////////
  3547. // FFT Buffer Size
  3548. ///////////////////////////////////////////////////////////////////////////// */
  3549. /* /////////////////////////////////////////////////////////////////////////////
  3550. // Name: ippsFFTGetBufSize_C, ippsFFTGetBufSize_R
  3551. // Purpose: get size of the FFT work buffer (on bytes)
  3552. // Arguments:
  3553. // pFFTSpec - pointer to the FFT structure
  3554. // pBufferSize - Pointer to the FFT work buffer size value
  3555. // Return:
  3556. // ippStsNoErr no errors
  3557. // ippStsNullPtrErr pFFTSpec == NULL or pBufferSize == NULL
  3558. // ippStsContextMatchErr bad context identifier
  3559. */
  3560. IPPAPI (IppStatus, ippsFFTGetBufSize_C_32fc,
  3561. ( const IppsFFTSpec_C_32fc* pFFTSpec, int* pBufferSize ))
  3562. IPPAPI (IppStatus, ippsFFTGetBufSize_C_32f,
  3563. ( const IppsFFTSpec_C_32f* pFFTSpec, int* pBufferSize ))
  3564. IPPAPI (IppStatus, ippsFFTGetBufSize_R_32f,
  3565. ( const IppsFFTSpec_R_32f* pFFTSpec, int* pBufferSize ))
  3566. IPPAPI (IppStatus, ippsFFTGetBufSize_C_64fc,
  3567. ( const IppsFFTSpec_C_64fc* pFFTSpec, int* pBufferSize ))
  3568. IPPAPI (IppStatus, ippsFFTGetBufSize_C_64f,
  3569. ( const IppsFFTSpec_C_64f* pFFTSpec, int* pBufferSize ))
  3570. IPPAPI (IppStatus, ippsFFTGetBufSize_R_64f,
  3571. ( const IppsFFTSpec_R_64f* pFFTSpec, int* pBufferSize ))
  3572. IPPAPI (IppStatus, ippsFFTGetBufSize_C_16sc,
  3573. ( const IppsFFTSpec_C_16sc* pFFTSpec, int* pBufferSize ))
  3574. IPPAPI (IppStatus, ippsFFTGetBufSize_C_16s,
  3575. ( const IppsFFTSpec_C_16s* pFFTSpec, int* pBufferSize ))
  3576. IPPAPI (IppStatus, ippsFFTGetBufSize_R_16s,
  3577. ( const IppsFFTSpec_R_16s* pFFTSpec, int* pBufferSize ))
  3578. IPPAPI (IppStatus, ippsFFTGetBufSize_C_32sc,
  3579. ( const IppsFFTSpec_C_32sc* pFFTSpec, int* pBufferSize ))
  3580. IPPAPI (IppStatus, ippsFFTGetBufSize_C_32s,
  3581. ( const IppsFFTSpec_C_32s* pFFTSpec, int* pBufferSize ))
  3582. IPPAPI (IppStatus, ippsFFTGetBufSize_R_32s,
  3583. ( const IppsFFTSpec_R_32s* pFFTSpec, int* pBufferSize ))
  3584. IPPAPI (IppStatus, ippsFFTGetBufSize_R_16s32s,
  3585. ( const IppsFFTSpec_R_16s32s* pFFTSpec, int* pBufferSize ))
  3586. /* /////////////////////////////////////////////////////////////////////////////
  3587. // FFT Complex Transforms
  3588. ///////////////////////////////////////////////////////////////////////////// */
  3589. /* /////////////////////////////////////////////////////////////////////////////
  3590. // Name: ippsFFTFwd_CToC, ippsFFTInv_CToC
  3591. // Purpose: compute forward and inverse FFT of the complex signal
  3592. // Arguments:
  3593. // pFFTSpec - pointer to FFT context
  3594. // pSrc - pointer to source complex signal
  3595. // pDst - pointer to destination complex signal
  3596. // pSrcRe - pointer to real part of source signal
  3597. // pSrcIm - pointer to imaginary part of source signal
  3598. // pDstRe - pointer to real part of destination signal
  3599. // pDstIm - pointer to imaginary part of destination signal
  3600. // pSrcDSt - pointer to complex signal
  3601. // pSrcDstRe- pointer to real part of signal
  3602. // pSrcDstIm- pointer to imaginary part of signal
  3603. // pBuffer - pointer to work buffer
  3604. // scaleFactor
  3605. // - scale factor for output result
  3606. // Return:
  3607. // ippStsNoErr no errors
  3608. // ippStsNullPtrErr pFFTSpec == NULL or
  3609. // pSrc == NULL or pDst == NULL or
  3610. // pSrcRe == NULL or pSrcIm == NULL or
  3611. // pDstRe == NULL or pDstIm == NULL or
  3612. // ippStsContextMatchErr bad context identifier
  3613. // ippStsMemAllocErr memory allocation error
  3614. */
  3615. IPPAPI (IppStatus, ippsFFTFwd_CToC_32fc,
  3616. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  3617. const IppsFFTSpec_C_32fc* pFFTSpec, Ipp8u* pBuffer ))
  3618. IPPAPI (IppStatus, ippsFFTInv_CToC_32fc,
  3619. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  3620. const IppsFFTSpec_C_32fc* pFFTSpec, Ipp8u* pBuffer ))
  3621. IPPAPI (IppStatus, ippsFFTFwd_CToC_32f,
  3622. ( const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  3623. Ipp32f* pDstRe, Ipp32f* pDstIm,
  3624. const IppsFFTSpec_C_32f* pFFTSpec, Ipp8u* pBuffer ))
  3625. IPPAPI (IppStatus, ippsFFTInv_CToC_32f,
  3626. ( const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  3627. Ipp32f* pDstRe, Ipp32f* pDstIm,
  3628. const IppsFFTSpec_C_32f* pFFTSpec, Ipp8u* pBuffer ))
  3629. IPPAPI (IppStatus, ippsFFTFwd_CToC_32fc_I,
  3630. ( Ipp32fc* pSrcDst,
  3631. const IppsFFTSpec_C_32fc* pFFTSpec, Ipp8u* pBuffer ))
  3632. IPPAPI (IppStatus, ippsFFTInv_CToC_32fc_I,
  3633. ( Ipp32fc* pSrcDst,
  3634. const IppsFFTSpec_C_32fc* pFFTSpec, Ipp8u* pBuffer ))
  3635. IPPAPI (IppStatus, ippsFFTFwd_CToC_32f_I,
  3636. ( Ipp32f* pSrcDstRe, Ipp32f* pSrcDstIm,
  3637. const IppsFFTSpec_C_32f* pFFTSpec, Ipp8u* pBuffer ))
  3638. IPPAPI (IppStatus, ippsFFTInv_CToC_32f_I,
  3639. ( Ipp32f* pSrcDstRe, Ipp32f* pSrcDstIm,
  3640. const IppsFFTSpec_C_32f* pFFTSpec, Ipp8u* pBuffer ))
  3641. IPPAPI (IppStatus, ippsFFTFwd_CToC_64fc,
  3642. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  3643. const IppsFFTSpec_C_64fc* pFFTSpec, Ipp8u* pBuffer ))
  3644. IPPAPI (IppStatus, ippsFFTInv_CToC_64fc,
  3645. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  3646. const IppsFFTSpec_C_64fc* pFFTSpec, Ipp8u* pBuffer ))
  3647. IPPAPI (IppStatus, ippsFFTFwd_CToC_64f,
  3648. ( const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  3649. Ipp64f* pDstRe, Ipp64f* pDstIm,
  3650. const IppsFFTSpec_C_64f* pFFTSpec, Ipp8u* pBuffer ))
  3651. IPPAPI (IppStatus, ippsFFTInv_CToC_64f,
  3652. ( const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  3653. Ipp64f* pDstRe, Ipp64f* pDstIm,
  3654. const IppsFFTSpec_C_64f* pFFTSpec, Ipp8u* pBuffer ))
  3655. IPPAPI (IppStatus, ippsFFTFwd_CToC_64fc_I,
  3656. ( Ipp64fc* pSrcDst,
  3657. const IppsFFTSpec_C_64fc* pFFTSpec, Ipp8u* pBuffer ))
  3658. IPPAPI (IppStatus, ippsFFTInv_CToC_64fc_I,
  3659. ( Ipp64fc* pSrcDst,
  3660. const IppsFFTSpec_C_64fc* pFFTSpec, Ipp8u* pBuffer ))
  3661. IPPAPI (IppStatus, ippsFFTFwd_CToC_64f_I,
  3662. ( Ipp64f* pSrcDstRe, Ipp64f* pSrcDstIm,
  3663. const IppsFFTSpec_C_64f* pFFTSpec, Ipp8u* pBuffer ))
  3664. IPPAPI (IppStatus, ippsFFTInv_CToC_64f_I,
  3665. ( Ipp64f* pSrcDstRe, Ipp64f* pSrcDstIm,
  3666. const IppsFFTSpec_C_64f* pFFTSpec, Ipp8u* pBuffer ))
  3667. IPPAPI (IppStatus, ippsFFTFwd_CToC_16sc_Sfs,
  3668. ( const Ipp16sc* pSrc, Ipp16sc* pDst,
  3669. const IppsFFTSpec_C_16sc* pFFTSpec,
  3670. int scaleFactor, Ipp8u* pBuffer ))
  3671. IPPAPI (IppStatus, ippsFFTInv_CToC_16sc_Sfs,
  3672. ( const Ipp16sc* pSrc, Ipp16sc* pDst,
  3673. const IppsFFTSpec_C_16sc* pFFTSpec,
  3674. int scaleFactor, Ipp8u* pBuffer ))
  3675. IPPAPI (IppStatus, ippsFFTFwd_CToC_16s_Sfs,
  3676. ( const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  3677. Ipp16s* pDstRe, Ipp16s* pDstIm,
  3678. const IppsFFTSpec_C_16s* pFFTSpec,
  3679. int scaleFactor, Ipp8u* pBuffer ))
  3680. IPPAPI (IppStatus, ippsFFTInv_CToC_16s_Sfs,
  3681. ( const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  3682. Ipp16s* pDstRe, Ipp16s* pDstIm,
  3683. const IppsFFTSpec_C_16s* pFFTSpec,
  3684. int scaleFactor, Ipp8u* pBuffer ))
  3685. IPPAPI (IppStatus, ippsFFTFwd_CToC_16sc_ISfs,
  3686. ( Ipp16sc* pSrcDst,
  3687. const IppsFFTSpec_C_16sc* pFFTSpec,
  3688. int scaleFactor, Ipp8u* pBuffer ))
  3689. IPPAPI (IppStatus, ippsFFTInv_CToC_16sc_ISfs,
  3690. ( Ipp16sc* pSrcDst,
  3691. const IppsFFTSpec_C_16sc* pFFTSpec,
  3692. int scaleFactor, Ipp8u* pBuffer ))
  3693. IPPAPI (IppStatus, ippsFFTFwd_CToC_16s_ISfs,
  3694. ( Ipp16s* pSrcDstRe, Ipp16s* pSrcDstIm,
  3695. const IppsFFTSpec_C_16s* pFFTSpec,
  3696. int scaleFactor, Ipp8u* pBuffer ))
  3697. IPPAPI (IppStatus, ippsFFTInv_CToC_16s_ISfs,
  3698. ( Ipp16s* pSrcDstRe, Ipp16s* pSrcDstIm,
  3699. const IppsFFTSpec_C_16s* pFFTSpec,
  3700. int scaleFactor, Ipp8u* pBuffer ))
  3701. IPPAPI (IppStatus, ippsFFTFwd_CToC_32sc_Sfs,
  3702. ( const Ipp32sc* pSrc, Ipp32sc* pDst,
  3703. const IppsFFTSpec_C_32sc* pFFTSpec,
  3704. int scaleFactor, Ipp8u* pBuffer ))
  3705. IPPAPI (IppStatus, ippsFFTInv_CToC_32sc_Sfs,
  3706. ( const Ipp32sc* pSrc, Ipp32sc* pDst,
  3707. const IppsFFTSpec_C_32sc* pFFTSpec,
  3708. int scaleFactor, Ipp8u* pBuffer ))
  3709. IPPAPI (IppStatus, ippsFFTFwd_CToC_32s_Sfs,
  3710. ( const Ipp32s* pSrcRe, const Ipp32s* pSrcIm,
  3711. Ipp32s* pDstRe, Ipp32s* pDstIm,
  3712. const IppsFFTSpec_C_32s* pFFTSpec,
  3713. int scaleFactor, Ipp8u* pBuffer ))
  3714. IPPAPI (IppStatus, ippsFFTInv_CToC_32s_Sfs,
  3715. ( const Ipp32s* pSrcRe, const Ipp32s* pSrcIm,
  3716. Ipp32s* pDstRe, Ipp32s* pDstIm,
  3717. const IppsFFTSpec_C_32s* pFFTSpec,
  3718. int scaleFactor, Ipp8u* pBuffer ))
  3719. IPPAPI (IppStatus, ippsFFTFwd_CToC_32sc_ISfs,
  3720. ( Ipp32sc* pSrcDst,
  3721. const IppsFFTSpec_C_32sc* pFFTSpec,
  3722. int scaleFactor, Ipp8u* pBuffer ))
  3723. IPPAPI (IppStatus, ippsFFTInv_CToC_32sc_ISfs,
  3724. ( Ipp32sc* pSrcDst,
  3725. const IppsFFTSpec_C_32sc* pFFTSpec,
  3726. int scaleFactor, Ipp8u* pBuffer ))
  3727. IPPAPI (IppStatus, ippsFFTFwd_CToC_32s_ISfs,
  3728. ( Ipp32s* pSrcDstRe, Ipp32s* pSrcDstIm,
  3729. const IppsFFTSpec_C_32s* pFFTSpec,
  3730. int scaleFactor, Ipp8u* pBuffer ))
  3731. IPPAPI (IppStatus, ippsFFTInv_CToC_32s_ISfs,
  3732. ( Ipp32s* pSrcDstRe, Ipp32s* pSrcDstIm,
  3733. const IppsFFTSpec_C_32s* pFFTSpec,
  3734. int scaleFactor, Ipp8u* pBuffer ))
  3735. /* /////////////////////////////////////////////////////////////////////////////
  3736. // FFT Real Packed Transforms
  3737. ///////////////////////////////////////////////////////////////////////////// */
  3738. /* /////////////////////////////////////////////////////////////////////////////
  3739. // Name: ippsFFTFwd_RToPerm, ippsFFTFwd_RToPack, ippsFFTFwd_RToCCS
  3740. // ippsFFTInv_PermToR, ippsFFTInv_PackToR, ippsFFTInv_CCSToR
  3741. // Purpose: compute forward and inverse FFT of real signal
  3742. // using Perm, Pack or Ccs packed format
  3743. // Arguments:
  3744. // pFFTSpec - pointer to FFT context
  3745. // pSrc - pointer to source signal
  3746. // pDst - pointer to destination signal
  3747. // pSrcDst - pointer to signal
  3748. // pBuffer - pointer to work buffer
  3749. // scaleFactor
  3750. // - scale factor for output result
  3751. // Return:
  3752. // ippStsNoErr no errors
  3753. // ippStsNullPtrErr pFFTSpec == NULL or
  3754. // pSrc == NULL or pDst == NULL
  3755. // ippStsContextMatchErr bad context identifier
  3756. // ippStsMemAllocErr memory allocation error
  3757. */
  3758. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_32f,
  3759. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3760. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3761. IPPAPI (IppStatus, ippsFFTFwd_RToPack_32f,
  3762. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3763. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3764. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_32f,
  3765. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3766. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3767. IPPAPI (IppStatus, ippsFFTInv_PermToR_32f,
  3768. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3769. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3770. IPPAPI (IppStatus, ippsFFTInv_PackToR_32f,
  3771. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3772. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3773. IPPAPI (IppStatus, ippsFFTInv_CCSToR_32f,
  3774. ( const Ipp32f* pSrc, Ipp32f* pDst,
  3775. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3776. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_32f_I,
  3777. ( Ipp32f* pSrcDst,
  3778. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3779. IPPAPI (IppStatus, ippsFFTFwd_RToPack_32f_I,
  3780. ( Ipp32f* pSrcDst,
  3781. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3782. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_32f_I,
  3783. ( Ipp32f* pSrcDst,
  3784. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3785. IPPAPI (IppStatus, ippsFFTInv_PermToR_32f_I,
  3786. ( Ipp32f* pSrcDst,
  3787. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3788. IPPAPI (IppStatus, ippsFFTInv_PackToR_32f_I,
  3789. ( Ipp32f* pSrcDst,
  3790. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3791. IPPAPI (IppStatus, ippsFFTInv_CCSToR_32f_I,
  3792. ( Ipp32f* pSrcDst,
  3793. const IppsFFTSpec_R_32f* pFFTSpec, Ipp8u* pBuffer ))
  3794. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_64f,
  3795. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3796. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3797. IPPAPI (IppStatus, ippsFFTFwd_RToPack_64f,
  3798. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3799. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3800. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_64f,
  3801. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3802. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3803. IPPAPI (IppStatus, ippsFFTInv_PermToR_64f,
  3804. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3805. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3806. IPPAPI (IppStatus, ippsFFTInv_PackToR_64f,
  3807. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3808. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3809. IPPAPI (IppStatus, ippsFFTInv_CCSToR_64f,
  3810. ( const Ipp64f* pSrc, Ipp64f* pDst,
  3811. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3812. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_64f_I,
  3813. ( Ipp64f* pSrcDst,
  3814. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3815. IPPAPI (IppStatus, ippsFFTFwd_RToPack_64f_I,
  3816. ( Ipp64f* pSrcDst,
  3817. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3818. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_64f_I,
  3819. ( Ipp64f* pSrcDst,
  3820. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3821. IPPAPI (IppStatus, ippsFFTInv_PermToR_64f_I,
  3822. ( Ipp64f* pSrcDst,
  3823. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3824. IPPAPI (IppStatus, ippsFFTInv_PackToR_64f_I,
  3825. ( Ipp64f* pSrcDst,
  3826. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3827. IPPAPI (IppStatus, ippsFFTInv_CCSToR_64f_I,
  3828. ( Ipp64f* pSrcDst,
  3829. const IppsFFTSpec_R_64f* pFFTSpec, Ipp8u* pBuffer ))
  3830. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_16s_Sfs,
  3831. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3832. const IppsFFTSpec_R_16s* pFFTSpec,
  3833. int scaleFactor, Ipp8u* pBuffer ))
  3834. IPPAPI (IppStatus, ippsFFTFwd_RToPack_16s_Sfs,
  3835. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3836. const IppsFFTSpec_R_16s* pFFTSpec,
  3837. int scaleFactor, Ipp8u* pBuffer ))
  3838. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_16s_Sfs,
  3839. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3840. const IppsFFTSpec_R_16s* pFFTSpec,
  3841. int scaleFactor, Ipp8u* pBuffer ))
  3842. IPPAPI (IppStatus, ippsFFTInv_PermToR_16s_Sfs,
  3843. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3844. const IppsFFTSpec_R_16s* pFFTSpec,
  3845. int scaleFactor, Ipp8u* pBuffer ))
  3846. IPPAPI (IppStatus, ippsFFTInv_PackToR_16s_Sfs,
  3847. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3848. const IppsFFTSpec_R_16s* pFFTSpec,
  3849. int scaleFactor, Ipp8u* pBuffer ))
  3850. IPPAPI (IppStatus, ippsFFTInv_CCSToR_16s_Sfs,
  3851. ( const Ipp16s* pSrc, Ipp16s* pDst,
  3852. const IppsFFTSpec_R_16s* pFFTSpec,
  3853. int scaleFactor, Ipp8u* pBuffer ))
  3854. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_16s_ISfs,
  3855. ( Ipp16s* pSrcDst,
  3856. const IppsFFTSpec_R_16s* pFFTSpec,
  3857. int scaleFactor, Ipp8u* pBuffer ))
  3858. IPPAPI (IppStatus, ippsFFTFwd_RToPack_16s_ISfs,
  3859. ( Ipp16s* pSrcDst,
  3860. const IppsFFTSpec_R_16s* pFFTSpec,
  3861. int scaleFactor, Ipp8u* pBuffer ))
  3862. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_16s_ISfs,
  3863. ( Ipp16s* pSrcDst,
  3864. const IppsFFTSpec_R_16s* pFFTSpec,
  3865. int scaleFactor, Ipp8u* pBuffer ))
  3866. IPPAPI (IppStatus, ippsFFTInv_PermToR_16s_ISfs,
  3867. ( Ipp16s* pSrcDst,
  3868. const IppsFFTSpec_R_16s* pFFTSpec,
  3869. int scaleFactor, Ipp8u* pBuffer ))
  3870. IPPAPI (IppStatus, ippsFFTInv_PackToR_16s_ISfs,
  3871. ( Ipp16s* pSrcDst,
  3872. const IppsFFTSpec_R_16s* pFFTSpec,
  3873. int scaleFactor, Ipp8u* pBuffer ))
  3874. IPPAPI (IppStatus, ippsFFTInv_CCSToR_16s_ISfs,
  3875. ( Ipp16s* pSrcDst,
  3876. const IppsFFTSpec_R_16s* pFFTSpec,
  3877. int scaleFactor, Ipp8u* pBuffer ))
  3878. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_32s_Sfs,
  3879. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3880. const IppsFFTSpec_R_32s* pFFTSpec,
  3881. int scaleFactor, Ipp8u* pBuffer ))
  3882. IPPAPI (IppStatus, ippsFFTFwd_RToPack_32s_Sfs,
  3883. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3884. const IppsFFTSpec_R_32s* pFFTSpec,
  3885. int scaleFactor, Ipp8u* pBuffer ))
  3886. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_32s_Sfs,
  3887. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3888. const IppsFFTSpec_R_32s* pFFTSpec,
  3889. int scaleFactor, Ipp8u* pBuffer ))
  3890. IPPAPI (IppStatus, ippsFFTInv_PermToR_32s_Sfs,
  3891. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3892. const IppsFFTSpec_R_32s* pFFTSpec,
  3893. int scaleFactor, Ipp8u* pBuffer ))
  3894. IPPAPI (IppStatus, ippsFFTInv_PackToR_32s_Sfs,
  3895. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3896. const IppsFFTSpec_R_32s* pFFTSpec,
  3897. int scaleFactor, Ipp8u* pBuffer ))
  3898. IPPAPI (IppStatus, ippsFFTInv_CCSToR_32s_Sfs,
  3899. ( const Ipp32s* pSrc, Ipp32s* pDst,
  3900. const IppsFFTSpec_R_32s* pFFTSpec,
  3901. int scaleFactor, Ipp8u* pBuffer ))
  3902. IPPAPI (IppStatus, ippsFFTFwd_RToPerm_32s_ISfs,
  3903. ( Ipp32s* pSrcDst,
  3904. const IppsFFTSpec_R_32s* pFFTSpec,
  3905. int scaleFactor, Ipp8u* pBuffer ))
  3906. IPPAPI (IppStatus, ippsFFTFwd_RToPack_32s_ISfs,
  3907. ( Ipp32s* pSrcDst,
  3908. const IppsFFTSpec_R_32s* pFFTSpec,
  3909. int scaleFactor, Ipp8u* pBuffer ))
  3910. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_32s_ISfs,
  3911. ( Ipp32s* pSrcDst,
  3912. const IppsFFTSpec_R_32s* pFFTSpec,
  3913. int scaleFactor, Ipp8u* pBuffer ))
  3914. IPPAPI (IppStatus, ippsFFTInv_PermToR_32s_ISfs,
  3915. ( Ipp32s* pSrcDst,
  3916. const IppsFFTSpec_R_32s* pFFTSpec,
  3917. int scaleFactor, Ipp8u* pBuffer ))
  3918. IPPAPI (IppStatus, ippsFFTInv_PackToR_32s_ISfs,
  3919. ( Ipp32s* pSrcDst,
  3920. const IppsFFTSpec_R_32s* pFFTSpec,
  3921. int scaleFactor, Ipp8u* pBuffer ))
  3922. IPPAPI (IppStatus, ippsFFTInv_CCSToR_32s_ISfs,
  3923. ( Ipp32s* pSrcDst,
  3924. const IppsFFTSpec_R_32s* pFFTSpec,
  3925. int scaleFactor, Ipp8u* pBuffer ))
  3926. IPPAPI (IppStatus, ippsFFTFwd_RToCCS_16s32s_Sfs,
  3927. ( const Ipp16s* pSrc, Ipp32s* pDst,
  3928. const IppsFFTSpec_R_16s32s* pFFTSpec,
  3929. int scaleFactor, Ipp8u* pBuffer ))
  3930. IPPAPI (IppStatus, ippsFFTInv_CCSToR_32s16s_Sfs,
  3931. ( const Ipp32s* pSrc, Ipp16s* pDst,
  3932. const IppsFFTSpec_R_16s32s* pFFTSpec,
  3933. int scaleFactor, Ipp8u* pBuffer ))
  3934. /* /////////////////////////////////////////////////////////////////////////////
  3935. // Definitions for DFT Functions
  3936. ///////////////////////////////////////////////////////////////////////////// */
  3937. #if !defined( _OWN_BLDPCS )
  3938. typedef struct DFTSpec_C_16sc IppsDFTSpec_C_16sc;
  3939. typedef struct DFTSpec_C_16s IppsDFTSpec_C_16s;
  3940. typedef struct DFTSpec_R_16s IppsDFTSpec_R_16s;
  3941. typedef struct DFTSpec_C_32fc IppsDFTSpec_C_32fc;
  3942. typedef struct DFTSpec_C_32f IppsDFTSpec_C_32f;
  3943. typedef struct DFTSpec_R_32f IppsDFTSpec_R_32f;
  3944. typedef struct DFTSpec_C_64fc IppsDFTSpec_C_64fc;
  3945. typedef struct DFTSpec_C_64f IppsDFTSpec_C_64f;
  3946. typedef struct DFTSpec_R_64f IppsDFTSpec_R_64f;
  3947. typedef struct DFTOutOrdSpec_C_32fc IppsDFTOutOrdSpec_C_32fc;
  3948. typedef struct DFTOutOrdSpec_C_64fc IppsDFTOutOrdSpec_C_64fc;
  3949. #endif /* _OWN_BLDPCS */
  3950. /* /////////////////////////////////////////////////////////////////////////////
  3951. // DFT Context Functions
  3952. ///////////////////////////////////////////////////////////////////////////// */
  3953. /* /////////////////////////////////////////////////////////////////////////////
  3954. // Name: ippsDFTInitAlloc_C, ippsDFTInitAlloc_R
  3955. // Purpose: create and initialize of DFT context
  3956. // Arguments:
  3957. // length - number of samples in DFT
  3958. // flag - normalization flag
  3959. // hint - code specific use hints
  3960. // pDFTSpec - where write pointer to new context
  3961. // Return:
  3962. // ippStsNoErr no errors
  3963. // ippStsNullPtrErr pDFTSpec == NULL
  3964. // ippStsSizeErr bad the length value
  3965. // ippStsFFTFlagErr bad the normalization flag value
  3966. // ippStsMemAllocErr memory allocation error
  3967. */
  3968. IPPAPI (IppStatus, ippsDFTInitAlloc_C_16sc,
  3969. ( IppsDFTSpec_C_16sc** pDFTSpec,
  3970. int length, int flag, IppHintAlgorithm hint ))
  3971. IPPAPI (IppStatus, ippsDFTInitAlloc_C_16s,
  3972. ( IppsDFTSpec_C_16s** pDFTSpec,
  3973. int length, int flag, IppHintAlgorithm hint ))
  3974. IPPAPI (IppStatus, ippsDFTInitAlloc_R_16s,
  3975. ( IppsDFTSpec_R_16s** pDFTSpec,
  3976. int length, int flag, IppHintAlgorithm hint ))
  3977. IPPAPI (IppStatus, ippsDFTInitAlloc_C_32fc,
  3978. ( IppsDFTSpec_C_32fc** pDFTSpec,
  3979. int length, int flag, IppHintAlgorithm hint ))
  3980. IPPAPI (IppStatus, ippsDFTInitAlloc_C_32f,
  3981. ( IppsDFTSpec_C_32f** pDFTSpec,
  3982. int length, int flag, IppHintAlgorithm hint ))
  3983. IPPAPI (IppStatus, ippsDFTInitAlloc_R_32f,
  3984. ( IppsDFTSpec_R_32f** pDFTSpec,
  3985. int length, int flag, IppHintAlgorithm hint ))
  3986. IPPAPI (IppStatus, ippsDFTInitAlloc_C_64fc,
  3987. ( IppsDFTSpec_C_64fc** pDFTSpec,
  3988. int length, int flag, IppHintAlgorithm hint ))
  3989. IPPAPI (IppStatus, ippsDFTInitAlloc_C_64f,
  3990. ( IppsDFTSpec_C_64f** pDFTSpec,
  3991. int length, int flag, IppHintAlgorithm hint ))
  3992. IPPAPI (IppStatus, ippsDFTInitAlloc_R_64f,
  3993. ( IppsDFTSpec_R_64f** pDFTSpec,
  3994. int length, int flag, IppHintAlgorithm hint ))
  3995. IPPAPI (IppStatus, ippsDFTOutOrdInitAlloc_C_32fc,
  3996. ( IppsDFTOutOrdSpec_C_32fc** pDFTSpec,
  3997. int length, int flag, IppHintAlgorithm hint ))
  3998. IPPAPI (IppStatus, ippsDFTOutOrdInitAlloc_C_64fc,
  3999. ( IppsDFTOutOrdSpec_C_64fc** pDFTSpec,
  4000. int length, int flag, IppHintAlgorithm hint ))
  4001. /* /////////////////////////////////////////////////////////////////////////////
  4002. // Name: ippsDFTFree_C, ippsDFTFree_R
  4003. // Purpose: delete DFT context
  4004. // Arguments:
  4005. // pDFTSpec - pointer to DFT context to be deleted
  4006. // Return:
  4007. // ippStsNoErr no errors
  4008. // ippStsNullPtrErr pDFTSpec == NULL
  4009. // ippStsContextMatchErr bad context identifier
  4010. */
  4011. IPPAPI (IppStatus, ippsDFTFree_C_16sc, ( IppsDFTSpec_C_16sc* pDFTSpec ))
  4012. IPPAPI (IppStatus, ippsDFTFree_C_16s, ( IppsDFTSpec_C_16s* pDFTSpec ))
  4013. IPPAPI (IppStatus, ippsDFTFree_R_16s, ( IppsDFTSpec_R_16s* pDFTSpec ))
  4014. IPPAPI (IppStatus, ippsDFTFree_C_32fc, ( IppsDFTSpec_C_32fc* pDFTSpec ))
  4015. IPPAPI (IppStatus, ippsDFTFree_C_32f, ( IppsDFTSpec_C_32f* pDFTSpec ))
  4016. IPPAPI (IppStatus, ippsDFTFree_R_32f, ( IppsDFTSpec_R_32f* pDFTSpec ))
  4017. IPPAPI (IppStatus, ippsDFTFree_C_64fc, ( IppsDFTSpec_C_64fc* pDFTSpec ))
  4018. IPPAPI (IppStatus, ippsDFTFree_C_64f, ( IppsDFTSpec_C_64f* pDFTSpec ))
  4019. IPPAPI (IppStatus, ippsDFTFree_R_64f, ( IppsDFTSpec_R_64f* pDFTSpec ))
  4020. IPPAPI (IppStatus, ippsDFTOutOrdFree_C_32fc, ( IppsDFTOutOrdSpec_C_32fc* pDFTSpec ))
  4021. IPPAPI (IppStatus, ippsDFTOutOrdFree_C_64fc, ( IppsDFTOutOrdSpec_C_64fc* pDFTSpec ))
  4022. /* /////////////////////////////////////////////////////////////////////////////
  4023. // DFT Buffer Size
  4024. ///////////////////////////////////////////////////////////////////////////// */
  4025. /* /////////////////////////////////////////////////////////////////////////////
  4026. // Name: ippsDFTGetBufSize_C, ippsDFTGetBufSize_R
  4027. // Purpose: get size of the DFT work buffer (on bytes)
  4028. // Arguments:
  4029. // pDFTSpec - pointer to DFT context
  4030. // pSize - where write size of buffer
  4031. // Return:
  4032. // ippStsNoErr no errors
  4033. // ippStsNullPtrErr pDFTSpec == NULL or pSize == NULL
  4034. // ippStsContextMatchErr bad context identifier
  4035. */
  4036. IPPAPI (IppStatus, ippsDFTGetBufSize_C_16sc,
  4037. ( const IppsDFTSpec_C_16sc* pDFTSpec, int* pSize ))
  4038. IPPAPI (IppStatus, ippsDFTGetBufSize_C_16s,
  4039. ( const IppsDFTSpec_C_16s* pDFTSpec, int* pSize ))
  4040. IPPAPI (IppStatus, ippsDFTGetBufSize_R_16s,
  4041. ( const IppsDFTSpec_R_16s* pDFTSpec, int* pSize ))
  4042. IPPAPI (IppStatus, ippsDFTGetBufSize_C_32fc,
  4043. ( const IppsDFTSpec_C_32fc* pDFTSpec, int* pSize ))
  4044. IPPAPI (IppStatus, ippsDFTGetBufSize_C_32f,
  4045. ( const IppsDFTSpec_C_32f* pDFTSpec, int* pSize ))
  4046. IPPAPI (IppStatus, ippsDFTGetBufSize_R_32f,
  4047. ( const IppsDFTSpec_R_32f* pDFTSpec, int* pSize ))
  4048. IPPAPI (IppStatus, ippsDFTGetBufSize_C_64fc,
  4049. ( const IppsDFTSpec_C_64fc* pDFTSpec, int* pSize ))
  4050. IPPAPI (IppStatus, ippsDFTGetBufSize_C_64f,
  4051. ( const IppsDFTSpec_C_64f* pDFTSpec, int* pSize ))
  4052. IPPAPI (IppStatus, ippsDFTGetBufSize_R_64f,
  4053. ( const IppsDFTSpec_R_64f* pDFTSpec, int* pSize ))
  4054. IPPAPI (IppStatus, ippsDFTOutOrdGetBufSize_C_32fc,
  4055. ( const IppsDFTOutOrdSpec_C_32fc* pDFTSpec, int* size ))
  4056. IPPAPI (IppStatus, ippsDFTOutOrdGetBufSize_C_64fc,
  4057. ( const IppsDFTOutOrdSpec_C_64fc* pDFTSpec, int* size ))
  4058. /* /////////////////////////////////////////////////////////////////////////////
  4059. // DFT Complex Transforms
  4060. ///////////////////////////////////////////////////////////////////////////// */
  4061. /* /////////////////////////////////////////////////////////////////////////////
  4062. // Name: ippsDFTFwd_CToC, ippsDFTInv_CToC
  4063. // Purpose: compute forward and inverse DFT of the complex signal
  4064. // Arguments:
  4065. // pDFTSpec - pointer to DFT context
  4066. // pSrc - pointer to source complex signal
  4067. // pDst - pointer to destination complex signal
  4068. // pSrcRe - pointer to real part of source signal
  4069. // pSrcIm - pointer to imaginary part of source signal
  4070. // pDstRe - pointer to real part of destination signal
  4071. // pDstIm - pointer to imaginary part of destination signal
  4072. // pBuffer - pointer to work buffer
  4073. // scaleFactor
  4074. // - scale factor for output result
  4075. // Return:
  4076. // ippStsNoErr no errors
  4077. // ippStsNullPtrErr pDFTSpec == NULL or
  4078. // pSrc == NULL or pDst == NULL or
  4079. // pSrcRe == NULL or pSrcIm == NULL or
  4080. // pDstRe == NULL or pDstIm == NULL or
  4081. // ippStsContextMatchErr bad context identifier
  4082. // ippStsMemAllocErr memory allocation error
  4083. */
  4084. IPPAPI (IppStatus, ippsDFTFwd_CToC_16sc_Sfs,
  4085. ( const Ipp16sc* pSrc, Ipp16sc* pDst,
  4086. const IppsDFTSpec_C_16sc* pDFTSpec,
  4087. int scaleFactor, Ipp8u* pBuffer ))
  4088. IPPAPI (IppStatus, ippsDFTInv_CToC_16sc_Sfs,
  4089. ( const Ipp16sc* pSrc, Ipp16sc* pDst,
  4090. const IppsDFTSpec_C_16sc* pDFTSpec,
  4091. int scaleFactor, Ipp8u* pBuffer ))
  4092. IPPAPI (IppStatus, ippsDFTFwd_CToC_16s_Sfs,
  4093. ( const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  4094. Ipp16s* pDstRe, Ipp16s* pDstIm,
  4095. const IppsDFTSpec_C_16s* pDFTSpec,
  4096. int scaleFactor, Ipp8u* pBuffer ))
  4097. IPPAPI (IppStatus, ippsDFTInv_CToC_16s_Sfs,
  4098. ( const Ipp16s* pSrcRe, const Ipp16s* pSrcIm,
  4099. Ipp16s* pDstRe, Ipp16s* pDstIm,
  4100. const IppsDFTSpec_C_16s* pDFTSpec,
  4101. int scaleFactor, Ipp8u* pBuffer ))
  4102. IPPAPI (IppStatus, ippsDFTFwd_CToC_32fc,
  4103. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  4104. const IppsDFTSpec_C_32fc* pDFTSpec, Ipp8u* pBuffer ))
  4105. IPPAPI (IppStatus, ippsDFTInv_CToC_32fc,
  4106. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  4107. const IppsDFTSpec_C_32fc* pDFTSpec, Ipp8u* pBuffer ))
  4108. IPPAPI (IppStatus, ippsDFTFwd_CToC_32f,
  4109. ( const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  4110. Ipp32f* pDstRe, Ipp32f* pDstIm,
  4111. const IppsDFTSpec_C_32f* pDFTSpec, Ipp8u* pBuffer ))
  4112. IPPAPI (IppStatus, ippsDFTInv_CToC_32f,
  4113. ( const Ipp32f* pSrcRe, const Ipp32f* pSrcIm,
  4114. Ipp32f* pDstRe, Ipp32f* pDstIm,
  4115. const IppsDFTSpec_C_32f* pDFTSpec, Ipp8u* pBuffer ))
  4116. IPPAPI (IppStatus, ippsDFTFwd_CToC_64fc,
  4117. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  4118. const IppsDFTSpec_C_64fc* pDFTSpec, Ipp8u* pBuffer ))
  4119. IPPAPI (IppStatus, ippsDFTInv_CToC_64fc,
  4120. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  4121. const IppsDFTSpec_C_64fc* pDFTSpec, Ipp8u* pBuffer ))
  4122. IPPAPI (IppStatus, ippsDFTFwd_CToC_64f,
  4123. ( const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  4124. Ipp64f* pDstRe, Ipp64f* pDstIm,
  4125. const IppsDFTSpec_C_64f* pDFTSpec, Ipp8u* pBuffer ))
  4126. IPPAPI (IppStatus, ippsDFTInv_CToC_64f,
  4127. ( const Ipp64f* pSrcRe, const Ipp64f* pSrcIm,
  4128. Ipp64f* pDstRe, Ipp64f* pDstIm,
  4129. const IppsDFTSpec_C_64f* pDFTSpec, Ipp8u* pBuffer ))
  4130. IPPAPI (IppStatus, ippsDFTOutOrdFwd_CToC_32fc,
  4131. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  4132. const IppsDFTOutOrdSpec_C_32fc* pDFTSpec, Ipp8u* pBuffer ))
  4133. IPPAPI (IppStatus, ippsDFTOutOrdInv_CToC_32fc,
  4134. ( const Ipp32fc* pSrc, Ipp32fc* pDst,
  4135. const IppsDFTOutOrdSpec_C_32fc* pDFTSpec, Ipp8u* pBuffer ))
  4136. IPPAPI (IppStatus, ippsDFTOutOrdFwd_CToC_64fc,
  4137. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  4138. const IppsDFTOutOrdSpec_C_64fc* pDFTSpec, Ipp8u* pBuffer ))
  4139. IPPAPI (IppStatus, ippsDFTOutOrdInv_CToC_64fc,
  4140. ( const Ipp64fc* pSrc, Ipp64fc* pDst,
  4141. const IppsDFTOutOrdSpec_C_64fc* pDFTSpec, Ipp8u* pBuffer ))
  4142. /* /////////////////////////////////////////////////////////////////////////////
  4143. // DFT Real Packed Transforms
  4144. ///////////////////////////////////////////////////////////////////////////// */
  4145. /* /////////////////////////////////////////////////////////////////////////////
  4146. // Name: ippsDFTFwd_RToPerm, ippsDFTFwd_RToPack, ippsDFTFwd_RToCCS
  4147. // ippsDFTInv_PermToR, ippsDFTInv_PackToR, ippsDFTInv_CCSToR
  4148. // Purpose: compute forward and inverse DFT of real signal
  4149. // using Perm, Pack or Ccs packed format
  4150. // Arguments:
  4151. // pDFTSpec - pointer to DFT context
  4152. // pSrc - pointer to source signal
  4153. // pDst - pointer to destination signal
  4154. // pBuffer - pointer to work buffer
  4155. // scaleFactor
  4156. // - scale factor for output result
  4157. // Return:
  4158. // ippStsNoErr no errors
  4159. // ippStsNullPtrErr pDFTSpec == NULL or
  4160. // pSrc == NULL or pDst == NULL
  4161. // ippStsContextMatchErr bad context identifier
  4162. // ippStsMemAllocErr memory allocation error
  4163. */
  4164. IPPAPI (IppStatus, ippsDFTFwd_RToPerm_16s_Sfs,
  4165. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4166. const IppsDFTSpec_R_16s* pDFTSpec,
  4167. int scaleFactor, Ipp8u* pBuffer ))
  4168. IPPAPI (IppStatus, ippsDFTFwd_RToPack_16s_Sfs,
  4169. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4170. const IppsDFTSpec_R_16s* pDFTSpec,
  4171. int scaleFactor, Ipp8u* pBuffer ))
  4172. IPPAPI (IppStatus, ippsDFTFwd_RToCCS_16s_Sfs,
  4173. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4174. const IppsDFTSpec_R_16s* pDFTSpec,
  4175. int scaleFactor, Ipp8u* pBuffer ))
  4176. IPPAPI (IppStatus, ippsDFTInv_PermToR_16s_Sfs,
  4177. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4178. const IppsDFTSpec_R_16s* pDFTSpec,
  4179. int scaleFactor, Ipp8u* pBuffer ))
  4180. IPPAPI (IppStatus, ippsDFTInv_PackToR_16s_Sfs,
  4181. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4182. const IppsDFTSpec_R_16s* pDFTSpec,
  4183. int scaleFactor, Ipp8u* pBuffer ))
  4184. IPPAPI (IppStatus, ippsDFTInv_CCSToR_16s_Sfs,
  4185. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4186. const IppsDFTSpec_R_16s* pDFTSpec,
  4187. int scaleFactor, Ipp8u* pBuffer ))
  4188. IPPAPI (IppStatus, ippsDFTFwd_RToPerm_32f,
  4189. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4190. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4191. IPPAPI (IppStatus, ippsDFTFwd_RToPack_32f,
  4192. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4193. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4194. IPPAPI (IppStatus, ippsDFTFwd_RToCCS_32f,
  4195. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4196. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4197. IPPAPI (IppStatus, ippsDFTInv_PermToR_32f,
  4198. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4199. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4200. IPPAPI (IppStatus, ippsDFTInv_PackToR_32f,
  4201. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4202. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4203. IPPAPI (IppStatus, ippsDFTInv_CCSToR_32f,
  4204. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4205. const IppsDFTSpec_R_32f* pDFTSpec, Ipp8u* pBuffer ))
  4206. IPPAPI (IppStatus, ippsDFTFwd_RToPerm_64f,
  4207. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4208. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4209. IPPAPI (IppStatus, ippsDFTFwd_RToPack_64f,
  4210. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4211. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4212. IPPAPI (IppStatus, ippsDFTFwd_RToCCS_64f,
  4213. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4214. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4215. IPPAPI (IppStatus, ippsDFTInv_PermToR_64f,
  4216. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4217. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4218. IPPAPI (IppStatus, ippsDFTInv_PackToR_64f,
  4219. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4220. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4221. IPPAPI (IppStatus, ippsDFTInv_CCSToR_64f,
  4222. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4223. const IppsDFTSpec_R_64f* pDFTSpec, Ipp8u* pBuffer ))
  4224. /* /////////////////////////////////////////////////////////////////////////////
  4225. // Vector multiplication in RCPack and in RCPerm formats
  4226. ///////////////////////////////////////////////////////////////////////////// */
  4227. /* ////////////////////////////////////////////////////////////////////////////
  4228. // Names: ippsMulPack, ippsMulPerm
  4229. // Purpose: multiply two vectors stored in RCPack and RCPerm formats
  4230. // Parameters:
  4231. // pSrc pointer to input vector (in-place case)
  4232. // pSrcDst pointer to output vector (in-place case)
  4233. // pSrc1 pointer to first input vector
  4234. // pSrc2 pointer to second input vector
  4235. // pDst pointer to output vector
  4236. // length vector's length
  4237. // scaleFactor scale factor
  4238. // Return:
  4239. // ippStsNullPtrErr pointer(s) to the data is NULL
  4240. // ippStsSizeErr vector`s length is less or equal zero
  4241. // ippStsNoErr otherwise
  4242. */
  4243. IPPAPI(IppStatus, ippsMulPack_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst, int length, int scaleFactor))
  4244. IPPAPI(IppStatus, ippsMulPerm_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst, int length, int scaleFactor))
  4245. IPPAPI(IppStatus, ippsMulPack_32f_I, (const Ipp32f* pSrc, Ipp32f* pSrcDst, int length))
  4246. IPPAPI(IppStatus, ippsMulPerm_32f_I, (const Ipp32f* pSrc, Ipp32f* pSrcDst, int length))
  4247. IPPAPI(IppStatus, ippsMulPack_64f_I, (const Ipp64f* pSrc, Ipp64f* pSrcDst, int length))
  4248. IPPAPI(IppStatus, ippsMulPerm_64f_I, (const Ipp64f* pSrc, Ipp64f* pSrcDst, int length))
  4249. IPPAPI(IppStatus, ippsMulPack_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, Ipp16s* pDst, int length, int scaleFactor))
  4250. IPPAPI(IppStatus, ippsMulPerm_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, Ipp16s* pDst, int length, int scaleFactor))
  4251. IPPAPI(IppStatus, ippsMulPack_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2, Ipp32f* pDst, int length))
  4252. IPPAPI(IppStatus, ippsMulPerm_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2, Ipp32f* pDst, int length))
  4253. IPPAPI(IppStatus, ippsMulPack_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2, Ipp64f* pDst, int length))
  4254. IPPAPI(IppStatus, ippsMulPerm_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2, Ipp64f* pDst, int length))
  4255. /* ////////////////////////////////////////////////////////////////////////////
  4256. // Names: ippsMulPackConj
  4257. // Purpose: multiply on a complex conjugate vector and store in RCPack format
  4258. // Parameters:
  4259. // pSrc pointer to input vector (in-place case)
  4260. // pSrcDst pointer to output vector (in-place case)
  4261. // length vector's length
  4262. // Return:
  4263. // ippStsNullPtrErr pointer(s) to the data is NULL
  4264. // ippStsSizeErr vector`s length is less or equal zero
  4265. // ippStsNoErr otherwise
  4266. */
  4267. IPPAPI(IppStatus, ippsMulPackConj_32f_I, (const Ipp32f* pSrc, Ipp32f* pSrcDst, int length))
  4268. IPPAPI(IppStatus, ippsMulPackConj_64f_I, (const Ipp64f* pSrc, Ipp64f* pSrcDst, int length))
  4269. /* /////////////////////////////////////////////////////////////////////////////
  4270. // Names: ippsGoertz
  4271. // Purpose: compute DFT for single frequency (Goertzel algorithm)
  4272. // Parameters:
  4273. // freq single relative frequency value [0, 1.0)
  4274. // pSrc pointer to the input vector
  4275. // len length of the vector
  4276. // pVal pointer to the DFT result value computed
  4277. // scaleFactor scale factor value
  4278. // Return:
  4279. // ippStsNullPtrErr pointer to the data is NULL
  4280. // ippStsSizeErr length of the vector is less or equal zero
  4281. // ippStsRelFreqErr frequency value out of range
  4282. // ippStsNoErr otherwise
  4283. */
  4284. IPPAPI(IppStatus, ippsGoertz_32fc, (const Ipp32fc* pSrc, int len, Ipp32fc* pVal, Ipp32f rFreq))
  4285. IPPAPI(IppStatus, ippsGoertz_64fc, (const Ipp64fc* pSrc, int len, Ipp64fc* pVal, Ipp64f rFreq))
  4286. IPPAPI(IppStatus, ippsGoertz_16sc_Sfs, (const Ipp16sc* pSrc, int len, Ipp16sc* pVal, Ipp32f rFreq, int scaleFactor))
  4287. IPPAPI(IppStatus, ippsGoertz_32f, (const Ipp32f* pSrc, int len, Ipp32fc* pVal, Ipp32f rFreq))
  4288. IPPAPI(IppStatus, ippsGoertz_16s_Sfs, (const Ipp16s* pSrc, int len, Ipp16sc* pVal, Ipp32f rFreq, int scaleFactor))
  4289. IPPAPI(IppStatus, ippsGoertz_64f, (const Ipp64f* pSrc, int len, Ipp64fc* pVal, Ipp64f rFreq))
  4290. /* /////////////////////////////////////////////////////////////////////////////
  4291. // Names: ippsGoertzTwo
  4292. // Purpose: compute DFT for dual frequency (Goertzel algorithm)
  4293. // Parameters:
  4294. // freq pointer to two relative frequency values [0, 1.0)
  4295. // pSrc pointer to the input vector
  4296. // len length of the vector
  4297. // pVal pointer to the DFT result value computed
  4298. // scaleFactor scale factor value
  4299. // Return:
  4300. // ippStsNullPtrErr pointer to the data is NULL
  4301. // ippStsSizeErr length of the vector is less or equal zero
  4302. // ippStsRelFreqErr frequency values out of range
  4303. // ippStsNoErr otherwise
  4304. */
  4305. IPPAPI(IppStatus, ippsGoertzTwo_32fc, (const Ipp32fc* pSrc, int len,
  4306. Ipp32fc val[2], const Ipp32f rFreq[2] ))
  4307. IPPAPI(IppStatus, ippsGoertzTwo_64fc, (const Ipp64fc* pSrc, int len,
  4308. Ipp64fc val[2], const Ipp64f rFreq[2] ))
  4309. IPPAPI(IppStatus, ippsGoertzTwo_16sc_Sfs, (const Ipp16sc* pSrc, int len,
  4310. Ipp16sc val[2], const Ipp32f rFreq[2], int scaleFactor))
  4311. IPPAPI(IppStatus, ippsGoertzTwo_32f, (const Ipp32f* pSrc, int len,
  4312. Ipp32fc val[2], const Ipp32f rFreq[2] ))
  4313. IPPAPI(IppStatus, ippsGoertzTwo_64f, (const Ipp64f* pSrc, int len,
  4314. Ipp64fc val[2], const Ipp64f rFreq[2] ))
  4315. /* /////////////////////////////////////////////////////////////////////////////
  4316. // Names: ippsGoertzQ15
  4317. // Purpose: compute DFT for single frequency (Goertzel algorithm)
  4318. // Parameters:
  4319. // rFreqQ15 single relative frequency value [0, 32767]
  4320. // pSrc pointer to the input vector
  4321. // len length of the vector
  4322. // pVal pointer to the DFT result value computed
  4323. // scaleFactor scale factor value
  4324. // Return:
  4325. // ippStsNullPtrErr pointer to the data is NULL
  4326. // ippStsSizeErr length of the vector is less or equal zero
  4327. // ippStsRelFreqErr frequency value out of range
  4328. // ippStsNoErr otherwise
  4329. */
  4330. IPPAPI(IppStatus, ippsGoertzQ15_16sc_Sfs,
  4331. ( const Ipp16sc* pSrc, int len, Ipp16sc* pVal,
  4332. Ipp16s rFreqQ15, int scaleFactor ))
  4333. /* /////////////////////////////////////////////////////////////////////////////
  4334. // Names: ippsGoertzTwoQ15
  4335. // Purpose: compute DFT for dual frequency (Goertzel algorithm)
  4336. // Parameters:
  4337. // rFreqQ15 pointer to two relative frequency values [0, 32767]
  4338. // pSrc pointer to the input vector
  4339. // len length of the vector
  4340. // pVal pointer to the DFT result value computed
  4341. // scaleFactor scale factor value
  4342. // Return:
  4343. // ippStsNullPtrErr pointer to the data is NULL
  4344. // ippStsSizeErr length of the vector is less or equal zero
  4345. // ippStsRelFreqErr frequency values out of range
  4346. // ippStsNoErr otherwise
  4347. */
  4348. IPPAPI(IppStatus, ippsGoertzTwoQ15_16sc_Sfs,
  4349. ( const Ipp16sc* pSrc, int len, Ipp16sc pVal[2],
  4350. const Ipp16s rFreqQ15[2], int scaleFactor ))
  4351. /* /////////////////////////////////////////////////////////////////////////////
  4352. // Definitions for DCT Functions
  4353. ///////////////////////////////////////////////////////////////////////////// */
  4354. #if !defined( _OWN_BLDPCS )
  4355. typedef struct DCTFwdSpec_16s IppsDCTFwdSpec_16s;
  4356. typedef struct DCTInvSpec_16s IppsDCTInvSpec_16s;
  4357. typedef struct DCTFwdSpec_32f IppsDCTFwdSpec_32f;
  4358. typedef struct DCTInvSpec_32f IppsDCTInvSpec_32f;
  4359. typedef struct DCTFwdSpec_64f IppsDCTFwdSpec_64f;
  4360. typedef struct DCTInvSpec_64f IppsDCTInvSpec_64f;
  4361. #endif /* _OWN_BLDPCS */
  4362. /* /////////////////////////////////////////////////////////////////////////////
  4363. // DCT Get Size Functions
  4364. ///////////////////////////////////////////////////////////////////////////// */
  4365. /* /////////////////////////////////////////////////////////////////////////////
  4366. // Name: ippsDCTFwdGetSize, ippsDCTInvGetSize
  4367. // Purpose: get sizes of the DCTSpec and buffers (on bytes)
  4368. // Arguments:
  4369. // len - number of samples in DCT
  4370. // hint - code specific use hints
  4371. // pSpecSize - where write size of DCTSpec
  4372. // pSpecBufferSize - where write size of buffer for DCTInit functions
  4373. // pBufferSize - where write size of buffer for DCT calculation
  4374. // Return:
  4375. // ippStsNoErr no errors
  4376. // ippStsNullPtrErr pSpecSize == NULL or pSpecBufferSize == NULL or
  4377. // pBufferSize == NULL
  4378. // ippStsSizeErr bad the len value
  4379. */
  4380. IPPAPI (IppStatus, ippsDCTFwdGetSize_16s,
  4381. ( int len, IppHintAlgorithm hint,
  4382. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4383. IPPAPI (IppStatus, ippsDCTInvGetSize_16s,
  4384. ( int len, IppHintAlgorithm hint,
  4385. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4386. IPPAPI (IppStatus, ippsDCTFwdGetSize_32f,
  4387. ( int len, IppHintAlgorithm hint,
  4388. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4389. IPPAPI (IppStatus, ippsDCTInvGetSize_32f,
  4390. ( int len, IppHintAlgorithm hint,
  4391. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4392. IPPAPI (IppStatus, ippsDCTFwdGetSize_64f,
  4393. ( int len, IppHintAlgorithm hint,
  4394. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4395. IPPAPI (IppStatus, ippsDCTInvGetSize_64f,
  4396. ( int len, IppHintAlgorithm hint,
  4397. int* pSpecSize, int* pSpecBufferSize, int* pBufferSize ))
  4398. /* /////////////////////////////////////////////////////////////////////////////
  4399. // DCT Context Functions
  4400. ///////////////////////////////////////////////////////////////////////////// */
  4401. /* /////////////////////////////////////////////////////////////////////////////
  4402. // Name: ippsDCTFwdInit, ippsDCTInvInit
  4403. // Purpose: initialize of DCT context
  4404. // Arguments:
  4405. // len - number of samples in DCT
  4406. // hint - code specific use hints
  4407. // ppDCTSpec - where write pointer to new context
  4408. // pSpec - pointer to area for DCTSpec
  4409. // pSpecBuffer - pointer to work buffer
  4410. // Return:
  4411. // ippStsNoErr no errors
  4412. // ippStsNullPtrErr ppDCTSpec == NULL or
  4413. // pSpec == NULL or pMemInit == NULL
  4414. // ippStsSizeErr bad the len value
  4415. */
  4416. IPPAPI (IppStatus, ippsDCTFwdInit_16s,
  4417. ( IppsDCTFwdSpec_16s** ppDCTSpec,
  4418. int len, IppHintAlgorithm hint,
  4419. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4420. IPPAPI (IppStatus, ippsDCTInvInit_16s,
  4421. ( IppsDCTInvSpec_16s** ppDCTSpec,
  4422. int len, IppHintAlgorithm hint,
  4423. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4424. IPPAPI (IppStatus, ippsDCTFwdInit_32f,
  4425. ( IppsDCTFwdSpec_32f** ppDCTSpec,
  4426. int len, IppHintAlgorithm hint,
  4427. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4428. IPPAPI (IppStatus, ippsDCTInvInit_32f,
  4429. ( IppsDCTInvSpec_32f** ppDCTSpec,
  4430. int len, IppHintAlgorithm hint,
  4431. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4432. IPPAPI (IppStatus, ippsDCTFwdInit_64f,
  4433. ( IppsDCTFwdSpec_64f** ppDCTSpec,
  4434. int len, IppHintAlgorithm hint,
  4435. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4436. IPPAPI (IppStatus, ippsDCTInvInit_64f,
  4437. ( IppsDCTInvSpec_64f** ppDCTSpec,
  4438. int len, IppHintAlgorithm hint,
  4439. Ipp8u* pSpec, Ipp8u* pSpecBuffer ))
  4440. /* /////////////////////////////////////////////////////////////////////////////
  4441. // Name: ippsDCTFwdInitAlloc, ippsDCTInvInitAlloc
  4442. // Purpose: create and initialize of DCT context
  4443. // Arguments:
  4444. // len - number of samples in DCT
  4445. // hint - code specific use hints
  4446. // ppDCTSpec - where write pointer to new context
  4447. // Return:
  4448. // ippStsNoErr no errors
  4449. // ippStsNullPtrErr ppDCTSpec == NULL
  4450. // ippStsSizeErr bad the len value
  4451. // ippStsMemAllocErr memory allocation error
  4452. */
  4453. IPPAPI (IppStatus, ippsDCTFwdInitAlloc_16s,
  4454. ( IppsDCTFwdSpec_16s** ppDCTSpec,
  4455. int len, IppHintAlgorithm hint ))
  4456. IPPAPI (IppStatus, ippsDCTInvInitAlloc_16s,
  4457. ( IppsDCTInvSpec_16s** ppDCTSpec,
  4458. int len, IppHintAlgorithm hint ))
  4459. IPPAPI (IppStatus, ippsDCTFwdInitAlloc_32f,
  4460. ( IppsDCTFwdSpec_32f** ppDCTSpec,
  4461. int len, IppHintAlgorithm hint ))
  4462. IPPAPI (IppStatus, ippsDCTInvInitAlloc_32f,
  4463. ( IppsDCTInvSpec_32f** ppDCTSpec,
  4464. int len, IppHintAlgorithm hint ))
  4465. IPPAPI (IppStatus, ippsDCTFwdInitAlloc_64f,
  4466. ( IppsDCTFwdSpec_64f** ppDCTSpec,
  4467. int len, IppHintAlgorithm hint ))
  4468. IPPAPI (IppStatus, ippsDCTInvInitAlloc_64f,
  4469. ( IppsDCTInvSpec_64f** ppDCTSpec,
  4470. int len, IppHintAlgorithm hint ))
  4471. /* /////////////////////////////////////////////////////////////////////////////
  4472. // Name: ippsDCTFwdFree, ippsDCTInvFree
  4473. // Purpose: delete DCT context
  4474. // Arguments:
  4475. // pDCTSpec - pointer to DCT context to be deleted
  4476. // Return:
  4477. // ippStsNoErr no errors
  4478. // ippStsNullPtrErr pDCTSpec == NULL
  4479. // ippStsContextMatchErr bad context identifier
  4480. */
  4481. IPPAPI (IppStatus, ippsDCTFwdFree_16s, ( IppsDCTFwdSpec_16s* pDCTSpec ))
  4482. IPPAPI (IppStatus, ippsDCTInvFree_16s, ( IppsDCTInvSpec_16s* pDCTSpec ))
  4483. IPPAPI (IppStatus, ippsDCTFwdFree_32f, ( IppsDCTFwdSpec_32f* pDCTSpec ))
  4484. IPPAPI (IppStatus, ippsDCTInvFree_32f, ( IppsDCTInvSpec_32f* pDCTSpec ))
  4485. IPPAPI (IppStatus, ippsDCTFwdFree_64f, ( IppsDCTFwdSpec_64f* pDCTSpec ))
  4486. IPPAPI (IppStatus, ippsDCTInvFree_64f, ( IppsDCTInvSpec_64f* pDCTSpec ))
  4487. /* /////////////////////////////////////////////////////////////////////////////
  4488. // DCT Buffer Size
  4489. ///////////////////////////////////////////////////////////////////////////// */
  4490. /* /////////////////////////////////////////////////////////////////////////////
  4491. // Name: ippsDCTFwdGetBufSize, ippsDCTInvGetBufSize
  4492. // Purpose: get size of the DCT work buffer (on bytes)
  4493. // Arguments:
  4494. // pDCTSpec - pointer to the DCT structure
  4495. // pBufferSize - pointer to the DCT work buffer size value
  4496. // Return:
  4497. // ippStsNoErr no errors
  4498. // ippStsNullPtrErr pDCTSpec == NULL or pSize == NULL
  4499. // ippStsContextMatchErr bad context identifier
  4500. */
  4501. IPPAPI (IppStatus, ippsDCTFwdGetBufSize_16s,
  4502. ( const IppsDCTFwdSpec_16s* pDCTSpec, int* pBufferSize ))
  4503. IPPAPI (IppStatus, ippsDCTInvGetBufSize_16s,
  4504. ( const IppsDCTInvSpec_16s* pDCTSpec, int* pBufferSize ))
  4505. IPPAPI (IppStatus, ippsDCTFwdGetBufSize_32f,
  4506. ( const IppsDCTFwdSpec_32f* pDCTSpec, int* pBufferSize ))
  4507. IPPAPI (IppStatus, ippsDCTInvGetBufSize_32f,
  4508. ( const IppsDCTInvSpec_32f* pDCTSpec, int* pBufferSize ))
  4509. IPPAPI (IppStatus, ippsDCTFwdGetBufSize_64f,
  4510. ( const IppsDCTFwdSpec_64f* pDCTSpec, int* pBufferSize ))
  4511. IPPAPI (IppStatus, ippsDCTInvGetBufSize_64f,
  4512. ( const IppsDCTInvSpec_64f* pDCTSpec, int* pBufferSize ))
  4513. /* /////////////////////////////////////////////////////////////////////////////
  4514. // DCT Transforms
  4515. ///////////////////////////////////////////////////////////////////////////// */
  4516. /* /////////////////////////////////////////////////////////////////////////////
  4517. // Name: ippsDCTFwd, ippsDCTInv
  4518. // Purpose: compute forward and inverse DCT of signal
  4519. // Arguments:
  4520. // pDCTSpec - pointer to DCT context
  4521. // pSrc - pointer to source signal
  4522. // pDst - pointer to destination signal
  4523. // pSrcDst - pointer to signal
  4524. // pBuffer - pointer to work buffer
  4525. // scaleFactor
  4526. // - scale factor for output result
  4527. // Return:
  4528. // ippStsNoErr no errors
  4529. // ippStsNullPtrErr pDCTSpec == NULL or
  4530. // pSrc == NULL or pDst == NULL or pSrcDst == NULL
  4531. // ippStsContextMatchErr bad context identifier
  4532. // ippStsMemAllocErr memory allocation error
  4533. */
  4534. IPPAPI (IppStatus, ippsDCTFwd_16s_Sfs,
  4535. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4536. const IppsDCTFwdSpec_16s* pDCTSpec,
  4537. int scaleFactor, Ipp8u* pBuffer ))
  4538. IPPAPI (IppStatus, ippsDCTInv_16s_Sfs,
  4539. ( const Ipp16s* pSrc, Ipp16s* pDst,
  4540. const IppsDCTInvSpec_16s* pDCTSpec,
  4541. int scaleFactor, Ipp8u* pBuffer ))
  4542. IPPAPI (IppStatus, ippsDCTFwd_16s_ISfs,
  4543. ( Ipp16s* pSrcDst,
  4544. const IppsDCTFwdSpec_16s* pDCTSpec,
  4545. int scaleFactor, Ipp8u* pBuffer ))
  4546. IPPAPI (IppStatus, ippsDCTInv_16s_ISfs,
  4547. ( Ipp16s* pSrcDst,
  4548. const IppsDCTInvSpec_16s* pDCTSpec,
  4549. int scaleFactor, Ipp8u* pBuffer ))
  4550. IPPAPI (IppStatus, ippsDCTFwd_32f,
  4551. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4552. const IppsDCTFwdSpec_32f* pDCTSpec, Ipp8u* pBuffer ))
  4553. IPPAPI (IppStatus, ippsDCTInv_32f,
  4554. ( const Ipp32f* pSrc, Ipp32f* pDst,
  4555. const IppsDCTInvSpec_32f* pDCTSpec, Ipp8u* pBuffer ))
  4556. IPPAPI (IppStatus, ippsDCTFwd_32f_I,
  4557. ( Ipp32f* pSrcDst,
  4558. const IppsDCTFwdSpec_32f* pDCTSpec, Ipp8u* pBuffer ))
  4559. IPPAPI (IppStatus, ippsDCTInv_32f_I,
  4560. ( Ipp32f* pSrcDst,
  4561. const IppsDCTInvSpec_32f* pDCTSpec, Ipp8u* pBuffer ))
  4562. IPPAPI (IppStatus, ippsDCTFwd_64f,
  4563. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4564. const IppsDCTFwdSpec_64f* pDCTSpec, Ipp8u* pBuffer ))
  4565. IPPAPI (IppStatus, ippsDCTInv_64f,
  4566. ( const Ipp64f* pSrc, Ipp64f* pDst,
  4567. const IppsDCTInvSpec_64f* pDCTSpec, Ipp8u* pBuffer ))
  4568. IPPAPI (IppStatus, ippsDCTFwd_64f_I,
  4569. ( Ipp64f* pSrcDst,
  4570. const IppsDCTFwdSpec_64f* pDCTSpec, Ipp8u* pBuffer ))
  4571. IPPAPI (IppStatus, ippsDCTInv_64f_I,
  4572. ( Ipp64f* pSrDst,
  4573. const IppsDCTInvSpec_64f* pDCTSpec, Ipp8u* pBuffer ))
  4574. /* /////////////////////////////////////////////////////////////////////////////
  4575. // Wavelet Transform Functions for Fixed Filter Banks
  4576. ///////////////////////////////////////////////////////////////////////////// */
  4577. /* //////////////////////////////////////////////////////////////////////
  4578. // Name: ippsWTHaar
  4579. // Purpose: one level Haar Wavelet Transform
  4580. // Arguments:
  4581. // pSrc - source vector;
  4582. // len - length of source vector;
  4583. // pDstLow - coarse "low frequency" component destination;
  4584. // pDstHigh - detail "high frequency" component destination;
  4585. // pSrcLow - coarse "low frequency" component source;
  4586. // pSrcHigh - detail "high frequency" component source;
  4587. // pDst - destination vector;
  4588. // scaleFactor - scale factor value
  4589. // Return:
  4590. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  4591. // ippStsSizeErr the length is less or equal zero
  4592. // ippStsNoErr otherwise
  4593. */
  4594. IPPAPI (IppStatus, ippsWTHaarFwd_8s,
  4595. ( const Ipp8s* pSrc, int len,
  4596. Ipp8s* pDstLow, Ipp8s* pDstHigh ))
  4597. IPPAPI (IppStatus, ippsWTHaarFwd_16s,
  4598. ( const Ipp16s* pSrc, int len,
  4599. Ipp16s* pDstLow, Ipp16s* pDstHigh ))
  4600. IPPAPI (IppStatus, ippsWTHaarFwd_32s,
  4601. ( const Ipp32s* pSrc, int len,
  4602. Ipp32s* pDstLow, Ipp32s* pDstHigh ))
  4603. IPPAPI (IppStatus, ippsWTHaarFwd_64s,
  4604. ( const Ipp64s* pSrc, int len,
  4605. Ipp64s* pDstLow, Ipp64s* pDstHigh ))
  4606. IPPAPI (IppStatus, ippsWTHaarFwd_32f,
  4607. ( const Ipp32f* pSrc, int len,
  4608. Ipp32f* pDstLow, Ipp32f* pDstHigh ))
  4609. IPPAPI (IppStatus, ippsWTHaarFwd_64f,
  4610. ( const Ipp64f* pSrc, int len,
  4611. Ipp64f* pDstLow, Ipp64f* pDstHigh ))
  4612. IPPAPI (IppStatus, ippsWTHaarFwd_8s_Sfs,
  4613. ( const Ipp8s* pSrc, int len,
  4614. Ipp8s* pDstLow, Ipp8s* pDstHigh, int scaleFactor))
  4615. IPPAPI (IppStatus, ippsWTHaarFwd_16s_Sfs,
  4616. ( const Ipp16s* pSrc, int len,
  4617. Ipp16s* pDstLow, Ipp16s* pDstHigh, int scaleFactor ))
  4618. IPPAPI (IppStatus, ippsWTHaarFwd_32s_Sfs,
  4619. ( const Ipp32s* pSrc, int len,
  4620. Ipp32s* pDstLow, Ipp32s* pDstHigh, int scaleFactor ))
  4621. IPPAPI (IppStatus, ippsWTHaarFwd_64s_Sfs,
  4622. ( const Ipp64s* pSrc, int len,
  4623. Ipp64s* pDstLow, Ipp64s* pDstHigh, int scaleFactor ))
  4624. IPPAPI (IppStatus, ippsWTHaarInv_8s,
  4625. ( const Ipp8s* pSrcLow, const Ipp8s* pSrcHigh,
  4626. Ipp8s* pDst, int len ))
  4627. IPPAPI (IppStatus, ippsWTHaarInv_16s,
  4628. ( const Ipp16s* pSrcLow, const Ipp16s* pSrcHigh,
  4629. Ipp16s* pDst, int len ))
  4630. IPPAPI (IppStatus, ippsWTHaarInv_32s,
  4631. ( const Ipp32s* pSrcLow, const Ipp32s* pSrcHigh,
  4632. Ipp32s* pDst, int len ))
  4633. IPPAPI (IppStatus, ippsWTHaarInv_64s,
  4634. ( const Ipp64s* pSrcLow, const Ipp64s* pSrcHigh,
  4635. Ipp64s* pDst, int len ))
  4636. IPPAPI (IppStatus, ippsWTHaarInv_32f,
  4637. ( const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh,
  4638. Ipp32f* pDst, int len ))
  4639. IPPAPI (IppStatus, ippsWTHaarInv_64f,
  4640. ( const Ipp64f* pSrcLow, const Ipp64f* pSrcHigh,
  4641. Ipp64f* pDst, int len ))
  4642. IPPAPI (IppStatus, ippsWTHaarInv_8s_Sfs,
  4643. ( const Ipp8s* pSrcLow, const Ipp8s* pSrcHigh,
  4644. Ipp8s* pDst, int len, int scaleFactor ))
  4645. IPPAPI (IppStatus, ippsWTHaarInv_16s_Sfs,
  4646. ( const Ipp16s* pSrcLow, const Ipp16s* pSrcHigh,
  4647. Ipp16s* pDst, int len, int scaleFactor ))
  4648. IPPAPI (IppStatus, ippsWTHaarInv_32s_Sfs,
  4649. ( const Ipp32s* pSrcLow, const Ipp32s* pSrcHigh,
  4650. Ipp32s* pDst, int len, int scaleFactor ))
  4651. IPPAPI (IppStatus, ippsWTHaarInv_64s_Sfs,
  4652. ( const Ipp64s* pSrcLow, const Ipp64s* pSrcHigh,
  4653. Ipp64s* pDst, int len, int scaleFactor ))
  4654. /* /////////////////////////////////////////////////////////////////////////////
  4655. // Wavelet Transform Fucntions for User Filter Banks
  4656. ///////////////////////////////////////////////////////////////////////////// */
  4657. #if !defined( _OWN_BLDPCS )
  4658. struct sWTFwdState_32f;
  4659. typedef struct sWTFwdState_32f IppsWTFwdState_32f;
  4660. struct sWTFwdState_8s32f;
  4661. typedef struct sWTFwdState_8s32f IppsWTFwdState_8s32f;
  4662. struct sWTFwdState_8u32f;
  4663. typedef struct sWTFwdState_8u32f IppsWTFwdState_8u32f;
  4664. struct sWTFwdState_16s32f;
  4665. typedef struct sWTFwdState_16s32f IppsWTFwdState_16s32f;
  4666. struct sWTFwdState_16u32f;
  4667. typedef struct sWTFwdState_16u32f IppsWTFwdState_16u32f;
  4668. struct sWTInvState_32f;
  4669. typedef struct sWTInvState_32f IppsWTInvState_32f;
  4670. struct sWTInvState_32f8s;
  4671. typedef struct sWTInvState_32f8s IppsWTInvState_32f8s;
  4672. struct sWTInvState_32f8u;
  4673. typedef struct sWTInvState_32f8u IppsWTInvState_32f8u;
  4674. struct sWTInvState_32f16s;
  4675. typedef struct sWTInvState_32f16s IppsWTInvState_32f16s;
  4676. struct sWTInvState_32f16u;
  4677. typedef struct sWTInvState_32f16u IppsWTInvState_32f16u;
  4678. #endif /* _OWN_BLDPCS */
  4679. /* //////////////////////////////////////////////////////////////////////
  4680. // Name: ippsWTFwdInitAlloc_32f, ippsWTFwdInitAlloc_8s32f,
  4681. // ippsWTFwdInitAlloc_8u32f, ippsWTFwdInitAlloc_16s32f,
  4682. // ippsWTFwdInitAlloc_16u32f
  4683. //
  4684. // Purpose: Allocate and initialize
  4685. // forward wavelet transform pState structure.
  4686. // Parameters:
  4687. // pState - pointer to pointer to allocated and initialized
  4688. // pState structure.
  4689. // pTapsLow - pointer to lowpass filter taps;
  4690. // lenLow - length of lowpass filter;
  4691. // offsLow - input delay of lowpass filter;
  4692. // pTapsHigh - pointer to highpass filter taps;
  4693. // lenHigh - length of highpass filter;
  4694. // offsHigh - input delay of highpass filter;
  4695. //
  4696. // Returns:
  4697. // ippStsNoErr - Ok;
  4698. // ippStsNullPtrErr - pointer to filter taps are NULL
  4699. // or pointer to pState structure is NULL;
  4700. // ippStsSizeErr - filter length is less or equal zero;
  4701. // ippStsWtOffsetErr - filter delay is less than (-1).
  4702. //
  4703. // Notes: filter input delay minimum value is (-1) that corresponds to
  4704. // downsampling phase equal 1 (first sample excluded,
  4705. // second included and so on);
  4706. */
  4707. IPPAPI (IppStatus, ippsWTFwdInitAlloc_32f, (IppsWTFwdState_32f** pState,
  4708. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4709. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4710. IPPAPI (IppStatus, ippsWTFwdInitAlloc_8s32f, (IppsWTFwdState_8s32f** pState,
  4711. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4712. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4713. IPPAPI (IppStatus, ippsWTFwdInitAlloc_8u32f, (IppsWTFwdState_8u32f** pState,
  4714. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4715. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4716. IPPAPI (IppStatus, ippsWTFwdInitAlloc_16s32f, (IppsWTFwdState_16s32f** pState,
  4717. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4718. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4719. IPPAPI (IppStatus, ippsWTFwdInitAlloc_16u32f, (IppsWTFwdState_16u32f** pState,
  4720. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4721. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4722. /* //////////////////////////////////////////////////////////////////////
  4723. // Name: ippsWTFwdSetDlyLine_32f, ippsWTFwdSetDlyLine_8s32f,
  4724. // ippsWTFwdSetDlyLine_8u32f, ippsWTFwdSetDlyLine_16s32f,
  4725. // ippsWTFwdSetDlyLine_16u32f
  4726. //
  4727. // Purpose: The function copies the pointed vectors to internal delay lines.
  4728. //
  4729. // Parameters:
  4730. // pState - pointer to pState structure;
  4731. // pDlyLow - pointer to delay line for lowpass filtering;
  4732. // pDlyHigh - pointer to delay line for highpass filtering.
  4733. //
  4734. // Returns:
  4735. // ippStsNoErr - Ok;
  4736. // ippStsNullPtrErr - some of pointers pDlyLow
  4737. // or pDlyHigh vectors are NULL;
  4738. // ippStspStateMatchErr - mismatch pState structure.
  4739. //
  4740. // Notes: lengths of delay lines:
  4741. // len(pDlyLow) = lenLow + offsLow - 1;
  4742. // len(pDlyHigh) = lenHigh + offsHigh - 1;
  4743. // lenLow, offsLow, lenHigh, offsHigh - parameters
  4744. // for ippsWTFwdInitAlloc function.
  4745. */
  4746. IPPAPI (IppStatus, ippsWTFwdSetDlyLine_32f, (IppsWTFwdState_32f* pState,
  4747. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4748. IPPAPI (IppStatus, ippsWTFwdSetDlyLine_8s32f, (IppsWTFwdState_8s32f* pState,
  4749. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4750. IPPAPI (IppStatus, ippsWTFwdSetDlyLine_8u32f, (IppsWTFwdState_8u32f* pState,
  4751. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4752. IPPAPI (IppStatus, ippsWTFwdSetDlyLine_16s32f, (IppsWTFwdState_16s32f* pState,
  4753. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4754. IPPAPI (IppStatus, ippsWTFwdSetDlyLine_16u32f, (IppsWTFwdState_16u32f* pState,
  4755. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4756. /* //////////////////////////////////////////////////////////////////////
  4757. // Name: ippsWTFwdGetDlyLine_32f, ippsWTFwdGetDlyLine_8s32f,
  4758. // ippsWTFwdGetDlyLine_8u32f, ippsWTFwdGetDlyLine_16s32f,
  4759. // ippsWTFwdGetDlyLine_16u32f
  4760. //
  4761. // Purpose: The function copies data from interanl delay lines
  4762. // to the pointed vectors.
  4763. // Parameters:
  4764. // pState - pointer to pState structure;
  4765. // pDlyLow - pointer to delay line for lowpass filtering;
  4766. // pDlyHigh - pointer to delay line for highpass filtering.
  4767. //
  4768. // Returns:
  4769. // ippStsNoErr - Ok;
  4770. // ippStsNullPtrErr - some of pointers pDlyLow
  4771. // or pDlyHigh vectors are NULL;
  4772. // ippStspStateMatchErr - mismatch pState structure.
  4773. //
  4774. // Notes: lengths of delay lines:
  4775. // len(pDlyLow) = lenLow + offsLow - 1;
  4776. // len(pDlyHigh) = lenHigh + offsHigh - 1;
  4777. // lenLow, offsLow, lenHigh, offsHigh - parameters
  4778. // for ippsWTFwdInitAlloc function.
  4779. */
  4780. IPPAPI (IppStatus, ippsWTFwdGetDlyLine_32f, (IppsWTFwdState_32f* pState,
  4781. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4782. IPPAPI (IppStatus, ippsWTFwdGetDlyLine_8s32f, (IppsWTFwdState_8s32f* pState,
  4783. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4784. IPPAPI (IppStatus, ippsWTFwdGetDlyLine_8u32f, (IppsWTFwdState_8u32f* pState,
  4785. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4786. IPPAPI (IppStatus, ippsWTFwdGetDlyLine_16s32f, (IppsWTFwdState_16s32f* pState,
  4787. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4788. IPPAPI (IppStatus, ippsWTFwdGetDlyLine_16u32f, (IppsWTFwdState_16u32f* pState,
  4789. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4790. /* //////////////////////////////////////////////////////////////////////
  4791. // Name: ippsWTFwd_32f, ippsWTFwd_16s32f, ippsWTFwd_16u32f,
  4792. // ippsWTFwd_8s32f, ippsWTFwd_8u32f
  4793. //
  4794. // Purpose: Forward wavelet transform.
  4795. //
  4796. // Parameters:
  4797. // pSrc - pointer to source block of data;
  4798. // pDstLow - pointer to destination block of
  4799. // "low-frequency" component;
  4800. // pDstHigh - pointer to destination block of
  4801. // "high-frequency" component;
  4802. // dstLen - length of destination;
  4803. // pState - pointer to pState structure.
  4804. //
  4805. // Returns:
  4806. // ippStsNoErr - Ok;
  4807. // ippStsNullPtrErr - some of pointers to pSrc, pDstLow
  4808. // or pDstHigh vectors are NULL;
  4809. // ippStsSizeErr - the length is less or equal zero;
  4810. // ippStspStateMatchErr - mismatch pState structure.
  4811. //
  4812. // Notes: source block length must be 2 * dstLen.
  4813. */
  4814. IPPAPI (IppStatus, ippsWTFwd_32f, (const Ipp32f* pSrc,
  4815. Ipp32f* pDstLow, Ipp32f* pDstHigh, int dstLen,
  4816. IppsWTFwdState_32f* pState))
  4817. IPPAPI (IppStatus, ippsWTFwd_8s32f, (const Ipp8s* pSrc,
  4818. Ipp32f* pDstLow, Ipp32f* pDstHigh, int dstLen,
  4819. IppsWTFwdState_8s32f* pState))
  4820. IPPAPI (IppStatus, ippsWTFwd_8u32f, (const Ipp8u* pSrc,
  4821. Ipp32f* pDstLow, Ipp32f* pDstHigh, int dstLen,
  4822. IppsWTFwdState_8u32f* pState))
  4823. IPPAPI (IppStatus, ippsWTFwd_16s32f, (const Ipp16s* pSrc,
  4824. Ipp32f* pDstLow, Ipp32f* pDstHigh, int dstLen,
  4825. IppsWTFwdState_16s32f* pState))
  4826. IPPAPI (IppStatus, ippsWTFwd_16u32f, (
  4827. const Ipp16u* pSrc, Ipp32f* pDstLow, Ipp32f* pDstHigh, int dstLen,
  4828. IppsWTFwdState_16u32f* pState))
  4829. /* //////////////////////////////////////////////////////////////////////
  4830. // Name: ippsWTFwdFree_32f, ippsWTFwdFree_8s32f, ippsWTFwdFree_8u32f,
  4831. // ippsWTFwdFree_16s32f, ippsWTFwdFree_16u32f
  4832. //
  4833. // Purpose: Free and Deallocate forward wavelet transofrm pState structure.
  4834. //
  4835. // Parameters:
  4836. // IppsWTFwdState_32f *pState - pointer to pState structure.
  4837. //
  4838. // Returns:
  4839. // ippStsNoErr - Ok;
  4840. // ippStsNullPtrErr - Pointer to pState structure is NULL;
  4841. // ippStspStateMatchErr - Mismatch pState structure.
  4842. //
  4843. // Notes: if pointer to pState is NULL, ippStsNoErr will be returned.
  4844. */
  4845. IPPAPI (IppStatus, ippsWTFwdFree_32f, (IppsWTFwdState_32f* pState))
  4846. IPPAPI (IppStatus, ippsWTFwdFree_8s32f, (IppsWTFwdState_8s32f* pState))
  4847. IPPAPI (IppStatus, ippsWTFwdFree_8u32f, (IppsWTFwdState_8u32f* pState))
  4848. IPPAPI (IppStatus, ippsWTFwdFree_16s32f, (IppsWTFwdState_16s32f* pState))
  4849. IPPAPI (IppStatus, ippsWTFwdFree_16u32f, (IppsWTFwdState_16u32f* pState))
  4850. /* //////////////////////////////////////////////////////////////////////
  4851. // Name: ippsWTInvInitAlloc_32f, ippsWTInvInitAlloc_32f8s,
  4852. // ippsWTInvInitAlloc_32f8u, ippsWTInvInitAlloc_32f16s,
  4853. // ippsWTInvInitAlloc_32f16u
  4854. //
  4855. // Purpose: Allocate and initialize
  4856. // inverse wavelet transform pState structure.
  4857. // Parameters:
  4858. // pState - pointer to pointer to allocated and initialized
  4859. // pState structure.
  4860. // pTapsLow - pointer to lowpass filter taps;
  4861. // lenLow - length of lowpass filter;
  4862. // offsLow - input delay of lowpass filter;
  4863. // pTapsHigh - pointer to highpass filter taps;
  4864. // lenHigh - length of highpass filter;
  4865. // offsHigh - input delay of highpass filter;
  4866. //
  4867. // Returns:
  4868. // ippStsNoErr - Ok;
  4869. // ippStsNullPtrErr - pointer to filter taps are NULL
  4870. // or pointer to pState structure is NULL;
  4871. // ippStsSizeErr - filter length is less or equal zero;
  4872. // ippStsWtOffsetErr - filter delay is less than (-1).
  4873. //
  4874. // Notes: filter output delay minimum value is 0 that corresponds to
  4875. // upsampling phase equal 0 (first sample included,
  4876. // second sample is zero and so on);
  4877. // pointer to returned error status may be NULL if no error
  4878. // diagnostic required.
  4879. */
  4880. IPPAPI (IppStatus, ippsWTInvInitAlloc_32f, (IppsWTInvState_32f** pState,
  4881. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4882. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4883. IPPAPI (IppStatus, ippsWTInvInitAlloc_32f8s, (IppsWTInvState_32f8s** pState,
  4884. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4885. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4886. IPPAPI (IppStatus, ippsWTInvInitAlloc_32f8u, (IppsWTInvState_32f8u** pState,
  4887. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4888. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4889. IPPAPI (IppStatus, ippsWTInvInitAlloc_32f16s, (IppsWTInvState_32f16s** pState,
  4890. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4891. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4892. IPPAPI (IppStatus, ippsWTInvInitAlloc_32f16u, (IppsWTInvState_32f16u** pState,
  4893. const Ipp32f* pTapsLow, int lenLow, int offsLow,
  4894. const Ipp32f* pTapsHigh, int lenHigh, int offsHigh))
  4895. /* //////////////////////////////////////////////////////////////////////
  4896. // Name: ippsWTInvSetDlyLine_32f, ippsWTInvSetDlyLine_32f8s,
  4897. // ippsWTInvSetDlyLine_32f8u, ippsWTInvSetDlyLine_32f16s,
  4898. // ippsWTInvSetDlyLine_32f16u
  4899. //
  4900. // Purpose: The function copies the pointed vectors to internal delay lines.
  4901. //
  4902. // Parameters:
  4903. // pState - pointer to pState structure;
  4904. // pDlyLow - pointer to delay line for lowpass filtering;
  4905. // pDlyHigh - pointer to delay line for highpass filtering.
  4906. //
  4907. // Returns:
  4908. // ippStsNoErr - Ok;
  4909. // ippStsNullPtrErr - some of pointers pDlyLow
  4910. // or pDlyHigh vectors are NULL;
  4911. // ippStspStateMatchErr - mismatch pState structure.
  4912. //
  4913. // Notes: lengths of delay lines (as "C" expression):
  4914. // len(pDlyLow) = (lenLow + offsLow - 1) / 2;
  4915. // len(pDlyHigh) = (lenHigh + offsHigh - 1) / 2;
  4916. // lenLow, offsLow, lenHigh, offsHigh - parameters
  4917. // for ippsWTInvInitAlloc function.
  4918. */
  4919. IPPAPI (IppStatus, ippsWTInvSetDlyLine_32f, (IppsWTInvState_32f* pState,
  4920. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4921. IPPAPI (IppStatus, ippsWTInvSetDlyLine_32f8s, (IppsWTInvState_32f8s* pState,
  4922. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4923. IPPAPI (IppStatus, ippsWTInvSetDlyLine_32f8u, (IppsWTInvState_32f8u* pState,
  4924. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4925. IPPAPI (IppStatus, ippsWTInvSetDlyLine_32f16s, (IppsWTInvState_32f16s* pState,
  4926. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4927. IPPAPI (IppStatus, ippsWTInvSetDlyLine_32f16u, (IppsWTInvState_32f16u* pState,
  4928. const Ipp32f* pDlyLow, const Ipp32f* pDlyHigh))
  4929. /* //////////////////////////////////////////////////////////////////////
  4930. // Name: ippsWTInvGetDlyLine_32f, ippsWTInvGetDlyLine_32f8s,
  4931. // ippsWTInvGetDlyLine_32f8u, ippsWTInvGetDlyLine_32f16s,
  4932. // ippsWTInvGetDlyLine_32f16u
  4933. //
  4934. // Purpose: The function copies data from interanl delay lines
  4935. // to the pointed vectors.
  4936. // Parameters:
  4937. // pState - pointer to pState structure;
  4938. // pDlyLow - pointer to delay line for lowpass filtering;
  4939. // pDlyHigh - pointer to delay line for highpass filtering.
  4940. //
  4941. // Returns:
  4942. // ippStsNoErr - Ok;
  4943. // ippStsNullPtrErr - some of pointers pDlyLow
  4944. // or pDlyHigh vectors are NULL;
  4945. // ippStspStateMatchErr - mismatch pState structure.
  4946. //
  4947. // Notes: lengths of delay lines (as "C" expression):
  4948. // len(pDlyLow) = (lenLow + offsLow - 1) / 2;
  4949. // len(pDlyHigh) = (lenHigh + offsHigh - 1) / 2;
  4950. // lenLow, offsLow, lenHigh, offsHigh - parameters
  4951. // for ippsWTInvInitAlloc function.
  4952. */
  4953. IPPAPI (IppStatus, ippsWTInvGetDlyLine_32f, (IppsWTInvState_32f* pState,
  4954. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4955. IPPAPI (IppStatus, ippsWTInvGetDlyLine_32f8s, (IppsWTInvState_32f8s* pState,
  4956. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4957. IPPAPI (IppStatus, ippsWTInvGetDlyLine_32f8u, (IppsWTInvState_32f8u* pState,
  4958. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4959. IPPAPI (IppStatus, ippsWTInvGetDlyLine_32f16s, (IppsWTInvState_32f16s* pState,
  4960. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4961. IPPAPI (IppStatus, ippsWTInvGetDlyLine_32f16u, (IppsWTInvState_32f16u* pState,
  4962. Ipp32f* pDlyLow, Ipp32f* pDlyHigh))
  4963. /* //////////////////////////////////////////////////////////////////////
  4964. // Name: ippsWTInv_32f, ippsWTInv_32f16s, ippsWTInv_32f16u,
  4965. // ippsWTInv_32f8s, ippsWTInv_32f8u
  4966. //
  4967. // Purpose: Inverse wavelet transform.
  4968. //
  4969. // Parameters:
  4970. // srcLow - pointer to source block of
  4971. // "low-frequency" component;
  4972. // srcHigh - pointer to source block of
  4973. // "high-frequency" component;
  4974. // dstLen - length of components.
  4975. // dst - pointer to destination block of
  4976. // reconstructed data;
  4977. // pState - pointer to pState structure;
  4978. //
  4979. // Returns:
  4980. // ippStsNoErr - Ok;
  4981. // ippStsNullPtrErr - some of pointers to pDst pSrcLow
  4982. // or pSrcHigh vectors are NULL;
  4983. // ippStsSizeErr - the length is less or equal zero;
  4984. // ippStspStateMatchErr - mismatch pState structure.
  4985. //
  4986. // Notes: destination block length must be 2 * srcLen.
  4987. */
  4988. IPPAPI (IppStatus, ippsWTInv_32f, (
  4989. const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh, int srcLen, Ipp32f* pDst,
  4990. IppsWTInvState_32f* pState))
  4991. IPPAPI (IppStatus, ippsWTInv_32f8s, (
  4992. const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh, int srcLen, Ipp8s* pDst,
  4993. IppsWTInvState_32f8s* pState))
  4994. IPPAPI (IppStatus, ippsWTInv_32f8u, (
  4995. const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh, int srcLen, Ipp8u* pDst,
  4996. IppsWTInvState_32f8u* pState))
  4997. IPPAPI (IppStatus, ippsWTInv_32f16s, (
  4998. const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh, int srcLen, Ipp16s* pDst,
  4999. IppsWTInvState_32f16s* pState))
  5000. IPPAPI (IppStatus, ippsWTInv_32f16u, (
  5001. const Ipp32f* pSrcLow, const Ipp32f* pSrcHigh, int srcLen, Ipp16u* pDst,
  5002. IppsWTInvState_32f16u* pState))
  5003. /* //////////////////////////////////////////////////////////////////////
  5004. // Name: ippsWTInvFree_32f, ippsWTInvFree_32f8s, ippsWTInvFree_32f8u,
  5005. // ippsWTInvFree_32f16s, ippsWTInvFree_32f16u
  5006. //
  5007. // Purpose: Free and Deallocate inverse wavelet transofrm pState structure.
  5008. //
  5009. // Parameters:
  5010. // IppsWTInvState_32f *pState - pointer to pState structure.
  5011. //
  5012. // Returns:
  5013. // ippStsNoErr - Ok;
  5014. // ippStsNullPtrErr - Pointer to pState structure is NULL;
  5015. // ippStspStateMatchErr - Mismatch pState structure.
  5016. //
  5017. // Notes: if pointer to pState is NULL, ippStsNoErr will be returned.
  5018. */
  5019. IPPAPI (IppStatus, ippsWTInvFree_32f, (IppsWTInvState_32f* pState))
  5020. IPPAPI (IppStatus, ippsWTInvFree_32f8s, (IppsWTInvState_32f8s* pState))
  5021. IPPAPI (IppStatus, ippsWTInvFree_32f8u, (IppsWTInvState_32f8u* pState))
  5022. IPPAPI (IppStatus, ippsWTInvFree_32f16s, (IppsWTInvState_32f16s* pState))
  5023. IPPAPI (IppStatus, ippsWTInvFree_32f16u, (IppsWTInvState_32f16u* pState))
  5024. /* /////////////////////////////////////////////////////////////////////////////
  5025. // Filtering
  5026. ///////////////////////////////////////////////////////////////////////////// */
  5027. /* /////////////////////////////////////////////////////////////////////////////
  5028. // Convolution functions
  5029. ///////////////////////////////////////////////////////////////////////////// */
  5030. /* /////////////////////////////////////////////////////////////////////////////
  5031. // Name: ippsConv
  5032. // Purpose: Linear Convolution of 1D signals
  5033. // Parameters:
  5034. // pSrc1 pointer to the first source vector
  5035. // pSrc2 pointer to the second source vector
  5036. // lenSrc1 length of the first source vector
  5037. // lenSrc2 length of the second source vector
  5038. // pDst pointer to the destination vector
  5039. // Returns: IppStatus
  5040. // ippStsNullPtrErr pointer(s) to the data is NULL
  5041. // ippStsSizeErr length of the vectors is less or equal zero
  5042. // ippStsMemAllocErr no memory for internal buffers
  5043. // ippStsNoErr otherwise
  5044. // Notes:
  5045. // Length of the destination data vector is lenSrc1+lenSrc2-1.
  5046. // The input signal are exchangeable because of
  5047. // commutative convolution property.
  5048. // Some other values may be returned by FFT transform functions
  5049. */
  5050. IPPAPI(IppStatus, ippsConv_32f, ( const Ipp32f* pSrc1, int lenSrc1,
  5051. const Ipp32f* pSrc2, int lenSrc2, Ipp32f* pDst))
  5052. IPPAPI(IppStatus, ippsConv_16s_Sfs, ( const Ipp16s* pSrc1, int lenSrc1,
  5053. const Ipp16s* pSrc2, int lenSrc2, Ipp16s* pDst, int scaleFactor))
  5054. IPPAPI( IppStatus, ippsConv_64f,( const Ipp64f* pSrc1, int lenSrc1,
  5055. const Ipp64f* pSrc2, int lenSrc2, Ipp64f* pDst))
  5056. /* /////////////////////////////////////////////////////////////////////////////
  5057. // Name: ippsConvBiased_32f
  5058. // Purpose: Linear Convolution of 1D signals whith a bias.
  5059. // Parameters:
  5060. // pSrc1 pointer to the first source vector
  5061. // pSrc2 pointer to the second source vector
  5062. // lenSrc1 length of the first source vector
  5063. // lenSrc2 length of the second source vector
  5064. // pDst pointer to the destination vector
  5065. // lenDst length of the destination vector
  5066. // bias
  5067. // Returns: IppStatus
  5068. // ippStsNullPtrErr pointer(s) to the data is NULL
  5069. // ippStsSizeErr length of the vectors is less or equal zero
  5070. // ippStsNoErr otherwise
  5071. */
  5072. IPPAPI ( IppStatus, ippsConvBiased_32f,
  5073. ( const Ipp32f *pSrc1, int len1,
  5074. const Ipp32f *pSrc2, int len2,
  5075. Ipp32f *pDst, int lenDst, int bias ))
  5076. /* /////////////////////////////////////////////////////////////////////////////
  5077. // Names: ippsConvCyclic
  5078. // Purpose: Cyclic Convolution of 1D signals of fixed size
  5079. // Parameters: the pointers to data of fixed size
  5080. // Returns: IppStatus
  5081. // ippStsNoErr parameters are not checked
  5082. // Notes:
  5083. // The length of the convolution is given in the function name.
  5084. */
  5085. IPPAPI(IppStatus, ippsConvCyclic8x8_32f,( const Ipp32f* x,
  5086. const Ipp32f* h, Ipp32f* y ))
  5087. IPPAPI(IppStatus, ippsConvCyclic8x8_16s_Sfs,( const Ipp16s* x,
  5088. const Ipp16s* h, Ipp16s* y, int scaleFactor ))
  5089. IPPAPI(IppStatus, ippsConvCyclic4x4_32f32fc,( const Ipp32f* x,
  5090. const Ipp32fc* h, Ipp32fc* y ))
  5091. /* /////////////////////////////////////////////////////////////////////////////
  5092. // IIR filters (float and double taps versions)
  5093. ///////////////////////////////////////////////////////////////////////////// */
  5094. #if !defined( _OWN_BLDPCS )
  5095. struct IIRState_32f;
  5096. typedef struct IIRState_32f IppsIIRState_32f;
  5097. struct IIRState_32fc;
  5098. typedef struct IIRState_32fc IppsIIRState_32fc;
  5099. struct IIRState32f_16s;
  5100. typedef struct IIRState32f_16s IppsIIRState32f_16s;
  5101. struct IIRState32fc_16sc;
  5102. typedef struct IIRState32fc_16sc IppsIIRState32fc_16sc;
  5103. struct IIRState_64f;
  5104. typedef struct IIRState_64f IppsIIRState_64f;
  5105. struct IIRState_64fc;
  5106. typedef struct IIRState_64fc IppsIIRState_64fc;
  5107. struct IIRState64f_32f;
  5108. typedef struct IIRState64f_32f IppsIIRState64f_32f;
  5109. struct IIRState64fc_32fc;
  5110. typedef struct IIRState64fc_32fc IppsIIRState64fc_32fc;
  5111. struct IIRState64f_32s;
  5112. typedef struct IIRState64f_32s IppsIIRState64f_32s;
  5113. struct IIRState64fc_32sc;
  5114. typedef struct IIRState64fc_32sc IppsIIRState64fc_32sc;
  5115. struct IIRState64f_16s;
  5116. typedef struct IIRState64f_16s IppsIIRState64f_16s;
  5117. struct IIRState64fc_16sc;
  5118. typedef struct IIRState64fc_16sc IppsIIRState64fc_16sc;
  5119. struct IIRState32s_16s;
  5120. typedef struct IIRState32s_16s IppsIIRState32s_16s;
  5121. struct IIRState32sc_16sc;
  5122. typedef struct IIRState32sc_16sc IppsIIRState32sc_16sc;
  5123. #endif /* _OWN_BLDPCS */
  5124. /* /////////////////////////////////////////////////////////////////////////////
  5125. // Initialize context
  5126. ///////////////////////////////////////////////////////////////////////////// */
  5127. /* /////////////////////////////////////////////////////////////////////////////
  5128. // Names: ippsIIRInitAlloc, ippsIIRFree
  5129. // Purpose: initialize context arbitrary order IIR filter
  5130. // Parameters:
  5131. // ppState - double pointer to filter context
  5132. // pState - pointer to filter context
  5133. // pTaps - pointer to filter coefficients
  5134. // order - arbitrary filter order
  5135. // pDelay - pointer to delay line data, can be NULL
  5136. // Return: IppStatus
  5137. // ippStsMemAllocErr - memory allocation error
  5138. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5139. // ippStsIIROrderErr - filter order < 0
  5140. // ippStsDivByZeroErr - A(0) is zero
  5141. // ippStsContextMatchErr - wrong context identifier
  5142. // ippStsNoErr - otherwise
  5143. // Order of the coefficients in the input taps buffer:
  5144. // B(0),B(1),B(2)..,B(order);
  5145. // A(0),A(1),A(2)..,A(order);
  5146. // . . .
  5147. // Note:
  5148. // A(0) != 0
  5149. // ippsIIRClose function works for both AR and BQ contexts
  5150. */
  5151. IPPAPI(IppStatus, ippsIIRInitAlloc_32f, (IppsIIRState_32f** ppState,
  5152. const Ipp32f* pTaps, int order, const Ipp32f* pDlyLine))
  5153. IPPAPI(IppStatus, ippsIIRInitAlloc_32fc, (IppsIIRState_32fc** ppState,
  5154. const Ipp32fc* pTaps, int order, const Ipp32fc* pDlyLine))
  5155. IPPAPI(IppStatus, ippsIIRInitAlloc32f_16s, (IppsIIRState32f_16s** ppState,
  5156. const Ipp32f* pTaps, int order, const Ipp32f* pDlyLine))
  5157. IPPAPI(IppStatus, ippsIIRInitAlloc32fc_16sc, (IppsIIRState32fc_16sc** ppState,
  5158. const Ipp32fc* pTaps, int order, const Ipp32fc* pDlyLine))
  5159. IPPAPI(IppStatus, ippsIIRInitAlloc_64f, (IppsIIRState_64f** ppState,
  5160. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine))
  5161. IPPAPI(IppStatus, ippsIIRInitAlloc_64fc, (IppsIIRState_64fc** ppState,
  5162. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine))
  5163. IPPAPI(IppStatus, ippsIIRInitAlloc64f_32f, (IppsIIRState64f_32f** ppState,
  5164. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine))
  5165. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_32fc, (IppsIIRState64fc_32fc** ppState,
  5166. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine))
  5167. IPPAPI(IppStatus, ippsIIRInitAlloc64f_32s, (IppsIIRState64f_32s** ppState,
  5168. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine))
  5169. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_32sc, (IppsIIRState64fc_32sc** ppState,
  5170. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine))
  5171. IPPAPI(IppStatus, ippsIIRInitAlloc64f_16s, (IppsIIRState64f_16s** ppState,
  5172. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine))
  5173. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_16sc, (IppsIIRState64fc_16sc** ppState,
  5174. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine))
  5175. IPPAPI(IppStatus, ippsIIRFree_32f, (IppsIIRState_32f* pState))
  5176. IPPAPI(IppStatus, ippsIIRFree_32fc, (IppsIIRState_32fc* pState))
  5177. IPPAPI(IppStatus, ippsIIRFree32f_16s, (IppsIIRState32f_16s* pState))
  5178. IPPAPI(IppStatus, ippsIIRFree32fc_16sc, (IppsIIRState32fc_16sc* pState))
  5179. IPPAPI(IppStatus, ippsIIRFree_64f, (IppsIIRState_64f* pState))
  5180. IPPAPI(IppStatus, ippsIIRFree_64fc, (IppsIIRState_64fc* pState))
  5181. IPPAPI(IppStatus, ippsIIRFree64f_32f, (IppsIIRState64f_32f* pState))
  5182. IPPAPI(IppStatus, ippsIIRFree64fc_32fc, (IppsIIRState64fc_32fc* pState))
  5183. IPPAPI(IppStatus, ippsIIRFree64f_32s, (IppsIIRState64f_32s* pState))
  5184. IPPAPI(IppStatus, ippsIIRFree64fc_32sc, (IppsIIRState64fc_32sc* pState))
  5185. IPPAPI(IppStatus, ippsIIRFree64f_16s, (IppsIIRState64f_16s* pState))
  5186. IPPAPI(IppStatus, ippsIIRFree64fc_16sc, (IppsIIRState64fc_16sc* pState))
  5187. /* /////////////////////////////////////////////////////////////////////////////
  5188. // Names: ippsIIRInitAlloc_BiQuad
  5189. // Purpose: initialize biquad numBq-section filter
  5190. // Parameters:
  5191. // ppState - double pointer to filter context
  5192. // pTaps - pointer to filter coefficients
  5193. // numBq - number biquads of BQ filter
  5194. // pDelay - pointer to delay line data, can be NULL
  5195. // Return: IppStatus
  5196. // ippStsMemAllocErr - memory allocation error
  5197. // ippStsNullPtrErr - pointer(s) ppState or pTaps is NULL
  5198. // ippStsIIROrderErr - numBq <= 0
  5199. // ippStsDivByZeroErr - A(n,0) or B(n,0) is zero
  5200. // ippStsNoErr - otherwise
  5201. //
  5202. // Order of the coefficients in the input taps buffer:
  5203. // B(0,0),B(0,1),B(0,2),A(0,0),A(0,1),A(0,2);
  5204. // B(1,0),B(1,1),B(1,2),A(1,0),A(1,1),A(1,2);
  5205. // . . .
  5206. // Notice:
  5207. // A(n,0) != 0 and B(n,0) != 0
  5208. */
  5209. IPPAPI(IppStatus, ippsIIRInitAlloc_BiQuad_32f, (IppsIIRState_32f** ppState,
  5210. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine))
  5211. IPPAPI(IppStatus, ippsIIRInitAlloc_BiQuad_32fc, (IppsIIRState_32fc** ppState,
  5212. const Ipp32fc* pTaps, int numBq, const Ipp32fc* pDlyLine))
  5213. IPPAPI(IppStatus, ippsIIRInitAlloc32f_BiQuad_16s, (IppsIIRState32f_16s** ppState,
  5214. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine))
  5215. IPPAPI(IppStatus, ippsIIRInitAlloc32fc_BiQuad_16sc, (IppsIIRState32fc_16sc** ppState,
  5216. const Ipp32fc* pTaps, int numBq, const Ipp32fc* pDlyLine))
  5217. IPPAPI(IppStatus, ippsIIRInitAlloc_BiQuad_64f, (IppsIIRState_64f** ppState,
  5218. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine))
  5219. IPPAPI(IppStatus, ippsIIRInitAlloc_BiQuad_64fc, (IppsIIRState_64fc** ppState,
  5220. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine))
  5221. IPPAPI(IppStatus, ippsIIRInitAlloc64f_BiQuad_32f, (IppsIIRState64f_32f** ppState,
  5222. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine))
  5223. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_BiQuad_32fc, (IppsIIRState64fc_32fc** ppState,
  5224. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine))
  5225. IPPAPI(IppStatus, ippsIIRInitAlloc64f_BiQuad_32s, (IppsIIRState64f_32s** ppState,
  5226. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine))
  5227. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_BiQuad_32sc, (IppsIIRState64fc_32sc** ppState,
  5228. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine))
  5229. IPPAPI(IppStatus, ippsIIRInitAlloc64f_BiQuad_16s, (IppsIIRState64f_16s** ppState,
  5230. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine))
  5231. IPPAPI(IppStatus, ippsIIRInitAlloc64fc_BiQuad_16sc, (IppsIIRState64fc_16sc** ppState,
  5232. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine))
  5233. /* /////////////////////////////////////////////////////////////////////////////
  5234. // Names: ippsIIRInitAlloc_BiQuad_DF1
  5235. // Purpose: initialize biquad numBq-section DF1 filter
  5236. // Parameters:
  5237. // ppState - double pointer to filter context
  5238. // pTaps - pointer to filter coefficients
  5239. // numBq - number biquads of BQ filter
  5240. // pDelay - pointer to delay line data, can be NULL
  5241. // Return: IppStatus
  5242. // ippStsMemAllocErr - memory allocation error
  5243. // ippStsNullPtrErr - pointer(s) ppState or pTaps is NULL
  5244. // ippStsIIROrderErr - numBq <= 0
  5245. // ippStsDivByZeroErr - A(n,0) or B(n,0) is zero
  5246. // ippStsNoErr - otherwise
  5247. //
  5248. // Order of the coefficients in the input taps buffer:
  5249. // pTaps = B[0,0], B[0,1], B[0,2], A[0,0], A[0,1], A[0,2],
  5250. // B[1,0], B[1,1], B[1,2], A[1,0], A[1,1], A[1,2],
  5251. // ...
  5252. // B[n,0], B[n,1], B[n,2], A[n,0], A[n,1], A[n,2]
  5253. // ( n = numBq-1 );
  5254. //
  5255. // pDLyLine = X[0,-2], X[0,-1], Y[0,-2], Y[0,-1],
  5256. // X[1,-2], X[1,-1], Y[1,-2], Y[1,-1],
  5257. // ...
  5258. // X[n,-2], X[n,-1], Y[n,-2], Y[n,-1],
  5259. // ( n = numBq-1 );
  5260. // . . .
  5261. // Notice:
  5262. // A(n,0) != 0
  5263. //
  5264. // Y[i] = X[i-2]*B[0,2] + X[i-1]*B[0,1] + X[i]*B[0,0] -
  5265. // - Y[i-1]*A[0,1] - Y[i-2]*A[0,2];
  5266. // Z[i] = Y[i];
  5267. // Y[i] = Z[i-2]*B[1,2] + Z[i-1]*B[1,1] + Z[i]*B[1,0] -
  5268. // - Y[i-1]*A[1,1] - Y[i-2]*A[1,2];
  5269. // Z[i] = Y[i];
  5270. // ...
  5271. // Y[i] = Z[i-2]*B[j,2] + Z[i-1]*B[j,1] + Z[i]*B[j,0] -
  5272. // - Y[i-1]*A[j,1] - Y[i-2]*A[j,2];
  5273. // Z[i] = Y[i];
  5274. // ...
  5275. // Y[i] = Z[i-2]*B[n,2] + Z[i-1]*B[n,1] + Z[i]*B[n,0] -
  5276. // - Y[i-1]*A[n,1] - Y[i-2]*A[n,2]; (n=numBq-1)
  5277. // pDst[i] = Y[i];
  5278. */
  5279. IPPAPI( IppStatus, ippsIIRInitAlloc_BiQuad_DF1_32f,( IppsIIRState_32f** pState,
  5280. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine ))
  5281. IPPAPI(IppStatus, ippsIIRInitAlloc64f_BiQuad_DF1_32s, (IppsIIRState64f_32s** ppState,
  5282. const Ipp64f* pTaps, int numBq, const Ipp32s* pDlyLine))
  5283. /* /////////////////////////////////////////////////////////////////////////////
  5284. // Work with Delay Line
  5285. ///////////////////////////////////////////////////////////////////////////// */
  5286. /* /////////////////////////////////////////////////////////////////////////////
  5287. // Names: ippsIIRGetDlyLine, ippsIIRSetDlyLine
  5288. // Purpose: set and get delay line
  5289. // Parameters:
  5290. // pState - pointer to IIR filter context
  5291. // pDelay - pointer to delay line to be set
  5292. // Return:
  5293. // ippStsContextMatchErr - wrong context identifier
  5294. // ippStsNullPtrErr - pointer(s) pState or pDelay is NULL
  5295. // ippStsNoErr - otherwise
  5296. */
  5297. IPPAPI(IppStatus, ippsIIRGetDlyLine_32f, (const IppsIIRState_32f* pState, Ipp32f* pDlyLine))
  5298. IPPAPI(IppStatus, ippsIIRSetDlyLine_32f, (IppsIIRState_32f* pState, const Ipp32f* pDlyLine))
  5299. IPPAPI(IppStatus, ippsIIRGetDlyLine_32fc, (const IppsIIRState_32fc* pState, Ipp32fc* pDlyLine))
  5300. IPPAPI(IppStatus, ippsIIRSetDlyLine_32fc, (IppsIIRState_32fc* pState, const Ipp32fc* pDlyLine))
  5301. IPPAPI(IppStatus, ippsIIRGetDlyLine32f_16s, (const IppsIIRState32f_16s* pState, Ipp32f* pDlyLine))
  5302. IPPAPI(IppStatus, ippsIIRSetDlyLine32f_16s, (IppsIIRState32f_16s* pState, const Ipp32f* pDlyLine))
  5303. IPPAPI(IppStatus, ippsIIRGetDlyLine32fc_16sc, (const IppsIIRState32fc_16sc* pState, Ipp32fc* pDlyLine))
  5304. IPPAPI(IppStatus, ippsIIRSetDlyLine32fc_16sc, (IppsIIRState32fc_16sc* pState, const Ipp32fc* pDlyLine))
  5305. IPPAPI(IppStatus, ippsIIRGetDlyLine_64f, (const IppsIIRState_64f* pState, Ipp64f* pDlyLine))
  5306. IPPAPI(IppStatus, ippsIIRSetDlyLine_64f, (IppsIIRState_64f* pState, const Ipp64f* pDlyLine))
  5307. IPPAPI(IppStatus, ippsIIRGetDlyLine_64fc, (const IppsIIRState_64fc* pState, Ipp64fc* pDlyLine))
  5308. IPPAPI(IppStatus, ippsIIRSetDlyLine_64fc, (IppsIIRState_64fc* pState, const Ipp64fc* pDlyLine))
  5309. IPPAPI(IppStatus, ippsIIRGetDlyLine64f_32f, (const IppsIIRState64f_32f* pState, Ipp64f* pDlyLine))
  5310. IPPAPI(IppStatus, ippsIIRSetDlyLine64f_32f, (IppsIIRState64f_32f* pState, const Ipp64f* pDlyLine))
  5311. IPPAPI(IppStatus, ippsIIRGetDlyLine64fc_32fc, (const IppsIIRState64fc_32fc* pState, Ipp64fc* pDlyLine))
  5312. IPPAPI(IppStatus, ippsIIRSetDlyLine64fc_32fc, (IppsIIRState64fc_32fc* pState, const Ipp64fc* pDlyLine))
  5313. IPPAPI(IppStatus, ippsIIRGetDlyLine64f_32s, (const IppsIIRState64f_32s* pState, Ipp64f* pDlyLine))
  5314. IPPAPI(IppStatus, ippsIIRSetDlyLine64f_32s, (IppsIIRState64f_32s* pState, const Ipp64f* pDlyLine))
  5315. IPPAPI(IppStatus, ippsIIRGetDlyLine64fc_32sc, (const IppsIIRState64fc_32sc* pState, Ipp64fc* pDlyLine))
  5316. IPPAPI(IppStatus, ippsIIRSetDlyLine64fc_32sc, (IppsIIRState64fc_32sc* pState, const Ipp64fc* pDlyLine))
  5317. IPPAPI(IppStatus, ippsIIRGetDlyLine64f_16s, (const IppsIIRState64f_16s* pState, Ipp64f* pDlyLine))
  5318. IPPAPI(IppStatus, ippsIIRSetDlyLine64f_16s, (IppsIIRState64f_16s* pState, const Ipp64f* pDlyLine))
  5319. IPPAPI(IppStatus, ippsIIRGetDlyLine64fc_16sc, (const IppsIIRState64fc_16sc* pState, Ipp64fc* pDlyLine))
  5320. IPPAPI(IppStatus, ippsIIRSetDlyLine64fc_16sc, (IppsIIRState64fc_16sc* pState, const Ipp64fc* pDlyLine))
  5321. IPPAPI(IppStatus, ippsIIRGetDlyLine64f_DF1_32s, (const IppsIIRState64f_32s* pState, Ipp32s* pDlyLine))
  5322. IPPAPI(IppStatus, ippsIIRSetDlyLine64f_DF1_32s, (IppsIIRState64f_32s* pState, const Ipp32s* pDlyLine))
  5323. /* /////////////////////////////////////////////////////////////////////////////
  5324. // Filtering
  5325. ///////////////////////////////////////////////////////////////////////////// */
  5326. /* /////////////////////////////////////////////////////////////////////////////
  5327. // Names: ippsIIROne
  5328. // Purpose: IIR filter with float or double taps. One sample operation
  5329. // Parameters:
  5330. // pState - pointer to IIR filter context
  5331. // src - input sample
  5332. // pDstVal - output sample
  5333. // scaleFactor - scale factor value
  5334. // Return:
  5335. // ippStsContextMatchErr - wrong context identifier
  5336. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5337. // ippStsNoErr - otherwise
  5338. //
  5339. // Note: Don't modify scaleFactor value unless context is changed
  5340. */
  5341. IPPAPI(IppStatus, ippsIIROne_32f, (Ipp32f src, Ipp32f* pDstVal, IppsIIRState_32f* pState))
  5342. IPPAPI(IppStatus, ippsIIROne_32fc, (Ipp32fc src, Ipp32fc* pDstVal, IppsIIRState_32fc* pState))
  5343. IPPAPI(IppStatus, ippsIIROne32f_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal, IppsIIRState32f_16s* pState, int scaleFactor))
  5344. IPPAPI(IppStatus, ippsIIROne32fc_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal, IppsIIRState32fc_16sc* pState, int scaleFactor))
  5345. IPPAPI(IppStatus, ippsIIROne_64f, (Ipp64f src, Ipp64f* pDstVal, IppsIIRState_64f* pState))
  5346. IPPAPI(IppStatus, ippsIIROne_64fc, (Ipp64fc src, Ipp64fc* pDstVal, IppsIIRState_64fc* pState))
  5347. IPPAPI(IppStatus, ippsIIROne64f_32f, (Ipp32f src, Ipp32f* pDstVal, IppsIIRState64f_32f* pState))
  5348. IPPAPI(IppStatus, ippsIIROne64fc_32fc, (Ipp32fc src, Ipp32fc* pDstVal, IppsIIRState64fc_32fc* pState))
  5349. IPPAPI(IppStatus, ippsIIROne64f_32s_Sfs, (Ipp32s src, Ipp32s* pDstVal, IppsIIRState64f_32s* pState, int scaleFactor))
  5350. IPPAPI(IppStatus, ippsIIROne64fc_32sc_Sfs, (Ipp32sc src, Ipp32sc* pDstVal, IppsIIRState64fc_32sc* pState, int scaleFactor))
  5351. IPPAPI(IppStatus, ippsIIROne64f_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal, IppsIIRState64f_16s* pState, int scaleFactor))
  5352. IPPAPI(IppStatus, ippsIIROne64fc_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal, IppsIIRState64fc_16sc* pState, int scaleFactor))
  5353. /* /////////////////////////////////////////////////////////////////////////////
  5354. // Names: ippsIIR
  5355. // Purpose: IIR filter with float or double taps. Vector filtering
  5356. // Parameters:
  5357. // pState - pointer to filter context
  5358. // pSrcDst - pointer to input/output vector in in-place ops
  5359. // pSrc - pointer to input vector
  5360. // pDst - pointer to output vector
  5361. // len - length of the vectors
  5362. // scaleFactor - scale factor value
  5363. // Return:
  5364. // ippStsContextMatchErr - wrong context identifier
  5365. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5366. // ippStsSizeErr - length of the vectors <= 0
  5367. // ippStsNoErr - otherwise
  5368. //
  5369. // Note: Don't modify scaleFactor value unless context is changed
  5370. */
  5371. IPPAPI(IppStatus, ippsIIR_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len,
  5372. IppsIIRState_32f* pState))
  5373. IPPAPI(IppStatus, ippsIIR_32f_I, (Ipp32f* pSrcDst, int len, IppsIIRState_32f* pState))
  5374. IPPAPI(IppStatus, ippsIIR_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len,
  5375. IppsIIRState_32fc* pState))
  5376. IPPAPI(IppStatus, ippsIIR_32fc_I, (Ipp32fc* pSrcDst, int len, IppsIIRState_32fc* pState))
  5377. IPPAPI(IppStatus, ippsIIR32f_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int len,
  5378. IppsIIRState32f_16s* pState, int scaleFactor))
  5379. IPPAPI(IppStatus, ippsIIR32f_16s_ISfs, (Ipp16s* pSrcDst, int len,
  5380. IppsIIRState32f_16s* pState, int scaleFactor))
  5381. IPPAPI(IppStatus, ippsIIR32fc_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len,
  5382. IppsIIRState32fc_16sc* pState, int scaleFactor))
  5383. IPPAPI(IppStatus, ippsIIR32fc_16sc_ISfs, (Ipp16sc* pSrcDst, int len,
  5384. IppsIIRState32fc_16sc* pState, int scaleFactor))
  5385. IPPAPI(IppStatus, ippsIIR_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len,
  5386. IppsIIRState_64f* pState))
  5387. IPPAPI(IppStatus, ippsIIR_64f_I, (Ipp64f* pSrcDst, int len, IppsIIRState_64f* pState))
  5388. IPPAPI(IppStatus, ippsIIR_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int len,
  5389. IppsIIRState_64fc* pState))
  5390. IPPAPI(IppStatus, ippsIIR_64fc_I, (Ipp64fc* pSrcDst, int len, IppsIIRState_64fc* pState))
  5391. IPPAPI(IppStatus, ippsIIR64f_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len,
  5392. IppsIIRState64f_32f* pState))
  5393. IPPAPI(IppStatus, ippsIIR64f_32f_I, (Ipp32f* pSrcDst, int len, IppsIIRState64f_32f* pState))
  5394. IPPAPI(IppStatus, ippsIIR64fc_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len,
  5395. IppsIIRState64fc_32fc* pState))
  5396. IPPAPI(IppStatus, ippsIIR64fc_32fc_I, (Ipp32fc* pSrcDst, int len, IppsIIRState64fc_32fc* pState))
  5397. IPPAPI(IppStatus, ippsIIR64f_32s_Sfs, (const Ipp32s* pSrc, Ipp32s* pDst, int len,
  5398. IppsIIRState64f_32s* pState, int scaleFactor))
  5399. IPPAPI(IppStatus, ippsIIR64f_32s_ISfs, (Ipp32s* pSrcDst, int len,
  5400. IppsIIRState64f_32s* pState, int scaleFactor))
  5401. IPPAPI(IppStatus, ippsIIR64fc_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc* pDst, int len,
  5402. IppsIIRState64fc_32sc* pState, int scaleFactor))
  5403. IPPAPI(IppStatus, ippsIIR64fc_32sc_ISfs, (Ipp32sc* pSrcDst, int len,
  5404. IppsIIRState64fc_32sc* pState, int scaleFactor))
  5405. IPPAPI(IppStatus, ippsIIR64f_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int len,
  5406. IppsIIRState64f_16s* pState, int scaleFactor))
  5407. IPPAPI(IppStatus, ippsIIR64f_16s_ISfs, (Ipp16s* pSrcDst, int len,
  5408. IppsIIRState64f_16s* pState, int scaleFactor))
  5409. IPPAPI(IppStatus, ippsIIR64fc_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len,
  5410. IppsIIRState64fc_16sc* pState, int scaleFactor))
  5411. IPPAPI(IppStatus, ippsIIR64fc_16sc_ISfs, (Ipp16sc* pSrcDst, int len,
  5412. IppsIIRState64fc_16sc* pState, int scaleFactor))
  5413. /* /////////////////////////////////////////////////////////////////////////////
  5414. // Names: ippsIIR_32f_P, ippsIIR64f_32s_P
  5415. // Purpose: IIR filter for multi-channel data. Vector filtering.
  5416. // Parameters:
  5417. // ppSrc - pointer to array of pointers to source vectors
  5418. // ppDst - pointer to array of pointers to destination vectors
  5419. // ppSrcDst - pointer to array of source/destination vectors in in-place ops
  5420. // len - length of the vectors
  5421. // nChannels - number of processing channels
  5422. // ppState - pointer to array of filter contexts
  5423. // Return:
  5424. // ippStsContextMatchErr - wrong context identifier
  5425. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5426. // ippStsSizeErr - length of the vectors <= 0
  5427. // ippStsChannelErr - number of processing channels <= 0
  5428. // ippStsNoErr - otherwise
  5429. //
  5430. */
  5431. IPPAPI( IppStatus, ippsIIR_32f_P,( const Ipp32f **ppSrc, Ipp32f **ppDst, int len,
  5432. int nChannels, IppsIIRState_32f **ppState ))
  5433. IPPAPI( IppStatus, ippsIIR_32f_IP,( Ipp32f **ppSrcDst, int len,
  5434. int nChannels, IppsIIRState_32f **ppState ))
  5435. IPPAPI(IppStatus, ippsIIR64f_32s_PSfs, (const Ipp32s **ppSrc, Ipp32s **ppDst, int len,
  5436. int nChannels, IppsIIRState64f_32s **ppState, int *pScaleFactor))
  5437. IPPAPI(IppStatus, ippsIIR64f_32s_IPSfs, (Ipp32s **ppSrcDst, int len,
  5438. int nChannels, IppsIIRState64f_32s **ppState, int *pScaleFactor))
  5439. /* /////////////////////////////////////////////////////////////////////////////
  5440. // IIR filters (integer taps version)
  5441. ///////////////////////////////////////////////////////////////////////////// */
  5442. /* /////////////////////////////////////////////////////////////////////////////
  5443. // Initialize context
  5444. ///////////////////////////////////////////////////////////////////////////// */
  5445. /* /////////////////////////////////////////////////////////////////////////////
  5446. // Names: ippsIIRInitAlloc, ippsIIRInitAlloc_BiQuad, ippsIIRFree
  5447. // Purpose: create and initialize IIR context for AR filter
  5448. // Parameters:
  5449. // ppState - double pointer to filter context
  5450. // pState - pointer to filter context
  5451. // pTaps - pointer to filter coefficients
  5452. // order - arbitrary filter order
  5453. // tapsFactor - scale factor for Ipp32s context taps
  5454. // numBq - number of biquads in BQ filter
  5455. // pDelay - pointer to delay line, may be NULL
  5456. // Return:
  5457. // ippStsNoErr - Ok
  5458. // ippStsMemAllocErr - memory allocate error
  5459. // ippStsNullPtrErr - pointer(s) to ppState, pState or pTaps is NULL
  5460. // ippStsIIROrderErr - filter order < 0 or numBq <= 0
  5461. // ippStsDivByZeroErr - A(0) or A(n,0) or B(n,0) is zero
  5462. //
  5463. // the Ipp32s taps from the source Ipp32f taps and taps factor
  5464. // may be prepared by this way, for example
  5465. //
  5466. // ippsAbs_64f( taps, tmp, 6 );
  5467. // ippsMax_64f( tmp, 6, &tmax );
  5468. //
  5469. // tapsfactor = 0;
  5470. // if( tmax > IPP_MAX_32S )
  5471. // while( (tmax/=2) > IPP_MAX_32S ) ++tapsfactor;
  5472. // else
  5473. // while( (tmax*=2) < IPP_MAX_32S ) --tapsfactor;
  5474. //
  5475. // if( tapsfactor > 0 )
  5476. // ippsDivC_64f_I( (float)(1<<(++tapsfactor)), taps, 6 );
  5477. // else if( tapsfactor < 0 )
  5478. // ippsMulC_64f_I( (float)(1<<(-(tapsfactor))), taps, 6 );
  5479. //
  5480. // ippsConvert_64f32s_Sfs ( taps, taps32s, 6, ippRndNear, 0 );
  5481. //
  5482. // Order of coefficients is:
  5483. // B(0),B(1),...,B(order),A(0),A(1),...,A(order)
  5484. // A(0) != 0
  5485. */
  5486. IPPAPI(IppStatus, ippsIIRInitAlloc32s_16s, (IppsIIRState32s_16s** ppState,
  5487. const Ipp32s* pTaps, int order, int tapsFactor, const Ipp32s* pDlyLine))
  5488. IPPAPI(IppStatus, ippsIIRInitAlloc32s_16s32f, (IppsIIRState32s_16s** ppState,
  5489. const Ipp32f* pTaps, int order, const Ipp32s* pDlyLine))
  5490. IPPAPI(IppStatus, ippsIIRInitAlloc32sc_16sc, (IppsIIRState32sc_16sc** ppState,
  5491. const Ipp32sc* pTaps, int order, int tapsFactor, const Ipp32sc* pDlyLine))
  5492. IPPAPI(IppStatus, ippsIIRInitAlloc32sc_16sc32fc, (IppsIIRState32sc_16sc** ppState,
  5493. const Ipp32fc* pTaps, int order, const Ipp32sc* pDlyLine))
  5494. IPPAPI(IppStatus, ippsIIRInitAlloc32s_BiQuad_16s, (IppsIIRState32s_16s** ppState,
  5495. const Ipp32s* pTaps, int numBq, int tapsFactor, const Ipp32s* pDlyLine))
  5496. IPPAPI(IppStatus, ippsIIRInitAlloc32s_BiQuad_16s32f, (IppsIIRState32s_16s** ppState,
  5497. const Ipp32f* pTaps, int numBq, const Ipp32s* pDlyLine))
  5498. IPPAPI(IppStatus, ippsIIRInitAlloc32sc_BiQuad_16sc, (IppsIIRState32sc_16sc** ppState,
  5499. const Ipp32sc* pTaps, int numBq, int tapsFactor, const Ipp32sc* pDlyLine))
  5500. IPPAPI(IppStatus, ippsIIRInitAlloc32sc_BiQuad_16sc32fc, (IppsIIRState32sc_16sc** ppState,
  5501. const Ipp32fc* pTaps, int numBq, const Ipp32sc* pDlyLine))
  5502. IPPAPI(IppStatus, ippsIIRFree32s_16s, (IppsIIRState32s_16s* pState))
  5503. IPPAPI(IppStatus, ippsIIRFree32sc_16sc, (IppsIIRState32sc_16sc* pState))
  5504. /* /////////////////////////////////////////////////////////////////////////////
  5505. // Work with Delay Line
  5506. ///////////////////////////////////////////////////////////////////////////// */
  5507. /* /////////////////////////////////////////////////////////////////////////////
  5508. // Names: ippsIIRGetDlyLine, ippsIIRSetDlyLine
  5509. // Purpose: set and get delay line
  5510. // Parameters:
  5511. // pState - pointer to IIR filter context
  5512. // pDelay - pointer to delay line to be set
  5513. // Return:
  5514. // ippStsContextMatchErr - wrong context identifier
  5515. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5516. // ippStsNoErr - otherwise
  5517. */
  5518. IPPAPI(IppStatus, ippsIIRGetDlyLine32s_16s, (const IppsIIRState32s_16s* pState, Ipp32s* pDlyLine))
  5519. IPPAPI(IppStatus, ippsIIRSetDlyLine32s_16s, (IppsIIRState32s_16s* pState, const Ipp32s* pDlyLine))
  5520. IPPAPI(IppStatus, ippsIIRGetDlyLine32sc_16sc, (const IppsIIRState32sc_16sc* pState, Ipp32sc* pDlyLine))
  5521. IPPAPI(IppStatus, ippsIIRSetDlyLine32sc_16sc, (IppsIIRState32sc_16sc* pState, const Ipp32sc* pDlyLine))
  5522. /* /////////////////////////////////////////////////////////////////////////////
  5523. // Filtering
  5524. ///////////////////////////////////////////////////////////////////////////// */
  5525. /* /////////////////////////////////////////////////////////////////////////////
  5526. // Names: ippsIIROne
  5527. // Purpose: IIR filter. One sample operation
  5528. // Parameters:
  5529. // pState - pointer to the filter context
  5530. // src - the input sample
  5531. // pDstVal - pointer to the output sample
  5532. // scaleFactor - scale factor value
  5533. // Return:
  5534. // ippStsContextMatchErr - wrong context
  5535. // ippStsNullPtrErr - pointer(s) to pState or pDstVal is NULL
  5536. // ippStsNoErr - otherwise
  5537. //
  5538. // Note: Don't modify scaleFactor value unless context is changed
  5539. */
  5540. IPPAPI(IppStatus, ippsIIROne32s_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal, IppsIIRState32s_16s* pState, int scaleFactor))
  5541. IPPAPI(IppStatus, ippsIIROne32sc_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal, IppsIIRState32sc_16sc* pState, int scaleFactor))
  5542. /* /////////////////////////////////////////////////////////////////////////////
  5543. // Names: ippsIIR
  5544. // Purpose: IIR filter. Vector filtering
  5545. // Parameters:
  5546. // pState - pointer to the filter context
  5547. // pSrc - pointer to input data
  5548. // pSrcDst - pointer to input/ouput data
  5549. // pDst - pointer to output data
  5550. // len - length of the vectors
  5551. // scaleFactor - scale factor value
  5552. // Return:
  5553. // ippStsContextMatchErr - wrong context
  5554. // ippStsNullPtrErr - pointer(s) pState or pSrc or pDst is NULL
  5555. // ippStsSizeErr - length of the vectors <= 0
  5556. // ippStsNoErr - otherwise
  5557. //
  5558. // Note: Don't modify scaleFactor value unless context is changed
  5559. */
  5560. IPPAPI(IppStatus, ippsIIR32s_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int len,
  5561. IppsIIRState32s_16s* pState, int scaleFactor))
  5562. IPPAPI(IppStatus, ippsIIR32sc_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len,
  5563. IppsIIRState32sc_16sc* pState, int scaleFactor))
  5564. IPPAPI(IppStatus, ippsIIR32s_16s_ISfs, (Ipp16s* pSrcDst, int len, IppsIIRState32s_16s* pState,
  5565. int scaleFactor))
  5566. IPPAPI(IppStatus, ippsIIR32sc_16sc_ISfs, (Ipp16sc* pSrcDst, int len, IppsIIRState32sc_16sc* pState,
  5567. int scaleFactor))
  5568. /* /////////////////////////////////////////////////////////////////////////////
  5569. // Names: ippsIIR_Direct_16s, ippsIIR_Direct_16s_I,
  5570. // ippsIIROne_Direct_16s, ippsIIROne_Direct_16s_I,
  5571. // ippsIIR_BiQuadDirect_16s, ippsIIR_BiQuadDirect_16s_I,
  5572. // ippsIIROne_BiQuadDirect_16s, ippsIIROne_BiQuadDirect_16s_I.
  5573. // Purpose: IIR filter with 16s taps. One sample (with suffix One), or vector
  5574. // operation, direct (without State structure) form. Suffix "BiQuad"
  5575. // means numBq-section filter, else the arbitrary coefficients IIR
  5576. // filter.
  5577. // Parameters:
  5578. // pSrc - pointer to the input array.
  5579. // src - input sample in 'One' case.
  5580. // pDst - pointer to the output array.
  5581. // pDstVal - pointer to the output sample in 'One' case.
  5582. // pSrcDst - pointer to the input and output array for the in-place
  5583. // operation.
  5584. // pSrcDstVal - pointer to the input and output sample for in-place
  5585. // operation in 'One' case.
  5586. // pTaps - pointer to filter coefficients
  5587. // order - arbitrary filter order
  5588. // numBq - number biquads of BQ filter
  5589. // pDlyLine - pointer to delay line data
  5590. // Return: IppStatus
  5591. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5592. // ippStsIIROrderErr - filter order < 0
  5593. // ippStsScaleRangeErr - if A(0) < 0, see "Note..."
  5594. // ippStsMemAllocErr - memory allocation error
  5595. // ippStsSizeErr - length of the vectors <= 0
  5596. // ippStsNoErr - otherwise
  5597. //
  5598. // Order of the coefficients in the input taps buffer for the arbitrary
  5599. // filter:
  5600. // B(0),B(1),B(2)..,B(order);
  5601. // A(0),A(1),A(2)..,A(order);
  5602. // . . .
  5603. // Note:
  5604. // A(0) >= 0, and means the scale factor (not divisor !) for all the
  5605. // other taps.
  5606. // Order of the coefficients in the input taps buffer for BiQuad-section
  5607. // filter:
  5608. // B(0,0),B(0,1),B(0,2),A(0,0),A(0,1),A(0,2);
  5609. // B(1,0),B(1,1),B(1,2),A(1,0),A(1,1),A(1,2);
  5610. // ........
  5611. // Note:
  5612. // A(0,0) >= 0, A(1,0) >= 0..., and means the scale factor (not divisor !)
  5613. // for all the other taps of each section.
  5614. */
  5615. IPPAPI( IppStatus, ippsIIR_Direct_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  5616. int len, const Ipp16s* pTaps, int order, Ipp32s* pDlyLine ))
  5617. IPPAPI( IppStatus, ippsIIR_Direct_16s_I,( Ipp16s* pSrcDst, int len,
  5618. const Ipp16s* pTaps, int order, Ipp32s* pDlyLine ))
  5619. IPPAPI( IppStatus, ippsIIROne_Direct_16s,( Ipp16s src, Ipp16s* pDstVal,
  5620. const Ipp16s* pTaps, int order, Ipp32s* pDlyLine ))
  5621. IPPAPI( IppStatus, ippsIIROne_Direct_16s_I,( Ipp16s* pSrcDst,
  5622. const Ipp16s* pTaps, int order, Ipp32s* pDlyLine ))
  5623. IPPAPI( IppStatus, ippsIIR_BiQuadDirect_16s,( const Ipp16s* pSrc, Ipp16s* pDst,
  5624. int len, const Ipp16s* pTaps, int numBq, Ipp32s* pDlyLine ))
  5625. IPPAPI( IppStatus, ippsIIR_BiQuadDirect_16s_I,( Ipp16s* pSrcDst, int len,
  5626. const Ipp16s * pTaps, int numBq, Ipp32s* pDlyLine ))
  5627. IPPAPI( IppStatus, ippsIIROne_BiQuadDirect_16s,( Ipp16s src, Ipp16s* pDstVal,
  5628. const Ipp16s* pTaps, int numBq, Ipp32s* pDlyLine ))
  5629. IPPAPI( IppStatus, ippsIIROne_BiQuadDirect_16s_I,( Ipp16s* pSrcDstVal,
  5630. const Ipp16s* pTaps, int numBq, Ipp32s* pDlyLine ))
  5631. /* ////////////////////////////////////////////////////////////////////////////
  5632. // Initialize IIR state with external memory buffer
  5633. //////////////////////////////////////////////////////////////////////////// */
  5634. /* ////////////////////////////////////////////////////////////////////////////
  5635. // Name: ippsIIRGetStateSize, ippsIIRGetStateSize_BiQuad,
  5636. // ippsIIRGetStateSize_BiQuad_DF1_32f,
  5637. // ippsIIRInit, ippsIIRInit_BiQuad,
  5638. // ippsIIRInit_BiQuad_DF1_32f
  5639. //
  5640. // Purpose: ippsIIRGetStateSize - calculates the size of the IIR State
  5641. // structure;
  5642. // ippsIIRInit - initialize IIR state - set taps and delay line
  5643. // using external memory buffer;
  5644. // Parameters:
  5645. // pTaps - pointer to the filter coefficients;
  5646. // order - order of the filter;
  5647. // numBq - order of the filter;
  5648. // pDlyLine - pointer to the delay line values, can be NULL;
  5649. // ppState - double pointer to the IIR state created or NULL;
  5650. // tapsFactor - scaleFactor for taps (integer version);
  5651. // pBufferSize - pointer where to store the calculated IIR State structure
  5652. // size (in bytes);
  5653. // Return:
  5654. // status - status value returned, its value are
  5655. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5656. // ippStsIIROrderErr - order <= 0 or numBq < 1
  5657. // ippStsNoErr - otherwise
  5658. */
  5659. /* ******************************** 32s_16s ******************************** */
  5660. IPPAPI( IppStatus, ippsIIRGetStateSize32s_16s,( int order, int *pBufferSize ))
  5661. IPPAPI( IppStatus, ippsIIRGetStateSize32sc_16sc,( int order,
  5662. int *pBufferSize ))
  5663. IPPAPI( IppStatus, ippsIIRGetStateSize32s_BiQuad_16s,( int numBq,
  5664. int *pBufferSize ))
  5665. IPPAPI( IppStatus, ippsIIRGetStateSize32sc_BiQuad_16sc,( int numBq,
  5666. int *pBufferSize ))
  5667. IPPAPI( IppStatus, ippsIIRInit32s_16s,( IppsIIRState32s_16s** ppState,
  5668. const Ipp32s* pTaps, int order, int tapsFactor,
  5669. const Ipp32s* pDlyLine, Ipp8u* pBuf ))
  5670. IPPAPI( IppStatus, ippsIIRInit32sc_16sc,( IppsIIRState32sc_16sc** ppState,
  5671. const Ipp32sc* pTaps, int order, int tapsFactor,
  5672. const Ipp32sc* pDlyLine, Ipp8u* pBuf ))
  5673. IPPAPI( IppStatus, ippsIIRInit32s_BiQuad_16s,( IppsIIRState32s_16s** ppState,
  5674. const Ipp32s* pTaps, int numBq, int tapsFactor,
  5675. const Ipp32s* pDlyLine, Ipp8u* pBuf ))
  5676. IPPAPI( IppStatus, ippsIIRInit32sc_BiQuad_16sc,(
  5677. IppsIIRState32sc_16sc** ppState, const Ipp32sc* pTaps,
  5678. int numBq, int tapsFactor, const Ipp32sc* pDlyLine, Ipp8u* pBuf ))
  5679. /* ****************************** 32s_16s32f ******************************* */
  5680. IPPAPI( IppStatus, ippsIIRGetStateSize32s_16s32f,( int order,
  5681. int *pBufferSize ))
  5682. IPPAPI( IppStatus, ippsIIRGetStateSize32sc_16sc32fc,( int order,
  5683. int *pBufferSize ))
  5684. IPPAPI( IppStatus, ippsIIRGetStateSize32s_BiQuad_16s32f,( int numBq,
  5685. int *pBufferSize ))
  5686. IPPAPI( IppStatus, ippsIIRGetStateSize32sc_BiQuad_16sc32fc,( int numBq,
  5687. int *pBufferSize ))
  5688. IPPAPI( IppStatus, ippsIIRInit32s_16s32f,( IppsIIRState32s_16s** ppState,
  5689. const Ipp32f* pTaps, int order, const Ipp32s* pDlyLine, Ipp8u* pBuf ))
  5690. IPPAPI( IppStatus, ippsIIRInit32sc_16sc32fc,( IppsIIRState32sc_16sc** ppState,
  5691. const Ipp32fc* pTaps, int order,
  5692. const Ipp32sc* pDlyLine, Ipp8u* pBuf ))
  5693. IPPAPI( IppStatus, ippsIIRInit32s_BiQuad_16s32f,( IppsIIRState32s_16s** ppState,
  5694. const Ipp32f* pTaps, int numBq,
  5695. const Ipp32s* pDlyLine, Ipp8u* pBuf ))
  5696. IPPAPI( IppStatus, ippsIIRInit32sc_BiQuad_16sc32fc,(
  5697. IppsIIRState32sc_16sc** ppState, const Ipp32fc* pTaps,
  5698. int numBq, const Ipp32sc* pDlyLine, Ipp8u* pBuf ))
  5699. /* ********************************** 32f ********************************** */
  5700. IPPAPI( IppStatus, ippsIIRGetStateSize_32f,( int order, int *pBufferSize ))
  5701. IPPAPI( IppStatus, ippsIIRGetStateSize_32fc,( int order, int *pBufferSize ))
  5702. IPPAPI( IppStatus, ippsIIRGetStateSize_BiQuad_32f,( int numBq,
  5703. int *pBufferSize ))
  5704. IPPAPI( IppStatus, ippsIIRGetStateSize_BiQuad_DF1_32f,( int numBq,
  5705. int *pBufferSize ))
  5706. IPPAPI( IppStatus, ippsIIRGetStateSize_BiQuad_32fc,( int numBq,
  5707. int *pBufferSize ))
  5708. IPPAPI( IppStatus, ippsIIRInit_32f,( IppsIIRState_32f** ppState,
  5709. const Ipp32f* pTaps, int order, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  5710. IPPAPI( IppStatus, ippsIIRInit_32fc,( IppsIIRState_32fc** ppState,
  5711. const Ipp32fc* pTaps, int order, const Ipp32fc* pDlyLine, Ipp8u* pBuf ))
  5712. IPPAPI( IppStatus, ippsIIRInit_BiQuad_32f,( IppsIIRState_32f** ppState,
  5713. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  5714. IPPAPI( IppStatus, ippsIIRInit_BiQuad_DF1_32f,( IppsIIRState_32f** pState,
  5715. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  5716. IPPAPI( IppStatus, ippsIIRInit_BiQuad_32fc,( IppsIIRState_32fc** ppState,
  5717. const Ipp32fc* pTaps, int numBq, const Ipp32fc* pDlyLine, Ipp8u* pBuf ))
  5718. /* ******************************** 32f_16s ******************************** */
  5719. IPPAPI( IppStatus, ippsIIRGetStateSize32f_16s,( int order, int *pBufferSize ))
  5720. IPPAPI( IppStatus, ippsIIRGetStateSize32fc_16sc,( int order,
  5721. int *pBufferSize ))
  5722. IPPAPI( IppStatus, ippsIIRGetStateSize32f_BiQuad_16s,( int numBq,
  5723. int *pBufferSize ))
  5724. IPPAPI( IppStatus, ippsIIRGetStateSize32fc_BiQuad_16sc,( int numBq,
  5725. int *pBufferSize ))
  5726. IPPAPI( IppStatus, ippsIIRInit32f_16s,( IppsIIRState32f_16s** ppState,
  5727. const Ipp32f* pTaps, int order, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  5728. IPPAPI( IppStatus, ippsIIRInit32fc_16sc,( IppsIIRState32fc_16sc** ppState,
  5729. const Ipp32fc* pTaps, int order, const Ipp32fc* pDlyLine, Ipp8u* pBuf ))
  5730. IPPAPI( IppStatus, ippsIIRInit32f_BiQuad_16s,( IppsIIRState32f_16s** ppState,
  5731. const Ipp32f* pTaps, int numBq, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  5732. IPPAPI( IppStatus, ippsIIRInit32fc_BiQuad_16sc,( IppsIIRState32fc_16sc** ppState,
  5733. const Ipp32fc* pTaps, int numBq, const Ipp32fc* pDlyLine, Ipp8u* pBuf ))
  5734. /* ********************************** 64f ********************************** */
  5735. IPPAPI( IppStatus, ippsIIRGetStateSize_64f,( int order, int *pBufferSize ))
  5736. IPPAPI( IppStatus, ippsIIRGetStateSize_64fc,( int order, int *pBufferSize ))
  5737. IPPAPI( IppStatus, ippsIIRGetStateSize_BiQuad_64f,( int numBq,
  5738. int *pBufferSize ))
  5739. IPPAPI( IppStatus, ippsIIRGetStateSize_BiQuad_64fc,( int numBq,
  5740. int *pBufferSize ))
  5741. IPPAPI( IppStatus, ippsIIRInit_64f,( IppsIIRState_64f** ppState,
  5742. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5743. IPPAPI( IppStatus, ippsIIRInit_64fc,( IppsIIRState_64fc** ppState,
  5744. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5745. IPPAPI( IppStatus, ippsIIRInit_BiQuad_64f,( IppsIIRState_64f** ppState,
  5746. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5747. IPPAPI( IppStatus, ippsIIRInit_BiQuad_64fc,( IppsIIRState_64fc** ppState,
  5748. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5749. /* ******************************** 64f_16s ******************************** */
  5750. IPPAPI( IppStatus, ippsIIRGetStateSize64f_16s,( int order, int *pBufferSize ))
  5751. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_16sc,( int order,
  5752. int *pBufferSize ))
  5753. IPPAPI( IppStatus, ippsIIRGetStateSize64f_BiQuad_16s,( int numBq,
  5754. int *pBufferSize ))
  5755. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_BiQuad_16sc,( int numBq,
  5756. int *pBufferSize ))
  5757. IPPAPI( IppStatus, ippsIIRInit64f_16s,( IppsIIRState64f_16s** ppState,
  5758. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5759. IPPAPI( IppStatus, ippsIIRInit64fc_16sc,( IppsIIRState64fc_16sc** ppState,
  5760. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5761. IPPAPI( IppStatus, ippsIIRInit64f_BiQuad_16s,( IppsIIRState64f_16s** ppState,
  5762. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5763. IPPAPI( IppStatus, ippsIIRInit64fc_BiQuad_16sc,( IppsIIRState64fc_16sc** ppState,
  5764. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5765. /* ******************************** 64f_32s ******************************** */
  5766. IPPAPI( IppStatus, ippsIIRGetStateSize64f_32s,( int order, int *pBufferSize ))
  5767. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_32sc,( int order,
  5768. int *pBufferSize ))
  5769. IPPAPI( IppStatus, ippsIIRGetStateSize64f_BiQuad_32s,( int numBq,
  5770. int *pBufferSize ))
  5771. IPPAPI( IppStatus, ippsIIRGetStateSize64f_BiQuad_DF1_32s,( int numBq,
  5772. int *pBufferSize ))
  5773. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_BiQuad_32sc,( int numBq,
  5774. int *pBufferSize ))
  5775. IPPAPI( IppStatus, ippsIIRInit64f_32s,( IppsIIRState64f_32s** ppState,
  5776. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5777. IPPAPI( IppStatus, ippsIIRInit64fc_32sc,( IppsIIRState64fc_32sc** ppState,
  5778. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5779. IPPAPI( IppStatus, ippsIIRInit64f_BiQuad_32s,( IppsIIRState64f_32s** ppState,
  5780. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5781. IPPAPI( IppStatus, ippsIIRInit64f_BiQuad_DF1_32s,( IppsIIRState64f_32s** ppState,
  5782. const Ipp64f* pTaps, int numBq, const Ipp32s* pDlyLine, Ipp8u* pBuf ))
  5783. IPPAPI( IppStatus, ippsIIRInit64fc_BiQuad_32sc,( IppsIIRState64fc_32sc** ppState,
  5784. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5785. /* ******************************** 64f_32f ******************************** */
  5786. IPPAPI( IppStatus, ippsIIRGetStateSize64f_32f,( int order, int *pBufferSize ))
  5787. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_32fc,( int order,
  5788. int *pBufferSize ))
  5789. IPPAPI( IppStatus, ippsIIRGetStateSize64f_BiQuad_32f,( int numBq,
  5790. int *pBufferSize ))
  5791. IPPAPI( IppStatus, ippsIIRGetStateSize64fc_BiQuad_32fc,( int numBq,
  5792. int *pBufferSize ))
  5793. IPPAPI( IppStatus, ippsIIRInit64f_32f,( IppsIIRState64f_32f** ppState,
  5794. const Ipp64f* pTaps, int order, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5795. IPPAPI( IppStatus, ippsIIRInit64fc_32fc,( IppsIIRState64fc_32fc** ppState,
  5796. const Ipp64fc* pTaps, int order, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5797. IPPAPI( IppStatus, ippsIIRInit64f_BiQuad_32f,( IppsIIRState64f_32f** ppState,
  5798. const Ipp64f* pTaps, int numBq, const Ipp64f* pDlyLine, Ipp8u* pBuf ))
  5799. IPPAPI( IppStatus, ippsIIRInit64fc_BiQuad_32fc,( IppsIIRState64fc_32fc** ppState,
  5800. const Ipp64fc* pTaps, int numBq, const Ipp64fc* pDlyLine, Ipp8u* pBuf ))
  5801. /* /////////////////////////////////////////////////////////////////////////////
  5802. // Names: ippsIIRSetTaps
  5803. // Purpose: set new IIR taps values to state
  5804. // Parameters:
  5805. // pTaps - pointer to new IIR taps
  5806. // pState - pointer to the IIR filter state
  5807. // tapsFactor - scaleFactor for taps (integer version only)
  5808. // Return:
  5809. // ippStsContextMatchErr - wrong state identifier
  5810. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5811. // ippStsNoErr - otherwise
  5812. */
  5813. IPPAPI( IppStatus, ippsIIRSetTaps_32f,( const Ipp32f *pTaps,
  5814. IppsIIRState_32f* pState ))
  5815. IPPAPI( IppStatus, ippsIIRSetTaps_32fc,( const Ipp32fc *pTaps,
  5816. IppsIIRState_32fc* pState ))
  5817. IPPAPI( IppStatus, ippsIIRSetTaps32f_16s,( const Ipp32f *pTaps,
  5818. IppsIIRState32f_16s* pState ))
  5819. IPPAPI( IppStatus, ippsIIRSetTaps32fc_16sc,( const Ipp32fc *pTaps,
  5820. IppsIIRState32fc_16sc* pState ))
  5821. IPPAPI( IppStatus, ippsIIRSetTaps32s_16s,( const Ipp32s *pTaps,
  5822. IppsIIRState32s_16s* pState, int tapsFactor ))
  5823. IPPAPI( IppStatus, ippsIIRSetTaps32sc_16sc,( const Ipp32sc *pTaps,
  5824. IppsIIRState32sc_16sc* pState, int tapsFactor ))
  5825. IPPAPI( IppStatus, ippsIIRSetTaps32s_16s32f,( const Ipp32f *pTaps,
  5826. IppsIIRState32s_16s* pState ))
  5827. IPPAPI( IppStatus, ippsIIRSetTaps32sc_16sc32fc,( const Ipp32fc *pTaps,
  5828. IppsIIRState32sc_16sc* pState ))
  5829. IPPAPI( IppStatus, ippsIIRSetTaps_64f,( const Ipp64f *pTaps,
  5830. IppsIIRState_64f* pState ))
  5831. IPPAPI( IppStatus, ippsIIRSetTaps_64fc,( const Ipp64fc *pTaps,
  5832. IppsIIRState_64fc* pState ))
  5833. IPPAPI( IppStatus, ippsIIRSetTaps64f_32f,( const Ipp64f *pTaps,
  5834. IppsIIRState64f_32f* pState ))
  5835. IPPAPI( IppStatus, ippsIIRSetTaps64fc_32fc,( const Ipp64fc *pTaps,
  5836. IppsIIRState64fc_32fc* pState ))
  5837. IPPAPI( IppStatus, ippsIIRSetTaps64f_32s,( const Ipp64f *pTaps,
  5838. IppsIIRState64f_32s* pState ))
  5839. IPPAPI( IppStatus, ippsIIRSetTaps64fc_32sc,( const Ipp64fc *pTaps,
  5840. IppsIIRState64fc_32sc* pState ))
  5841. IPPAPI( IppStatus, ippsIIRSetTaps64f_16s,( const Ipp64f *pTaps,
  5842. IppsIIRState64f_16s* pState ))
  5843. IPPAPI( IppStatus, ippsIIRSetTaps64fc_16sc,( const Ipp64fc *pTaps,
  5844. IppsIIRState64fc_16sc* pState ))
  5845. /* /////////////////////////////////////////////////////////////////////////////
  5846. // Names: ippsIIRGenLowpass_64f, ippsIIRGenHighpass_64f
  5847. //
  5848. // Purpose: This function computes the highpass and lowpass IIR filter coefficients
  5849. //
  5850. // Parameters:
  5851. // rFreq cut off frequency (0 < rFreq < 0.5)
  5852. //
  5853. // ripple possible ripple in pass band for ippChebyshev1 type of filter
  5854. //
  5855. // order the order of future filter (1 <= order <= 12)
  5856. //
  5857. // pTaps pointer to the array which specifies
  5858. // the filter coefficients
  5859. //
  5860. // filterType type of required filter (ippButterworth or ippChebyshev1)
  5861. //
  5862. //
  5863. // Return:
  5864. // ippStsNullPtrErr the null pointer to taps[] array pass to function
  5865. // ippStsIIRPassbandRippleErr the ripple in passband for Chebyshev1 design is less zero,
  5866. // equal to zero or greater than 29
  5867. // ippStsFilterFrequencyErr the cut of frequency of filter is less zero, equal to zero
  5868. // or greater than 0.5
  5869. // ippStsIIRGenOrderErr the order of an IIR filter for design them is less than one
  5870. // or greater than 12
  5871. // ippStsNoErr otherwise
  5872. //
  5873. */
  5874. IPPAPI(IppStatus, ippsIIRGenLowpass_64f, ( Ipp64f rFreq, Ipp64f ripple, int order, Ipp64f* pTaps, IppsIIRFilterType filterType))
  5875. IPPAPI(IppStatus, ippsIIRGenHighpass_64f,( Ipp64f rFreq, Ipp64f ripple, int order, Ipp64f* pTaps, IppsIIRFilterType filterType))
  5876. /* /////////////////////////////////////////////////////////////////////////////
  5877. // FIR filters (float and double taps versions)
  5878. ///////////////////////////////////////////////////////////////////////////// */
  5879. #if !defined( _OWN_BLDPCS )
  5880. struct FIRState_32f;
  5881. typedef struct FIRState_32f IppsFIRState_32f;
  5882. struct FIRState_32fc;
  5883. typedef struct FIRState_32fc IppsFIRState_32fc;
  5884. struct FIRState32f_16s;
  5885. typedef struct FIRState32f_16s IppsFIRState32f_16s;
  5886. struct FIRState32fc_16sc;
  5887. typedef struct FIRState32fc_16sc IppsFIRState32fc_16sc;
  5888. struct FIRState_64f;
  5889. typedef struct FIRState_64f IppsFIRState_64f;
  5890. struct FIRState_64fc;
  5891. typedef struct FIRState_64fc IppsFIRState_64fc;
  5892. struct FIRState64f_32f;
  5893. typedef struct FIRState64f_32f IppsFIRState64f_32f;
  5894. struct FIRState64fc_32fc;
  5895. typedef struct FIRState64fc_32fc IppsFIRState64fc_32fc;
  5896. struct FIRState64f_32s;
  5897. typedef struct FIRState64f_32s IppsFIRState64f_32s;
  5898. struct FIRState64fc_32sc;
  5899. typedef struct FIRState64fc_32sc IppsFIRState64fc_32sc;
  5900. struct FIRState64f_16s;
  5901. typedef struct FIRState64f_16s IppsFIRState64f_16s;
  5902. struct FIRState64fc_16sc;
  5903. typedef struct FIRState64fc_16sc IppsFIRState64fc_16sc;
  5904. struct FIRState32s_16s;
  5905. typedef struct FIRState32s_16s IppsFIRState32s_16s;
  5906. struct FIRState32sc_16sc;
  5907. typedef struct FIRState32sc_16sc IppsFIRState32sc_16sc;
  5908. struct FIRState_32s;
  5909. typedef struct FIRState_32s IppsFIRState_32s;
  5910. struct FIRState_16s;
  5911. typedef struct FIRState_16s IppsFIRState_16s;
  5912. #endif /* _OWN_BLDPCS */
  5913. /* /////////////////////////////////////////////////////////////////////////////
  5914. // Initialize FIR state
  5915. ///////////////////////////////////////////////////////////////////////////// */
  5916. /* /////////////////////////////////////////////////////////////////////////////
  5917. // Name: ippsFIRInitAlloc, ippsFIRMRInitAlloc, ippsFIRFree
  5918. // Purpose: create and initialize FIR state - set taps and delay line
  5919. // and close it
  5920. // Parameters:
  5921. // pTaps - pointer to the filter coefficients
  5922. // tapsLen - number of coefficients
  5923. // pDlyLine - pointer to the delay line values, can be NULL
  5924. // state - pointer to the FIR state created or NULL;
  5925. // Return:
  5926. // status - status value returned, its value are
  5927. // ippStsMemAllocErr - memory allocation error
  5928. // ippStsNullPtrErr - pointer(s) to the data is NULL
  5929. // ippStsFIRLenErr - tapsLen <= 0
  5930. // ippStsFIRMRFactorErr - factor <= 0
  5931. // ippStsFIRMRPhaseErr - phase < 0 || factor <= phase
  5932. // ippStsContextMatchErr - wrong state identifier
  5933. // ippStsNoErr - otherwise
  5934. */
  5935. IPPAPI(IppStatus, ippsFIRInitAlloc_32f, (IppsFIRState_32f** pState,
  5936. const Ipp32f* pTaps, int tapsLen, const Ipp32f* pDlyLine))
  5937. IPPAPI(IppStatus, ippsFIRMRInitAlloc_32f, (IppsFIRState_32f** pState,
  5938. const Ipp32f* pTaps, int tapsLen, int upFactor, int upPhase,
  5939. int downFactor, int downPhase, const Ipp32f* pDlyLine))
  5940. IPPAPI(IppStatus, ippsFIRInitAlloc_32fc, (IppsFIRState_32fc** pState,
  5941. const Ipp32fc* pTaps, int tapsLen, const Ipp32fc* pDlyLine))
  5942. IPPAPI(IppStatus, ippsFIRMRInitAlloc_32fc, (IppsFIRState_32fc** pState,
  5943. const Ipp32fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5944. int downFactor, int downPhase, const Ipp32fc* pDlyLine))
  5945. IPPAPI(IppStatus, ippsFIRInitAlloc32f_16s, (IppsFIRState32f_16s** pState,
  5946. const Ipp32f* pTaps, int tapsLen, const Ipp16s* pDlyLine))
  5947. IPPAPI(IppStatus, ippsFIRMRInitAlloc32f_16s, (IppsFIRState32f_16s** pState,
  5948. const Ipp32f* pTaps, int tapsLen, int upFactor, int upPhase,
  5949. int downFactor, int downPhase, const Ipp16s* pDlyLine))
  5950. IPPAPI(IppStatus, ippsFIRInitAlloc32fc_16sc, (IppsFIRState32fc_16sc** pState,
  5951. const Ipp32fc* pTaps, int tapsLen, const Ipp16sc* pDlyLine))
  5952. IPPAPI(IppStatus, ippsFIRMRInitAlloc32fc_16sc, (IppsFIRState32fc_16sc** pState,
  5953. const Ipp32fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5954. int downFactor, int downPhase, const Ipp16sc* pDlyLine))
  5955. IPPAPI(IppStatus, ippsFIRInitAlloc_64f, (IppsFIRState_64f** pState,
  5956. const Ipp64f* pTaps, int tapsLen, const Ipp64f* pDlyLine))
  5957. IPPAPI(IppStatus, ippsFIRMRInitAlloc_64f, (IppsFIRState_64f** pState,
  5958. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  5959. int downFactor, int downPhase, const Ipp64f* pDlyLine))
  5960. IPPAPI(IppStatus, ippsFIRInitAlloc_64fc, (IppsFIRState_64fc** pState,
  5961. const Ipp64fc* pTaps, int tapsLen, const Ipp64fc* pDlyLine))
  5962. IPPAPI(IppStatus, ippsFIRMRInitAlloc_64fc, (IppsFIRState_64fc** pState,
  5963. const Ipp64fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5964. int downFactor, int downPhase, const Ipp64fc* pDlyLine))
  5965. IPPAPI(IppStatus, ippsFIRInitAlloc64f_32f, (IppsFIRState64f_32f** pState,
  5966. const Ipp64f* pTaps, int tapsLen, const Ipp32f* pDlyLine))
  5967. IPPAPI(IppStatus, ippsFIRMRInitAlloc64f_32f, (IppsFIRState64f_32f** pState,
  5968. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  5969. int downFactor, int downPhase, const Ipp32f* pDlyLine))
  5970. IPPAPI(IppStatus, ippsFIRInitAlloc64fc_32fc, (IppsFIRState64fc_32fc** pState,
  5971. const Ipp64fc* pTaps, int tapsLen, const Ipp32fc* pDlyLine))
  5972. IPPAPI(IppStatus, ippsFIRMRInitAlloc64fc_32fc, (IppsFIRState64fc_32fc** pState,
  5973. const Ipp64fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5974. int downFactor, int downPhase, const Ipp32fc* pDlyLine))
  5975. IPPAPI(IppStatus, ippsFIRInitAlloc64f_32s, (IppsFIRState64f_32s** pState,
  5976. const Ipp64f* pTaps, int tapsLen, const Ipp32s* pDlyLine))
  5977. IPPAPI(IppStatus, ippsFIRMRInitAlloc64f_32s, (IppsFIRState64f_32s** pState,
  5978. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  5979. int downFactor, int downPhase, const Ipp32s* pDlyLine))
  5980. IPPAPI(IppStatus, ippsFIRInitAlloc64fc_32sc, (IppsFIRState64fc_32sc** pState,
  5981. const Ipp64fc* pTaps, int tapsLen, const Ipp32sc* pDlyLine))
  5982. IPPAPI(IppStatus, ippsFIRMRInitAlloc64fc_32sc, (IppsFIRState64fc_32sc** pState,
  5983. const Ipp64fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5984. int downFactor, int downPhase, const Ipp32sc* pDlyLine))
  5985. IPPAPI(IppStatus, ippsFIRInitAlloc64f_16s, (IppsFIRState64f_16s** pState,
  5986. const Ipp64f* pTaps, int tapsLen, const Ipp16s* pDlyLine))
  5987. IPPAPI(IppStatus, ippsFIRMRInitAlloc64f_16s, (IppsFIRState64f_16s** pState,
  5988. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  5989. int downFactor, int downPhase, const Ipp16s* pDlyLine))
  5990. IPPAPI(IppStatus, ippsFIRInitAlloc64fc_16sc, (IppsFIRState64fc_16sc** pState,
  5991. const Ipp64fc* pTaps, int tapsLen, const Ipp16sc* pDlyLine))
  5992. IPPAPI(IppStatus, ippsFIRMRInitAlloc64fc_16sc, (IppsFIRState64fc_16sc** pState,
  5993. const Ipp64fc* pTaps, int tapsLen, int upFactor, int upPhase,
  5994. int downFactor, int downPhase, const Ipp16sc* pDlyLine))
  5995. IPPAPI(IppStatus, ippsFIRFree_32f, (IppsFIRState_32f* pState))
  5996. IPPAPI(IppStatus, ippsFIRFree_32fc, (IppsFIRState_32fc* pState))
  5997. IPPAPI(IppStatus, ippsFIRFree32f_16s, (IppsFIRState32f_16s* pState))
  5998. IPPAPI(IppStatus, ippsFIRFree32fc_16sc, (IppsFIRState32fc_16sc* pState))
  5999. IPPAPI(IppStatus, ippsFIRFree_64f, (IppsFIRState_64f* pState))
  6000. IPPAPI(IppStatus, ippsFIRFree_64fc, (IppsFIRState_64fc* pState))
  6001. IPPAPI(IppStatus, ippsFIRFree64f_32f, (IppsFIRState64f_32f* pState))
  6002. IPPAPI(IppStatus, ippsFIRFree64fc_32fc, (IppsFIRState64fc_32fc* pState))
  6003. IPPAPI(IppStatus, ippsFIRFree64f_32s, (IppsFIRState64f_32s* pState))
  6004. IPPAPI(IppStatus, ippsFIRFree64fc_32sc, (IppsFIRState64fc_32sc* pState))
  6005. IPPAPI(IppStatus, ippsFIRFree64f_16s, (IppsFIRState64f_16s* pState))
  6006. IPPAPI(IppStatus, ippsFIRFree64fc_16sc, (IppsFIRState64fc_16sc* pState))
  6007. /* ////////////////////////////////////////////////////////////////////////////
  6008. // Initialize FIR state with external memory buffer
  6009. //////////////////////////////////////////////////////////////////////////// */
  6010. /* ////////////////////////////////////////////////////////////////////////////
  6011. // Name: ippsFIRGetStateSize, ippsFIRMRGetStateSize,
  6012. // ippsFIRInit, ippsFIRMRInit
  6013. // Purpose: ippsFIRGetStateSize - calculates the size of the FIR State
  6014. // structure;
  6015. // ippsFIRInit - initialize FIR state - set taps and delay line
  6016. // using external memory buffer;
  6017. // Parameters:
  6018. // pTaps - pointer to the filter coefficients;
  6019. // tapsLen - number of coefficients;
  6020. // pDlyLine - pointer to the delay line values, can be NULL;
  6021. // ppState - pointer to the FIR state created or NULL;
  6022. // upFactor - multi-rate up factor;
  6023. // upPhase - multi-rate up phase;
  6024. // downFactor - multi-rate down factor;
  6025. // downPhase - multi-rate down phase;
  6026. // pStateSize - pointer where to store the calculated FIR State structure
  6027. // size (in bytes);
  6028. // Return:
  6029. // status - status value returned, its value are
  6030. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6031. // ippStsFIRLenErr - tapsLen <= 0
  6032. // ippStsFIRMRFactorErr - factor <= 0
  6033. // ippStsFIRMRPhaseErr - phase < 0 || factor <= phase
  6034. // ippStsNoErr - otherwise
  6035. */
  6036. /* ******************************** 32s_16s ******************************** */
  6037. IPPAPI( IppStatus, ippsFIRGetStateSize32s_16s,( int tapsLen, int* pStateSize ))
  6038. IPPAPI( IppStatus, ippsFIRInit32s_16s,( IppsFIRState32s_16s** ppState,
  6039. const Ipp32s *pTaps, int tapsLen, int tapsFactor, const Ipp16s *pDlyLine,
  6040. Ipp8u* pBuffer ))
  6041. IPPAPI( IppStatus, ippsFIRMRGetStateSize32s_16s,( int tapsLen, int upFactor,
  6042. int downFactor, int *pStateSize ))
  6043. IPPAPI( IppStatus, ippsFIRMRInit32s_16s,( IppsFIRState32s_16s** ppState,
  6044. const Ipp32s *pTaps, int tapsLen, int tapsFactor, int upFactor, int upPhase,
  6045. int downFactor, int downPhase, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6046. IPPAPI( IppStatus, ippsFIRInit32sc_16sc,( IppsFIRState32sc_16sc** ppState,
  6047. const Ipp32sc *pTaps, int tapsLen, int tapsFactor,
  6048. const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6049. IPPAPI( IppStatus, ippsFIRMRGetStateSize32sc_16sc,( int tapsLen, int upFactor,
  6050. int downFactor, int* pStateSize ))
  6051. IPPAPI( IppStatus, ippsFIRMRInit32sc_16sc,( IppsFIRState32sc_16sc** ppState,
  6052. const Ipp32sc *pTaps, int tapsLen, int tapsFactor, int upFactor, int upPhase,
  6053. int downFactor, int downPhase, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6054. IPPAPI( IppStatus, ippsFIRGetStateSize32sc_16sc32fc,( int tapsLen,
  6055. int *pStateSize ))
  6056. /* ****************************** 32s_16s32f ******************************* */
  6057. IPPAPI( IppStatus, ippsFIRGetStateSize32s_16s32f,( int tapsLen,
  6058. int* pStateSize ))
  6059. IPPAPI( IppStatus, ippsFIRInit32s_16s32f,( IppsFIRState32s_16s** ppState,
  6060. const Ipp32f *pTaps, int tapsLen, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6061. IPPAPI( IppStatus, ippsFIRMRGetStateSize32s_16s32f,( int tapsLen, int upFactor,
  6062. int downFactor, int *pStateSize ))
  6063. IPPAPI( IppStatus, ippsFIRMRInit32s_16s32f,( IppsFIRState32s_16s** ppState,
  6064. const Ipp32f *pTaps, int tapsLen, int upFactor, int upPhase,
  6065. int downFactor, int downPhase, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6066. IPPAPI( IppStatus, ippsFIRGetStateSize32sc_16sc,( int tapsLen,
  6067. int *pStateSize ))
  6068. IPPAPI( IppStatus, ippsFIRInit32sc_16sc32fc,( IppsFIRState32sc_16sc** ppState,
  6069. const Ipp32fc *pTaps, int tapsLen, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6070. IPPAPI( IppStatus, ippsFIRMRGetStateSize32sc_16sc32fc,( int tapsLen,
  6071. int upFactor, int downFactor, int *pStateSize ))
  6072. IPPAPI( IppStatus, ippsFIRMRInit32sc_16sc32fc,( IppsFIRState32sc_16sc** ppState,
  6073. const Ipp32fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6074. int downFactor, int downPhase, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6075. /* ********************************** 32f ********************************** */
  6076. IPPAPI( IppStatus, ippsFIRInit_32f,( IppsFIRState_32f** ppState,
  6077. const Ipp32f *pTaps, int tapsLen, const Ipp32f *pDlyLine, Ipp8u *pBuffer ))
  6078. IPPAPI( IppStatus, ippsFIRInit_32fc,( IppsFIRState_32fc** ppState,
  6079. const Ipp32fc *pTaps, int tapsLen, const Ipp32fc *pDlyLine, Ipp8u *pBuffer ))
  6080. IPPAPI( IppStatus, ippsFIRGetStateSize_32f,( int tapsLen, int *pBufferSize ))
  6081. IPPAPI( IppStatus, ippsFIRGetStateSize_32fc,( int tapsLen, int *pBufferSize ))
  6082. IPPAPI( IppStatus, ippsFIRMRInit_32f,( IppsFIRState_32f** ppState,
  6083. const Ipp32f* pTaps, int tapsLen, int upFactor, int upPhase,
  6084. int downFactor, int downPhase, const Ipp32f* pDlyLine, Ipp8u* pBuffer ))
  6085. IPPAPI( IppStatus, ippsFIRMRGetStateSize_32f,( int tapsLen, int upFactor,
  6086. int downFactor, int *pBufferSize ))
  6087. IPPAPI( IppStatus, ippsFIRMRGetStateSize_32fc,( int tapsLen, int upFactor,
  6088. int downFactor, int *pBufferSize ))
  6089. IPPAPI( IppStatus, ippsFIRMRInit_32fc,( IppsFIRState_32fc** ppState,
  6090. const Ipp32fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6091. int downFactor, int downPhase, const Ipp32fc *pDlyLine, Ipp8u* pBuffer ))
  6092. /* ******************************** 32f_16s ******************************** */
  6093. IPPAPI( IppStatus, ippsFIRGetStateSize32f_16s,( int tapsLen,
  6094. int* pBufferSize ))
  6095. IPPAPI( IppStatus, ippsFIRInit32f_16s,( IppsFIRState32f_16s** ppState,
  6096. const Ipp32f *pTaps, int tapsLen, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6097. IPPAPI(IppStatus, ippsFIRGetStateSize32fc_16sc, ( int tapsLen,
  6098. int *pBufferSize ))
  6099. IPPAPI(IppStatus, ippsFIRInit32fc_16sc, (IppsFIRState32fc_16sc** ppState,
  6100. const Ipp32fc *pTaps, int tapsLen, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6101. IPPAPI( IppStatus, ippsFIRMRGetStateSize32f_16s,( int tapsLen, int upFactor,
  6102. int downFactor, int* pBufferSize ))
  6103. IPPAPI( IppStatus, ippsFIRMRInit32f_16s,( IppsFIRState32f_16s** ppState,
  6104. const Ipp32f* pTaps, int tapsLen, int upFactor, int upPhase,
  6105. int downFactor, int downPhase, const Ipp16s* pDlyLine, Ipp8u* pBuffer ))
  6106. IPPAPI( IppStatus, ippsFIRMRGetStateSize32fc_16sc,( int tapsLen, int upFactor,
  6107. int downFactor, int* pBufferSize ))
  6108. IPPAPI( IppStatus, ippsFIRMRInit32fc_16sc,( IppsFIRState32fc_16sc** ppState,
  6109. const Ipp32fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6110. int downFactor, int downPhase, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6111. /* ********************************** 64f ********************************** */
  6112. IPPAPI( IppStatus, ippsFIRInit_64f,( IppsFIRState_64f** ppState,
  6113. const Ipp64f *pTaps, int tapsLen, const Ipp64f *pDlyLine, Ipp8u *pBuffer ))
  6114. IPPAPI( IppStatus, ippsFIRInit_64fc,( IppsFIRState_64fc** ppState,
  6115. const Ipp64fc *pTaps, int tapsLen, const Ipp64fc *pDlyLine, Ipp8u *pBuffer ))
  6116. IPPAPI( IppStatus, ippsFIRGetStateSize_64f,( int tapsLen, int *pBufferSize ))
  6117. IPPAPI( IppStatus, ippsFIRGetStateSize_64fc,( int tapsLen, int *pBufferSize ))
  6118. IPPAPI( IppStatus, ippsFIRMRInit_64f,( IppsFIRState_64f** ppState,
  6119. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  6120. int downFactor, int downPhase, const Ipp64f* pDlyLine, Ipp8u* pBuffer ))
  6121. IPPAPI( IppStatus, ippsFIRMRGetStateSize_64f,( int tapsLen, int upFactor,
  6122. int downFactor, int *pBufferSize ))
  6123. IPPAPI( IppStatus, ippsFIRMRGetStateSize_64fc,( int tapsLen, int upFactor,
  6124. int downFactor, int *pBufferSize ))
  6125. IPPAPI( IppStatus, ippsFIRMRInit_64fc,( IppsFIRState_64fc** ppState,
  6126. const Ipp64fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6127. int downFactor, int downPhase, const Ipp64fc *pDlyLine, Ipp8u* pBuffer ))
  6128. /* ******************************** 64f_16s ******************************** */
  6129. IPPAPI( IppStatus, ippsFIRGetStateSize64f_16s,( int tapsLen,
  6130. int* pBufferSize ))
  6131. IPPAPI( IppStatus, ippsFIRInit64f_16s,( IppsFIRState64f_16s** ppState,
  6132. const Ipp64f *pTaps, int tapsLen, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6133. IPPAPI(IppStatus, ippsFIRGetStateSize64fc_16sc, ( int tapsLen,
  6134. int *pBufferSize ))
  6135. IPPAPI(IppStatus, ippsFIRInit64fc_16sc, (IppsFIRState64fc_16sc** ppState,
  6136. const Ipp64fc *pTaps, int tapsLen, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6137. IPPAPI( IppStatus, ippsFIRMRGetStateSize64f_16s,( int tapsLen, int upFactor,
  6138. int downFactor, int* pBufferSize ))
  6139. IPPAPI( IppStatus, ippsFIRMRInit64f_16s,( IppsFIRState64f_16s** ppState,
  6140. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  6141. int downFactor, int downPhase, const Ipp16s* pDlyLine, Ipp8u* pBuffer ))
  6142. IPPAPI( IppStatus, ippsFIRMRGetStateSize64fc_16sc,( int tapsLen, int upFactor,
  6143. int downFactor, int* pBufferSize ))
  6144. IPPAPI( IppStatus, ippsFIRMRInit64fc_16sc,( IppsFIRState64fc_16sc** ppState,
  6145. const Ipp64fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6146. int downFactor, int downPhase, const Ipp16sc *pDlyLine, Ipp8u* pBuffer ))
  6147. /* ******************************** 64f_32s ******************************** */
  6148. IPPAPI( IppStatus, ippsFIRGetStateSize64f_32s,( int tapsLen,
  6149. int* pBufferSize ))
  6150. IPPAPI( IppStatus, ippsFIRInit64f_32s,( IppsFIRState64f_32s** ppState,
  6151. const Ipp64f *pTaps, int tapsLen, const Ipp32s *pDlyLine, Ipp8u* pBuffer ))
  6152. IPPAPI(IppStatus, ippsFIRGetStateSize64fc_32sc, ( int tapsLen,
  6153. int *pBufferSize ))
  6154. IPPAPI(IppStatus, ippsFIRInit64fc_32sc, (IppsFIRState64fc_32sc** ppState,
  6155. const Ipp64fc *pTaps, int tapsLen, const Ipp32sc *pDlyLine, Ipp8u* pBuffer ))
  6156. IPPAPI( IppStatus, ippsFIRMRGetStateSize64f_32s,( int tapsLen, int upFactor,
  6157. int downFactor, int* pBufferSize ))
  6158. IPPAPI( IppStatus, ippsFIRMRInit64f_32s,( IppsFIRState64f_32s** ppState,
  6159. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  6160. int downFactor, int downPhase, const Ipp32s* pDlyLine, Ipp8u* pBuffer ))
  6161. IPPAPI( IppStatus, ippsFIRMRGetStateSize64fc_32sc,( int tapsLen, int upFactor,
  6162. int downFactor, int* pBufferSize ))
  6163. IPPAPI( IppStatus, ippsFIRMRInit64fc_32sc,( IppsFIRState64fc_32sc** ppState,
  6164. const Ipp64fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6165. int downFactor, int downPhase, const Ipp32sc *pDlyLine, Ipp8u* pBuffer ))
  6166. /* ******************************** 64f_32f ******************************** */
  6167. IPPAPI( IppStatus, ippsFIRGetStateSize64f_32f,( int tapsLen,
  6168. int* pBufferSize ))
  6169. IPPAPI( IppStatus, ippsFIRInit64f_32f,( IppsFIRState64f_32f** ppState,
  6170. const Ipp64f *pTaps, int tapsLen, const Ipp32f *pDlyLine, Ipp8u* pBuffer ))
  6171. IPPAPI(IppStatus, ippsFIRGetStateSize64fc_32fc, ( int tapsLen,
  6172. int *pBufferSize ))
  6173. IPPAPI(IppStatus, ippsFIRInit64fc_32fc, (IppsFIRState64fc_32fc** ppState,
  6174. const Ipp64fc *pTaps, int tapsLen, const Ipp32fc *pDlyLine, Ipp8u* pBuffer ))
  6175. IPPAPI( IppStatus, ippsFIRMRGetStateSize64f_32f,( int tapsLen, int upFactor,
  6176. int downFactor, int* pBufferSize ))
  6177. IPPAPI( IppStatus, ippsFIRMRInit64f_32f,( IppsFIRState64f_32f** ppState,
  6178. const Ipp64f* pTaps, int tapsLen, int upFactor, int upPhase,
  6179. int downFactor, int downPhase, const Ipp32f* pDlyLine, Ipp8u* pBuffer ))
  6180. IPPAPI( IppStatus, ippsFIRMRGetStateSize64fc_32fc,( int tapsLen, int upFactor,
  6181. int downFactor, int* pBufferSize ))
  6182. IPPAPI( IppStatus, ippsFIRMRInit64fc_32fc,( IppsFIRState64fc_32fc** ppState,
  6183. const Ipp64fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6184. int downFactor, int downPhase, const Ipp32fc *pDlyLine, Ipp8u* pBuffer ))
  6185. /* /////////////////////////////////////////////////////////////////////////////
  6186. // Names: ippsFIRGetTaps
  6187. // Purpose: get FIR taps value from state
  6188. // Parameters:
  6189. // pTaps - pointer to buffer to get FIR taps
  6190. // pState - pointer to the FIR filter state
  6191. // Return:
  6192. // ippStsContextMatchErr - wrong state identifier
  6193. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6194. // ippStsNoErr - otherwise
  6195. */
  6196. IPPAPI(IppStatus, ippsFIRGetTaps_32f, (const IppsFIRState_32f* pState, Ipp32f* pTaps))
  6197. IPPAPI(IppStatus, ippsFIRGetTaps_32fc, (const IppsFIRState_32fc* pState, Ipp32fc* pTaps))
  6198. IPPAPI(IppStatus, ippsFIRGetTaps32f_16s, (const IppsFIRState32f_16s* pState, Ipp32f* pTaps))
  6199. IPPAPI(IppStatus, ippsFIRGetTaps32fc_16sc, (const IppsFIRState32fc_16sc* pState, Ipp32fc* pTaps))
  6200. IPPAPI(IppStatus, ippsFIRGetTaps_64f, (const IppsFIRState_64f* pState, Ipp64f* pTaps))
  6201. IPPAPI(IppStatus, ippsFIRGetTaps_64fc, (const IppsFIRState_64fc* pState, Ipp64fc* pTaps))
  6202. IPPAPI(IppStatus, ippsFIRGetTaps64f_32f, (const IppsFIRState64f_32f* pState, Ipp64f* pTaps))
  6203. IPPAPI(IppStatus, ippsFIRGetTaps64fc_32fc, (const IppsFIRState64fc_32fc* pState, Ipp64fc* pTaps))
  6204. IPPAPI(IppStatus, ippsFIRGetTaps64f_32s, (const IppsFIRState64f_32s* pState, Ipp64f* pTaps))
  6205. IPPAPI(IppStatus, ippsFIRGetTaps64fc_32sc, (const IppsFIRState64fc_32sc* pState, Ipp64fc* pTaps))
  6206. IPPAPI(IppStatus, ippsFIRGetTaps64f_16s, (const IppsFIRState64f_16s* pState, Ipp64f* pTaps))
  6207. IPPAPI(IppStatus, ippsFIRGetTaps64fc_16sc, (const IppsFIRState64fc_16sc* pState, Ipp64fc* pTaps))
  6208. /* /////////////////////////////////////////////////////////////////////////////
  6209. // Names: ippsFIRGSetTaps
  6210. // Purpose: set FIR taps value to state
  6211. // Parameters:
  6212. // pTaps - pointer to buffer to set FIR taps
  6213. // pState - pointer to the FIR filter state
  6214. // Return:
  6215. // ippStsContextMatchErr - wrong state identifier
  6216. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6217. // ippStsNoErr - otherwise
  6218. */
  6219. IPPAPI( IppStatus, ippsFIRSetTaps_32f,( const Ipp32f *pTaps,
  6220. IppsFIRState_32f* pState ))
  6221. IPPAPI( IppStatus, ippsFIRSetTaps_32fc,( const Ipp32fc *pTaps,
  6222. IppsFIRState_32fc* pState ))
  6223. IPPAPI( IppStatus, ippsFIRSetTaps32f_16s,( const Ipp32f *pTaps,
  6224. IppsFIRState32f_16s* pState ))
  6225. IPPAPI( IppStatus, ippsFIRSetTaps32fc_16sc,( const Ipp32fc *pTaps,
  6226. IppsFIRState32fc_16sc* pState ))
  6227. IPPAPI( IppStatus, ippsFIRSetTaps32s_16s,( const Ipp32s *pTaps,
  6228. IppsFIRState32s_16s* pState, int tapsFactor ))
  6229. IPPAPI( IppStatus, ippsFIRSetTaps32sc_16sc,( const Ipp32sc *pTaps,
  6230. IppsFIRState32sc_16sc* pState, int tapsFactor ))
  6231. IPPAPI( IppStatus, ippsFIRSetTaps32s_16s32f,( const Ipp32f *pTaps,
  6232. IppsFIRState32s_16s* pState ))
  6233. IPPAPI( IppStatus, ippsFIRSetTaps32sc_16sc32fc,( const Ipp32fc *pTaps,
  6234. IppsFIRState32sc_16sc* pState ))
  6235. IPPAPI( IppStatus, ippsFIRSetTaps_64f,( const Ipp64f *pTaps,
  6236. IppsFIRState_64f* pState ))
  6237. IPPAPI( IppStatus, ippsFIRSetTaps_64fc,( const Ipp64fc *pTaps,
  6238. IppsFIRState_64fc* pState ))
  6239. IPPAPI( IppStatus, ippsFIRSetTaps64f_32f,( const Ipp64f *pTaps,
  6240. IppsFIRState64f_32f* pState ))
  6241. IPPAPI( IppStatus, ippsFIRSetTaps64fc_32fc,( const Ipp64fc *pTaps,
  6242. IppsFIRState64fc_32fc* pState ))
  6243. IPPAPI( IppStatus, ippsFIRSetTaps64f_32s,( const Ipp64f *pTaps,
  6244. IppsFIRState64f_32s* pState ))
  6245. IPPAPI( IppStatus, ippsFIRSetTaps64fc_32sc,( const Ipp64fc *pTaps,
  6246. IppsFIRState64fc_32sc* pState ))
  6247. IPPAPI( IppStatus, ippsFIRSetTaps64f_16s,( const Ipp64f *pTaps,
  6248. IppsFIRState64f_16s* pState ))
  6249. IPPAPI( IppStatus, ippsFIRSetTaps64fc_16sc,( const Ipp64fc *pTaps,
  6250. IppsFIRState64fc_16sc* pState ))
  6251. /* /////////////////////////////////////////////////////////////////////////////
  6252. // Work with Delay Line
  6253. ///////////////////////////////////////////////////////////////////////////// */
  6254. /* /////////////////////////////////////////////////////////////////////////////
  6255. // Names: ippsFIRGetDlyLine, ippsFIRSetDlyLine
  6256. // Purpose: set and get delay line
  6257. // Parameters:
  6258. // pDlyLine - pointer to delay line
  6259. // pState - pointer to the filter state
  6260. // Return:
  6261. // ippStsContextMatchErr - wrong state identifier
  6262. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6263. // ippStsNoErr - otherwise
  6264. // Note: pDlyLine may be NULL
  6265. */
  6266. IPPAPI(IppStatus, ippsFIRGetDlyLine_32f, (const IppsFIRState_32f* pState, Ipp32f* pDlyLine))
  6267. IPPAPI(IppStatus, ippsFIRSetDlyLine_32f, (IppsFIRState_32f* pState, const Ipp32f* pDlyLine))
  6268. IPPAPI(IppStatus, ippsFIRGetDlyLine_32fc, (const IppsFIRState_32fc* pState, Ipp32fc* pDlyLine))
  6269. IPPAPI(IppStatus, ippsFIRSetDlyLine_32fc, (IppsFIRState_32fc* pState, const Ipp32fc* pDlyLine))
  6270. IPPAPI(IppStatus, ippsFIRGetDlyLine32f_16s, (const IppsFIRState32f_16s* pState, Ipp16s* pDlyLine))
  6271. IPPAPI(IppStatus, ippsFIRSetDlyLine32f_16s, (IppsFIRState32f_16s* pState, const Ipp16s* pDlyLine))
  6272. IPPAPI(IppStatus, ippsFIRGetDlyLine32fc_16sc, (const IppsFIRState32fc_16sc* pState, Ipp16sc* pDlyLine))
  6273. IPPAPI(IppStatus, ippsFIRSetDlyLine32fc_16sc, (IppsFIRState32fc_16sc* pState, const Ipp16sc* pDlyLine))
  6274. IPPAPI(IppStatus, ippsFIRGetDlyLine_64f, (const IppsFIRState_64f* pState, Ipp64f* pDlyLine))
  6275. IPPAPI(IppStatus, ippsFIRSetDlyLine_64f, (IppsFIRState_64f* pState, const Ipp64f* pDlyLine))
  6276. IPPAPI(IppStatus, ippsFIRGetDlyLine_64fc, (const IppsFIRState_64fc* pState, Ipp64fc* pDlyLine))
  6277. IPPAPI(IppStatus, ippsFIRSetDlyLine_64fc, (IppsFIRState_64fc* pState, const Ipp64fc* pDlyLine))
  6278. IPPAPI(IppStatus, ippsFIRGetDlyLine64f_32f, (const IppsFIRState64f_32f* pState, Ipp32f* pDlyLine))
  6279. IPPAPI(IppStatus, ippsFIRSetDlyLine64f_32f, (IppsFIRState64f_32f* pState, const Ipp32f* pDlyLine))
  6280. IPPAPI(IppStatus, ippsFIRGetDlyLine64fc_32fc, (const IppsFIRState64fc_32fc* pState, Ipp32fc* pDlyLine))
  6281. IPPAPI(IppStatus, ippsFIRSetDlyLine64fc_32fc, (IppsFIRState64fc_32fc* pState, const Ipp32fc* pDlyLine))
  6282. IPPAPI(IppStatus, ippsFIRGetDlyLine64f_32s, (const IppsFIRState64f_32s* pState, Ipp32s* pDlyLine))
  6283. IPPAPI(IppStatus, ippsFIRSetDlyLine64f_32s, (IppsFIRState64f_32s* pState, const Ipp32s* pDlyLine))
  6284. IPPAPI(IppStatus, ippsFIRGetDlyLine64fc_32sc, (const IppsFIRState64fc_32sc* pState, Ipp32sc* pDlyLine))
  6285. IPPAPI(IppStatus, ippsFIRSetDlyLine64fc_32sc, (IppsFIRState64fc_32sc* pState, const Ipp32sc* pDlyLine))
  6286. IPPAPI(IppStatus, ippsFIRGetDlyLine64f_16s, (const IppsFIRState64f_16s* pState, Ipp16s* pDlyLine))
  6287. IPPAPI(IppStatus, ippsFIRSetDlyLine64f_16s, (IppsFIRState64f_16s* pState, const Ipp16s* pDlyLine))
  6288. IPPAPI(IppStatus, ippsFIRGetDlyLine64fc_16sc, (const IppsFIRState64fc_16sc* pState, Ipp16sc* pDlyLine))
  6289. IPPAPI(IppStatus, ippsFIRSetDlyLine64fc_16sc, (IppsFIRState64fc_16sc* pState, const Ipp16sc* pDlyLine))
  6290. /* /////////////////////////////////////////////////////////////////////////////
  6291. // Filtering
  6292. ///////////////////////////////////////////////////////////////////////////// */
  6293. /* /////////////////////////////////////////////////////////////////////////////
  6294. // Names: ippsFIROne
  6295. // Purpose: FIR filter. One point filtering
  6296. // Parameters:
  6297. // src - input sample
  6298. // pDstVal - output sample
  6299. // pState - pointer to the filter state
  6300. // scaleFactor - scale factor value
  6301. // Return:
  6302. // ippStsContextMatchErr - wrong state identifier
  6303. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6304. // ippStsNoErr - otherwise
  6305. */
  6306. IPPAPI(IppStatus, ippsFIROne_32f, (Ipp32f src, Ipp32f* pDstVal, IppsFIRState_32f* pState))
  6307. IPPAPI(IppStatus, ippsFIROne_32fc, (Ipp32fc src, Ipp32fc* pDstVal, IppsFIRState_32fc* pState))
  6308. IPPAPI(IppStatus, ippsFIROne32f_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal,
  6309. IppsFIRState32f_16s* pState, int scaleFactor ))
  6310. IPPAPI(IppStatus, ippsFIROne32fc_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal,
  6311. IppsFIRState32fc_16sc* pState, int scaleFactor ))
  6312. IPPAPI(IppStatus, ippsFIROne_64f, (Ipp64f src, Ipp64f* pDstVal, IppsFIRState_64f* pState))
  6313. IPPAPI(IppStatus, ippsFIROne_64fc, (Ipp64fc src, Ipp64fc* pDstVal, IppsFIRState_64fc* pState))
  6314. IPPAPI(IppStatus, ippsFIROne64f_32f, (Ipp32f src, Ipp32f* pDstVal, IppsFIRState64f_32f* pState))
  6315. IPPAPI(IppStatus, ippsFIROne64fc_32fc, (Ipp32fc src, Ipp32fc* pDstVal, IppsFIRState64fc_32fc* pState))
  6316. IPPAPI(IppStatus, ippsFIROne64f_32s_Sfs, (Ipp32s src, Ipp32s* pDstVal,
  6317. IppsFIRState64f_32s* pState, int scaleFactor ))
  6318. IPPAPI(IppStatus, ippsFIROne64fc_32sc_Sfs, (Ipp32sc src, Ipp32sc* pDstVal,
  6319. IppsFIRState64fc_32sc* pState, int scaleFactor ))
  6320. IPPAPI(IppStatus, ippsFIROne64f_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal,
  6321. IppsFIRState64f_16s* pState, int scaleFactor ))
  6322. IPPAPI(IppStatus, ippsFIROne64fc_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal,
  6323. IppsFIRState64fc_16sc* pState, int scaleFactor ))
  6324. /* /////////////////////////////////////////////////////////////////////////////
  6325. // Names: ippsFIR
  6326. // Purpose: FIR filter. Vector filtering
  6327. // Parameters:
  6328. // pSrcDst - pointer to the input/output vector in in-place operation
  6329. // pSrc - pointer to the input vector
  6330. // pDst - pointer to the output vector
  6331. // numIters - number iterations (for single-rate equal length data vector)
  6332. // pState - pointer to the filter state
  6333. // scaleFactor - scale factor value
  6334. // Return:
  6335. // ippStsContextMatchErr - wrong state identifier
  6336. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6337. // ippStsSizeErr - numIters is less or equal zero
  6338. // ippStsNoErr - otherwise
  6339. // Note: for Multi-Rate filtering
  6340. // length pSrc = numIters*downFactor
  6341. // length pDst = numIters*upFactor
  6342. // for inplace functions max this values
  6343. */
  6344. IPPAPI(IppStatus, ippsFIR_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters,
  6345. IppsFIRState_32f* pState))
  6346. IPPAPI(IppStatus, ippsFIR_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters,
  6347. IppsFIRState_32fc* pState))
  6348. IPPAPI(IppStatus, ippsFIR32f_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  6349. IppsFIRState32f_16s* pState, int scaleFactor ))
  6350. IPPAPI(IppStatus, ippsFIR32fc_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  6351. IppsFIRState32fc_16sc* pState, int scaleFactor ))
  6352. IPPAPI(IppStatus, ippsFIR_32f_I, (Ipp32f* pSrcDst, int numIters,
  6353. IppsFIRState_32f* pState))
  6354. IPPAPI(IppStatus, ippsFIR_32fc_I, (Ipp32fc* pSrcDst, int numIters,
  6355. IppsFIRState_32fc* pState))
  6356. IPPAPI(IppStatus, ippsFIR32f_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  6357. IppsFIRState32f_16s* pState, int scaleFactor ))
  6358. IPPAPI(IppStatus, ippsFIR32fc_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  6359. IppsFIRState32fc_16sc* pState, int scaleFactor ))
  6360. IPPAPI(IppStatus, ippsFIR_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int numIters,
  6361. IppsFIRState_64f* pState))
  6362. IPPAPI(IppStatus, ippsFIR_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int numIters,
  6363. IppsFIRState_64fc* pState))
  6364. IPPAPI(IppStatus, ippsFIR_64f_I, (Ipp64f* pSrcDst, int numIters,
  6365. IppsFIRState_64f* pState))
  6366. IPPAPI(IppStatus, ippsFIR_64fc_I, (Ipp64fc* pSrcDst, int numIters,
  6367. IppsFIRState_64fc* pState))
  6368. IPPAPI(IppStatus, ippsFIR64f_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters,
  6369. IppsFIRState64f_32f* pState))
  6370. IPPAPI(IppStatus, ippsFIR64fc_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters,
  6371. IppsFIRState64fc_32fc* pState))
  6372. IPPAPI(IppStatus, ippsFIR64f_32f_I, (Ipp32f* pSrcDst, int numIters,
  6373. IppsFIRState64f_32f* pState))
  6374. IPPAPI(IppStatus, ippsFIR64fc_32fc_I, (Ipp32fc* pSrcDst, int numIters,
  6375. IppsFIRState64fc_32fc* pState))
  6376. IPPAPI(IppStatus, ippsFIR64f_32s_Sfs, (const Ipp32s* pSrc, Ipp32s* pDst, int numIters,
  6377. IppsFIRState64f_32s* pState, int scaleFactor ))
  6378. IPPAPI(IppStatus, ippsFIR64fc_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc* pDst, int numIters,
  6379. IppsFIRState64fc_32sc* pState, int scaleFactor ))
  6380. IPPAPI(IppStatus, ippsFIR64f_32s_ISfs, (Ipp32s* pSrcDst, int numIters,
  6381. IppsFIRState64f_32s* pState, int scaleFactor ))
  6382. IPPAPI(IppStatus, ippsFIR64fc_32sc_ISfs, (Ipp32sc* pSrcDst, int numIters,
  6383. IppsFIRState64fc_32sc* pState, int scaleFactor ))
  6384. IPPAPI(IppStatus, ippsFIR64f_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  6385. IppsFIRState64f_16s* pState, int scaleFactor ))
  6386. IPPAPI(IppStatus, ippsFIR64fc_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  6387. IppsFIRState64fc_16sc* pState, int scaleFactor ))
  6388. IPPAPI(IppStatus, ippsFIR64f_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  6389. IppsFIRState64f_16s* pState, int scaleFactor ))
  6390. IPPAPI(IppStatus, ippsFIR64fc_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  6391. IppsFIRState64fc_16sc* pState, int scaleFactor ))
  6392. /* /////////////////////////////////////////////////////////////////////////////
  6393. // FIR filters (integer taps version)
  6394. ///////////////////////////////////////////////////////////////////////////// */
  6395. /* /////////////////////////////////////////////////////////////////////////////
  6396. // Initialize State
  6397. ///////////////////////////////////////////////////////////////////////////// */
  6398. /* /////////////////////////////////////////////////////////////////////////////
  6399. // Names: ippsFIRInitAlloc, ippsFIRMRInitAlloc, ippsFIRFree
  6400. // Purpose: create and initialize FIR state, set taps and delay line
  6401. // Parameters:
  6402. // pTaps - pointer to the filter coefficients
  6403. // tapsLen - number of coefficients
  6404. // tapsFactor - scale factor of Ipp32s taps
  6405. // pDlyLine - pointer delay line, may be NULL
  6406. // state - pointer to the state created or NULL
  6407. // Return:
  6408. // status - status returned, its values are
  6409. // ippStsMemAllocErr - memory allocation error
  6410. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6411. // ippStsFIRLenErr - tapsLen <= 0
  6412. // ippStsFIRMRFactorErr - factor <= 0
  6413. // ippStsFIRMRPhaseErr - phase < 0 || factor <= phase
  6414. // ippStsNoErr - otherwise
  6415. // Notes: pTaps and tapsFactor for Ipp32s calculate as follows
  6416. //
  6417. // Ipp64f mpy = 1.0;
  6418. // Ipp32f pFTaps[tapsLen]; // true values of the coefficients
  6419. // Ipp32s pTaps[tapsLen]; // values to be pass to integer FIR
  6420. //
  6421. // ... calculate coefficients, filling pFTaps ...
  6422. //
  6423. // max = MAX(abs(pFTaps[i])); for i = 0..tapsLen-1
  6424. //
  6425. // tapsFactor = 0;
  6426. // if (max > IPP_MAX_32S) {
  6427. // while (max > IPP_MAX_32S) {
  6428. // tapsFactor++;
  6429. // max *= 0.5;
  6430. // mpy *= 0.5;
  6431. // }
  6432. // } else {
  6433. // while (max < IPP_MAX_32S && tapsFactor > -17) {
  6434. // tapsFactor--;
  6435. // max += max;
  6436. // mpy += mpy;
  6437. // }
  6438. // tapsFactor++;
  6439. // mpy *= 0.5;
  6440. // }
  6441. //
  6442. // for (i = 0; i < tapsLen; i++)
  6443. // if (pFTaps[i] < 0)
  6444. // pSTaps[i] = (Ipp32s)(mpy*pFTaps[i]-0.5);
  6445. // else
  6446. // pSTaps[i] = (Ipp32s)(mpy*pFTaps[i]+0.5);
  6447. */
  6448. IPPAPI(IppStatus, ippsFIRInitAlloc32s_16s, (IppsFIRState32s_16s** pState,
  6449. const Ipp32s *pTaps, int tapsLen, int tapsFactor, const Ipp16s *pDlyLine))
  6450. IPPAPI(IppStatus, ippsFIRMRInitAlloc32s_16s, (IppsFIRState32s_16s** pState,
  6451. const Ipp32s *pTaps, int tapsLen, int tapsFactor, int upFactor,
  6452. int upPhase, int downFactor, int downPhase, const Ipp16s *pDlyLine))
  6453. IPPAPI(IppStatus, ippsFIRInitAlloc32s_16s32f, (IppsFIRState32s_16s** pState,
  6454. const Ipp32f *pTaps, int tapsLen, const Ipp16s *pDlyLine))
  6455. IPPAPI(IppStatus, ippsFIRMRInitAlloc32s_16s32f, (IppsFIRState32s_16s **pState,
  6456. const Ipp32f *pTaps, int tapsLen, int upFactor, int upPhase,
  6457. int downFactor, int downPhase, const Ipp16s *pDlyLine))
  6458. IPPAPI(IppStatus, ippsFIRInitAlloc32sc_16sc, (IppsFIRState32sc_16sc** pState,
  6459. const Ipp32sc *pTaps, int tapsLen, int tapsFactor, const Ipp16sc *pDlyLine))
  6460. IPPAPI(IppStatus, ippsFIRMRInitAlloc32sc_16sc, (IppsFIRState32sc_16sc** pState,
  6461. const Ipp32sc *pTaps, int tapsLen, int tapsFactor, int upFactor,
  6462. int upPhase, int downFactor, int downPhase, const Ipp16sc *pDlyLine))
  6463. IPPAPI(IppStatus, ippsFIRInitAlloc32sc_16sc32fc, (IppsFIRState32sc_16sc** pState,
  6464. const Ipp32fc *pTaps, int tapsLen, const Ipp16sc *pDlyLine))
  6465. IPPAPI(IppStatus, ippsFIRMRInitAlloc32sc_16sc32fc, (IppsFIRState32sc_16sc** pState,
  6466. const Ipp32fc *pTaps, int tapsLen, int upFactor, int upPhase,
  6467. int downFactor, int downPhase, const Ipp16sc *pDlyLine))
  6468. IPPAPI(IppStatus, ippsFIRFree32s_16s, (IppsFIRState32s_16s *pState))
  6469. IPPAPI(IppStatus, ippsFIRFree32sc_16sc, (IppsFIRState32sc_16sc *pState))
  6470. /* /////////////////////////////////////////////////////////////////////////////
  6471. // Names: ippsFIRGetTaps
  6472. // Purpose: get FIR taps value from state
  6473. // Parameters:
  6474. // pTaps - pointer to buffer to get FIR taps
  6475. // pState - pointer to the FIR filter state
  6476. // Return:
  6477. // ippStsContextMatchErr - wrong state identifier
  6478. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6479. // ippStsNoErr - otherwise
  6480. */
  6481. IPPAPI(IppStatus, ippsFIRGetTaps32s_16s, (const IppsFIRState32s_16s* pState,
  6482. Ipp32s* pTaps, int* tapsFactor))
  6483. IPPAPI(IppStatus, ippsFIRGetTaps32sc_16sc, (const IppsFIRState32sc_16sc* pState,
  6484. Ipp32sc* pTaps, int* tapsFactor))
  6485. IPPAPI(IppStatus, ippsFIRGetTaps32s_16s32f, (const IppsFIRState32s_16s* pState,
  6486. Ipp32f* pTaps))
  6487. IPPAPI(IppStatus, ippsFIRGetTaps32sc_16sc32fc, (const IppsFIRState32sc_16sc* pState,
  6488. Ipp32fc* pTaps))
  6489. /* /////////////////////////////////////////////////////////////////////////////
  6490. // Work with Delay Line
  6491. ///////////////////////////////////////////////////////////////////////////// */
  6492. /* /////////////////////////////////////////////////////////////////////////////
  6493. // Names: ippsFIRGetDlyLine, ippsFIRSetDlyLine
  6494. // Purpose: set and get delay line
  6495. // Parameters:
  6496. // pDlyLine - pointer to the delay line
  6497. // pState - pointer to the FIR filter state
  6498. // Return:
  6499. // ippStsContextMatchErr - wrong state identifier
  6500. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6501. // ippStsNoErr - otherwise
  6502. // Note: pDlyLine may be NULL
  6503. */
  6504. IPPAPI(IppStatus, ippsFIRGetDlyLine32s_16s, (const IppsFIRState32s_16s* pState,
  6505. Ipp16s* pDlyLine))
  6506. IPPAPI(IppStatus, ippsFIRSetDlyLine32s_16s, (IppsFIRState32s_16s* pState,
  6507. const Ipp16s* pDlyLine))
  6508. IPPAPI(IppStatus, ippsFIRGetDlyLine32sc_16sc, (const IppsFIRState32sc_16sc* pState,
  6509. Ipp16sc* pDlyLine))
  6510. IPPAPI(IppStatus, ippsFIRSetDlyLine32sc_16sc, (IppsFIRState32sc_16sc* pState,
  6511. const Ipp16sc* pDlyLine))
  6512. /* /////////////////////////////////////////////////////////////////////////////
  6513. // Filtering
  6514. ///////////////////////////////////////////////////////////////////////////// */
  6515. /* /////////////////////////////////////////////////////////////////////////////
  6516. // Names: ippsFIROne, ippsFIROne
  6517. // Purpose: FIR filter with integer taps. One sample filtering
  6518. // Parameters:
  6519. // src - input sample
  6520. // pDstVal - pointer to the output sample
  6521. // pState - pointer to the FIR filter state
  6522. // scaleFactor - scale factor value
  6523. // Return:
  6524. // ippStsContextMatchErr - wrong state identifier
  6525. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6526. // ippStsNoErr - otherwise
  6527. */
  6528. IPPAPI(IppStatus, ippsFIROne32s_16s_Sfs, (Ipp16s src, Ipp16s *pDstVal,
  6529. IppsFIRState32s_16s *pState, int scaleFactor ))
  6530. IPPAPI(IppStatus, ippsFIROne32sc_16sc_Sfs, (Ipp16sc src, Ipp16sc *pDstVal,
  6531. IppsFIRState32sc_16sc *pState, int scaleFactor ))
  6532. /* /////////////////////////////////////////////////////////////////////////////
  6533. // Names: ippsFIR
  6534. // Purpose: FIR filter with integer taps. Vector filtering
  6535. // Parameters:
  6536. // pSrc - pointer to the input vector
  6537. // pDst - pointer to the output vector
  6538. // pSrcDst - pointer to input/output vector in in-place operation
  6539. // numIters - number iterations (for single-rate equal length data vector)
  6540. // pState - pointer to the filter state
  6541. // scaleFactor - scale factor value
  6542. // Return:
  6543. // ippStsContextMatchErr - wrong State identifier
  6544. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6545. // ippStsSizeErr - numIters <= 0
  6546. // ippStsNoErr - otherwise
  6547. // Note: for Multi-Rate filtering
  6548. // length pSrc = numIters*downFactor
  6549. // length pDst = numIters*upFactor
  6550. // for inplace functions max this values
  6551. */
  6552. IPPAPI(IppStatus, ippsFIR32s_16s_Sfs, (const Ipp16s *pSrc, Ipp16s *pDst,
  6553. int numIters, IppsFIRState32s_16s *pState, int scaleFactor ))
  6554. IPPAPI(IppStatus, ippsFIR32sc_16sc_Sfs, (const Ipp16sc *pSrc, Ipp16sc *pDst,
  6555. int numIters, IppsFIRState32sc_16sc *pState, int scaleFactor ))
  6556. IPPAPI(IppStatus, ippsFIR32s_16s_ISfs, (Ipp16s *pSrcDst, int numIters,
  6557. IppsFIRState32s_16s *pState, int scaleFactor ))
  6558. IPPAPI(IppStatus, ippsFIR32sc_16sc_ISfs, (Ipp16sc *pSrcDst, int numIters,
  6559. IppsFIRState32sc_16sc *pState, int scaleFactor ))
  6560. IPPAPI( IppStatus, ippsFIRInitAlloc_32s,( IppsFIRState_32s** pState,
  6561. const Ipp32s *pTaps, int tapsLen, const Ipp32s *pDlyLine ))
  6562. IPPAPI( IppStatus, ippsFIRGetStateSize_32s,( int tapsLen, int* pBufferSize ))
  6563. IPPAPI( IppStatus, ippsFIRInit_32s,( IppsFIRState_32s** pState,
  6564. const Ipp32s *pTaps, int tapsLen, const Ipp32s *pDlyLine, Ipp8u* pBuf ))
  6565. IPPAPI( IppStatus, ippsFIRSetTaps_32s,( const Ipp32s *pTaps,
  6566. IppsFIRState_32s* pState ))
  6567. IPPAPI( IppStatus, ippsFIRGetTaps_32s,( const IppsFIRState_32s* pState,
  6568. Ipp32s* pTaps ))
  6569. IPPAPI( IppStatus, ippsFIROne_32s_Sfs,( Ipp32s src, Ipp32s *pDstVal,
  6570. IppsFIRState_32s *pState, int scaleFactor ))
  6571. IPPAPI( IppStatus, ippsFIR_32s_Sfs,( const Ipp32s *pSrc, Ipp32s *pDst,
  6572. int numIters, IppsFIRState_32s *pState, int scaleFactor ))
  6573. IPPAPI( IppStatus, ippsFIR_32s_ISfs,( Ipp32s *pSrcDst, int numIters,
  6574. IppsFIRState_32s *pState, int scaleFactor ))
  6575. IPPAPI( IppStatus, ippsFIRFree_32s,( IppsFIRState_32s *pState ))
  6576. IPPAPI( IppStatus, ippsFIRGetStateSize_16s,( int tapsLen, int* pStateSize ))
  6577. IPPAPI( IppStatus, ippsFIRMRGetStateSize_16s,( int tapsLen, int upFactor,
  6578. int downFactor, int *pStateSize ))
  6579. IPPAPI( IppStatus, ippsFIRInit_16s,( IppsFIRState_16s** ppState,
  6580. const Ipp16s *pTaps, int tapsLen, int tapsFactor, const Ipp16s *pDlyLine,
  6581. Ipp8u* pBuffer ))
  6582. IPPAPI( IppStatus, ippsFIRMRInit_16s,( IppsFIRState_16s** ppState,
  6583. const Ipp16s *pTaps, int tapsLen, int tapsFactor, int upFactor, int upPhase,
  6584. int downFactor, int downPhase, const Ipp16s *pDlyLine, Ipp8u* pBuffer ))
  6585. IPPAPI(IppStatus, ippsFIRInitAlloc_16s, (IppsFIRState_16s** pState,
  6586. const Ipp16s *pTaps, int tapsLen, int tapsFactor, const Ipp16s *pDlyLine))
  6587. IPPAPI(IppStatus, ippsFIRMRInitAlloc_16s, (IppsFIRState_16s** pState,
  6588. const Ipp16s *pTaps, int tapsLen, int tapsFactor, int upFactor,
  6589. int upPhase, int downFactor, int downPhase, const Ipp16s *pDlyLine))
  6590. IPPAPI( IppStatus, ippsFIRSetTaps_16s,( const Ipp16s *pTaps,
  6591. IppsFIRState_16s* pState, int tapsFactor ))
  6592. IPPAPI( IppStatus, ippsFIRGetTaps_16s,( const IppsFIRState_16s* pState,
  6593. Ipp16s* pTaps, int* tapsFactor ))
  6594. IPPAPI( IppStatus, ippsFIRSetDlyLine_16s,( IppsFIRState_16s *pState,
  6595. const Ipp16s *pDlyLine ))
  6596. IPPAPI( IppStatus, ippsFIRGetDlyLine_16s,(
  6597. const IppsFIRState_16s *pState, Ipp16s *pDlyLine ))
  6598. IPPAPI( IppStatus, ippsFIROne_16s_Sfs,( Ipp16s src, Ipp16s *pDstVal,
  6599. IppsFIRState_16s *pState, int scaleFactor ))
  6600. IPPAPI(IppStatus, ippsFIR_16s_Sfs, (const Ipp16s *pSrc, Ipp16s *pDst,
  6601. int numIters, IppsFIRState_16s *pState, int scaleFactor ))
  6602. IPPAPI( IppStatus, ippsFIR_16s_ISfs,( Ipp16s *pSrcDst, int numIters,
  6603. IppsFIRState_16s *pState, int scaleFactor ))
  6604. IPPAPI(IppStatus, ippsFIRFree_16s, (IppsFIRState_16s *pState))
  6605. /* /////////////////////////////////////////////////////////////////////////////
  6606. // Names: ippsFIRStream
  6607. // Purpose: FIR stream filter with integer taps. Vector filtering
  6608. // It does not have delay line.
  6609. // Parameters:
  6610. // pSrc - pointer to the input vector
  6611. // pDst - pointer to the output vector
  6612. // numIters - number iterations (for single-rate equal length data vector)
  6613. // pState - pointer to the filter state
  6614. // scaleFactor - scale factor value
  6615. // Return:
  6616. // ippStsContextMatchErr - wrong State identifier
  6617. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6618. // ippStsSizeErr - numIters <= 0
  6619. // ippStsNoErr - otherwise
  6620. // Note: for Multi-Rate filtering
  6621. // length pSrc = numIters*downFactor
  6622. // length pDst = numIters*upFactor
  6623. // for inplace functions max this values
  6624. */
  6625. IPPAPI( IppStatus, ippsFIRStreamGetStateSize_16s,( int tapsLen, int* pStateSize ))
  6626. IPPAPI( IppStatus, ippsFIRMRStreamGetStateSize_16s,( int tapsLen, int upFactor,
  6627. int downFactor, int *pStateSize ))
  6628. IPPAPI( IppStatus, ippsFIRStreamInit_16s,( IppsFIRState_16s** pState,
  6629. const Ipp16s *pTaps, int tapsLen, int tapsFactor, IppRoundMode rndMode, Ipp8u* pBuf ))
  6630. IPPAPI( IppStatus, ippsFIRMRStreamInit_16s,( IppsFIRState_16s** ppState,
  6631. const Ipp16s *pTaps, int tapsLen, int tapsFactor, int upFactor, int upPhase,
  6632. int downFactor, int downPhase, IppRoundMode rndMode, Ipp8u* pBuffer ))
  6633. IPPAPI(IppStatus, ippsFIRStreamInitAlloc_16s, (IppsFIRState_16s** pState,
  6634. const Ipp16s *pTaps, int tapsLen, int tapsFactor, IppRoundMode rndMode))
  6635. IPPAPI(IppStatus, ippsFIRMRStreamInitAlloc_16s, (IppsFIRState_16s** pState,
  6636. const Ipp16s *pTaps, int tapsLen, int tapsFactor, int upFactor,
  6637. int upPhase, int downFactor, int downPhase, IppRoundMode rndMode))
  6638. /* /////////////////////////////////////////////////////////////////////////////
  6639. // Names: ippsFIRStream
  6640. // Purpose: FIR stream filter with float taps. Vector filtering
  6641. // It does not have delay line.
  6642. // Parameters:
  6643. // pSrc - pointer to the input vector
  6644. // pDst - pointer to the output vector
  6645. // numIters - number iterations (for single-rate equal length data vector)
  6646. // pState - pointer to the filter state
  6647. // scaleFactor - scale factor value// Return:
  6648. // ippStsContextMatchErr - wrong State identifier
  6649. // ippStsNullPtrErr - pointer(s) to the data is NULL
  6650. // ippStsSizeErr - numIters <= 0
  6651. // ippStsNoErr - otherwise
  6652. // Note: for Multi-Rate filtering
  6653. // length pSrc = numIters*downFactor
  6654. // length pDst = numIters*upFactor
  6655. // for inplace functions max this values
  6656. */
  6657. IPPAPI( IppStatus, ippsFIRStreamGetStateSize_32f,( int tapsLen, int *pBufferSize ))
  6658. IPPAPI( IppStatus, ippsFIRMRStreamGetStateSize_32f,( int tapsLen, int upFactor,
  6659. int downFactor, int *pBufferSize ))
  6660. IPPAPI( IppStatus, ippsFIRStreamInit_32f,( IppsFIRState_32f** pState,
  6661. const Ipp32f *pTaps, int tapsLen, Ipp8u *pBuffer ))
  6662. IPPAPI( IppStatus, ippsFIRMRStreamInit_32f,( IppsFIRState_32f** pState,
  6663. const Ipp32f *pTaps, int tapsLen, int upFactor, int upPhase,
  6664. int downFactor, int downPhase, Ipp8u *pBuffer ))
  6665. IPPAPI( IppStatus, ippsFIRStreamInitAlloc_32f,( IppsFIRState_32f** pState,
  6666. const Ipp32f *pTaps, int tapsLen ))
  6667. IPPAPI( IppStatus, ippsFIRMRStreamInitAlloc_32f,( IppsFIRState_32f** pState,
  6668. const Ipp32f* pTaps, int tapsLen, int upFactor, int upPhase,
  6669. int downFactor, int downPhase ))
  6670. /* /////////////////////////////////////////////////////////////////////////////
  6671. // FIR LMS filters
  6672. ///////////////////////////////////////////////////////////////////////////// */
  6673. /* /////////////////////////////////////////////////////////////////////////////
  6674. // Names: ippsFIRLMSOne_Direct
  6675. // Purpose: direct form of a FIR LMS filter. One point operation.
  6676. // Parameters:
  6677. // src source signal sample
  6678. // refval desired signal sample
  6679. // pTapsInv FIR taps coefficient values to be fitted
  6680. // tapsLen number of the taps
  6681. // pDlyLine pointer to the delay line values
  6682. // pDlyIndex pointer to the current index of delay line
  6683. // mu adaptation step
  6684. // muQ15 adaptation step, integer version
  6685. // muQ15 = (int)(mu * (1<<15) + 0.5f)
  6686. // pDstVal where write output sample to
  6687. // Return:
  6688. // ippStsNullPtrErr pointer the the data is null
  6689. // ippStsSizeErr the taps length is equal or less zero
  6690. // ippStsNoErr otherwise
  6691. // Note: adaptation error value has been deleted from the parameter
  6692. // list because it can be computed as (refval - dst).
  6693. // taps array is inverted, delay line is of double size = tapsLen * 2
  6694. */
  6695. IPPAPI(IppStatus, ippsFIRLMSOne_Direct_32f,( Ipp32f src, Ipp32f refval,
  6696. Ipp32f* pDstVal, Ipp32f* pTapsInv, int tapsLen, float mu, Ipp32f* pDlyLine,
  6697. int* pDlyIndex ))
  6698. IPPAPI(IppStatus, ippsFIRLMSOne_Direct32f_16s,( Ipp16s src, Ipp16s refval,
  6699. Ipp16s* pDstVal, Ipp32f* pTapsInv, int tapsLen, float mu, Ipp16s* pDlyLine,
  6700. int* pDlyIndex ))
  6701. IPPAPI(IppStatus, ippsFIRLMSOne_DirectQ15_16s,( Ipp16s src, Ipp16s refval,
  6702. Ipp16s* pDstVal, Ipp32s* pTapsInv, int tapsLen, int muQ15, Ipp16s* pDlyLine,
  6703. int* pDlyIndex ))
  6704. /* context oriented functions */
  6705. #if !defined( _OWN_BLDPCS )
  6706. struct FIRLMSState_32f;
  6707. typedef struct FIRLMSState_32f IppsFIRLMSState_32f;
  6708. struct FIRLMSState32f_16s;
  6709. typedef struct FIRLMSState32f_16s IppsFIRLMSState32f_16s;
  6710. #endif /* _OWN_BLDPCS */
  6711. /* /////////////////////////////////////////////////////////////////////////////
  6712. // Names: ippsFIRLMS
  6713. // Purpose: LMS filtering with context use
  6714. // Parameters:
  6715. // pState pointer to the state
  6716. // pSrc pointer to the source signal
  6717. // pRef pointer to the desired signal
  6718. // pDst pointer to the output signal
  6719. // len length of the signals
  6720. // mu adaptation step
  6721. // Return:
  6722. // ippStsNullPtrErr pointer to the data is null
  6723. // ippStsSizeErr the length of signals is equal or less zero
  6724. // ippStsContextMatchErr wrong state identifier
  6725. // ippStsNoErr otherwise
  6726. */
  6727. IPPAPI(IppStatus, ippsFIRLMS_32f,( const Ipp32f* pSrc, const Ipp32f* pRef,
  6728. Ipp32f* pDst, int len, float mu, IppsFIRLMSState_32f* pState ))
  6729. IPPAPI(IppStatus, ippsFIRLMS32f_16s,( const Ipp16s* pSrc, const Ipp16s* pRef,
  6730. Ipp16s* pDst, int len, float mu, IppsFIRLMSState32f_16s* pStatel ))
  6731. /* /////////////////////////////////////////////////////////////////////////////
  6732. // Names: ippsFIRLMSInitAlloc, ippsFIRLMSFree
  6733. // Purpose: LMS initialization functions
  6734. // Parameters:
  6735. // pTaps pointer to the taps values. May be null
  6736. // tapsLen number of the taps
  6737. // pDlyLine pointer to the delay line. May be null
  6738. // dlyLineIndex current index value for the delay line
  6739. // pState address of pointer to the state returned
  6740. // Return:
  6741. // ippStsNullPtrErr pointer is null
  6742. // ippStsContextMatchErr wrong state identifier
  6743. // ippStsNoErr otherwise
  6744. */
  6745. IPPAPI(IppStatus, ippsFIRLMSInitAlloc_32f,( IppsFIRLMSState_32f** pState,
  6746. const Ipp32f* pTaps, int tapsLen, const Ipp32f* pDlyLine, int dlyLineIndex ))
  6747. IPPAPI(IppStatus, ippsFIRLMSInitAlloc32f_16s,( IppsFIRLMSState32f_16s** pState,
  6748. const Ipp32f* pTaps, int tapsLen, const Ipp16s* pDlyLine, int dlyLineIndex ))
  6749. IPPAPI(IppStatus, ippsFIRLMSFree_32f,( IppsFIRLMSState_32f* pState))
  6750. IPPAPI(IppStatus, ippsFIRLMSFree32f_16s,( IppsFIRLMSState32f_16s* pState))
  6751. /* /////////////////////////////////////////////////////////////////////////////
  6752. // Names: ippsFIRLMSGetTaps
  6753. // Purpose: get taps values
  6754. // Parameters:
  6755. // pstate pointer to the state
  6756. // pTaps pointer to the array to store the taps values
  6757. // Return:
  6758. // ippStsNullPtrErr pointer to the data is null
  6759. // ippStsNoErr otherwise
  6760. */
  6761. IPPAPI(IppStatus, ippsFIRLMSGetTaps_32f,( const IppsFIRLMSState_32f* pState,
  6762. Ipp32f* pOutTaps ))
  6763. IPPAPI(IppStatus, ippsFIRLMSGetTaps32f_16s,( const IppsFIRLMSState32f_16s* pState,
  6764. Ipp32f* pOutTaps ))
  6765. /* /////////////////////////////////////////////////////////////////////////////
  6766. // Names: ippsFIRLMSGetDlyl, ippsFIRLMSSetDlyl
  6767. // Purpose: set or get delay line
  6768. // Parameters:
  6769. // pState pointer to the state structure
  6770. // pDlyLine pointer to the delay line of the single size = tapsLen
  6771. // pDlyLineIndex pointer to get the current delay line index
  6772. // Return:
  6773. // ippStsNullPtrErr pointer to the data is null
  6774. // ippStsContextMatchErr wrong state identifier
  6775. // ippStsNoErr otherwise
  6776. */
  6777. IPPAPI(IppStatus, ippsFIRLMSGetDlyLine_32f,( const IppsFIRLMSState_32f* pState,
  6778. Ipp32f* pDlyLine, int* pDlyLineIndex ))
  6779. IPPAPI(IppStatus, ippsFIRLMSGetDlyLine32f_16s,( const IppsFIRLMSState32f_16s* pState,
  6780. Ipp16s* pDlyLine, int* pDlyLineIndex ))
  6781. IPPAPI(IppStatus, ippsFIRLMSSetDlyLine_32f,( IppsFIRLMSState_32f* pState,
  6782. const Ipp32f* pDlyLine, int dlyLineIndex ))
  6783. IPPAPI(IppStatus, ippsFIRLMSSetDlyLine32f_16s,( IppsFIRLMSState32f_16s* pState,
  6784. const Ipp16s* pDlyLine, int dlyLineIndex ))
  6785. /* /////////////////////////////////////////////////////////////////////////////
  6786. // FIR LMS MR filters
  6787. ///////////////////////////////////////////////////////////////////////////// */
  6788. /* context oriented functions */
  6789. #if !defined( _OWN_BLDPCS )
  6790. struct FIRLMSMRState32s_16s;
  6791. typedef struct FIRLMSMRState32s_16s IppsFIRLMSMRState32s_16s;
  6792. struct FIRLMSMRState32sc_16sc;
  6793. typedef struct FIRLMSMRState32sc_16sc IppsFIRLMSMRState32sc_16sc;
  6794. #endif /* _OWN_BLDPCS */
  6795. /* /////////////////////////////////////////////////////////////////////////////
  6796. // Names: ippsFIRLMSMROne, ippsFIRLMSMROneVal
  6797. // Purpose: LMS MR filtering with context use
  6798. // Parameters:
  6799. // val the source signal last value to update delay line
  6800. // pDstVal pointer to the output signal value
  6801. // pState pointer to the state
  6802. // Return:
  6803. // ippStsNullPtrErr pointer to the data is null
  6804. // ippStsContextMatchErr wrong state identifier
  6805. // ippStsNoErr otherwise
  6806. */
  6807. IPPAPI( IppStatus, ippsFIRLMSMROne32s_16s,( Ipp32s* pDstVal,
  6808. IppsFIRLMSMRState32s_16s* pState ))
  6809. IPPAPI( IppStatus, ippsFIRLMSMROneVal32s_16s,( Ipp16s val, Ipp32s* pDstVal,
  6810. IppsFIRLMSMRState32s_16s* pState ))
  6811. IPPAPI( IppStatus, ippsFIRLMSMROne32sc_16sc,( Ipp32sc* pDstVal,
  6812. IppsFIRLMSMRState32sc_16sc* pState ))
  6813. IPPAPI( IppStatus, ippsFIRLMSMROneVal32sc_16sc,( Ipp16sc val, Ipp32sc* pDstVal,
  6814. IppsFIRLMSMRState32sc_16sc* pState ))
  6815. /* /////////////////////////////////////////////////////////////////////////////
  6816. // Names: ippsFIRLMSMRInitAlloc, ippsFIRLMSMRFree
  6817. // Purpose: LMS MR initialization functions
  6818. // Parameters:
  6819. // pState address of pointer to the state returned
  6820. // pTaps pointer to the taps values. May be null
  6821. // tapsLen number of the taps
  6822. // pDlyLine pointer to the delay line. May be null
  6823. // dlyLineIndex current index value for the delay line
  6824. // dlyStep sample down factor
  6825. // updateDly update delay in samples
  6826. // mu adaptation step
  6827. // Return:
  6828. // ippStsNullPtrErr pointer is null
  6829. // ippStsContextMatchErr wrong state identifier
  6830. // ippStsNoErr otherwise
  6831. */
  6832. IPPAPI( IppStatus, ippsFIRLMSMRInitAlloc32s_16s,( IppsFIRLMSMRState32s_16s** pState,
  6833. const Ipp32s* pTaps, int tapsLen, const Ipp16s* pDlyLine, int dlyLineIndex,
  6834. int dlyStep, int updateDly, int mu ))
  6835. IPPAPI( IppStatus, ippsFIRLMSMRFree32s_16s,( IppsFIRLMSMRState32s_16s* pState ))
  6836. IPPAPI( IppStatus, ippsFIRLMSMRInitAlloc32sc_16sc,( IppsFIRLMSMRState32sc_16sc** pState,
  6837. const Ipp32sc* pTaps, int tapsLen, const Ipp16sc* pDlyLine, int dlyLineIndex,
  6838. int dlyStep, int updateDly, int mu ))
  6839. IPPAPI( IppStatus, ippsFIRLMSMRFree32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState ))
  6840. /* /////////////////////////////////////////////////////////////////////////////
  6841. // Names: ippsFIRLMSMRGetTaps, ippsFIRLMSMRSetTaps,
  6842. // ippsFIRLMSMRGetTapsPointer
  6843. // Purpose: get & set taps values
  6844. // Parameters:
  6845. // pState pointer to the state
  6846. // pOutTaps pointer to the array to store the taps values
  6847. // pInTaps pointer to the taps values. May be null
  6848. // pTaps pointer to the state taps values. For direct access
  6849. // Return:
  6850. // ippStsNullPtrErr pointer to the data is null
  6851. // ippStsContextMatchErr wrong state identifier
  6852. // ippStsNoErr otherwise
  6853. */
  6854. IPPAPI( IppStatus, ippsFIRLMSMRSetTaps32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6855. const Ipp32s* pInTaps ))
  6856. IPPAPI( IppStatus, ippsFIRLMSMRGetTaps32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6857. Ipp32s* pOutTaps ))
  6858. IPPAPI( IppStatus, ippsFIRLMSMRGetTapsPointer32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6859. Ipp32s** pTaps ))
  6860. IPPAPI( IppStatus, ippsFIRLMSMRSetTaps32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6861. const Ipp32sc* pInTaps ))
  6862. IPPAPI( IppStatus, ippsFIRLMSMRGetTaps32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6863. Ipp32sc* pOutTaps ))
  6864. IPPAPI( IppStatus, ippsFIRLMSMRGetTapsPointer32sc_16sc,(
  6865. IppsFIRLMSMRState32sc_16sc* pState, Ipp32sc** pTaps ))
  6866. /* /////////////////////////////////////////////////////////////////////////////
  6867. // Names: ippsFIRLMSMRGetDlyLine, ippsFIRLMSMRSetDlyLine,
  6868. // ippsFIRLMSMRGetDlyVal
  6869. // Purpose: set or get delay line, or get one delay line value from
  6870. // specified position
  6871. // Parameters:
  6872. // pState pointer to the state structure
  6873. // pInDlyLine pointer to the delay line of the (see state definition)
  6874. // size = tapsLen * dlyStep + updateDly (may be null)
  6875. // pOutDlyLine pointer to the delay line of the (see state definition)
  6876. // size = tapsLen * dlyStep + updateDly
  6877. // pOutDlyLineIndex pointer to get the current delay line index
  6878. // dlyLineIndex current index value for the delay line
  6879. // index to get one value posted into delay line "index" iterations ago
  6880. // Return:
  6881. // ippStsNullPtrErr pointer to the data is null
  6882. // ippStsContextMatchErr wrong state identifier
  6883. // ippStsNoErr otherwise
  6884. */
  6885. IPPAPI( IppStatus, ippsFIRLMSMRSetDlyLine32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6886. const Ipp16s* pInDlyLine, int dlyLineIndex ))
  6887. IPPAPI( IppStatus, ippsFIRLMSMRGetDlyLine32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6888. Ipp16s* pOutDlyLine, int* pOutDlyIndex ))
  6889. IPPAPI( IppStatus, ippsFIRLMSMRGetDlyVal32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6890. Ipp16s* pOutVal, int index ))
  6891. IPPAPI( IppStatus, ippsFIRLMSMRSetDlyLine32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6892. const Ipp16sc* pInDlyLine, int dlyLineIndex ))
  6893. IPPAPI( IppStatus, ippsFIRLMSMRGetDlyLine32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6894. Ipp16sc* pOutDlyLine, int* pOutDlyLineIndex ))
  6895. IPPAPI( IppStatus, ippsFIRLMSMRGetDlyVal32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6896. Ipp16sc* pOutVal, int index ))
  6897. /* /////////////////////////////////////////////////////////////////////////////
  6898. // Names: ippsFIRLMSMRPutVal
  6899. // Purpose: put one value to the delay line
  6900. // Parameters:
  6901. // val the source signal last value to update delay line
  6902. // pState pointer to the state structure
  6903. // Return:
  6904. // ippStsNullPtrErr pointer to the data is null
  6905. // ippStsContextMatchErr wrong state identifier
  6906. // ippStsNoErr otherwise
  6907. */
  6908. IPPAPI( IppStatus, ippsFIRLMSMRPutVal32s_16s,( Ipp16s val,
  6909. IppsFIRLMSMRState32s_16s* pState ))
  6910. IPPAPI( IppStatus, ippsFIRLMSMRPutVal32sc_16sc,( Ipp16sc val,
  6911. IppsFIRLMSMRState32sc_16sc* pState ))
  6912. /* /////////////////////////////////////////////////////////////////////////////
  6913. // Names: ippsFIRLMSMRSetMu
  6914. // Purpose: set new adaptation step
  6915. // Parameters:
  6916. // pState pointer to the state structure
  6917. // mu new adaptation step
  6918. // Return:
  6919. // ippStsNullPtrErr pointer to the data is null
  6920. // ippStsContextMatchErr wrong state identifier
  6921. // ippStsNoErr otherwise
  6922. */
  6923. IPPAPI( IppStatus, ippsFIRLMSMRSetMu32s_16s,( IppsFIRLMSMRState32s_16s* pState,
  6924. const int mu ))
  6925. IPPAPI( IppStatus, ippsFIRLMSMRSetMu32sc_16sc,( IppsFIRLMSMRState32sc_16sc* pState,
  6926. const int mu ))
  6927. /* /////////////////////////////////////////////////////////////////////////////
  6928. // Names: ippsFIRLMSMRUpdateTaps
  6929. // Purpose: recalculation of taps using Least Mean Square alg
  6930. // Parameters:
  6931. // ErrVal difference between output and reference signal
  6932. // pState pointer to the state structure
  6933. // Return:
  6934. // ippStsNullPtrErr pointer to the data is null
  6935. // ippStsContextMatchErr wrong state identifier
  6936. // ippStsNoErr otherwise
  6937. */
  6938. IPPAPI( IppStatus, ippsFIRLMSMRUpdateTaps32s_16s,( Ipp32s ErrVal,
  6939. IppsFIRLMSMRState32s_16s* pState ))
  6940. IPPAPI( IppStatus, ippsFIRLMSMRUpdateTaps32sc_16sc,( Ipp32sc ErrVal,
  6941. IppsFIRLMSMRState32sc_16sc* pState ))
  6942. /* /////////////////////////////////////////////////////////////////////////////
  6943. // FIR filters (direct version)
  6944. ///////////////////////////////////////////////////////////////////////////// */
  6945. /* /////////////////////////////////////////////////////////////////////////////
  6946. // Names: ippsFIROne_Direct
  6947. // Purpose: Directly filters a single sample through a FIR filter.
  6948. // Parameters:
  6949. // src input sample
  6950. // pDstVal pointer to the output sample
  6951. // pSrcDstVal pointer to the input and output sample for in-place operation.
  6952. // pTaps pointer to the array containing the taps values,
  6953. // the number of elements in the array is tapsLen
  6954. // tapsLen number of elements in the array containing the taps values.
  6955. // tapsFactor scale factor for the taps of Ipp32s data type
  6956. // (for integer versions only).
  6957. // pDlyLine pointer to the array containing the delay line values,
  6958. // the number of elements in the array is 2*tapsLen
  6959. // pDlyLineIndex pointer to the current delay line index
  6960. // scaleFactor integer scaling factor value
  6961. // Return:
  6962. // ippStsNullPtrErr pointer(s) to data arrays is(are) NULL
  6963. // ippStsFIRLenErr tapsLen is less than or equal to 0
  6964. // ippStsNoErr otherwise
  6965. */
  6966. IPPAPI(IppStatus, ippsFIROne_Direct_32f, (Ipp32f src, Ipp32f* pDstVal, const Ipp32f* pTaps, int tapsLen,
  6967. Ipp32f* pDlyLine, int* pDlyLineIndex))
  6968. IPPAPI(IppStatus, ippsFIROne_Direct_32fc, (Ipp32fc src, Ipp32fc* pDstVal, const Ipp32fc* pTaps, int tapsLen,
  6969. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  6970. IPPAPI(IppStatus, ippsFIROne_Direct_32f_I, (Ipp32f* pSrcDstVal, const Ipp32f* pTaps, int tapsLen,
  6971. Ipp32f* pDlyLine, int* pDlyLineIndex))
  6972. IPPAPI(IppStatus, ippsFIROne_Direct_32fc_I, (Ipp32fc* pSrcDstVal, const Ipp32fc* pTaps, int tapsLen,
  6973. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  6974. IPPAPI(IppStatus, ippsFIROne32f_Direct_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal, const Ipp32f* pTaps, int tapsLen,
  6975. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  6976. IPPAPI(IppStatus, ippsFIROne32fc_Direct_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal, const Ipp32fc* pTaps, int tapsLen,
  6977. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  6978. IPPAPI(IppStatus, ippsFIROne32f_Direct_16s_ISfs, (Ipp16s* pSrcDstVal, const Ipp32f* pTaps, int tapsLen,
  6979. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  6980. IPPAPI(IppStatus, ippsFIROne32fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDstVal, const Ipp32fc* pTaps, int tapsLen,
  6981. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  6982. IPPAPI(IppStatus, ippsFIROne_Direct_64f, (Ipp64f src, Ipp64f* pDstVal, const Ipp64f* pTaps, int tapsLen,
  6983. Ipp64f* pDlyLine, int* pDlyLineIndex))
  6984. IPPAPI(IppStatus, ippsFIROne_Direct_64fc, (Ipp64fc src, Ipp64fc* pDstVal, const Ipp64fc* pTaps, int tapsLen,
  6985. Ipp64fc* pDlyLine, int* pDlyLineIndex))
  6986. IPPAPI(IppStatus, ippsFIROne_Direct_64f_I, (Ipp64f* pSrcDstVal, const Ipp64f* pTaps, int tapsLen,
  6987. Ipp64f* pDlyLine, int* pDlyLineIndex))
  6988. IPPAPI(IppStatus, ippsFIROne_Direct_64fc_I, (Ipp64fc* pSrcDstVal, const Ipp64fc* pTaps, int tapsLen,
  6989. Ipp64fc* pDlyLine, int* pDlyLineIndex))
  6990. IPPAPI(IppStatus, ippsFIROne64f_Direct_32f, (Ipp32f src, Ipp32f* pDstVal, const Ipp64f* pTaps, int tapsLen,
  6991. Ipp32f* pDlyLine, int* pDlyLineIndex))
  6992. IPPAPI(IppStatus, ippsFIROne64fc_Direct_32fc, (Ipp32fc src, Ipp32fc* pDstVal, const Ipp64fc* pTaps, int tapsLen,
  6993. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  6994. IPPAPI(IppStatus, ippsFIROne64f_Direct_32f_I, (Ipp32f* pSrcDstVal, const Ipp64f* pTaps, int tapsLen,
  6995. Ipp32f* pDlyLine, int* pDlyLineIndex))
  6996. IPPAPI(IppStatus, ippsFIROne64fc_Direct_32fc_I, (Ipp32fc* pSrcDstVal, const Ipp64fc* pTaps, int tapsLen,
  6997. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  6998. IPPAPI(IppStatus, ippsFIROne64f_Direct_32s_Sfs, (Ipp32s src, Ipp32s* pDstVal, const Ipp64f* pTaps, int tapsLen,
  6999. Ipp32s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7000. IPPAPI(IppStatus, ippsFIROne64fc_Direct_32sc_Sfs, (Ipp32sc src, Ipp32sc* pDstVal, const Ipp64fc* pTaps, int tapsLen,
  7001. Ipp32sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7002. IPPAPI(IppStatus, ippsFIROne64f_Direct_32s_ISfs, (Ipp32s* pSrcDstVal, const Ipp64f* pTaps, int tapsLen,
  7003. Ipp32s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7004. IPPAPI(IppStatus, ippsFIROne64fc_Direct_32sc_ISfs, (Ipp32sc* pSrcDstVal, const Ipp64fc* pTaps, int tapsLen,
  7005. Ipp32sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7006. IPPAPI(IppStatus, ippsFIROne64f_Direct_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal, const Ipp64f* pTaps, int tapsLen,
  7007. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7008. IPPAPI(IppStatus, ippsFIROne64fc_Direct_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal, const Ipp64fc* pTaps, int tapsLen,
  7009. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7010. IPPAPI(IppStatus, ippsFIROne64f_Direct_16s_ISfs, (Ipp16s* pSrcDstVal, const Ipp64f* pTaps, int tapsLen,
  7011. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7012. IPPAPI(IppStatus, ippsFIROne64fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDstVal, const Ipp64fc* pTaps, int tapsLen,
  7013. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7014. IPPAPI(IppStatus, ippsFIROne32s_Direct_16s_Sfs, (Ipp16s src, Ipp16s* pDstVal,
  7015. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7016. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7017. IPPAPI(IppStatus, ippsFIROne32sc_Direct_16sc_Sfs, (Ipp16sc src, Ipp16sc* pDstVal,
  7018. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7019. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7020. IPPAPI(IppStatus, ippsFIROne32s_Direct_16s_ISfs, (Ipp16s* pSrcDstVal,
  7021. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7022. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7023. IPPAPI(IppStatus, ippsFIROne32sc_Direct_16sc_ISfs, (Ipp16sc* pSrcDstVal,
  7024. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7025. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7026. /* ///////////////////////////////////////////////////////////////////////////////////////////
  7027. // Names: ippsFIR_Direct
  7028. // Purpose: Directly filters a block of samples through a single-rate FIR filter.
  7029. // Parameters:
  7030. // pSrc pointer to the input array
  7031. // pDst pointer to the output array
  7032. // pSrcDst pointer to the input and output array for in-place operation.
  7033. // numIters number of samples in the input array
  7034. // pTaps pointer to the array containing the taps values,
  7035. // the number of elements in the array is tapsLen
  7036. // tapsLen number of elements in the array containing the taps values.
  7037. // tapsFactor scale factor for the taps of Ipp32s data type
  7038. // (for integer versions only).
  7039. // pDlyLine pointer to the array containing the delay line values,
  7040. // the number of elements in the array is 2*tapsLen
  7041. // pDlyLineIndex pointer to the current delay line index
  7042. // scaleFactor integer scaling factor value
  7043. // Return:
  7044. // ippStsNullPtrErr pointer(s) to data arrays is(are) NULL
  7045. // ippStsFIRLenErr tapsLen is less than or equal to 0
  7046. // ippStsSizeErr numIters is less than or equal to 0
  7047. // ippStsNoErr otherwise
  7048. */
  7049. IPPAPI(IppStatus, ippsFIR_Direct_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters, const Ipp32f* pTaps, int tapsLen,
  7050. Ipp32f* pDlyLine, int* pDlyLineIndex))
  7051. IPPAPI(IppStatus, ippsFIR_Direct_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters, const Ipp32fc* pTaps, int tapsLen,
  7052. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  7053. IPPAPI(IppStatus, ippsFIR_Direct_32f_I, (Ipp32f* pSrcDst, int numIters, const Ipp32f* pTaps, int tapsLen,
  7054. Ipp32f* pDlyLine, int* pDlyLineIndex))
  7055. IPPAPI(IppStatus, ippsFIR_Direct_32fc_I, (Ipp32fc* pSrcDst, int numIters, const Ipp32fc* pTaps, int tapsLen,
  7056. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  7057. IPPAPI(IppStatus, ippsFIR32f_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters, const Ipp32f* pTaps, int tapsLen,
  7058. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7059. IPPAPI(IppStatus, ippsFIR32fc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters, const Ipp32fc* pTaps, int tapsLen,
  7060. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7061. IPPAPI(IppStatus, ippsFIR32f_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters, const Ipp32f* pTaps, int tapsLen,
  7062. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7063. IPPAPI(IppStatus, ippsFIR32fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters, const Ipp32fc* pTaps, int tapsLen,
  7064. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7065. IPPAPI(IppStatus, ippsFIR_Direct_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7066. Ipp64f* pDlyLine, int* pDlyLineIndex))
  7067. IPPAPI(IppStatus, ippsFIR_Direct_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7068. Ipp64fc* pDlyLine, int* pDlyLineIndex))
  7069. IPPAPI(IppStatus, ippsFIR_Direct_64f_I, (Ipp64f* pSrcDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7070. Ipp64f* pDlyLine, int* pDlyLineIndex))
  7071. IPPAPI(IppStatus, ippsFIR_Direct_64fc_I, (Ipp64fc* pSrcDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7072. Ipp64fc* pDlyLine, int* pDlyLineIndex))
  7073. IPPAPI(IppStatus, ippsFIR64f_Direct_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7074. Ipp32f* pDlyLine, int* pDlyLineIndex))
  7075. IPPAPI(IppStatus, ippsFIR64fc_Direct_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7076. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  7077. IPPAPI(IppStatus, ippsFIR64f_Direct_32f_I, (Ipp32f* pSrcDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7078. Ipp32f* pDlyLine, int* pDlyLineIndex))
  7079. IPPAPI(IppStatus, ippsFIR64fc_Direct_32fc_I, (Ipp32fc* pSrcDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7080. Ipp32fc* pDlyLine, int* pDlyLineIndex))
  7081. IPPAPI(IppStatus, ippsFIR64f_Direct_32s_Sfs, (const Ipp32s* pSrc, Ipp32s* pDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7082. Ipp32s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7083. IPPAPI(IppStatus, ippsFIR64fc_Direct_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc* pDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7084. Ipp32sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7085. IPPAPI(IppStatus, ippsFIR64f_Direct_32s_ISfs, (Ipp32s* pSrcDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7086. Ipp32s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7087. IPPAPI(IppStatus, ippsFIR64fc_Direct_32sc_ISfs, (Ipp32sc* pSrcDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7088. Ipp32sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7089. IPPAPI(IppStatus, ippsFIR64f_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7090. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7091. IPPAPI(IppStatus, ippsFIR64fc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7092. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7093. IPPAPI(IppStatus, ippsFIR64f_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters, const Ipp64f* pTaps, int tapsLen,
  7094. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7095. IPPAPI(IppStatus, ippsFIR64fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters, const Ipp64fc* pTaps, int tapsLen,
  7096. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7097. IPPAPI(IppStatus, ippsFIR32s_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  7098. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7099. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7100. IPPAPI(IppStatus, ippsFIR32sc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  7101. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7102. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7103. IPPAPI(IppStatus, ippsFIR32s_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  7104. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7105. Ipp16s* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7106. IPPAPI(IppStatus, ippsFIR32sc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  7107. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7108. Ipp16sc* pDlyLine, int* pDlyLineIndex, int scaleFactor ))
  7109. /* ///////////////////////////////////////////////////////////////////////////////////////////
  7110. // Names: ippsFIRMR_Direct
  7111. // Purpose: Directly filters a block of samples through a multi-rate FIR filter.
  7112. // Parameters:
  7113. // pSrc pointer to the input array
  7114. // pDst pointer to the output array
  7115. // pSrcDst pointer to the input and output array for in-place operation.
  7116. // numIters number of iterations in the input array
  7117. // pTaps pointer to the array containing the taps values,
  7118. // the number of elements in the array is tapsLen
  7119. // tapsLen number of elements in the array containing the taps values.
  7120. // tapsFactor scale factor for the taps of Ipp32s data type
  7121. // (for integer versions only).
  7122. // pDlyLine pointer to the array containing the delay line values
  7123. // upFactor up-sampling factor
  7124. // downFactor down-sampling factor
  7125. // upPhase up-sampling phase
  7126. // downPhase down-sampling phase
  7127. // scaleFactor integer scaling factor value
  7128. // Return:
  7129. // ippStsNullPtrErr pointer(s) to data arrays is(are) NULL
  7130. // ippStsFIRLenErr tapsLen is less than or equal to 0
  7131. // ippStsSizeErr numIters is less than or equal to 0
  7132. // ippStsFIRMRFactorErr upFactor (downFactor) is less than or equal to 0
  7133. // ippStsFIRMRPhaseErr upPhase (downPhase) is negative,
  7134. // or less than or equal to upFactor (downFactor).
  7135. // ippStsNoErr otherwise
  7136. */
  7137. IPPAPI(IppStatus, ippsFIRMR_Direct_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters,
  7138. const Ipp32f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7139. Ipp32f* pDlyLine))
  7140. IPPAPI(IppStatus, ippsFIRMR_Direct_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters,
  7141. const Ipp32fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7142. Ipp32fc* pDlyLine))
  7143. IPPAPI(IppStatus, ippsFIRMR_Direct_32f_I, (Ipp32f* pSrcDst, int numIters,
  7144. const Ipp32f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7145. Ipp32f* pDlyLine))
  7146. IPPAPI(IppStatus, ippsFIRMR_Direct_32fc_I, (Ipp32fc* pSrcDst, int numIters,
  7147. const Ipp32fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7148. Ipp32fc* pDlyLine))
  7149. IPPAPI(IppStatus, ippsFIRMR32f_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  7150. const Ipp32f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7151. Ipp16s* pDlyLine, int scaleFactor))
  7152. IPPAPI(IppStatus, ippsFIRMR32fc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  7153. const Ipp32fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7154. Ipp16sc* pDlyLine, int scaleFactor))
  7155. IPPAPI(IppStatus, ippsFIRMR32f_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  7156. const Ipp32f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7157. Ipp16s* pDlyLine, int scaleFactor))
  7158. IPPAPI(IppStatus, ippsFIRMR32fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  7159. const Ipp32fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7160. Ipp16sc* pDlyLine, int scaleFactor))
  7161. IPPAPI(IppStatus, ippsFIRMR_Direct_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int numIters,
  7162. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7163. Ipp64f* pDlyLine))
  7164. IPPAPI(IppStatus, ippsFIRMR_Direct_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int numIters,
  7165. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7166. Ipp64fc* pDlyLine))
  7167. IPPAPI(IppStatus, ippsFIRMR_Direct_64f_I, (Ipp64f* pSrcDst, int numIters,
  7168. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7169. Ipp64f* pDlyLine))
  7170. IPPAPI(IppStatus, ippsFIRMR_Direct_64fc_I, (Ipp64fc* pSrcDst, int numIters,
  7171. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7172. Ipp64fc* pDlyLine))
  7173. IPPAPI(IppStatus, ippsFIRMR64f_Direct_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int numIters,
  7174. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7175. Ipp32f* pDlyLine))
  7176. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int numIters,
  7177. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7178. Ipp32fc* pDlyLine))
  7179. IPPAPI(IppStatus, ippsFIRMR64f_Direct_32f_I, (Ipp32f* pSrcDst, int numIters,
  7180. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7181. Ipp32f* pDlyLine))
  7182. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_32fc_I, (Ipp32fc* pSrcDst, int numIters,
  7183. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7184. Ipp32fc* pDlyLine))
  7185. IPPAPI(IppStatus, ippsFIRMR64f_Direct_32s_Sfs, (const Ipp32s* pSrc, Ipp32s* pDst, int numIters,
  7186. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7187. Ipp32s* pDlyLine, int scaleFactor))
  7188. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_32sc_Sfs, (const Ipp32sc* pSrc, Ipp32sc* pDst, int numIters,
  7189. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7190. Ipp32sc* pDlyLine, int scaleFactor))
  7191. IPPAPI(IppStatus, ippsFIRMR64f_Direct_32s_ISfs, (Ipp32s* pSrcDst, int numIters,
  7192. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7193. Ipp32s* pDlyLine, int scaleFactor))
  7194. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_32sc_ISfs, (Ipp32sc* pSrcDst, int numIters,
  7195. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7196. Ipp32sc* pDlyLine, int scaleFactor))
  7197. IPPAPI(IppStatus, ippsFIRMR64f_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  7198. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7199. Ipp16s* pDlyLine, int scaleFactor))
  7200. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  7201. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7202. Ipp16sc* pDlyLine, int scaleFactor))
  7203. IPPAPI(IppStatus, ippsFIRMR64f_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  7204. const Ipp64f* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7205. Ipp16s* pDlyLine, int scaleFactor))
  7206. IPPAPI(IppStatus, ippsFIRMR64fc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  7207. const Ipp64fc* pTaps, int tapsLen, int upFactor,int upPhase, int downFactor, int downPhase,
  7208. Ipp16sc* pDlyLine, int scaleFactor))
  7209. IPPAPI(IppStatus, ippsFIRMR32s_Direct_16s_Sfs, (const Ipp16s* pSrc, Ipp16s* pDst, int numIters,
  7210. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7211. int upFactor,int upPhase, int downFactor, int downPhase,
  7212. Ipp16s* pDlyLine, int scaleFactor))
  7213. IPPAPI(IppStatus, ippsFIRMR32sc_Direct_16sc_Sfs, (const Ipp16sc* pSrc, Ipp16sc* pDst, int numIters,
  7214. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7215. int upFactor,int upPhase, int downFactor, int downPhase,
  7216. Ipp16sc* pDlyLine, int scaleFactor))
  7217. IPPAPI(IppStatus, ippsFIRMR32s_Direct_16s_ISfs, (Ipp16s* pSrcDst, int numIters,
  7218. const Ipp32s* pTaps, int tapsLen, int tapsFactor,
  7219. int upFactor,int upPhase, int downFactor, int downPhase,
  7220. Ipp16s* pDlyLine, int scaleFactor))
  7221. IPPAPI(IppStatus, ippsFIRMR32sc_Direct_16sc_ISfs, (Ipp16sc* pSrcDst, int numIters,
  7222. const Ipp32sc* pTaps, int tapsLen, int tapsFactor,
  7223. int upFactor,int upPhase, int downFactor, int downPhase,
  7224. Ipp16sc* pDlyLine, int scaleFactor))
  7225. /* ////////////////////////////////////////////////////////////////////////////
  7226. // Names: ippsFIR_Direct_16s_Sfs,
  7227. // ippsFIR_Direct_16s_ISfs,
  7228. // ippsFIROne_Direct_16s_Sfs,
  7229. // ippsFIROne_Direct_16s_ISfs.
  7230. // Purpose: Directly filters a block of samples (or one sample in 'One'
  7231. // case) through a single-rate FIR filter with fixed point taps
  7232. // ( Q15 ).
  7233. // Parameters:
  7234. // pSrc pointer to the input array.
  7235. // src input sample in 'One' case.
  7236. // pDst pointer to the output array.
  7237. // pDstVal pointer to the output sample in 'One' case.
  7238. // pSrcDst pointer to the input and output array for in-place
  7239. // operation.
  7240. // pSrcDstVal pointer to the input and output sample for in-place
  7241. // operation in 'One' case.
  7242. // numIters number of samples in the input array.
  7243. // pTapsQ15 pointer to the array containing the taps values,
  7244. // the number of elements in the array is tapsLen.
  7245. // tapsLen number of elements in the array containing the taps
  7246. // values.
  7247. // pDlyLine pointer to the array containing the delay line values,
  7248. // the number of elements in the array is 2 * tapsLen.
  7249. // pDlyLineIndex pointer to the current delay line index.
  7250. // scaleFactor integer scaling factor value.
  7251. // Return:
  7252. // ippStsNullPtrErr pointer(s) to data arrays is(are) NULL.
  7253. // ippStsFIRLenErr tapsLen is less than or equal to 0.
  7254. // ippStsSizeErr sampLen is less than or equal to 0.
  7255. // ippStsDlyLineIndexErr current delay line index is greater or equal
  7256. // tapsLen, or less than 0.
  7257. // ippStsNoErr otherwise.
  7258. */
  7259. IPPAPI( IppStatus, ippsFIR_Direct_16s_Sfs,( const Ipp16s* pSrc, Ipp16s* pDst,
  7260. int numIters, const Ipp16s* pTapsQ15, int tapsLen, Ipp16s* pDlyLine,
  7261. int* pDlyLineIndex, int scaleFactor ))
  7262. IPPAPI( IppStatus, ippsFIR_Direct_16s_ISfs,( Ipp16s* pSrcDst, int numIters,
  7263. const Ipp16s* pTapsQ15, int tapsLen, Ipp16s* pDlyLine,
  7264. int* pDlyLineIndex, int scaleFactor ))
  7265. IPPAPI( IppStatus, ippsFIROne_Direct_16s_Sfs,( Ipp16s src, Ipp16s* pDstVal,
  7266. const Ipp16s* pTapsQ15, int tapsLen, Ipp16s* pDlyLine,
  7267. int* pDlyLineIndex, int scaleFactor ))
  7268. IPPAPI( IppStatus, ippsFIROne_Direct_16s_ISfs,( Ipp16s* pSrcDstVal,
  7269. const Ipp16s* pTapsQ15, int tapsLen, Ipp16s * pDlyLine,
  7270. int* pDlyLineIndex, int scaleFactor ))
  7271. /* /////////////////////////////////////////////////////////////////////////////
  7272. // Names: ippsFIRGenLowpass_64f, ippsFIRGenHighpass_64f, ippsFIRGenBandpass_64f
  7273. // ippsFIRGenBandstop_64f
  7274. // Purpose: This function computes the lowpass FIR filter coefficients
  7275. // by windowing of ideal (infinite) filter coefficients segment
  7276. //
  7277. // Parameters:
  7278. // rfreq cut off frequency (0 < rfreq < 0.5)
  7279. //
  7280. // taps pointer to the array which specifies
  7281. // the filter coefficients;
  7282. //
  7283. // tapsLen the number of taps in taps[] array (tapsLen>=5);
  7284. //
  7285. // winType the ippWindowType switch variable,
  7286. // which specifies the smoothing window type;
  7287. //
  7288. // doNormal if doNormal=0 the functions calculates
  7289. // non-normalized sequence of filter coefficients,
  7290. // in other cases the sequence of coefficients
  7291. // will be normalized.
  7292. // Return:
  7293. // ippStsNullPtrErr the null pointer to taps[] array pass to function
  7294. // ippStsSizeErr the length of coefficient's array is less than five
  7295. // ippStsSizeErr the low or high frequency isn't satisfy
  7296. // the condition 0 < rLowFreq < 0.5
  7297. // ippStsNoErr otherwise
  7298. //
  7299. */
  7300. IPPAPI(IppStatus, ippsFIRGenLowpass_64f, (Ipp64f rfreq, Ipp64f* taps, int tapsLen,
  7301. IppWinType winType, IppBool doNormal))
  7302. IPPAPI(IppStatus, ippsFIRGenHighpass_64f, (Ipp64f rfreq, Ipp64f* taps, int tapsLen,
  7303. IppWinType winType, IppBool doNormal))
  7304. IPPAPI(IppStatus, ippsFIRGenBandpass_64f, (Ipp64f rLowFreq, Ipp64f rHighFreq, Ipp64f* taps,
  7305. int tapsLen, IppWinType winType, IppBool doNormal))
  7306. IPPAPI(IppStatus, ippsFIRGenBandstop_64f, (Ipp64f rLowFreq, Ipp64f rHighFreq, Ipp64f* taps,
  7307. int tapsLen, IppWinType winType, IppBool doNormal))
  7308. /* /////////////////////////////////////////////////////////////////////////////
  7309. // Windowing functions
  7310. // Note: to create the window coefficients you have to make two calls
  7311. // Set(1,x,n) and Win(x,n)
  7312. ///////////////////////////////////////////////////////////////////////////// */
  7313. /* /////////////////////////////////////////////////////////////////////////////
  7314. // Names: ippsWinBartlett
  7315. // Parameters:
  7316. // pSrcDst pointer to the vector
  7317. // len length of the vector, window size
  7318. // Return:
  7319. // ippStsNullPtrErr pointer to the vector is NULL
  7320. // ippStsSizeErr length of the vector is less 3
  7321. // ippStsNoErr otherwise
  7322. */
  7323. IPPAPI(IppStatus, ippsWinBartlett_16s_I, (Ipp16s* pSrcDst, int len))
  7324. IPPAPI(IppStatus, ippsWinBartlett_16sc_I, (Ipp16sc* pSrcDst, int len))
  7325. IPPAPI(IppStatus, ippsWinBartlett_32f_I, (Ipp32f* pSrcDst, int len))
  7326. IPPAPI(IppStatus, ippsWinBartlett_32fc_I, (Ipp32fc* pSrcDst, int len))
  7327. IPPAPI(IppStatus, ippsWinBartlett_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len))
  7328. IPPAPI(IppStatus, ippsWinBartlett_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len))
  7329. IPPAPI(IppStatus, ippsWinBartlett_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  7330. IPPAPI(IppStatus, ippsWinBartlett_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  7331. IPPAPI(IppStatus, ippsWinBartlett_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  7332. IPPAPI(IppStatus, ippsWinBartlett_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  7333. IPPAPI(IppStatus, ippsWinBartlett_64f_I, (Ipp64f* pSrcDst, int len))
  7334. IPPAPI(IppStatus, ippsWinBartlett_64fc_I,(Ipp64fc* pSrcDst, int len))
  7335. /* /////////////////////////////////////////////////////////////////////////////
  7336. // Names: ippsWinHann
  7337. // Parameters:
  7338. // pSrcDst pointer to the vector
  7339. // len length of the vector, window size
  7340. // Return:
  7341. // ippStsNullPtrErr pointer to the vector is NULL
  7342. // ippStsSizeErr length of the vector is less 3
  7343. // ippStsNoErr otherwise
  7344. // Functionality: 0.5*(1-cos(2*pi*n/(N-1)))
  7345. */
  7346. IPPAPI(IppStatus, ippsWinHann_16s_I, (Ipp16s* pSrcDst, int len))
  7347. IPPAPI(IppStatus, ippsWinHann_16sc_I, (Ipp16sc* pSrcDst, int len))
  7348. IPPAPI(IppStatus, ippsWinHann_32f_I, (Ipp32f* pSrcDst, int len))
  7349. IPPAPI(IppStatus, ippsWinHann_32fc_I, (Ipp32fc* pSrcDst, int len))
  7350. IPPAPI(IppStatus, ippsWinHann_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len))
  7351. IPPAPI(IppStatus, ippsWinHann_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len))
  7352. IPPAPI(IppStatus, ippsWinHann_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  7353. IPPAPI(IppStatus, ippsWinHann_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  7354. IPPAPI(IppStatus, ippsWinHann_64f_I, (Ipp64f* pSrcDst, int len))
  7355. IPPAPI(IppStatus, ippsWinHann_64fc_I, (Ipp64fc* pSrcDst, int len))
  7356. IPPAPI(IppStatus, ippsWinHann_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  7357. IPPAPI(IppStatus, ippsWinHann_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  7358. /* /////////////////////////////////////////////////////////////////////////////
  7359. // Names: ippsWinHamming
  7360. // Parameters:
  7361. // pSrcDst pointer to the vector
  7362. // len length of the vector, window size
  7363. // Return:
  7364. // ippStsNullPtrErr pointer to the vector is NULL
  7365. // ippStsSizeErr length of the vector is less 3
  7366. // ippStsNoErr otherwise
  7367. */
  7368. IPPAPI(IppStatus, ippsWinHamming_16s_I, (Ipp16s* pSrcDst, int len))
  7369. IPPAPI(IppStatus, ippsWinHamming_16sc_I, (Ipp16sc* pSrcDst, int len))
  7370. IPPAPI(IppStatus, ippsWinHamming_32f_I, (Ipp32f* pSrcDst, int len))
  7371. IPPAPI(IppStatus, ippsWinHamming_32fc_I, (Ipp32fc* pSrcDst, int len))
  7372. IPPAPI(IppStatus, ippsWinHamming_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len))
  7373. IPPAPI(IppStatus, ippsWinHamming_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len))
  7374. IPPAPI(IppStatus, ippsWinHamming_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  7375. IPPAPI(IppStatus, ippsWinHamming_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  7376. IPPAPI(IppStatus, ippsWinHamming_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  7377. IPPAPI(IppStatus, ippsWinHamming_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  7378. IPPAPI(IppStatus, ippsWinHamming_64f_I, (Ipp64f* pSrcDst, int len))
  7379. IPPAPI(IppStatus, ippsWinHamming_64fc_I, (Ipp64fc* pSrcDst, int len))
  7380. /* /////////////////////////////////////////////////////////////////////////////
  7381. // Names: ippsWinBlackman
  7382. // Purpose: multiply vector by Blackman windowing function
  7383. // Parameters:
  7384. // pSrcDst pointer to the vector
  7385. // len length of the vector, window size
  7386. // alpha adjustable parameter associated with the
  7387. // Blackman windowing equation
  7388. // alphaQ15 scaled (scale factor 15) version of the alpha
  7389. // scaleFactor scale factor of the output signal
  7390. // Return:
  7391. // ippStsNullPtrErr pointer to the vector is NULL
  7392. // ippStsSizeErr length of the vector is less 3, for Opt it's 4
  7393. // ippStsNoErr otherwise
  7394. // Notes:
  7395. // parameter alpha value
  7396. // WinBlackmaStd : -0.16
  7397. // WinBlackmaOpt : -0.5 / (1+cos(2*pi/(len-1)))
  7398. */
  7399. IPPAPI(IppStatus, ippsWinBlackmanQ15_16s_ISfs, (Ipp16s* pSrcDst, int len,
  7400. int alphaQ15, int scaleFactor))
  7401. IPPAPI(IppStatus, ippsWinBlackmanQ15_16s_I, (Ipp16s* pSrcDst, int len, int alphaQ15))
  7402. IPPAPI(IppStatus, ippsWinBlackmanQ15_16sc_I, (Ipp16sc* pSrcDst, int len, int alphaQ15))
  7403. IPPAPI(IppStatus, ippsWinBlackman_16s_I, (Ipp16s* pSrcDst, int len, float alpha))
  7404. IPPAPI(IppStatus, ippsWinBlackman_16sc_I, (Ipp16sc* pSrcDst, int len, float alpha))
  7405. IPPAPI(IppStatus, ippsWinBlackman_32f_I, (Ipp32f* pSrcDst, int len, float alpha))
  7406. IPPAPI(IppStatus, ippsWinBlackman_32fc_I, (Ipp32fc* pSrcDst, int len, float alpha))
  7407. IPPAPI(IppStatus, ippsWinBlackmanQ15_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len, int alphaQ15))
  7408. IPPAPI(IppStatus, ippsWinBlackmanQ15_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len, int alphaQ15))
  7409. IPPAPI(IppStatus, ippsWinBlackman_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len, float alpha))
  7410. IPPAPI(IppStatus, ippsWinBlackman_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len, float alpha))
  7411. IPPAPI(IppStatus, ippsWinBlackman_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len, float alpha))
  7412. IPPAPI(IppStatus, ippsWinBlackman_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len, float alpha))
  7413. IPPAPI(IppStatus, ippsWinBlackmanStd_16s_I, (Ipp16s* pSrcDst, int len))
  7414. IPPAPI(IppStatus, ippsWinBlackmanStd_16sc_I, (Ipp16sc* pSrcDst, int len))
  7415. IPPAPI(IppStatus, ippsWinBlackmanStd_32f_I, (Ipp32f* pSrcDst, int len))
  7416. IPPAPI(IppStatus, ippsWinBlackmanStd_32fc_I, (Ipp32fc* pSrcDst, int len))
  7417. IPPAPI(IppStatus, ippsWinBlackmanOpt_16s_I, (Ipp16s* pSrcDst, int len))
  7418. IPPAPI(IppStatus, ippsWinBlackmanOpt_16sc_I, (Ipp16sc* pSrcDst, int len))
  7419. IPPAPI(IppStatus, ippsWinBlackmanOpt_32f_I, (Ipp32f* pSrcDst, int len))
  7420. IPPAPI(IppStatus, ippsWinBlackmanOpt_32fc_I, (Ipp32fc* pSrcDst, int len))
  7421. IPPAPI(IppStatus, ippsWinBlackmanStd_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len))
  7422. IPPAPI(IppStatus, ippsWinBlackmanStd_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len))
  7423. IPPAPI(IppStatus, ippsWinBlackmanStd_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  7424. IPPAPI(IppStatus, ippsWinBlackmanStd_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  7425. IPPAPI(IppStatus, ippsWinBlackmanOpt_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len))
  7426. IPPAPI(IppStatus, ippsWinBlackmanOpt_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len))
  7427. IPPAPI(IppStatus, ippsWinBlackmanOpt_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len))
  7428. IPPAPI(IppStatus, ippsWinBlackmanOpt_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len))
  7429. IPPAPI(IppStatus, ippsWinBlackman_64f_I, (Ipp64f* pSrcDst, int len, double alpha))
  7430. IPPAPI(IppStatus, ippsWinBlackman_64fc_I,(Ipp64fc* pSrcDst, int len, double alpha))
  7431. IPPAPI(IppStatus, ippsWinBlackman_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len, double alpha))
  7432. IPPAPI(IppStatus, ippsWinBlackman_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst, int len, double alpha))
  7433. IPPAPI(IppStatus, ippsWinBlackmanStd_64f_I, (Ipp64f* pSrcDst, int len))
  7434. IPPAPI(IppStatus, ippsWinBlackmanStd_64fc_I,(Ipp64fc* pSrcDst, int len))
  7435. IPPAPI(IppStatus, ippsWinBlackmanStd_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  7436. IPPAPI(IppStatus, ippsWinBlackmanStd_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  7437. IPPAPI(IppStatus, ippsWinBlackmanOpt_64f_I, (Ipp64f* pSrcDst, int len))
  7438. IPPAPI(IppStatus, ippsWinBlackmanOpt_64fc_I,(Ipp64fc* pSrcDst, int len))
  7439. IPPAPI(IppStatus, ippsWinBlackmanOpt_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len))
  7440. IPPAPI(IppStatus, ippsWinBlackmanOpt_64fc,(const Ipp64fc* pSrc, Ipp64fc* pDst, int len))
  7441. /* /////////////////////////////////////////////////////////////////////////////
  7442. // Names: ippsWinKaiser
  7443. // Purpose: multiply vector by Kaiser windowing function
  7444. // Parameters:
  7445. // pSrcDst pointer to the vector
  7446. // len length of the vector, window size
  7447. // alpha adjustable parameter associated with the
  7448. // Kaiser windowing equation
  7449. // alphaQ15 scaled (scale factor 15) version of the alpha
  7450. // Return:
  7451. // ippStsNullPtrErr pointer to the vector is NULL
  7452. // ippStsSizeErr length of the vector is less 1
  7453. // ippStsHugeWinErr window in function is huge
  7454. // ippStsNoErr otherwise
  7455. */
  7456. IPPAPI(IppStatus, ippsWinKaiser_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len, float alpha))
  7457. IPPAPI(IppStatus, ippsWinKaiser_16s_I, (Ipp16s* pSrcDst, int len, float alpha))
  7458. IPPAPI(IppStatus, ippsWinKaiserQ15_16s, (const Ipp16s* pSrc, Ipp16s* pDst, int len, int alphaQ15))
  7459. IPPAPI(IppStatus, ippsWinKaiserQ15_16s_I,(Ipp16s* pSrcDst, int len, int alphaQ15))
  7460. IPPAPI(IppStatus, ippsWinKaiser_16sc, (const Ipp16sc* pSrc, Ipp16sc* pDst, int len, float alpha))
  7461. IPPAPI(IppStatus, ippsWinKaiser_16sc_I, (Ipp16sc* pSrcDst, int len, float alpha))
  7462. IPPAPI(IppStatus, ippsWinKaiserQ15_16sc,(const Ipp16sc* pSrc, Ipp16sc* pDst, int len, int alphaQ15))
  7463. IPPAPI(IppStatus, ippsWinKaiserQ15_16sc_I,(Ipp16sc* pSrcDst, int len, int alphaQ15))
  7464. IPPAPI(IppStatus, ippsWinKaiser_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len, float alpha))
  7465. IPPAPI(IppStatus, ippsWinKaiser_32f_I, (Ipp32f* pSrcDst, int len, float alpha))
  7466. IPPAPI(IppStatus, ippsWinKaiser_32fc, (const Ipp32fc* pSrc, Ipp32fc* pDst, int len, float alpha))
  7467. IPPAPI(IppStatus, ippsWinKaiser_32fc_I, (Ipp32fc* pSrcDst, int len, float alpha))
  7468. IPPAPI(IppStatus, ippsWinKaiser_64f, (const Ipp64f* pSrc, Ipp64f* pDst, int len, float alpha))
  7469. IPPAPI(IppStatus, ippsWinKaiser_64f_I, (Ipp64f* pSrcDst, int len, float alpha))
  7470. IPPAPI(IppStatus, ippsWinKaiser_64fc_I, (Ipp64fc* pSrcDst, int len, float alpha))
  7471. IPPAPI(IppStatus, ippsWinKaiser_64fc, (const Ipp64fc* pSrc, Ipp64fc* pDst, int len, float alpha))
  7472. /* /////////////////////////////////////////////////////////////////////////////
  7473. // Median filter
  7474. ///////////////////////////////////////////////////////////////////////////// */
  7475. /* /////////////////////////////////////////////////////////////////////////////
  7476. // Names: ippsFilterMedian
  7477. // Purpose: filter source data by the Median Filter
  7478. // Parameters:
  7479. // pSrcDst pointer to the source vector
  7480. // pSrc pointer to the source vector
  7481. // pDst pointer to the destination vector
  7482. // len length of the vector(s)
  7483. // maskSize median mask size (odd)
  7484. // Return:
  7485. // ippStsNullPtrErr pointer(s) to the data is NULL
  7486. // ippStsSizeErr length of the vector(s) is less or equal zero
  7487. // ippStsEvenMedianMaskSize median mask size is even warning
  7488. // ippStsNoErr otherwise
  7489. // Notes:
  7490. // - if len is even than len=len-1
  7491. // - value of not existed point equals to the last point value,
  7492. // for example, x[-1]=x[0] or x[len]=x[len-1]
  7493. */
  7494. IPPAPI(IppStatus,ippsFilterMedian_32f_I,(Ipp32f* pSrcDst,int len,int maskSize))
  7495. IPPAPI(IppStatus,ippsFilterMedian_64f_I,(Ipp64f* pSrcDst,int len,int maskSize))
  7496. IPPAPI(IppStatus,ippsFilterMedian_16s_I,(Ipp16s* pSrcDst,int len,int maskSize))
  7497. IPPAPI(IppStatus,ippsFilterMedian_8u_I,(Ipp8u* pSrcDst,int len,int maskSize))
  7498. IPPAPI(IppStatus,ippsFilterMedian_32f,(const Ipp32f* pSrc, Ipp32f *pDst,
  7499. int len, int maskSize ))
  7500. IPPAPI(IppStatus,ippsFilterMedian_64f,(const Ipp64f* pSrc, Ipp64f *pDst,
  7501. int len, int maskSize ))
  7502. IPPAPI(IppStatus,ippsFilterMedian_16s,(const Ipp16s* pSrc, Ipp16s *pDst,
  7503. int len, int maskSize ))
  7504. IPPAPI(IppStatus,ippsFilterMedian_8u,(const Ipp8u* pSrc, Ipp8u *pDst,
  7505. int len, int maskSize ))
  7506. IPPAPI(IppStatus,ippsFilterMedian_32s_I,(Ipp32s* pSrcDst,int len,int maskSize))
  7507. IPPAPI(IppStatus,ippsFilterMedian_32s,(const Ipp32s* pSrc, Ipp32s *pDst,
  7508. int len, int maskSize ))
  7509. /* /////////////////////////////////////////////////////////////////////////////
  7510. // Statistic functions
  7511. ///////////////////////////////////////////////////////////////////////////// */
  7512. /* /////////////////////////////////////////////////////////////////////////////
  7513. // Name: ippsNorm
  7514. // Purpose: calculate norm of vector
  7515. // Inf - calculate C-norm of vector: n = MAX |src1|
  7516. // L1 - calculate L1-norm of vector: n = SUM |src1|
  7517. // L2 - calculate L2-norm of vector: n = SQRT(SUM |src1|^2)
  7518. // L2Sqr - calculate L2-norm of vector: n = SUM |src1|^2
  7519. // Parameters:
  7520. // pSrc source data pointer
  7521. // len length of vector
  7522. // pNorm pointer to result
  7523. // scaleFactor scale factor value
  7524. // Returns:
  7525. // ippStsNoErr Ok
  7526. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  7527. // ippStsSizeErr The length of vector is less or equal zero
  7528. // Notes:
  7529. */
  7530. IPPAPI(IppStatus, ippsNorm_Inf_16s32f, (const Ipp16s* pSrc, int len, Ipp32f* pNorm))
  7531. IPPAPI(IppStatus, ippsNorm_Inf_16s32s_Sfs, (const Ipp16s* pSrc, int len, Ipp32s* pNorm, int scaleFactor))
  7532. IPPAPI(IppStatus, ippsNorm_Inf_32f, (const Ipp32f* pSrc, int len, Ipp32f* pNorm))
  7533. IPPAPI(IppStatus, ippsNorm_Inf_64f, (const Ipp64f* pSrc, int len, Ipp64f* pNorm))
  7534. IPPAPI(IppStatus, ippsNorm_L1_16s32f, (const Ipp16s* pSrc, int len, Ipp32f* pNorm))
  7535. IPPAPI(IppStatus, ippsNorm_L1_16s32s_Sfs, (const Ipp16s* pSrc, int len, Ipp32s* pNorm, int scaleFactor))
  7536. IPPAPI(IppStatus, ippsNorm_L1_32f, (const Ipp32f* pSrc, int len, Ipp32f* pNorm))
  7537. IPPAPI(IppStatus, ippsNorm_L1_64f, (const Ipp64f* pSrc, int len, Ipp64f* pNorm))
  7538. IPPAPI(IppStatus, ippsNorm_L2_16s32f, (const Ipp16s* pSrc, int len, Ipp32f* pNorm))
  7539. IPPAPI(IppStatus, ippsNorm_L2_16s32s_Sfs, (const Ipp16s* pSrc, int len, Ipp32s* pNorm, int scaleFactor))
  7540. IPPAPI(IppStatus, ippsNorm_L2_32f, (const Ipp32f* pSrc, int len, Ipp32f* pNorm))
  7541. IPPAPI(IppStatus, ippsNorm_L2_64f, (const Ipp64f* pSrc, int len, Ipp64f* pNorm))
  7542. IPPAPI(IppStatus, ippsNorm_Inf_32fc32f,(const Ipp32fc* pSrc, int len, Ipp32f* pNorm))
  7543. IPPAPI(IppStatus, ippsNorm_Inf_64fc64f,(const Ipp64fc* pSrc, int len, Ipp64f* pNorm))
  7544. IPPAPI(IppStatus, ippsNorm_L1_32fc64f, (const Ipp32fc* pSrc, int len, Ipp64f* pNorm))
  7545. IPPAPI(IppStatus, ippsNorm_L1_64fc64f, (const Ipp64fc* pSrc, int len, Ipp64f* pNorm))
  7546. IPPAPI(IppStatus, ippsNorm_L2_32fc64f, (const Ipp32fc* pSrc, int len, Ipp64f* pNorm))
  7547. IPPAPI(IppStatus, ippsNorm_L2_64fc64f, (const Ipp64fc* pSrc, int len, Ipp64f* pNorm))
  7548. IPPAPI(IppStatus, ippsNorm_L1_16s64s_Sfs, (const Ipp16s* pSrc, int len, Ipp64s* pNorm, int scaleFactor))
  7549. IPPAPI(IppStatus, ippsNorm_L2Sqr_16s64s_Sfs, (const Ipp16s* pSrc, int len, Ipp64s* pNorm, int scaleFactor))
  7550. /* /////////////////////////////////////////////////////////////////////////////
  7551. // Name: ippsNormDiff
  7552. // Purpose: calculate norm of vectors
  7553. // Inf - calculate C-norm of vectors: n = MAX |src1-src2|
  7554. // L1 - calculate L1-norm of vectors: n = SUM |src1-src2|
  7555. // L2 - calculate L2-norm of vectors: n = SQRT(SUM |src1-src2|^2)
  7556. // L2Sqr - calculate L2-norm of vectors: n = SUM |src1-src2|^2
  7557. // Parameters:
  7558. // pSrc1, pSrc2 source data pointers
  7559. // len length of vector
  7560. // pNorm pointer to result
  7561. // scaleFactor scale factor value
  7562. // Returns:
  7563. // ippStsNoErr Ok
  7564. // ippStsNullPtrErr Some of pointers to input or output data are NULL
  7565. // ippStsSizeErr The length of vector is less or equal zero
  7566. // Notes:
  7567. */
  7568. IPPAPI(IppStatus, ippsNormDiff_Inf_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32f* pNorm))
  7569. IPPAPI(IppStatus, ippsNormDiff_Inf_16s32s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32s* pNorm, int scaleFactor))
  7570. IPPAPI(IppStatus, ippsNormDiff_Inf_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2, int len, Ipp32f* pNorm))
  7571. IPPAPI(IppStatus, ippsNormDiff_Inf_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2, int len, Ipp64f* pNorm))
  7572. IPPAPI(IppStatus, ippsNormDiff_L1_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32f* pNorm))
  7573. IPPAPI(IppStatus, ippsNormDiff_L1_16s32s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32s* pNorm, int scaleFactor))
  7574. IPPAPI(IppStatus, ippsNormDiff_L1_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2, int len, Ipp32f* pNorm))
  7575. IPPAPI(IppStatus, ippsNormDiff_L1_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2, int len, Ipp64f* pNorm))
  7576. IPPAPI(IppStatus, ippsNormDiff_L2_16s32f, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32f* pNorm))
  7577. IPPAPI(IppStatus, ippsNormDiff_L2_16s32s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp32s* pNorm, int scaleFactor))
  7578. IPPAPI(IppStatus, ippsNormDiff_L2_32f, (const Ipp32f* pSrc1, const Ipp32f* pSrc2, int len, Ipp32f* pNorm))
  7579. IPPAPI(IppStatus, ippsNormDiff_L2_64f, (const Ipp64f* pSrc1, const Ipp64f* pSrc2, int len, Ipp64f* pNorm))
  7580. IPPAPI(IppStatus, ippsNormDiff_Inf_32fc32f,(const Ipp32fc* pSrc1, const Ipp32fc* pSrc2, int len, Ipp32f* pNorm))
  7581. IPPAPI(IppStatus, ippsNormDiff_Inf_64fc64f,(const Ipp64fc* pSrc1, const Ipp64fc* pSrc2, int len, Ipp64f* pNorm))
  7582. IPPAPI(IppStatus, ippsNormDiff_L1_32fc64f,(const Ipp32fc* pSrc1, const Ipp32fc* pSrc2, int len, Ipp64f* pNorm))
  7583. IPPAPI(IppStatus, ippsNormDiff_L1_64fc64f,(const Ipp64fc* pSrc1, const Ipp64fc* pSrc2, int len, Ipp64f* pNorm))
  7584. IPPAPI(IppStatus, ippsNormDiff_L2_32fc64f,(const Ipp32fc* pSrc1, const Ipp32fc* pSrc2, int len, Ipp64f* pNorm))
  7585. IPPAPI(IppStatus, ippsNormDiff_L2_64fc64f,(const Ipp64fc* pSrc1, const Ipp64fc* pSrc2, int len, Ipp64f* pNorm))
  7586. IPPAPI(IppStatus, ippsNormDiff_L1_16s64s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp64s* pNorm, int scaleFactor))
  7587. IPPAPI(IppStatus, ippsNormDiff_L2Sqr_16s64s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2, int len, Ipp64s* pNorm, int scaleFactor))
  7588. /* /////////////////////////////////////////////////////////////////////////////
  7589. // Cross Correlation Functions
  7590. ///////////////////////////////////////////////////////////////////////////// */
  7591. /* /////////////////////////////////////////////////////////////////////////////
  7592. // Name: ippsCrossCorr_32f, ippsCrossCorr_64f,
  7593. // ippsCrossCorr_32fc, ippsCrossCorr_64fc
  7594. //
  7595. // Purpose: Calculate Cross Correlation
  7596. //
  7597. // Arguments:
  7598. // pSrc1 - pointer to the vector_1 source
  7599. // src1Len - vector_1 source length
  7600. // pSrc2 - pointer to the vector_2 source
  7601. // src2Len - vector_2 source length
  7602. // pDst - pointer to the cross correlation
  7603. // dstLen - length of cross-correlation
  7604. // lowLag - cross-correlation lowest lag
  7605. // Return:
  7606. // ippStsNoErr Ok
  7607. // ippStsNullPtrErr either pSrc1 or(and) pSrc2 are NULL
  7608. // ippStsSizeErr vector's length is not positive
  7609. //
  7610. */
  7611. IPPAPI(IppStatus, ippsCrossCorr_32f, (const Ipp32f* pSrc1, int src1Len, const Ipp32f* pSrc2, int src2Len, Ipp32f* pDst, int dstLen, int lowLag))
  7612. IPPAPI(IppStatus, ippsCrossCorr_64f, (const Ipp64f* pSrc1, int src1Len, const Ipp64f* pSrc2, int src2Len, Ipp64f* pDst, int dstLen, int lowLag))
  7613. IPPAPI(IppStatus, ippsCrossCorr_32fc,(const Ipp32fc* pSrc1, int src1Len, const Ipp32fc* pSrc2, int src2Len, Ipp32fc* pDst, int dstLen, int lowLag))
  7614. IPPAPI(IppStatus, ippsCrossCorr_64fc,(const Ipp64fc* pSrc1, int src1Len, const Ipp64fc* pSrc2, int src2Len, Ipp64fc* pDst, int dstLen, int lowLag))
  7615. /* /////////////////////////////////////////////////////////////////////////////
  7616. // Name: ippsCrossCorr_16s_Sfs
  7617. // ippsCrossCorr_16s64s
  7618. //
  7619. // Purpose: Calculate Cross Correlation and Scale Result (with saturate)
  7620. //
  7621. // Arguments:
  7622. // pSrc1 - pointer to the vector_1 source
  7623. // src1Len - vector_1 source length
  7624. // pSrc2 - pointer to the vector_2 source
  7625. // src2Len - vector_2 source length
  7626. // pDst - pointer to the cross correlation
  7627. // dstLen - length of cross-correlation
  7628. // lowLag - cross-correlation lowest lag
  7629. // scaleFactor - scale factor value
  7630. // Return:
  7631. // ippStsNoErr Ok
  7632. // ippStsNullPtrErr either pSrc1 or(and) pSrc2 are NULL
  7633. // ippStsSizeErr vector's length is not positive
  7634. //
  7635. */
  7636. IPPAPI(IppStatus, ippsCrossCorr_16s_Sfs, (const Ipp16s* pSrc1, int src1Len, const Ipp16s* pSrc2, int src2Len,
  7637. Ipp16s* pDst, int dstLen, int lowLag, int scaleFactor))
  7638. IPPAPI(IppStatus, ippsCrossCorr_16s64s, (const Ipp16s* pSrc1, int src1Len, const Ipp16s* pSrc2, int src2Len,
  7639. Ipp64s* pDst, int dstLen, int lowLag))
  7640. /* /////////////////////////////////////////////////////////////////////////////
  7641. // AutoCorrelation Functions
  7642. ///////////////////////////////////////////////////////////////////////////// */
  7643. /* /////////////////////////////////////////////////////////////////////////////
  7644. // Names: ippsAutoCorr_32f, ippsAutoCorr_NormA_32f, ippsAutoCorr_NormB_32f,
  7645. // ippsAutoCorr_64f, ippsAutoCorr_NormA_64f, ippsAutoCorr_NormB_64f,
  7646. // ippsAutoCorr_32fc, ippsAutoCorr_NormA_32fc, ippsAutoCorr_NormB_32fc,
  7647. // ippsAutoCorr_64fc, ippsAutoCorr_NormA_64fc, ippsAutoCorr_NormB_64fc,
  7648. //
  7649. // Purpose: Calculate the autocorrelation,
  7650. // without suffix NormX specifies that the normal autocorrelation to be
  7651. // computed;
  7652. // suffix NormA specifies that the biased autocorrelation to be
  7653. // computed (the resulting values are to be divided on srcLen);
  7654. // suffix NormB specifies that the unbiased autocorrelation to be
  7655. // computed (the resulting values are to be divided on ( srcLen - n ),
  7656. // where "n" means current iteration).
  7657. //
  7658. // Arguments:
  7659. // pSrc - pointer to the source vector
  7660. // srcLen - source vector length
  7661. // pDst - pointer to the auto-correlation result vector
  7662. // dstLen - length of auto-correlation
  7663. // Return:
  7664. // ippStsNoErr Ok
  7665. // ippStsNullPtrErr either pSrc or(and) pDst are NULL
  7666. // ippStsSizeErr vector's length is not positive
  7667. */
  7668. IPPAPI(IppStatus, ippsAutoCorr_32f, ( const Ipp32f* pSrc, int srcLen, Ipp32f* pDst, int dstLen ))
  7669. IPPAPI(IppStatus, ippsAutoCorr_NormA_32f, ( const Ipp32f* pSrc, int srcLen, Ipp32f* pDst, int dstLen ))
  7670. IPPAPI(IppStatus, ippsAutoCorr_NormB_32f, ( const Ipp32f* pSrc, int srcLen, Ipp32f* pDst, int dstLen ))
  7671. IPPAPI(IppStatus, ippsAutoCorr_64f, ( const Ipp64f* pSrc, int srcLen, Ipp64f* pDst, int dstLen ))
  7672. IPPAPI(IppStatus, ippsAutoCorr_NormA_64f, ( const Ipp64f* pSrc, int srcLen, Ipp64f* pDst, int dstLen ))
  7673. IPPAPI(IppStatus, ippsAutoCorr_NormB_64f, ( const Ipp64f* pSrc, int srcLen, Ipp64f* pDst, int dstLen ))
  7674. IPPAPI(IppStatus, ippsAutoCorr_32fc,( const Ipp32fc* pSrc, int srcLen, Ipp32fc* pDst, int dstLen ))
  7675. IPPAPI(IppStatus, ippsAutoCorr_NormA_32fc,( const Ipp32fc* pSrc, int srcLen, Ipp32fc* pDst, int dstLen ))
  7676. IPPAPI(IppStatus, ippsAutoCorr_NormB_32fc,( const Ipp32fc* pSrc, int srcLen, Ipp32fc* pDst, int dstLen ))
  7677. IPPAPI(IppStatus, ippsAutoCorr_64fc,( const Ipp64fc* pSrc, int srcLen, Ipp64fc* pDst, int dstLen ))
  7678. IPPAPI(IppStatus, ippsAutoCorr_NormA_64fc,( const Ipp64fc* pSrc, int srcLen, Ipp64fc* pDst, int dstLen ))
  7679. IPPAPI(IppStatus, ippsAutoCorr_NormB_64fc,( const Ipp64fc* pSrc, int srcLen, Ipp64fc* pDst, int dstLen ))
  7680. /* /////////////////////////////////////////////////////////////////////////////
  7681. // Names: ippsAutoCorr_16s_Sfs,
  7682. // ippsAutoCorr_NormA_16s_Sfs,
  7683. // ippsAutoCorr_NormB_16s_Sfs
  7684. //
  7685. // Purpose: Calculate the autocorrelation,
  7686. // without suffix NormX specifies that the normal autocorrelation to be
  7687. // computed;
  7688. // suffix NormA specifies that the biased autocorrelation to be
  7689. // computed (the resulting values are to be divided on srcLen);
  7690. // suffix NormB specifies that the unbiased autocorrelation to be
  7691. // computed (the resulting values are to be divided on ( srcLen - n ),
  7692. // where n means current iteration).
  7693. //
  7694. // Arguments:
  7695. // pSrc - pointer to the source vector
  7696. // srcLen - source vector length
  7697. // pDst - pointer to the auto-correlation result vector
  7698. // dstLen - length of auto-correlation
  7699. // scaleFactor - scale factor value
  7700. // Return:
  7701. // ippStsNoErr Ok
  7702. // ippStsNullPtrErr either pSrc or(and) pDst are NULL
  7703. // ippStsSizeErr vector's length is not positive
  7704. */
  7705. IPPAPI(IppStatus, ippsAutoCorr_16s_Sfs,( const Ipp16s* pSrc, int srcLen, Ipp16s* pDst,
  7706. int dstLen, int scaleFactor ))
  7707. IPPAPI(IppStatus, ippsAutoCorr_NormA_16s_Sfs,( const Ipp16s* pSrc, int srcLen, Ipp16s* pDst,
  7708. int dstLen, int scaleFactor ))
  7709. IPPAPI(IppStatus, ippsAutoCorr_NormB_16s_Sfs,( const Ipp16s* pSrc, int srcLen, Ipp16s* pDst,
  7710. int dstLen, int scaleFactor ))
  7711. /* /////////////////////////////////////////////////////////////////////////////
  7712. // Sampling functions
  7713. ///////////////////////////////////////////////////////////////////////////// */
  7714. /* /////////////////////////////////////////////////////////////////////////////
  7715. // Name: ippsSampleUp
  7716. // Purpose: upsampling, i.e. expansion of input vector to get output vector
  7717. // by simple adding zeroes between input elements
  7718. // Parameters:
  7719. // pSrc (in) pointer to the input vector
  7720. // pDst (in) pointer to the output vector
  7721. // srcLen (in) length of input vector
  7722. // dstLen (out) pointer to the length of output vector
  7723. // factor (in) the number of output elements, corresponding to one element
  7724. // of input vector.
  7725. // phase(in-out) pointer to value, that is the position (0, ..., factor-1) of
  7726. // element from input vector in the group of factor elements of
  7727. // output vector. Out value is ready to continue upsampling with
  7728. // the same factor (out = in).
  7729. //
  7730. // Return:
  7731. // ippStsNullPtrErr one or several pointers pSrc, pDst, dstLen or phase
  7732. // is NULL
  7733. // ippStsSizeErr length of input vector is less or equal zero
  7734. // ippStsSampleFactorErr factor <= 0
  7735. // ippStsSamplePhaseErr *phase < 0 or *phase >= factor
  7736. // ippStsNoErr otherwise
  7737. */
  7738. IPPAPI ( IppStatus, ippsSampleUp_32f, (const Ipp32f* pSrc, int srcLen,
  7739. Ipp32f* pDst, int* dstLen,
  7740. int factor, int* phase))
  7741. IPPAPI ( IppStatus, ippsSampleUp_32fc, (const Ipp32fc* pSrc, int srcLen,
  7742. Ipp32fc* pDst, int* dstLen,
  7743. int factor, int* phase))
  7744. IPPAPI ( IppStatus, ippsSampleUp_64f, (const Ipp64f* pSrc, int srcLen,
  7745. Ipp64f* pDst, int* dstLen,
  7746. int factor, int* phase))
  7747. IPPAPI ( IppStatus, ippsSampleUp_64fc, (const Ipp64fc* pSrc, int srcLen,
  7748. Ipp64fc* pDst, int* dstLen,
  7749. int factor, int* phase))
  7750. IPPAPI ( IppStatus, ippsSampleUp_16s, (const Ipp16s* pSrc, int srcLen,
  7751. Ipp16s* pDst, int* dstLen,
  7752. int factor, int* phase))
  7753. IPPAPI ( IppStatus, ippsSampleUp_16sc, (const Ipp16sc* pSrc, int srcLen,
  7754. Ipp16sc* pDst, int* dstLen,
  7755. int factor, int* phase))
  7756. /* /////////////////////////////////////////////////////////////////////////////
  7757. // Name: ippsSampleDown
  7758. // Purpose: subsampling, i.e. only one of "factor" elements of input vector
  7759. // are placed to output vector
  7760. // Parameters:
  7761. // pSrc (in) pointer to the input vector
  7762. // pDst (in) pointer to the output vector
  7763. // srcLen (in) length of input vector
  7764. // dstLen (out) pointer to the length of output vector
  7765. // factor (in) the number of input elements, corresponding to one element
  7766. // of output vector.
  7767. // phase(in-out) pointer to value, that is the position (0, ..., factor-1) of
  7768. // chosen element in the group of "factor" elements. Out value
  7769. // of *phase is ready to continue subsampling with the same
  7770. // factor.
  7771. //
  7772. // Return:
  7773. // ippStsNullPtrErr one or several pointers pSrc, pDst, dstLen or phase
  7774. // is NULL
  7775. // ippStsSizeErr length of input vector is less or equal zero
  7776. // ippStsSampleFactorErr factor <= 0
  7777. // ippStsSamplePhaseErr *phase < 0 or *phase >=factor
  7778. // ippStsNoErr otherwise
  7779. */
  7780. IPPAPI ( IppStatus, ippsSampleDown_32f, (const Ipp32f* pSrc, int srcLen,
  7781. Ipp32f* pDst, int* dstLen,
  7782. int factor, int* phase))
  7783. IPPAPI ( IppStatus, ippsSampleDown_32fc, (const Ipp32fc* pSrc, int srcLen,
  7784. Ipp32fc* pDst, int* dstLen,
  7785. int factor, int* phase))
  7786. IPPAPI ( IppStatus, ippsSampleDown_64f, (const Ipp64f* pSrc, int srcLen,
  7787. Ipp64f* pDst, int* dstLen,
  7788. int factor, int* phase))
  7789. IPPAPI ( IppStatus, ippsSampleDown_64fc, (const Ipp64fc* pSrc, int srcLen,
  7790. Ipp64fc* pDst, int* dstLen,
  7791. int factor, int* phase))
  7792. IPPAPI ( IppStatus, ippsSampleDown_16s, (const Ipp16s* pSrc, int srcLen,
  7793. Ipp16s* pDst, int* dstLen,
  7794. int factor, int* phase))
  7795. IPPAPI ( IppStatus, ippsSampleDown_16sc, (const Ipp16sc* pSrc, int srcLen,
  7796. Ipp16sc* pDst, int* dstLen,
  7797. int factor, int* phase))
  7798. /* ///////////////////////////////////////////////////////////////////////////
  7799. // Names: ippsGetVarPointDV_16sc
  7800. // Purpose: Fills the array VariantPoint with information about 8
  7801. // (if State = 32,64) or 4 (if State = 16) closest to the
  7802. // refPoint complex points (stores the indexes in the
  7803. // offset table and errors between refPoint and the
  7804. // current point)
  7805. // Return:
  7806. // ippStsNoErr Ok
  7807. // ippStsNullPtrErr Any of the specified pointers is NULL
  7808. // Parameters:
  7809. // pSrc pointer to the reference point in format 9:7
  7810. // pDst pointer to the closest to the reference point left
  7811. // and bottom comlexpoint in format 9:7
  7812. // pVariantPoint pointer to the array where the information is stored
  7813. // pLabel pointer to the labels table
  7814. // state number of states of the convolution coder
  7815. */
  7816. IPPAPI(IppStatus,ippsGetVarPointDV_16sc,(const Ipp16sc *pSrc,Ipp16sc *pDst,
  7817. Ipp16sc *pVariantPoint,const Ipp8u *pLabel,int state))
  7818. /* ///////////////////////////////////////////////////////////////////////////
  7819. // Names: ippsCalcStatesDV_16sc
  7820. // Purpose: Computes possible states of the Viterbi decoder
  7821. // Return:
  7822. // ippStsNoErr OK
  7823. // ippStsNullPtrErr Any of the specified pointers is NULL
  7824. // Parameters:
  7825. // pPathError pointer to the table of path error metrics
  7826. // pNextState pointer to the next state table
  7827. // pBranchError pointer to the branch error table
  7828. // pCurrentSubsetPoint pointer to the current 4D subset
  7829. // pPathTable pointer to the Viterbi path table
  7830. // state number of states of the convolution coder
  7831. // presentIndex start index in Viterbi Path table
  7832. */
  7833. IPPAPI(IppStatus,ippsCalcStatesDV_16sc,(const Ipp16u *pathError,
  7834. const Ipp8u *pNextState, Ipp16u *pBranchError,
  7835. const Ipp16s *pCurrentSubsetPoint, Ipp16s *pPathTable,
  7836. int state,int presentIndex))
  7837. /* ///////////////////////////////////////////////////////////////////////////
  7838. // Names: ippsBuildSymblTableDV4D_16s
  7839. // Purpose: Fills the array with an information of possible 4D symbols
  7840. // Return:
  7841. // ippStsNoErr OK
  7842. // ippStsNullPtrErr Any of the specified pointers is NULL
  7843. // Parameters:
  7844. // pVariantPoint pointer to the array of possible 2D symbols
  7845. // pCurrentSubsetPoint pointer to the current array of 4D symbols
  7846. // state number of states of the convolution coder
  7847. // bitInversion bit Inversion
  7848. */
  7849. IPPAPI(IppStatus,ippsBuildSymblTableDV4D_16sc,(const Ipp16sc *pVariantPoint,
  7850. Ipp16sc *pCurrentSubsetPoint,int state,int bitInversion ))
  7851. /* ///////////////////////////////////////////////////////////////////////////
  7852. // Names: ippsUpdatePathMetricsDV_16u
  7853. // Purpose: Searches for the minimum path metric and updates states of the decoder
  7854. // Return:
  7855. // ippStsNoErr OK
  7856. // ippStsNullPtrErr Any of the specified pointers is NULL
  7857. // Parameters:
  7858. // pBranchError pointer to the branch error table
  7859. // pMinPathError pointer to the current minimum path error metric
  7860. // pMinSost pointer to the state with minimum path metric
  7861. // pPathError pointer to table of path error metrics
  7862. // state number of states of the convolution coder
  7863. */
  7864. IPPAPI(IppStatus,ippsUpdatePathMetricsDV_16u,(Ipp16u *pBranchError,
  7865. Ipp16u *pMinPathError,Ipp8u *pMinSost,Ipp16u *pPathError,int state))
  7866. /* /////////////////////////////////////////////////////////////////////////////
  7867. // Definitions for Hilbert Functions
  7868. ///////////////////////////////////////////////////////////////////////////// */
  7869. #if !defined( _OWN_BLDPCS )
  7870. struct HilbertSpec_32f32fc;
  7871. typedef struct HilbertSpec_32f32fc IppsHilbertSpec_32f32fc;
  7872. struct HilbertSpec_16s32fc;
  7873. typedef struct HilbertSpec_16s32fc IppsHilbertSpec_16s32fc;
  7874. struct HilbertSpec_16s16sc;
  7875. typedef struct HilbertSpec_16s16sc IppsHilbertSpec_16s16sc;
  7876. #endif /* _OWN_BLDPCS */
  7877. /* /////////////////////////////////////////////////////////////////////////////
  7878. // Hilbert Context Functions
  7879. ///////////////////////////////////////////////////////////////////////////// */
  7880. /* /////////////////////////////////////////////////////////////////////////////
  7881. // Name: ippsHilbertInitAlloc_32f32fc, ippsHilbertFree_32f32fc,
  7882. // ippsHilbertInitAlloc_16s32fc, ippsHilbertFree_16s32fc,
  7883. // ippsHilbertInitAlloc_16s16sc, ippsHilbertFree_16s16sc
  7884. // Purpose: create, initialize and delete Hilbert context
  7885. // Arguments:
  7886. // pSpec - where write pointer to new context
  7887. // length - number of samples in Hilbert
  7888. // hint - code specific use hints (DFT)
  7889. // Return:
  7890. // ippStsNoErr no errors
  7891. // ippStsNullPtrErr pSpec == NULL
  7892. // ippStsSizeErr bad the length value
  7893. // ippStsContextMatchErr bad context identifier
  7894. // ippStsMemAllocErr memory allocation error
  7895. */
  7896. IPPAPI(IppStatus, ippsHilbertInitAlloc_32f32fc, (IppsHilbertSpec_32f32fc **pSpec,
  7897. int length, IppHintAlgorithm hint))
  7898. IPPAPI(IppStatus, ippsHilbertInitAlloc_16s32fc, (IppsHilbertSpec_16s32fc **pSpec,
  7899. int length, IppHintAlgorithm hint))
  7900. IPPAPI(IppStatus, ippsHilbertInitAlloc_16s16sc, (IppsHilbertSpec_16s16sc **pSpec,
  7901. int length, IppHintAlgorithm hint))
  7902. IPPAPI(IppStatus, ippsHilbertFree_32f32fc, (IppsHilbertSpec_32f32fc *pSpec))
  7903. IPPAPI(IppStatus, ippsHilbertFree_16s32fc, (IppsHilbertSpec_16s32fc *pSpec))
  7904. IPPAPI(IppStatus, ippsHilbertFree_16s16sc, (IppsHilbertSpec_16s16sc *pSpec))
  7905. /* /////////////////////////////////////////////////////////////////////////////
  7906. // Hilbert Transform Functions
  7907. ///////////////////////////////////////////////////////////////////////////// */
  7908. /* /////////////////////////////////////////////////////////////////////////////
  7909. // Name: ippsHilbert_32f32fc,
  7910. // ippsHilbert_16s32fc,
  7911. // ippsHilbert_16s16sc_Sfs
  7912. // Purpose: compute Hilbert transform of the real signal
  7913. // Arguments:
  7914. // pSrc - pointer to source real signal
  7915. // pDst - pointer to destination complex signal
  7916. // pSpec - pointer to Hilbert context
  7917. // scaleFactor - scale factor for output signal
  7918. // Return:
  7919. // ippStsNoErr no errors
  7920. // ippStsNullPtrErr pointer(s) to the data is NULL
  7921. // ippStsContextMatchErr bad context identifier
  7922. // ippStsMemAllocErr memory allocation error
  7923. */
  7924. IPPAPI(IppStatus, ippsHilbert_32f32fc, (const Ipp32f *pSrc, Ipp32fc *pDst,
  7925. IppsHilbertSpec_32f32fc *pSpec))
  7926. IPPAPI(IppStatus, ippsHilbert_16s32fc, (const Ipp16s *pSrc, Ipp32fc *pDst,
  7927. IppsHilbertSpec_16s32fc *pSpec))
  7928. IPPAPI(IppStatus, ippsHilbert_16s16sc_Sfs, (const Ipp16s *pSrc, Ipp16sc *pDst,
  7929. IppsHilbertSpec_16s16sc *pSpec, int scaleFactor))
  7930. #if !defined( _OWN_BLDPCS )
  7931. struct FIRSparseState_32f;
  7932. typedef struct FIRSparseState_32f IppsFIRSparseState_32f;
  7933. struct IIRSparseState_32f;
  7934. typedef struct IIRSparseState_32f IppsIIRSparseState_32f;
  7935. #endif /* _OWN_BLDPCS */
  7936. /* ////////////////////////////////////////////////////////////////////////////
  7937. // Name: ippsFIRSparseGetStateSize,
  7938. // ippsFIRSparseInit
  7939. // Purpose: ippsFIRSparseGetStateSize - calculates the size of the FIRSparse
  7940. // State structure;
  7941. // ippsFIRSparseInit - initialize FIRSparse state - set non-zero taps,
  7942. // their positions and delay line using external memory buffer;
  7943. // Parameters:
  7944. // pNZTaps - pointer to the non-zero filter coefficients;
  7945. // pNZTapPos - pointer to the positions of non-zero filter coefficients;
  7946. // nzTapsLen - number of non-zero coefficients;
  7947. // pDlyLine - pointer to the delay line values, can be NULL;
  7948. // pState - pointer to the FIRSparse state created or NULL;
  7949. // order - order of FIRSparse filter
  7950. // pStateSize - pointer where to store the calculated FIRSparse State
  7951. // structuresize (in bytes);
  7952. // Return:
  7953. // status - status value returned, its value are
  7954. // ippStsNullPtrErr - pointer(s) to the data is NULL
  7955. // ippStsFIRLenErr - nzTapsLen <= 0
  7956. // ippStsSparseErr - non-zero tap positions are not in ascending order,
  7957. // negative or repeated.
  7958. // ippStsNoErr - otherwise
  7959. */
  7960. IPPAPI( IppStatus, ippsFIRSparseGetStateSize_32f,( int nzTapsLen,
  7961. int order, int *pStateSize ))
  7962. IPPAPI( IppStatus, ippsFIRSparseInit_32f,( IppsFIRSparseState_32f** pState,
  7963. const Ipp32f *pNZTaps, const Ipp32s* pNZTapPos, int nzTapsLen,
  7964. const Ipp32f *pDlyLine, Ipp8u *pBuffer ))
  7965. /* ////////////////////////////////////////////////////////////////////////////
  7966. // Name: ippsIIRSparseGetStateSize,
  7967. // ippsIIRSparseInit
  7968. // Purpose: ippsIIRSparseGetStateSize - calculates the size of the
  7969. // IIRSparse State structure;
  7970. // ippsIIRSparseInit - initialize IIRSparse state - set non-zero taps,
  7971. // their positions and delay line using external memory buffer;
  7972. // Parameters:
  7973. // pNZTaps - pointer to the non-zero filter coefficients;
  7974. // pNZTapPos - pointer to the positions of non-zero filter coefficients;
  7975. // nzTapsLen1,
  7976. // nzTapsLen2 - number of non-zero coefficients according to the IIRSparseformula;
  7977. // pDlyLine - pointer to the delay line values, can be NULL;
  7978. // pState - pointer to the IIR state created or NULL;
  7979. // pStateSize - pointer where to store the calculated IIR State structure
  7980. // size (in bytes);
  7981. // Return:
  7982. // status - status value returned, its value are
  7983. // ippStsNullPtrErr - pointer(s) to the data is NULL
  7984. // ippStsIIROrderErr - nzTapsLen1 <= 0 or nzTapsLen2 < 0
  7985. // ippStsSparseErr - non-zero tap positions are not in ascending order,
  7986. // negative or repeated.
  7987. // ippStsNoErr - otherwise
  7988. */
  7989. IPPAPI( IppStatus, ippsIIRSparseGetStateSize_32f,( int nzTapsLen1, int nzTapsLen2,
  7990. int order1, int order2, int *pStateSize ))
  7991. IPPAPI( IppStatus, ippsIIRSparseInit_32f,( IppsIIRSparseState_32f** pState,
  7992. const Ipp32f* pNZTaps, const Ipp32s* pNZTapPos, int nzTapsLen1,
  7993. int nzTapsLen2, const Ipp32f* pDlyLine, Ipp8u* pBuf ))
  7994. /* /////////////////////////////////////////////////////////////////////////////
  7995. // Names: ippsFIRSparse
  7996. // Purpose: FIRSparse filter with float taps. Vector filtering
  7997. // Parameters:
  7998. // pSrc - pointer to the input vector
  7999. // pDst - pointer to the output vector
  8000. // len - length data vector
  8001. // pState - pointer to the filter state
  8002. // Return:
  8003. // ippStsNullPtrErr - pointer(s) to the data is NULL
  8004. // ippStsSizeErr - length of the vectors <= 0
  8005. // ippStsNoErr - otherwise
  8006. */
  8007. IPPAPI(IppStatus, ippsFIRSparse_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len,
  8008. IppsFIRSparseState_32f* pState))
  8009. /* /////////////////////////////////////////////////////////////////////////////
  8010. // Names: ippsIIRSparse
  8011. // Purpose: IIRSparse filter with float taps. Vector filtering
  8012. // Parameters:
  8013. // pSrc - pointer to input vector
  8014. // pDst - pointer to output vector
  8015. // len - length of the vectors
  8016. // pState - pointer to the filter state
  8017. // Return:
  8018. // ippStsNullPtrErr - pointer(s) to the data is NULL
  8019. // ippStsSizeErr - length of the vectors <= 0
  8020. // ippStsNoErr - otherwise
  8021. */
  8022. IPPAPI(IppStatus, ippsIIRSparse_32f, (const Ipp32f* pSrc, Ipp32f* pDst, int len,
  8023. IppsIIRSparseState_32f* pState))
  8024. /* /////////////////////////////////////////////////////////////////////////////
  8025. // Name: ippsAddProductC
  8026. // Purpose: multiplies elements of of a vector by a constant and adds product to
  8027. // the accumulator vector
  8028. // Parameters:
  8029. // pSrc pointer to the source vector
  8030. // val constant value
  8031. // pSrcDst pointer to the source/destination (accumulator) vector
  8032. // len length of the vectors
  8033. // Return:
  8034. // ippStsNullPtrErr pointer to the vector is NULL
  8035. // ippStsSizeErr length of the vectors is less or equal zero
  8036. // ippStsNoErr otherwise
  8037. //
  8038. // Notes: pSrcDst[n] = pSrcDst[n] + pSrc[n] * val, n=0,1,2,..len-1.
  8039. */
  8040. IPPAPI(IppStatus, ippsAddProductC_32f, ( const Ipp32f* pSrc, const Ipp32f val,
  8041. Ipp32f* pSrcDst, int len ))
  8042. /* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8043. // Name: ippsSumWindow_8u32f ippsSumWindow_16s32f
  8044. // Purpose:
  8045. // Return:
  8046. // ippStsNoErr Ok
  8047. // ippStsNullPtrErr one or more pointers are NULL
  8048. // ippStsMaskSizeErr maskSize has a field with zero, or negative value
  8049. // Arguments:
  8050. // pSrc Pointer to the source vector
  8051. // pDst Pointer to the destination vector
  8052. // maskSize Size of the mask in pixels
  8053. */
  8054. IPPAPI(IppStatus,ippsSumWindow_8u32f ,(const Ipp8u* pSrc,Ipp32f* pDst,int len, int maskSize ))
  8055. IPPAPI(IppStatus,ippsSumWindow_16s32f,(const Ipp16s* pSrc,Ipp32f* pDst,int len, int maskSize ))
  8056. /* ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  8057. // Name: ippsCountInRange_32s
  8058. // Purpose: Computes the number of vector elements falling within the specified range.
  8059. // Return:
  8060. // ippStsNoErr No errors, it's OK
  8061. // ippStsNullPtrErr Either pSrc or pCounts equals to zero.
  8062. // ippStsLengthErr The vector's length is less than or equals to zero.
  8063. // Arguments:
  8064. // pSrc A pointer to the source vector.
  8065. // len Number of the vector elements.
  8066. // pCounts A pointer to the output result.
  8067. // lowerBound The upper boundary of the range.
  8068. // uppreBound The lower boundary of the range.
  8069. */
  8070. IPPAPI( IppStatus, ippsCountInRange_32s, ( const Ipp32s* pSrc, int len, int* pCounts,
  8071. Ipp32s lowerBound, Ipp32s upperBound ) )
  8072. /*
  8073. // Purpose: Creates ramp vector
  8074. //
  8075. // Parameters:
  8076. // pDst A pointer to the destination vector
  8077. // len Vector's length
  8078. // offset Offset value
  8079. // slope Slope coefficient
  8080. //
  8081. // Return:
  8082. // ippStsNoErr No error
  8083. // ippStsNullPtrErr pDst pointer is NULL
  8084. // ippStsBadSizeErr Vector's length is less or equal zero
  8085. // ippStsNoErr No error
  8086. //
  8087. // Notes: Dst[n] = offset + slope * n
  8088. //
  8089. */
  8090. IPPAPI(IppStatus, ippsVectorSlope_8u, ( Ipp8u* pDst, int len, Ipp32f offset, Ipp32f slope ))
  8091. IPPAPI(IppStatus, ippsVectorSlope_8s, ( Ipp8s* pDst, int len, Ipp32f offset, Ipp32f slope ))
  8092. IPPAPI(IppStatus, ippsVectorSlope_16u, ( Ipp16u* pDst, int len, Ipp32f offset, Ipp32f slope ))
  8093. IPPAPI(IppStatus, ippsVectorSlope_16s, ( Ipp16s* pDst, int len, Ipp32f offset, Ipp32f slope ))
  8094. IPPAPI(IppStatus, ippsVectorSlope_32u, ( Ipp32u* pDst, int len, Ipp64f offset, Ipp64f slope ))
  8095. IPPAPI(IppStatus, ippsVectorSlope_32s, ( Ipp32s* pDst, int len, Ipp64f offset, Ipp64f slope ))
  8096. IPPAPI(IppStatus, ippsVectorSlope_32f, ( Ipp32f* pDst, int len, Ipp32f offset, Ipp32f slope ))
  8097. IPPAPI(IppStatus, ippsVectorSlope_64f, ( Ipp64f* pDst, int len, Ipp64f offset, Ipp64f slope ))
  8098. /* ////////////////////////////////////////////////////////////////////////////
  8099. // Name: ippsDiv_Round_8u_Sfs
  8100. // ippsDiv_Round_16u_Sfs
  8101. // ippsDiv_Round_16s_Sfs
  8102. // ippsDiv_Round_8u_ISfs
  8103. // ippsDiv_Round_16u_ISfs
  8104. // ippsDiv_Round_16s_ISfs
  8105. //
  8106. //
  8107. // Purpose: divide every element of the source vector by the scalar value
  8108. // or by corresponding element of the second source vector and
  8109. // round to zero, near or financial
  8110. // Arguments:
  8111. // val the divisor value
  8112. // pSrc pointer to the divisor source vector
  8113. // pSrc1 pointer to the divisor source vector
  8114. // pSrc2 pointer to the dividend source vector
  8115. // pDst pointer to the destination vector
  8116. // pSrcDst pointer to the source/destination vector
  8117. // len vector's length, number of items
  8118. // rndMode Rounding mode (ippRndZero, ippRndNear or ippRndFinancial)
  8119. // scaleFactor scale factor parameter value
  8120. // Return:
  8121. // ippStsNullPtrErr pointer(s) to the data vector is NULL
  8122. // ippStsSizeErr length of the vector is less or equal zero
  8123. // ippStsDivByZeroErr the scalar divisor value is zero
  8124. // ippStsDivByZero Warning status if an element of divisor vector is
  8125. // zero. If the dividend is zero than result is
  8126. // NaN, if the dividend is not zero than result
  8127. // is Infinity with correspondent sign. The
  8128. // execution is not aborted. For the integer operation
  8129. // zero instead of NaN and the corresponding bound
  8130. // values instead of Infinity
  8131. // ippStsRoundModeNotSupportedErr Unsupported round mode
  8132. // ippStsNoErr otherwise
  8133. // Note:
  8134. // DivC(v,X,Y) : Y[n] = X[n] / v
  8135. // DivC(v,X) : X[n] = X[n] / v
  8136. // Div(X,Y) : Y[n] = Y[n] / X[n]
  8137. // Div(X,Y,Z) : Z[n] = Y[n] / X[n]
  8138. */
  8139. IPPAPI(IppStatus, ippsDiv_Round_8u_Sfs, (const Ipp8u* pSrc1, const Ipp8u* pSrc2,
  8140. Ipp8u* pDst, int len, IppRoundMode rndMode, int scaleFactor))
  8141. IPPAPI(IppStatus, ippsDiv_Round_16s_Sfs, (const Ipp16s* pSrc1, const Ipp16s* pSrc2,
  8142. Ipp16s* pDst, int len, IppRoundMode rndMode, int scaleFactor))
  8143. IPPAPI(IppStatus, ippsDiv_Round_16u_Sfs, (const Ipp16u* pSrc1, const Ipp16u* pSrc2,
  8144. Ipp16u* pDst, int len, IppRoundMode rndMode, int scaleFactor))
  8145. IPPAPI(IppStatus, ippsDiv_Round_8u_ISfs, (const Ipp8u* pSrc, Ipp8u* pSrcDst,
  8146. int len, IppRoundMode rndMode, int scaleFactor))
  8147. IPPAPI(IppStatus, ippsDiv_Round_16s_ISfs, (const Ipp16s* pSrc, Ipp16s* pSrcDst,
  8148. int len, IppRoundMode rndMode, int scaleFactor))
  8149. IPPAPI(IppStatus, ippsDiv_Round_16u_ISfs, (const Ipp16u* pSrc, Ipp16u* pSrcDst,
  8150. int len, IppRoundMode rndMode, int scaleFactor))
  8151. /* /////////////////////////////////////////////////////////////////////////////
  8152. // Names: ippsDemodulateFM_CToR_16s
  8153. // Purpose: FM demodulate
  8154. // Return:
  8155. // IPP_NO_ERR Ok
  8156. // IPP_NULL_PTR_ERR Some of pointers are NULL
  8157. // IPP_BADSIZE_ERR The length of the array is less or equal zero
  8158. // Parameters:
  8159. // pSrcRe pointer to input vector of Real data
  8160. // pSrcIm pointer to input vector of Image data
  8161. // pDst pointer to output vector
  8162. // len a length of the array
  8163. // pDlyPoint pointer to earlier data
  8164. */
  8165. IPPAPI(IppStatus, ippsDemodulateFM_CToR_16s,( const Ipp16s* pSrcRe,
  8166. const Ipp16s *pSrcIm, Ipp16s *pDst, int len, Ipp16sc *pDlyPoint ))
  8167. /* ///////////////////////////////////////////////////////////////////////////
  8168. // Name: ippsCauchy_32f_I, ippsCauchyD_32f_I, ippsCauchyDD2_32f_I
  8169. //
  8170. // Purpose: Compute Cauchy robust error function or its 1st, 2nd derivatives
  8171. //
  8172. // Return:
  8173. // ippStsNoErr Ok
  8174. // ippStsNullPtrErr Some of the pointers are NULL's
  8175. // ippStsSizeErr Length is negative
  8176. // ippStsOutOfRangeErr C is negative
  8177. //
  8178. // Arguments:
  8179. // pSrcDst The input/output array of function arguments/values.
  8180. // pD2F The array of values of the 2nd derivative.
  8181. // len Length of srcdst and d2fval
  8182. // C Cauchy function parameter
  8183. */
  8184. IPPAPI(IppStatus, ippsCauchy_32f_I, (Ipp32f* pSrcDst, int len, Ipp32f C))
  8185. IPPAPI(IppStatus, ippsCauchyD_32f_I, (Ipp32f* pSrcDst, int len, Ipp32f C))
  8186. IPPAPI(IppStatus, ippsCauchyDD2_32f_I, (Ipp32f* pSrcDst, Ipp32f* pD2F, int len, Ipp32f C))
  8187. /* ///////////////////////////////////////////////////////////////////////////
  8188. // Name: ippsZeroCrossing_*
  8189. // Purpose: Counts the zero-cross measure for the input signal.
  8190. //
  8191. // Parameters:
  8192. // pSrc Pointer to the input signal [len].
  8193. // len Number of elements in the input signal.
  8194. // pValZCR Pointer to the result value.
  8195. // zcType Zero crossing measure type.
  8196. // Return:
  8197. // ippStsNoErr Indicates no error.
  8198. // ippStsNullPtrErr Indicates an error when the pSrc or pRes pointer is null.
  8199. // ippStsRangeErr Indicates an error when zcType is not equal to
  8200. // ippZCR, ippZCXor or ippZCC
  8201. */
  8202. IPPAPI(IppStatus, ippsZeroCrossing_16s32f,(const Ipp16s* pSrc, Ipp32u len,
  8203. Ipp32f* pValZCR, IppsZCType zcType))
  8204. IPPAPI(IppStatus, ippsZeroCrossing_32f, (const Ipp32f* pSrc, Ipp32u len,
  8205. Ipp32f* pValZCR, IppsZCType zcType))
  8206. /* /////////////////////////////////////////////////////////////////////////////
  8207. // The library was generated by Spiral, developed at Carnegie Mellon
  8208. // University, http://www.spiral.net
  8209. */
  8210. /*
  8211. /////////////////////////////////////////////////////////////////////////////
  8212. // Name: ippgenGetLibVersion
  8213. // Purpose: getting of the library version
  8214. // Returns: the structure of information about version of ippGEN library
  8215. // Parameters:
  8216. //
  8217. // Notes: not necessary to release the returned structure
  8218. */
  8219. IPPAPI( const IppLibraryVersion*, ippgenGetLibVersion, (void) )
  8220. #if !defined( _OWN_BLDPCS )
  8221. typedef void ippgDCT4Spec_32f;
  8222. typedef void ippgDCT4Spec_64f;
  8223. #endif /* _OWN_BLDPCS */
  8224. IPPAPI(IppStatus, ippgDCT4Free_64f, (ippgDCT4Spec_64f *spec) )
  8225. IPPAPI(IppStatus, ippgDCT4GetSize_64f, (int len, int *pSize))
  8226. IPPAPI(IppStatus, ippgDCT4Init_64f, (ippgDCT4Spec_64f **pSpec, int len, Ipp8u *pMem) )
  8227. IPPAPI(IppStatus, ippgDCT4InitAlloc_64f, (ippgDCT4Spec_64f **pSpec, int len) )
  8228. IPPAPI(IppStatus, ippgDCT4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, const ippgDCT4Spec_64f *spec) )
  8229. IPPAPI(IppStatus, ippgDCT4Free_32f, (ippgDCT4Spec_32f *spec) )
  8230. IPPAPI(IppStatus, ippgDCT4GetSize_32f, (int len, int *pSize))
  8231. IPPAPI(IppStatus, ippgDCT4Init_32f, (ippgDCT4Spec_32f **pSpec, int len, Ipp8u *pMem) )
  8232. IPPAPI(IppStatus, ippgDCT4InitAlloc_32f, (ippgDCT4Spec_32f **pSpec, int len) )
  8233. IPPAPI(IppStatus, ippgDCT4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, const ippgDCT4Spec_32f *spec) )
  8234. /* /////////////////////////////////////////////////////////////////////////////
  8235. // Walsh Hadamard transforms of fixed size
  8236. ///////////////////////////////////////////////////////////////////////////// */
  8237. /* /////////////////////////////////////////////////////////////////////////////
  8238. // Name: ippgWHT
  8239. // Purpose: compute Walsh Hadamard transform of a signal
  8240. // Note: Walsh Hadamard transform is involutary (self-inverse)
  8241. // Normalization choices: IPP_NODIV_BY_ANY, IPP_DIV_BY_SQRTN,
  8242. // IPP_DIV_FWD_BY_N is same as IPP_DIV_INV_BY_N
  8243. // Arguments:
  8244. // pSrc - pointer to source complex signal
  8245. // pDst - pointer to destination complex signal
  8246. // order - number of samples in the input signal pSrc is 2^order
  8247. // valid values for order are [ 1 .. 13 ]
  8248. // flag - normalization flag
  8249. //
  8250. // Return:
  8251. // ippStsNoErr no errors
  8252. // ippStsNullPtrErr pSrc == NULL or pDst == NULL or
  8253. // ippStsFftFlagErr bad the normalization flag value
  8254. */
  8255. IPPAPI(IppStatus, ippgWHTGetBufferSize_32f, (int order, Ipp32u *pBufferSize) )
  8256. IPPAPI(IppStatus, ippgWHTGetBufferSize_64f, (int order, Ipp32u *pBufferSize) )
  8257. IPPAPI(IppStatus, ippgWHT_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int order, int flag, Ipp8u *pBuffer) )
  8258. IPPAPI(IppStatus, ippgWHT_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int order, int flag, Ipp8u *pBuffer) )
  8259. IPPAPI(IppStatus, ippgWHT_1_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8260. IPPAPI(IppStatus, ippgWHT_1_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8261. IPPAPI(IppStatus, ippgWHT_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8262. IPPAPI(IppStatus, ippgWHT_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8263. IPPAPI(IppStatus, ippgWHT_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8264. IPPAPI(IppStatus, ippgWHT_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8265. IPPAPI(IppStatus, ippgWHT_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8266. IPPAPI(IppStatus, ippgWHT_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8267. IPPAPI(IppStatus, ippgWHT_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8268. IPPAPI(IppStatus, ippgWHT_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8269. IPPAPI(IppStatus, ippgWHT_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8270. IPPAPI(IppStatus, ippgWHT_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8271. IPPAPI(IppStatus, ippgWHT_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8272. IPPAPI(IppStatus, ippgWHT_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8273. IPPAPI(IppStatus, ippgWHT_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8274. IPPAPI(IppStatus, ippgWHT_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8275. IPPAPI(IppStatus, ippgWHT_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8276. IPPAPI(IppStatus, ippgWHT_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8277. IPPAPI(IppStatus, ippgWHT_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8278. IPPAPI(IppStatus, ippgWHT_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8279. IPPAPI(IppStatus, ippgWHT_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8280. IPPAPI(IppStatus, ippgWHT_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8281. IPPAPI(IppStatus, ippgWHT_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8282. IPPAPI(IppStatus, ippgWHT_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8283. IPPAPI(IppStatus, ippgWHT_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag, Ipp8u *pBuffer) )
  8284. IPPAPI(IppStatus, ippgWHT_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag, Ipp8u *pBuffer) )
  8285. /* /////////////////////////////////////////////////////////////////////////////
  8286. // DFT Complex Transforms of fixed size
  8287. ///////////////////////////////////////////////////////////////////////////// */
  8288. /* /////////////////////////////////////////////////////////////////////////////
  8289. // Name: ippgDFTFwd_CToC, ippsDFTInv_CToC
  8290. // Purpose: compute forward and inverse DFT of a complex signal
  8291. // Normalization choices: IPP_NODIV_BY_ANY, IPP_DIV_BY_SQRTN,
  8292. // IPP_DIV_FWD_BY_N, IPP_DIV_INV_BY_N
  8293. // Arguments:
  8294. // pSrc - pointer to source complex signal
  8295. // pDst - pointer to destination complex signal
  8296. // length - number of samples in the input signal pSrc
  8297. // valid values for length are [ 2 .. 64 ]
  8298. // flag - normalization flag
  8299. //
  8300. // Return:
  8301. // ippStsNoErr no errors
  8302. // ippStsNullPtrErr pSrc == NULL or pDst == NULL or
  8303. // ippStsFftFlagErr bad the normalization flag value
  8304. */
  8305. IPPAPI(IppStatus, ippgDFTFwd_CToC_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int length, int flag) )
  8306. IPPAPI(IppStatus, ippgDFTFwd_CToC_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int length, int flag) )
  8307. IPPAPI(IppStatus, ippgDFTInv_CToC_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int length, int flag) )
  8308. IPPAPI(IppStatus, ippgDFTInv_CToC_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int length, int flag) )
  8309. IPPAPI(IppStatus, ippgDFTFwd_CToC_2_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8310. IPPAPI(IppStatus, ippgDFTFwd_CToC_2_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8311. IPPAPI(IppStatus, ippgDFTInv_CToC_2_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8312. IPPAPI(IppStatus, ippgDFTInv_CToC_2_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8313. IPPAPI(IppStatus, ippgDFTFwd_CToC_3_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8314. IPPAPI(IppStatus, ippgDFTFwd_CToC_3_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8315. IPPAPI(IppStatus, ippgDFTInv_CToC_3_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8316. IPPAPI(IppStatus, ippgDFTInv_CToC_3_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8317. IPPAPI(IppStatus, ippgDFTFwd_CToC_4_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8318. IPPAPI(IppStatus, ippgDFTFwd_CToC_4_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8319. IPPAPI(IppStatus, ippgDFTInv_CToC_4_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8320. IPPAPI(IppStatus, ippgDFTInv_CToC_4_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8321. IPPAPI(IppStatus, ippgDFTFwd_CToC_5_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8322. IPPAPI(IppStatus, ippgDFTFwd_CToC_5_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8323. IPPAPI(IppStatus, ippgDFTInv_CToC_5_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8324. IPPAPI(IppStatus, ippgDFTInv_CToC_5_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8325. IPPAPI(IppStatus, ippgDFTFwd_CToC_6_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8326. IPPAPI(IppStatus, ippgDFTFwd_CToC_6_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8327. IPPAPI(IppStatus, ippgDFTInv_CToC_6_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8328. IPPAPI(IppStatus, ippgDFTInv_CToC_6_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8329. IPPAPI(IppStatus, ippgDFTFwd_CToC_7_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8330. IPPAPI(IppStatus, ippgDFTFwd_CToC_7_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8331. IPPAPI(IppStatus, ippgDFTInv_CToC_7_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8332. IPPAPI(IppStatus, ippgDFTInv_CToC_7_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8333. IPPAPI(IppStatus, ippgDFTFwd_CToC_8_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8334. IPPAPI(IppStatus, ippgDFTFwd_CToC_8_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8335. IPPAPI(IppStatus, ippgDFTInv_CToC_8_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8336. IPPAPI(IppStatus, ippgDFTInv_CToC_8_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8337. IPPAPI(IppStatus, ippgDFTFwd_CToC_9_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8338. IPPAPI(IppStatus, ippgDFTFwd_CToC_9_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8339. IPPAPI(IppStatus, ippgDFTInv_CToC_9_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8340. IPPAPI(IppStatus, ippgDFTInv_CToC_9_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8341. IPPAPI(IppStatus, ippgDFTFwd_CToC_10_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8342. IPPAPI(IppStatus, ippgDFTFwd_CToC_10_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8343. IPPAPI(IppStatus, ippgDFTInv_CToC_10_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8344. IPPAPI(IppStatus, ippgDFTInv_CToC_10_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8345. IPPAPI(IppStatus, ippgDFTFwd_CToC_11_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8346. IPPAPI(IppStatus, ippgDFTFwd_CToC_11_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8347. IPPAPI(IppStatus, ippgDFTInv_CToC_11_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8348. IPPAPI(IppStatus, ippgDFTInv_CToC_11_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8349. IPPAPI(IppStatus, ippgDFTFwd_CToC_12_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8350. IPPAPI(IppStatus, ippgDFTFwd_CToC_12_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8351. IPPAPI(IppStatus, ippgDFTInv_CToC_12_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8352. IPPAPI(IppStatus, ippgDFTInv_CToC_12_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8353. IPPAPI(IppStatus, ippgDFTFwd_CToC_13_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8354. IPPAPI(IppStatus, ippgDFTFwd_CToC_13_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8355. IPPAPI(IppStatus, ippgDFTInv_CToC_13_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8356. IPPAPI(IppStatus, ippgDFTInv_CToC_13_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8357. IPPAPI(IppStatus, ippgDFTFwd_CToC_14_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8358. IPPAPI(IppStatus, ippgDFTFwd_CToC_14_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8359. IPPAPI(IppStatus, ippgDFTInv_CToC_14_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8360. IPPAPI(IppStatus, ippgDFTInv_CToC_14_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8361. IPPAPI(IppStatus, ippgDFTFwd_CToC_15_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8362. IPPAPI(IppStatus, ippgDFTFwd_CToC_15_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8363. IPPAPI(IppStatus, ippgDFTInv_CToC_15_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8364. IPPAPI(IppStatus, ippgDFTInv_CToC_15_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8365. IPPAPI(IppStatus, ippgDFTFwd_CToC_16_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8366. IPPAPI(IppStatus, ippgDFTFwd_CToC_16_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8367. IPPAPI(IppStatus, ippgDFTInv_CToC_16_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8368. IPPAPI(IppStatus, ippgDFTInv_CToC_16_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8369. IPPAPI(IppStatus, ippgDFTFwd_CToC_17_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8370. IPPAPI(IppStatus, ippgDFTFwd_CToC_17_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8371. IPPAPI(IppStatus, ippgDFTInv_CToC_17_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8372. IPPAPI(IppStatus, ippgDFTInv_CToC_17_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8373. IPPAPI(IppStatus, ippgDFTFwd_CToC_18_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8374. IPPAPI(IppStatus, ippgDFTFwd_CToC_18_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8375. IPPAPI(IppStatus, ippgDFTInv_CToC_18_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8376. IPPAPI(IppStatus, ippgDFTInv_CToC_18_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8377. IPPAPI(IppStatus, ippgDFTFwd_CToC_19_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8378. IPPAPI(IppStatus, ippgDFTFwd_CToC_19_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8379. IPPAPI(IppStatus, ippgDFTInv_CToC_19_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8380. IPPAPI(IppStatus, ippgDFTInv_CToC_19_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8381. IPPAPI(IppStatus, ippgDFTFwd_CToC_20_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8382. IPPAPI(IppStatus, ippgDFTFwd_CToC_20_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8383. IPPAPI(IppStatus, ippgDFTInv_CToC_20_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8384. IPPAPI(IppStatus, ippgDFTInv_CToC_20_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8385. IPPAPI(IppStatus, ippgDFTFwd_CToC_21_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8386. IPPAPI(IppStatus, ippgDFTFwd_CToC_21_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8387. IPPAPI(IppStatus, ippgDFTInv_CToC_21_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8388. IPPAPI(IppStatus, ippgDFTInv_CToC_21_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8389. IPPAPI(IppStatus, ippgDFTFwd_CToC_22_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8390. IPPAPI(IppStatus, ippgDFTFwd_CToC_22_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8391. IPPAPI(IppStatus, ippgDFTInv_CToC_22_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8392. IPPAPI(IppStatus, ippgDFTInv_CToC_22_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8393. IPPAPI(IppStatus, ippgDFTFwd_CToC_23_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8394. IPPAPI(IppStatus, ippgDFTFwd_CToC_23_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8395. IPPAPI(IppStatus, ippgDFTInv_CToC_23_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8396. IPPAPI(IppStatus, ippgDFTInv_CToC_23_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8397. IPPAPI(IppStatus, ippgDFTFwd_CToC_24_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8398. IPPAPI(IppStatus, ippgDFTFwd_CToC_24_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8399. IPPAPI(IppStatus, ippgDFTInv_CToC_24_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8400. IPPAPI(IppStatus, ippgDFTInv_CToC_24_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8401. IPPAPI(IppStatus, ippgDFTFwd_CToC_25_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8402. IPPAPI(IppStatus, ippgDFTFwd_CToC_25_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8403. IPPAPI(IppStatus, ippgDFTInv_CToC_25_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8404. IPPAPI(IppStatus, ippgDFTInv_CToC_25_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8405. IPPAPI(IppStatus, ippgDFTFwd_CToC_26_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8406. IPPAPI(IppStatus, ippgDFTFwd_CToC_26_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8407. IPPAPI(IppStatus, ippgDFTInv_CToC_26_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8408. IPPAPI(IppStatus, ippgDFTInv_CToC_26_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8409. IPPAPI(IppStatus, ippgDFTFwd_CToC_27_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8410. IPPAPI(IppStatus, ippgDFTFwd_CToC_27_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8411. IPPAPI(IppStatus, ippgDFTInv_CToC_27_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8412. IPPAPI(IppStatus, ippgDFTInv_CToC_27_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8413. IPPAPI(IppStatus, ippgDFTFwd_CToC_28_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8414. IPPAPI(IppStatus, ippgDFTFwd_CToC_28_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8415. IPPAPI(IppStatus, ippgDFTInv_CToC_28_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8416. IPPAPI(IppStatus, ippgDFTInv_CToC_28_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8417. IPPAPI(IppStatus, ippgDFTFwd_CToC_29_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8418. IPPAPI(IppStatus, ippgDFTFwd_CToC_29_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8419. IPPAPI(IppStatus, ippgDFTInv_CToC_29_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8420. IPPAPI(IppStatus, ippgDFTInv_CToC_29_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8421. IPPAPI(IppStatus, ippgDFTFwd_CToC_30_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8422. IPPAPI(IppStatus, ippgDFTFwd_CToC_30_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8423. IPPAPI(IppStatus, ippgDFTInv_CToC_30_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8424. IPPAPI(IppStatus, ippgDFTInv_CToC_30_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8425. IPPAPI(IppStatus, ippgDFTFwd_CToC_31_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8426. IPPAPI(IppStatus, ippgDFTFwd_CToC_31_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8427. IPPAPI(IppStatus, ippgDFTInv_CToC_31_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8428. IPPAPI(IppStatus, ippgDFTInv_CToC_31_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8429. IPPAPI(IppStatus, ippgDFTFwd_CToC_32_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8430. IPPAPI(IppStatus, ippgDFTFwd_CToC_32_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8431. IPPAPI(IppStatus, ippgDFTInv_CToC_32_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8432. IPPAPI(IppStatus, ippgDFTInv_CToC_32_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8433. IPPAPI(IppStatus, ippgDFTFwd_CToC_33_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8434. IPPAPI(IppStatus, ippgDFTFwd_CToC_33_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8435. IPPAPI(IppStatus, ippgDFTInv_CToC_33_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8436. IPPAPI(IppStatus, ippgDFTInv_CToC_33_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8437. IPPAPI(IppStatus, ippgDFTFwd_CToC_34_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8438. IPPAPI(IppStatus, ippgDFTFwd_CToC_34_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8439. IPPAPI(IppStatus, ippgDFTInv_CToC_34_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8440. IPPAPI(IppStatus, ippgDFTInv_CToC_34_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8441. IPPAPI(IppStatus, ippgDFTFwd_CToC_35_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8442. IPPAPI(IppStatus, ippgDFTFwd_CToC_35_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8443. IPPAPI(IppStatus, ippgDFTInv_CToC_35_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8444. IPPAPI(IppStatus, ippgDFTInv_CToC_35_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8445. IPPAPI(IppStatus, ippgDFTFwd_CToC_36_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8446. IPPAPI(IppStatus, ippgDFTFwd_CToC_36_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8447. IPPAPI(IppStatus, ippgDFTInv_CToC_36_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8448. IPPAPI(IppStatus, ippgDFTInv_CToC_36_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8449. IPPAPI(IppStatus, ippgDFTFwd_CToC_37_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8450. IPPAPI(IppStatus, ippgDFTFwd_CToC_37_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8451. IPPAPI(IppStatus, ippgDFTInv_CToC_37_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8452. IPPAPI(IppStatus, ippgDFTInv_CToC_37_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8453. IPPAPI(IppStatus, ippgDFTFwd_CToC_38_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8454. IPPAPI(IppStatus, ippgDFTFwd_CToC_38_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8455. IPPAPI(IppStatus, ippgDFTInv_CToC_38_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8456. IPPAPI(IppStatus, ippgDFTInv_CToC_38_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8457. IPPAPI(IppStatus, ippgDFTFwd_CToC_39_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8458. IPPAPI(IppStatus, ippgDFTFwd_CToC_39_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8459. IPPAPI(IppStatus, ippgDFTInv_CToC_39_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8460. IPPAPI(IppStatus, ippgDFTInv_CToC_39_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8461. IPPAPI(IppStatus, ippgDFTFwd_CToC_40_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8462. IPPAPI(IppStatus, ippgDFTFwd_CToC_40_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8463. IPPAPI(IppStatus, ippgDFTInv_CToC_40_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8464. IPPAPI(IppStatus, ippgDFTInv_CToC_40_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8465. IPPAPI(IppStatus, ippgDFTFwd_CToC_41_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8466. IPPAPI(IppStatus, ippgDFTFwd_CToC_41_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8467. IPPAPI(IppStatus, ippgDFTInv_CToC_41_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8468. IPPAPI(IppStatus, ippgDFTInv_CToC_41_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8469. IPPAPI(IppStatus, ippgDFTFwd_CToC_42_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8470. IPPAPI(IppStatus, ippgDFTFwd_CToC_42_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8471. IPPAPI(IppStatus, ippgDFTInv_CToC_42_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8472. IPPAPI(IppStatus, ippgDFTInv_CToC_42_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8473. IPPAPI(IppStatus, ippgDFTFwd_CToC_43_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8474. IPPAPI(IppStatus, ippgDFTFwd_CToC_43_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8475. IPPAPI(IppStatus, ippgDFTInv_CToC_43_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8476. IPPAPI(IppStatus, ippgDFTInv_CToC_43_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8477. IPPAPI(IppStatus, ippgDFTFwd_CToC_44_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8478. IPPAPI(IppStatus, ippgDFTFwd_CToC_44_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8479. IPPAPI(IppStatus, ippgDFTInv_CToC_44_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8480. IPPAPI(IppStatus, ippgDFTInv_CToC_44_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8481. IPPAPI(IppStatus, ippgDFTFwd_CToC_45_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8482. IPPAPI(IppStatus, ippgDFTFwd_CToC_45_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8483. IPPAPI(IppStatus, ippgDFTInv_CToC_45_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8484. IPPAPI(IppStatus, ippgDFTInv_CToC_45_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8485. IPPAPI(IppStatus, ippgDFTFwd_CToC_46_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8486. IPPAPI(IppStatus, ippgDFTFwd_CToC_46_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8487. IPPAPI(IppStatus, ippgDFTInv_CToC_46_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8488. IPPAPI(IppStatus, ippgDFTInv_CToC_46_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8489. IPPAPI(IppStatus, ippgDFTFwd_CToC_47_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8490. IPPAPI(IppStatus, ippgDFTFwd_CToC_47_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8491. IPPAPI(IppStatus, ippgDFTInv_CToC_47_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8492. IPPAPI(IppStatus, ippgDFTInv_CToC_47_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8493. IPPAPI(IppStatus, ippgDFTFwd_CToC_48_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8494. IPPAPI(IppStatus, ippgDFTFwd_CToC_48_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8495. IPPAPI(IppStatus, ippgDFTInv_CToC_48_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8496. IPPAPI(IppStatus, ippgDFTInv_CToC_48_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8497. IPPAPI(IppStatus, ippgDFTFwd_CToC_49_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8498. IPPAPI(IppStatus, ippgDFTFwd_CToC_49_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8499. IPPAPI(IppStatus, ippgDFTInv_CToC_49_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8500. IPPAPI(IppStatus, ippgDFTInv_CToC_49_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8501. IPPAPI(IppStatus, ippgDFTFwd_CToC_50_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8502. IPPAPI(IppStatus, ippgDFTFwd_CToC_50_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8503. IPPAPI(IppStatus, ippgDFTInv_CToC_50_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8504. IPPAPI(IppStatus, ippgDFTInv_CToC_50_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8505. IPPAPI(IppStatus, ippgDFTFwd_CToC_51_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8506. IPPAPI(IppStatus, ippgDFTFwd_CToC_51_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8507. IPPAPI(IppStatus, ippgDFTInv_CToC_51_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8508. IPPAPI(IppStatus, ippgDFTInv_CToC_51_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8509. IPPAPI(IppStatus, ippgDFTFwd_CToC_52_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8510. IPPAPI(IppStatus, ippgDFTFwd_CToC_52_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8511. IPPAPI(IppStatus, ippgDFTInv_CToC_52_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8512. IPPAPI(IppStatus, ippgDFTInv_CToC_52_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8513. IPPAPI(IppStatus, ippgDFTFwd_CToC_53_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8514. IPPAPI(IppStatus, ippgDFTFwd_CToC_53_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8515. IPPAPI(IppStatus, ippgDFTInv_CToC_53_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8516. IPPAPI(IppStatus, ippgDFTInv_CToC_53_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8517. IPPAPI(IppStatus, ippgDFTFwd_CToC_54_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8518. IPPAPI(IppStatus, ippgDFTFwd_CToC_54_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8519. IPPAPI(IppStatus, ippgDFTInv_CToC_54_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8520. IPPAPI(IppStatus, ippgDFTInv_CToC_54_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8521. IPPAPI(IppStatus, ippgDFTFwd_CToC_55_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8522. IPPAPI(IppStatus, ippgDFTFwd_CToC_55_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8523. IPPAPI(IppStatus, ippgDFTInv_CToC_55_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8524. IPPAPI(IppStatus, ippgDFTInv_CToC_55_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8525. IPPAPI(IppStatus, ippgDFTFwd_CToC_56_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8526. IPPAPI(IppStatus, ippgDFTFwd_CToC_56_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8527. IPPAPI(IppStatus, ippgDFTInv_CToC_56_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8528. IPPAPI(IppStatus, ippgDFTInv_CToC_56_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8529. IPPAPI(IppStatus, ippgDFTFwd_CToC_57_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8530. IPPAPI(IppStatus, ippgDFTFwd_CToC_57_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8531. IPPAPI(IppStatus, ippgDFTInv_CToC_57_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8532. IPPAPI(IppStatus, ippgDFTInv_CToC_57_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8533. IPPAPI(IppStatus, ippgDFTFwd_CToC_58_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8534. IPPAPI(IppStatus, ippgDFTFwd_CToC_58_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8535. IPPAPI(IppStatus, ippgDFTInv_CToC_58_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8536. IPPAPI(IppStatus, ippgDFTInv_CToC_58_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8537. IPPAPI(IppStatus, ippgDFTFwd_CToC_59_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8538. IPPAPI(IppStatus, ippgDFTFwd_CToC_59_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8539. IPPAPI(IppStatus, ippgDFTInv_CToC_59_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8540. IPPAPI(IppStatus, ippgDFTInv_CToC_59_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8541. IPPAPI(IppStatus, ippgDFTFwd_CToC_60_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8542. IPPAPI(IppStatus, ippgDFTFwd_CToC_60_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8543. IPPAPI(IppStatus, ippgDFTInv_CToC_60_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8544. IPPAPI(IppStatus, ippgDFTInv_CToC_60_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8545. IPPAPI(IppStatus, ippgDFTFwd_CToC_61_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8546. IPPAPI(IppStatus, ippgDFTFwd_CToC_61_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8547. IPPAPI(IppStatus, ippgDFTInv_CToC_61_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8548. IPPAPI(IppStatus, ippgDFTInv_CToC_61_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8549. IPPAPI(IppStatus, ippgDFTFwd_CToC_62_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8550. IPPAPI(IppStatus, ippgDFTFwd_CToC_62_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8551. IPPAPI(IppStatus, ippgDFTInv_CToC_62_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8552. IPPAPI(IppStatus, ippgDFTInv_CToC_62_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8553. IPPAPI(IppStatus, ippgDFTFwd_CToC_63_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8554. IPPAPI(IppStatus, ippgDFTFwd_CToC_63_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8555. IPPAPI(IppStatus, ippgDFTInv_CToC_63_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8556. IPPAPI(IppStatus, ippgDFTInv_CToC_63_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8557. IPPAPI(IppStatus, ippgDFTFwd_CToC_64_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8558. IPPAPI(IppStatus, ippgDFTFwd_CToC_64_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8559. IPPAPI(IppStatus, ippgDFTInv_CToC_64_32fc, (const Ipp32fc *pSrc, Ipp32fc *pDst, int flag) )
  8560. IPPAPI(IppStatus, ippgDFTInv_CToC_64_64fc, (const Ipp64fc *pSrc, Ipp64fc *pDst, int flag) )
  8561. /* /////////////////////////////////////////////////////////////////////////////
  8562. // DFT Real Transforms of fixed size
  8563. ///////////////////////////////////////////////////////////////////////////// */
  8564. /* /////////////////////////////////////////////////////////////////////////////
  8565. // Name: ippgDFTFwd_RToCCS, ippgDFTFwd_RToPack, ippgDFTFwd_RToPerm,
  8566. // ippsDFTInv_CCSToR, ippgDFTInv_PackToR, ippgDFTInv_PermToR,
  8567. // Purpose: compute forward and inverse DFT of a real signal
  8568. // Normalization choices: IPP_NODIV_BY_ANY, IPP_DIV_BY_SQRTN,
  8569. // IPP_DIV_FWD_BY_N, IPP_DIV_INV_BY_N
  8570. // Arguments:
  8571. // pSrc - pointer to source complex signal
  8572. // pDst - pointer to destination complex signal
  8573. // length - number of samples in the input signal pSrc
  8574. // valid values for length are [ 2 .. 64 ]
  8575. // flag - normalization flag
  8576. //
  8577. // Return:
  8578. // ippStsNoErr no errors
  8579. // ippStsNullPtrErr pSrc == NULL or pDst == NULL or
  8580. // ippStsFftFlagErr bad the normalization flag value
  8581. */
  8582. IPPAPI(IppStatus, ippgDFTFwd_RToPack_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8583. IPPAPI(IppStatus, ippgDFTFwd_RToPack_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8584. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8585. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8586. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8587. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8588. IPPAPI(IppStatus, ippgDFTInv_PackToR_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8589. IPPAPI(IppStatus, ippgDFTInv_PackToR_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8590. IPPAPI(IppStatus, ippgDFTInv_PermToR_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8591. IPPAPI(IppStatus, ippgDFTInv_PermToR_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8592. IPPAPI(IppStatus, ippgDFTInv_CCSToR_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  8593. IPPAPI(IppStatus, ippgDFTInv_CCSToR_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  8594. IPPAPI(IppStatus, ippgDFTFwd_RToPack_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8595. IPPAPI(IppStatus, ippgDFTFwd_RToPack_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8596. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8597. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8598. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8599. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8600. IPPAPI(IppStatus, ippgDFTInv_PackToR_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8601. IPPAPI(IppStatus, ippgDFTInv_PackToR_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8602. IPPAPI(IppStatus, ippgDFTInv_PermToR_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8603. IPPAPI(IppStatus, ippgDFTInv_PermToR_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8604. IPPAPI(IppStatus, ippgDFTInv_CCSToR_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8605. IPPAPI(IppStatus, ippgDFTInv_CCSToR_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8606. IPPAPI(IppStatus, ippgDFTFwd_RToPack_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8607. IPPAPI(IppStatus, ippgDFTFwd_RToPack_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8608. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8609. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8610. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8611. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8612. IPPAPI(IppStatus, ippgDFTInv_PackToR_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8613. IPPAPI(IppStatus, ippgDFTInv_PackToR_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8614. IPPAPI(IppStatus, ippgDFTInv_PermToR_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8615. IPPAPI(IppStatus, ippgDFTInv_PermToR_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8616. IPPAPI(IppStatus, ippgDFTInv_CCSToR_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8617. IPPAPI(IppStatus, ippgDFTInv_CCSToR_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8618. IPPAPI(IppStatus, ippgDFTFwd_RToPack_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8619. IPPAPI(IppStatus, ippgDFTFwd_RToPack_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8620. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8621. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8622. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8623. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8624. IPPAPI(IppStatus, ippgDFTInv_PackToR_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8625. IPPAPI(IppStatus, ippgDFTInv_PackToR_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8626. IPPAPI(IppStatus, ippgDFTInv_PermToR_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8627. IPPAPI(IppStatus, ippgDFTInv_PermToR_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8628. IPPAPI(IppStatus, ippgDFTInv_CCSToR_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8629. IPPAPI(IppStatus, ippgDFTInv_CCSToR_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8630. IPPAPI(IppStatus, ippgDFTFwd_RToPack_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8631. IPPAPI(IppStatus, ippgDFTFwd_RToPack_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8632. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8633. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8634. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8635. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8636. IPPAPI(IppStatus, ippgDFTInv_PackToR_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8637. IPPAPI(IppStatus, ippgDFTInv_PackToR_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8638. IPPAPI(IppStatus, ippgDFTInv_PermToR_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8639. IPPAPI(IppStatus, ippgDFTInv_PermToR_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8640. IPPAPI(IppStatus, ippgDFTInv_CCSToR_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8641. IPPAPI(IppStatus, ippgDFTInv_CCSToR_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8642. IPPAPI(IppStatus, ippgDFTFwd_RToPack_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8643. IPPAPI(IppStatus, ippgDFTFwd_RToPack_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8644. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8645. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8646. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8647. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8648. IPPAPI(IppStatus, ippgDFTInv_PackToR_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8649. IPPAPI(IppStatus, ippgDFTInv_PackToR_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8650. IPPAPI(IppStatus, ippgDFTInv_PermToR_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8651. IPPAPI(IppStatus, ippgDFTInv_PermToR_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8652. IPPAPI(IppStatus, ippgDFTInv_CCSToR_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8653. IPPAPI(IppStatus, ippgDFTInv_CCSToR_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8654. IPPAPI(IppStatus, ippgDFTFwd_RToPack_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8655. IPPAPI(IppStatus, ippgDFTFwd_RToPack_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8656. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8657. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8658. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8659. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8660. IPPAPI(IppStatus, ippgDFTInv_PackToR_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8661. IPPAPI(IppStatus, ippgDFTInv_PackToR_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8662. IPPAPI(IppStatus, ippgDFTInv_PermToR_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8663. IPPAPI(IppStatus, ippgDFTInv_PermToR_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8664. IPPAPI(IppStatus, ippgDFTInv_CCSToR_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8665. IPPAPI(IppStatus, ippgDFTInv_CCSToR_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8666. IPPAPI(IppStatus, ippgDFTFwd_RToPack_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8667. IPPAPI(IppStatus, ippgDFTFwd_RToPack_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8668. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8669. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8670. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8671. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8672. IPPAPI(IppStatus, ippgDFTInv_PackToR_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8673. IPPAPI(IppStatus, ippgDFTInv_PackToR_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8674. IPPAPI(IppStatus, ippgDFTInv_PermToR_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8675. IPPAPI(IppStatus, ippgDFTInv_PermToR_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8676. IPPAPI(IppStatus, ippgDFTInv_CCSToR_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8677. IPPAPI(IppStatus, ippgDFTInv_CCSToR_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8678. IPPAPI(IppStatus, ippgDFTFwd_RToPack_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8679. IPPAPI(IppStatus, ippgDFTFwd_RToPack_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8680. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8681. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8682. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8683. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8684. IPPAPI(IppStatus, ippgDFTInv_PackToR_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8685. IPPAPI(IppStatus, ippgDFTInv_PackToR_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8686. IPPAPI(IppStatus, ippgDFTInv_PermToR_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8687. IPPAPI(IppStatus, ippgDFTInv_PermToR_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8688. IPPAPI(IppStatus, ippgDFTInv_CCSToR_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8689. IPPAPI(IppStatus, ippgDFTInv_CCSToR_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8690. IPPAPI(IppStatus, ippgDFTFwd_RToPack_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8691. IPPAPI(IppStatus, ippgDFTFwd_RToPack_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8692. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8693. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8694. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8695. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8696. IPPAPI(IppStatus, ippgDFTInv_PackToR_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8697. IPPAPI(IppStatus, ippgDFTInv_PackToR_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8698. IPPAPI(IppStatus, ippgDFTInv_PermToR_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8699. IPPAPI(IppStatus, ippgDFTInv_PermToR_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8700. IPPAPI(IppStatus, ippgDFTInv_CCSToR_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8701. IPPAPI(IppStatus, ippgDFTInv_CCSToR_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8702. IPPAPI(IppStatus, ippgDFTFwd_RToPack_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8703. IPPAPI(IppStatus, ippgDFTFwd_RToPack_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8704. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8705. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8706. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8707. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8708. IPPAPI(IppStatus, ippgDFTInv_PackToR_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8709. IPPAPI(IppStatus, ippgDFTInv_PackToR_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8710. IPPAPI(IppStatus, ippgDFTInv_PermToR_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8711. IPPAPI(IppStatus, ippgDFTInv_PermToR_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8712. IPPAPI(IppStatus, ippgDFTInv_CCSToR_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8713. IPPAPI(IppStatus, ippgDFTInv_CCSToR_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8714. IPPAPI(IppStatus, ippgDFTFwd_RToPack_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8715. IPPAPI(IppStatus, ippgDFTFwd_RToPack_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8716. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8717. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8718. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8719. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8720. IPPAPI(IppStatus, ippgDFTInv_PackToR_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8721. IPPAPI(IppStatus, ippgDFTInv_PackToR_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8722. IPPAPI(IppStatus, ippgDFTInv_PermToR_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8723. IPPAPI(IppStatus, ippgDFTInv_PermToR_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8724. IPPAPI(IppStatus, ippgDFTInv_CCSToR_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8725. IPPAPI(IppStatus, ippgDFTInv_CCSToR_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8726. IPPAPI(IppStatus, ippgDFTFwd_RToPack_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8727. IPPAPI(IppStatus, ippgDFTFwd_RToPack_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8728. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8729. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8730. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8731. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8732. IPPAPI(IppStatus, ippgDFTInv_PackToR_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8733. IPPAPI(IppStatus, ippgDFTInv_PackToR_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8734. IPPAPI(IppStatus, ippgDFTInv_PermToR_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8735. IPPAPI(IppStatus, ippgDFTInv_PermToR_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8736. IPPAPI(IppStatus, ippgDFTInv_CCSToR_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8737. IPPAPI(IppStatus, ippgDFTInv_CCSToR_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8738. IPPAPI(IppStatus, ippgDFTFwd_RToPack_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8739. IPPAPI(IppStatus, ippgDFTFwd_RToPack_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8740. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8741. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8742. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8743. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8744. IPPAPI(IppStatus, ippgDFTInv_PackToR_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8745. IPPAPI(IppStatus, ippgDFTInv_PackToR_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8746. IPPAPI(IppStatus, ippgDFTInv_PermToR_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8747. IPPAPI(IppStatus, ippgDFTInv_PermToR_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8748. IPPAPI(IppStatus, ippgDFTInv_CCSToR_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8749. IPPAPI(IppStatus, ippgDFTInv_CCSToR_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8750. IPPAPI(IppStatus, ippgDFTFwd_RToPack_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8751. IPPAPI(IppStatus, ippgDFTFwd_RToPack_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8752. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8753. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8754. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8755. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8756. IPPAPI(IppStatus, ippgDFTInv_PackToR_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8757. IPPAPI(IppStatus, ippgDFTInv_PackToR_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8758. IPPAPI(IppStatus, ippgDFTInv_PermToR_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8759. IPPAPI(IppStatus, ippgDFTInv_PermToR_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8760. IPPAPI(IppStatus, ippgDFTInv_CCSToR_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8761. IPPAPI(IppStatus, ippgDFTInv_CCSToR_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8762. IPPAPI(IppStatus, ippgDFTFwd_RToPack_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8763. IPPAPI(IppStatus, ippgDFTFwd_RToPack_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8764. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8765. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8766. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8767. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8768. IPPAPI(IppStatus, ippgDFTInv_PackToR_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8769. IPPAPI(IppStatus, ippgDFTInv_PackToR_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8770. IPPAPI(IppStatus, ippgDFTInv_PermToR_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8771. IPPAPI(IppStatus, ippgDFTInv_PermToR_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8772. IPPAPI(IppStatus, ippgDFTInv_CCSToR_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8773. IPPAPI(IppStatus, ippgDFTInv_CCSToR_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8774. IPPAPI(IppStatus, ippgDFTFwd_RToPack_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8775. IPPAPI(IppStatus, ippgDFTFwd_RToPack_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8776. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8777. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8778. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8779. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8780. IPPAPI(IppStatus, ippgDFTInv_PackToR_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8781. IPPAPI(IppStatus, ippgDFTInv_PackToR_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8782. IPPAPI(IppStatus, ippgDFTInv_PermToR_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8783. IPPAPI(IppStatus, ippgDFTInv_PermToR_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8784. IPPAPI(IppStatus, ippgDFTInv_CCSToR_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8785. IPPAPI(IppStatus, ippgDFTInv_CCSToR_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8786. IPPAPI(IppStatus, ippgDFTFwd_RToPack_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8787. IPPAPI(IppStatus, ippgDFTFwd_RToPack_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8788. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8789. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8790. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8791. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8792. IPPAPI(IppStatus, ippgDFTInv_PackToR_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8793. IPPAPI(IppStatus, ippgDFTInv_PackToR_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8794. IPPAPI(IppStatus, ippgDFTInv_PermToR_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8795. IPPAPI(IppStatus, ippgDFTInv_PermToR_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8796. IPPAPI(IppStatus, ippgDFTInv_CCSToR_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8797. IPPAPI(IppStatus, ippgDFTInv_CCSToR_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8798. IPPAPI(IppStatus, ippgDFTFwd_RToPack_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8799. IPPAPI(IppStatus, ippgDFTFwd_RToPack_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8800. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8801. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8802. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8803. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8804. IPPAPI(IppStatus, ippgDFTInv_PackToR_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8805. IPPAPI(IppStatus, ippgDFTInv_PackToR_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8806. IPPAPI(IppStatus, ippgDFTInv_PermToR_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8807. IPPAPI(IppStatus, ippgDFTInv_PermToR_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8808. IPPAPI(IppStatus, ippgDFTInv_CCSToR_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8809. IPPAPI(IppStatus, ippgDFTInv_CCSToR_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8810. IPPAPI(IppStatus, ippgDFTFwd_RToPack_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8811. IPPAPI(IppStatus, ippgDFTFwd_RToPack_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8812. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8813. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8814. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8815. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8816. IPPAPI(IppStatus, ippgDFTInv_PackToR_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8817. IPPAPI(IppStatus, ippgDFTInv_PackToR_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8818. IPPAPI(IppStatus, ippgDFTInv_PermToR_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8819. IPPAPI(IppStatus, ippgDFTInv_PermToR_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8820. IPPAPI(IppStatus, ippgDFTInv_CCSToR_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8821. IPPAPI(IppStatus, ippgDFTInv_CCSToR_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8822. IPPAPI(IppStatus, ippgDFTFwd_RToPack_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8823. IPPAPI(IppStatus, ippgDFTFwd_RToPack_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8824. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8825. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8826. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8827. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8828. IPPAPI(IppStatus, ippgDFTInv_PackToR_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8829. IPPAPI(IppStatus, ippgDFTInv_PackToR_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8830. IPPAPI(IppStatus, ippgDFTInv_PermToR_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8831. IPPAPI(IppStatus, ippgDFTInv_PermToR_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8832. IPPAPI(IppStatus, ippgDFTInv_CCSToR_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8833. IPPAPI(IppStatus, ippgDFTInv_CCSToR_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8834. IPPAPI(IppStatus, ippgDFTFwd_RToPack_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8835. IPPAPI(IppStatus, ippgDFTFwd_RToPack_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8836. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8837. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8838. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8839. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8840. IPPAPI(IppStatus, ippgDFTInv_PackToR_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8841. IPPAPI(IppStatus, ippgDFTInv_PackToR_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8842. IPPAPI(IppStatus, ippgDFTInv_PermToR_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8843. IPPAPI(IppStatus, ippgDFTInv_PermToR_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8844. IPPAPI(IppStatus, ippgDFTInv_CCSToR_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8845. IPPAPI(IppStatus, ippgDFTInv_CCSToR_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8846. IPPAPI(IppStatus, ippgDFTFwd_RToPack_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8847. IPPAPI(IppStatus, ippgDFTFwd_RToPack_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8848. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8849. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8850. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8851. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8852. IPPAPI(IppStatus, ippgDFTInv_PackToR_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8853. IPPAPI(IppStatus, ippgDFTInv_PackToR_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8854. IPPAPI(IppStatus, ippgDFTInv_PermToR_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8855. IPPAPI(IppStatus, ippgDFTInv_PermToR_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8856. IPPAPI(IppStatus, ippgDFTInv_CCSToR_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8857. IPPAPI(IppStatus, ippgDFTInv_CCSToR_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8858. IPPAPI(IppStatus, ippgDFTFwd_RToPack_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8859. IPPAPI(IppStatus, ippgDFTFwd_RToPack_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8860. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8861. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8862. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8863. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8864. IPPAPI(IppStatus, ippgDFTInv_PackToR_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8865. IPPAPI(IppStatus, ippgDFTInv_PackToR_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8866. IPPAPI(IppStatus, ippgDFTInv_PermToR_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8867. IPPAPI(IppStatus, ippgDFTInv_PermToR_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8868. IPPAPI(IppStatus, ippgDFTInv_CCSToR_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8869. IPPAPI(IppStatus, ippgDFTInv_CCSToR_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8870. IPPAPI(IppStatus, ippgDFTFwd_RToPack_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8871. IPPAPI(IppStatus, ippgDFTFwd_RToPack_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8872. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8873. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8874. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8875. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8876. IPPAPI(IppStatus, ippgDFTInv_PackToR_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8877. IPPAPI(IppStatus, ippgDFTInv_PackToR_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8878. IPPAPI(IppStatus, ippgDFTInv_PermToR_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8879. IPPAPI(IppStatus, ippgDFTInv_PermToR_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8880. IPPAPI(IppStatus, ippgDFTInv_CCSToR_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8881. IPPAPI(IppStatus, ippgDFTInv_CCSToR_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8882. IPPAPI(IppStatus, ippgDFTFwd_RToPack_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8883. IPPAPI(IppStatus, ippgDFTFwd_RToPack_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8884. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8885. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8886. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8887. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8888. IPPAPI(IppStatus, ippgDFTInv_PackToR_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8889. IPPAPI(IppStatus, ippgDFTInv_PackToR_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8890. IPPAPI(IppStatus, ippgDFTInv_PermToR_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8891. IPPAPI(IppStatus, ippgDFTInv_PermToR_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8892. IPPAPI(IppStatus, ippgDFTInv_CCSToR_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8893. IPPAPI(IppStatus, ippgDFTInv_CCSToR_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8894. IPPAPI(IppStatus, ippgDFTFwd_RToPack_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8895. IPPAPI(IppStatus, ippgDFTFwd_RToPack_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8896. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8897. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8898. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8899. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8900. IPPAPI(IppStatus, ippgDFTInv_PackToR_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8901. IPPAPI(IppStatus, ippgDFTInv_PackToR_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8902. IPPAPI(IppStatus, ippgDFTInv_PermToR_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8903. IPPAPI(IppStatus, ippgDFTInv_PermToR_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8904. IPPAPI(IppStatus, ippgDFTInv_CCSToR_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8905. IPPAPI(IppStatus, ippgDFTInv_CCSToR_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8906. IPPAPI(IppStatus, ippgDFTFwd_RToPack_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8907. IPPAPI(IppStatus, ippgDFTFwd_RToPack_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8908. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8909. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8910. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8911. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8912. IPPAPI(IppStatus, ippgDFTInv_PackToR_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8913. IPPAPI(IppStatus, ippgDFTInv_PackToR_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8914. IPPAPI(IppStatus, ippgDFTInv_PermToR_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8915. IPPAPI(IppStatus, ippgDFTInv_PermToR_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8916. IPPAPI(IppStatus, ippgDFTInv_CCSToR_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8917. IPPAPI(IppStatus, ippgDFTInv_CCSToR_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8918. IPPAPI(IppStatus, ippgDFTFwd_RToPack_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8919. IPPAPI(IppStatus, ippgDFTFwd_RToPack_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8920. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8921. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8922. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8923. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8924. IPPAPI(IppStatus, ippgDFTInv_PackToR_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8925. IPPAPI(IppStatus, ippgDFTInv_PackToR_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8926. IPPAPI(IppStatus, ippgDFTInv_PermToR_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8927. IPPAPI(IppStatus, ippgDFTInv_PermToR_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8928. IPPAPI(IppStatus, ippgDFTInv_CCSToR_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8929. IPPAPI(IppStatus, ippgDFTInv_CCSToR_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8930. IPPAPI(IppStatus, ippgDFTFwd_RToPack_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8931. IPPAPI(IppStatus, ippgDFTFwd_RToPack_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8932. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8933. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8934. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8935. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8936. IPPAPI(IppStatus, ippgDFTInv_PackToR_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8937. IPPAPI(IppStatus, ippgDFTInv_PackToR_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8938. IPPAPI(IppStatus, ippgDFTInv_PermToR_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8939. IPPAPI(IppStatus, ippgDFTInv_PermToR_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8940. IPPAPI(IppStatus, ippgDFTInv_CCSToR_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8941. IPPAPI(IppStatus, ippgDFTInv_CCSToR_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8942. IPPAPI(IppStatus, ippgDFTFwd_RToPack_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8943. IPPAPI(IppStatus, ippgDFTFwd_RToPack_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8944. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8945. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8946. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8947. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8948. IPPAPI(IppStatus, ippgDFTInv_PackToR_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8949. IPPAPI(IppStatus, ippgDFTInv_PackToR_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8950. IPPAPI(IppStatus, ippgDFTInv_PermToR_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8951. IPPAPI(IppStatus, ippgDFTInv_PermToR_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8952. IPPAPI(IppStatus, ippgDFTInv_CCSToR_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8953. IPPAPI(IppStatus, ippgDFTInv_CCSToR_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8954. IPPAPI(IppStatus, ippgDFTFwd_RToPack_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8955. IPPAPI(IppStatus, ippgDFTFwd_RToPack_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8956. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8957. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8958. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8959. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8960. IPPAPI(IppStatus, ippgDFTInv_PackToR_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8961. IPPAPI(IppStatus, ippgDFTInv_PackToR_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8962. IPPAPI(IppStatus, ippgDFTInv_PermToR_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8963. IPPAPI(IppStatus, ippgDFTInv_PermToR_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8964. IPPAPI(IppStatus, ippgDFTInv_CCSToR_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8965. IPPAPI(IppStatus, ippgDFTInv_CCSToR_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8966. IPPAPI(IppStatus, ippgDFTFwd_RToPack_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8967. IPPAPI(IppStatus, ippgDFTFwd_RToPack_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8968. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8969. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8970. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8971. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8972. IPPAPI(IppStatus, ippgDFTInv_PackToR_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8973. IPPAPI(IppStatus, ippgDFTInv_PackToR_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8974. IPPAPI(IppStatus, ippgDFTInv_PermToR_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8975. IPPAPI(IppStatus, ippgDFTInv_PermToR_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8976. IPPAPI(IppStatus, ippgDFTInv_CCSToR_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8977. IPPAPI(IppStatus, ippgDFTInv_CCSToR_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8978. IPPAPI(IppStatus, ippgDFTFwd_RToPack_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8979. IPPAPI(IppStatus, ippgDFTFwd_RToPack_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8980. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8981. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8982. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8983. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8984. IPPAPI(IppStatus, ippgDFTInv_PackToR_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8985. IPPAPI(IppStatus, ippgDFTInv_PackToR_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8986. IPPAPI(IppStatus, ippgDFTInv_PermToR_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8987. IPPAPI(IppStatus, ippgDFTInv_PermToR_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8988. IPPAPI(IppStatus, ippgDFTInv_CCSToR_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8989. IPPAPI(IppStatus, ippgDFTInv_CCSToR_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8990. IPPAPI(IppStatus, ippgDFTFwd_RToPack_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8991. IPPAPI(IppStatus, ippgDFTFwd_RToPack_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8992. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8993. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8994. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8995. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8996. IPPAPI(IppStatus, ippgDFTInv_PackToR_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8997. IPPAPI(IppStatus, ippgDFTInv_PackToR_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  8998. IPPAPI(IppStatus, ippgDFTInv_PermToR_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  8999. IPPAPI(IppStatus, ippgDFTInv_PermToR_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9000. IPPAPI(IppStatus, ippgDFTInv_CCSToR_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9001. IPPAPI(IppStatus, ippgDFTInv_CCSToR_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9002. IPPAPI(IppStatus, ippgDFTFwd_RToPack_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9003. IPPAPI(IppStatus, ippgDFTFwd_RToPack_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9004. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9005. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9006. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9007. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9008. IPPAPI(IppStatus, ippgDFTInv_PackToR_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9009. IPPAPI(IppStatus, ippgDFTInv_PackToR_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9010. IPPAPI(IppStatus, ippgDFTInv_PermToR_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9011. IPPAPI(IppStatus, ippgDFTInv_PermToR_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9012. IPPAPI(IppStatus, ippgDFTInv_CCSToR_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9013. IPPAPI(IppStatus, ippgDFTInv_CCSToR_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9014. IPPAPI(IppStatus, ippgDFTFwd_RToPack_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9015. IPPAPI(IppStatus, ippgDFTFwd_RToPack_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9016. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9017. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9018. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9019. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9020. IPPAPI(IppStatus, ippgDFTInv_PackToR_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9021. IPPAPI(IppStatus, ippgDFTInv_PackToR_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9022. IPPAPI(IppStatus, ippgDFTInv_PermToR_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9023. IPPAPI(IppStatus, ippgDFTInv_PermToR_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9024. IPPAPI(IppStatus, ippgDFTInv_CCSToR_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9025. IPPAPI(IppStatus, ippgDFTInv_CCSToR_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9026. IPPAPI(IppStatus, ippgDFTFwd_RToPack_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9027. IPPAPI(IppStatus, ippgDFTFwd_RToPack_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9028. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9029. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9030. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9031. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9032. IPPAPI(IppStatus, ippgDFTInv_PackToR_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9033. IPPAPI(IppStatus, ippgDFTInv_PackToR_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9034. IPPAPI(IppStatus, ippgDFTInv_PermToR_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9035. IPPAPI(IppStatus, ippgDFTInv_PermToR_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9036. IPPAPI(IppStatus, ippgDFTInv_CCSToR_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9037. IPPAPI(IppStatus, ippgDFTInv_CCSToR_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9038. IPPAPI(IppStatus, ippgDFTFwd_RToPack_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9039. IPPAPI(IppStatus, ippgDFTFwd_RToPack_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9040. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9041. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9042. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9043. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9044. IPPAPI(IppStatus, ippgDFTInv_PackToR_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9045. IPPAPI(IppStatus, ippgDFTInv_PackToR_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9046. IPPAPI(IppStatus, ippgDFTInv_PermToR_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9047. IPPAPI(IppStatus, ippgDFTInv_PermToR_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9048. IPPAPI(IppStatus, ippgDFTInv_CCSToR_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9049. IPPAPI(IppStatus, ippgDFTInv_CCSToR_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9050. IPPAPI(IppStatus, ippgDFTFwd_RToPack_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9051. IPPAPI(IppStatus, ippgDFTFwd_RToPack_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9052. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9053. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9054. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9055. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9056. IPPAPI(IppStatus, ippgDFTInv_PackToR_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9057. IPPAPI(IppStatus, ippgDFTInv_PackToR_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9058. IPPAPI(IppStatus, ippgDFTInv_PermToR_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9059. IPPAPI(IppStatus, ippgDFTInv_PermToR_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9060. IPPAPI(IppStatus, ippgDFTInv_CCSToR_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9061. IPPAPI(IppStatus, ippgDFTInv_CCSToR_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9062. IPPAPI(IppStatus, ippgDFTFwd_RToPack_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9063. IPPAPI(IppStatus, ippgDFTFwd_RToPack_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9064. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9065. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9066. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9067. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9068. IPPAPI(IppStatus, ippgDFTInv_PackToR_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9069. IPPAPI(IppStatus, ippgDFTInv_PackToR_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9070. IPPAPI(IppStatus, ippgDFTInv_PermToR_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9071. IPPAPI(IppStatus, ippgDFTInv_PermToR_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9072. IPPAPI(IppStatus, ippgDFTInv_CCSToR_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9073. IPPAPI(IppStatus, ippgDFTInv_CCSToR_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9074. IPPAPI(IppStatus, ippgDFTFwd_RToPack_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9075. IPPAPI(IppStatus, ippgDFTFwd_RToPack_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9076. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9077. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9078. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9079. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9080. IPPAPI(IppStatus, ippgDFTInv_PackToR_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9081. IPPAPI(IppStatus, ippgDFTInv_PackToR_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9082. IPPAPI(IppStatus, ippgDFTInv_PermToR_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9083. IPPAPI(IppStatus, ippgDFTInv_PermToR_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9084. IPPAPI(IppStatus, ippgDFTInv_CCSToR_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9085. IPPAPI(IppStatus, ippgDFTInv_CCSToR_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9086. IPPAPI(IppStatus, ippgDFTFwd_RToPack_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9087. IPPAPI(IppStatus, ippgDFTFwd_RToPack_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9088. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9089. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9090. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9091. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9092. IPPAPI(IppStatus, ippgDFTInv_PackToR_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9093. IPPAPI(IppStatus, ippgDFTInv_PackToR_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9094. IPPAPI(IppStatus, ippgDFTInv_PermToR_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9095. IPPAPI(IppStatus, ippgDFTInv_PermToR_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9096. IPPAPI(IppStatus, ippgDFTInv_CCSToR_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9097. IPPAPI(IppStatus, ippgDFTInv_CCSToR_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9098. IPPAPI(IppStatus, ippgDFTFwd_RToPack_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9099. IPPAPI(IppStatus, ippgDFTFwd_RToPack_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9100. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9101. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9102. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9103. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9104. IPPAPI(IppStatus, ippgDFTInv_PackToR_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9105. IPPAPI(IppStatus, ippgDFTInv_PackToR_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9106. IPPAPI(IppStatus, ippgDFTInv_PermToR_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9107. IPPAPI(IppStatus, ippgDFTInv_PermToR_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9108. IPPAPI(IppStatus, ippgDFTInv_CCSToR_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9109. IPPAPI(IppStatus, ippgDFTInv_CCSToR_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9110. IPPAPI(IppStatus, ippgDFTFwd_RToPack_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9111. IPPAPI(IppStatus, ippgDFTFwd_RToPack_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9112. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9113. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9114. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9115. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9116. IPPAPI(IppStatus, ippgDFTInv_PackToR_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9117. IPPAPI(IppStatus, ippgDFTInv_PackToR_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9118. IPPAPI(IppStatus, ippgDFTInv_PermToR_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9119. IPPAPI(IppStatus, ippgDFTInv_PermToR_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9120. IPPAPI(IppStatus, ippgDFTInv_CCSToR_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9121. IPPAPI(IppStatus, ippgDFTInv_CCSToR_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9122. IPPAPI(IppStatus, ippgDFTFwd_RToPack_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9123. IPPAPI(IppStatus, ippgDFTFwd_RToPack_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9124. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9125. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9126. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9127. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9128. IPPAPI(IppStatus, ippgDFTInv_PackToR_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9129. IPPAPI(IppStatus, ippgDFTInv_PackToR_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9130. IPPAPI(IppStatus, ippgDFTInv_PermToR_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9131. IPPAPI(IppStatus, ippgDFTInv_PermToR_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9132. IPPAPI(IppStatus, ippgDFTInv_CCSToR_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9133. IPPAPI(IppStatus, ippgDFTInv_CCSToR_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9134. IPPAPI(IppStatus, ippgDFTFwd_RToPack_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9135. IPPAPI(IppStatus, ippgDFTFwd_RToPack_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9136. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9137. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9138. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9139. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9140. IPPAPI(IppStatus, ippgDFTInv_PackToR_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9141. IPPAPI(IppStatus, ippgDFTInv_PackToR_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9142. IPPAPI(IppStatus, ippgDFTInv_PermToR_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9143. IPPAPI(IppStatus, ippgDFTInv_PermToR_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9144. IPPAPI(IppStatus, ippgDFTInv_CCSToR_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9145. IPPAPI(IppStatus, ippgDFTInv_CCSToR_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9146. IPPAPI(IppStatus, ippgDFTFwd_RToPack_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9147. IPPAPI(IppStatus, ippgDFTFwd_RToPack_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9148. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9149. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9150. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9151. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9152. IPPAPI(IppStatus, ippgDFTInv_PackToR_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9153. IPPAPI(IppStatus, ippgDFTInv_PackToR_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9154. IPPAPI(IppStatus, ippgDFTInv_PermToR_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9155. IPPAPI(IppStatus, ippgDFTInv_PermToR_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9156. IPPAPI(IppStatus, ippgDFTInv_CCSToR_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9157. IPPAPI(IppStatus, ippgDFTInv_CCSToR_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9158. IPPAPI(IppStatus, ippgDFTFwd_RToPack_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9159. IPPAPI(IppStatus, ippgDFTFwd_RToPack_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9160. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9161. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9162. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9163. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9164. IPPAPI(IppStatus, ippgDFTInv_PackToR_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9165. IPPAPI(IppStatus, ippgDFTInv_PackToR_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9166. IPPAPI(IppStatus, ippgDFTInv_PermToR_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9167. IPPAPI(IppStatus, ippgDFTInv_PermToR_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9168. IPPAPI(IppStatus, ippgDFTInv_CCSToR_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9169. IPPAPI(IppStatus, ippgDFTInv_CCSToR_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9170. IPPAPI(IppStatus, ippgDFTFwd_RToPack_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9171. IPPAPI(IppStatus, ippgDFTFwd_RToPack_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9172. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9173. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9174. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9175. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9176. IPPAPI(IppStatus, ippgDFTInv_PackToR_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9177. IPPAPI(IppStatus, ippgDFTInv_PackToR_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9178. IPPAPI(IppStatus, ippgDFTInv_PermToR_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9179. IPPAPI(IppStatus, ippgDFTInv_PermToR_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9180. IPPAPI(IppStatus, ippgDFTInv_CCSToR_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9181. IPPAPI(IppStatus, ippgDFTInv_CCSToR_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9182. IPPAPI(IppStatus, ippgDFTFwd_RToPack_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9183. IPPAPI(IppStatus, ippgDFTFwd_RToPack_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9184. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9185. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9186. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9187. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9188. IPPAPI(IppStatus, ippgDFTInv_PackToR_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9189. IPPAPI(IppStatus, ippgDFTInv_PackToR_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9190. IPPAPI(IppStatus, ippgDFTInv_PermToR_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9191. IPPAPI(IppStatus, ippgDFTInv_PermToR_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9192. IPPAPI(IppStatus, ippgDFTInv_CCSToR_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9193. IPPAPI(IppStatus, ippgDFTInv_CCSToR_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9194. IPPAPI(IppStatus, ippgDFTFwd_RToPack_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9195. IPPAPI(IppStatus, ippgDFTFwd_RToPack_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9196. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9197. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9198. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9199. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9200. IPPAPI(IppStatus, ippgDFTInv_PackToR_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9201. IPPAPI(IppStatus, ippgDFTInv_PackToR_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9202. IPPAPI(IppStatus, ippgDFTInv_PermToR_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9203. IPPAPI(IppStatus, ippgDFTInv_PermToR_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9204. IPPAPI(IppStatus, ippgDFTInv_CCSToR_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9205. IPPAPI(IppStatus, ippgDFTInv_CCSToR_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9206. IPPAPI(IppStatus, ippgDFTFwd_RToPack_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9207. IPPAPI(IppStatus, ippgDFTFwd_RToPack_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9208. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9209. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9210. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9211. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9212. IPPAPI(IppStatus, ippgDFTInv_PackToR_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9213. IPPAPI(IppStatus, ippgDFTInv_PackToR_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9214. IPPAPI(IppStatus, ippgDFTInv_PermToR_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9215. IPPAPI(IppStatus, ippgDFTInv_PermToR_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9216. IPPAPI(IppStatus, ippgDFTInv_CCSToR_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9217. IPPAPI(IppStatus, ippgDFTInv_CCSToR_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9218. IPPAPI(IppStatus, ippgDFTFwd_RToPack_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9219. IPPAPI(IppStatus, ippgDFTFwd_RToPack_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9220. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9221. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9222. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9223. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9224. IPPAPI(IppStatus, ippgDFTInv_PackToR_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9225. IPPAPI(IppStatus, ippgDFTInv_PackToR_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9226. IPPAPI(IppStatus, ippgDFTInv_PermToR_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9227. IPPAPI(IppStatus, ippgDFTInv_PermToR_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9228. IPPAPI(IppStatus, ippgDFTInv_CCSToR_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9229. IPPAPI(IppStatus, ippgDFTInv_CCSToR_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9230. IPPAPI(IppStatus, ippgDFTFwd_RToPack_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9231. IPPAPI(IppStatus, ippgDFTFwd_RToPack_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9232. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9233. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9234. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9235. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9236. IPPAPI(IppStatus, ippgDFTInv_PackToR_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9237. IPPAPI(IppStatus, ippgDFTInv_PackToR_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9238. IPPAPI(IppStatus, ippgDFTInv_PermToR_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9239. IPPAPI(IppStatus, ippgDFTInv_PermToR_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9240. IPPAPI(IppStatus, ippgDFTInv_CCSToR_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9241. IPPAPI(IppStatus, ippgDFTInv_CCSToR_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9242. IPPAPI(IppStatus, ippgDFTFwd_RToPack_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9243. IPPAPI(IppStatus, ippgDFTFwd_RToPack_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9244. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9245. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9246. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9247. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9248. IPPAPI(IppStatus, ippgDFTInv_PackToR_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9249. IPPAPI(IppStatus, ippgDFTInv_PackToR_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9250. IPPAPI(IppStatus, ippgDFTInv_PermToR_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9251. IPPAPI(IppStatus, ippgDFTInv_PermToR_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9252. IPPAPI(IppStatus, ippgDFTInv_CCSToR_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9253. IPPAPI(IppStatus, ippgDFTInv_CCSToR_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9254. IPPAPI(IppStatus, ippgDFTFwd_RToPack_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9255. IPPAPI(IppStatus, ippgDFTFwd_RToPack_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9256. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9257. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9258. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9259. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9260. IPPAPI(IppStatus, ippgDFTInv_PackToR_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9261. IPPAPI(IppStatus, ippgDFTInv_PackToR_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9262. IPPAPI(IppStatus, ippgDFTInv_PermToR_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9263. IPPAPI(IppStatus, ippgDFTInv_PermToR_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9264. IPPAPI(IppStatus, ippgDFTInv_CCSToR_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9265. IPPAPI(IppStatus, ippgDFTInv_CCSToR_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9266. IPPAPI(IppStatus, ippgDFTFwd_RToPack_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9267. IPPAPI(IppStatus, ippgDFTFwd_RToPack_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9268. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9269. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9270. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9271. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9272. IPPAPI(IppStatus, ippgDFTInv_PackToR_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9273. IPPAPI(IppStatus, ippgDFTInv_PackToR_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9274. IPPAPI(IppStatus, ippgDFTInv_PermToR_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9275. IPPAPI(IppStatus, ippgDFTInv_PermToR_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9276. IPPAPI(IppStatus, ippgDFTInv_CCSToR_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9277. IPPAPI(IppStatus, ippgDFTInv_CCSToR_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9278. IPPAPI(IppStatus, ippgDFTFwd_RToPack_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9279. IPPAPI(IppStatus, ippgDFTFwd_RToPack_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9280. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9281. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9282. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9283. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9284. IPPAPI(IppStatus, ippgDFTInv_PackToR_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9285. IPPAPI(IppStatus, ippgDFTInv_PackToR_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9286. IPPAPI(IppStatus, ippgDFTInv_PermToR_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9287. IPPAPI(IppStatus, ippgDFTInv_PermToR_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9288. IPPAPI(IppStatus, ippgDFTInv_CCSToR_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9289. IPPAPI(IppStatus, ippgDFTInv_CCSToR_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9290. IPPAPI(IppStatus, ippgDFTFwd_RToPack_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9291. IPPAPI(IppStatus, ippgDFTFwd_RToPack_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9292. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9293. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9294. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9295. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9296. IPPAPI(IppStatus, ippgDFTInv_PackToR_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9297. IPPAPI(IppStatus, ippgDFTInv_PackToR_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9298. IPPAPI(IppStatus, ippgDFTInv_PermToR_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9299. IPPAPI(IppStatus, ippgDFTInv_PermToR_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9300. IPPAPI(IppStatus, ippgDFTInv_CCSToR_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9301. IPPAPI(IppStatus, ippgDFTInv_CCSToR_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9302. IPPAPI(IppStatus, ippgDFTFwd_RToPack_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9303. IPPAPI(IppStatus, ippgDFTFwd_RToPack_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9304. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9305. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9306. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9307. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9308. IPPAPI(IppStatus, ippgDFTInv_PackToR_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9309. IPPAPI(IppStatus, ippgDFTInv_PackToR_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9310. IPPAPI(IppStatus, ippgDFTInv_PermToR_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9311. IPPAPI(IppStatus, ippgDFTInv_PermToR_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9312. IPPAPI(IppStatus, ippgDFTInv_CCSToR_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9313. IPPAPI(IppStatus, ippgDFTInv_CCSToR_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9314. IPPAPI(IppStatus, ippgDFTFwd_RToPack_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9315. IPPAPI(IppStatus, ippgDFTFwd_RToPack_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9316. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9317. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9318. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9319. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9320. IPPAPI(IppStatus, ippgDFTInv_PackToR_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9321. IPPAPI(IppStatus, ippgDFTInv_PackToR_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9322. IPPAPI(IppStatus, ippgDFTInv_PermToR_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9323. IPPAPI(IppStatus, ippgDFTInv_PermToR_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9324. IPPAPI(IppStatus, ippgDFTInv_CCSToR_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9325. IPPAPI(IppStatus, ippgDFTInv_CCSToR_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9326. IPPAPI(IppStatus, ippgDFTFwd_RToPack_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9327. IPPAPI(IppStatus, ippgDFTFwd_RToPack_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9328. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9329. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9330. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9331. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9332. IPPAPI(IppStatus, ippgDFTInv_PackToR_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9333. IPPAPI(IppStatus, ippgDFTInv_PackToR_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9334. IPPAPI(IppStatus, ippgDFTInv_PermToR_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9335. IPPAPI(IppStatus, ippgDFTInv_PermToR_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9336. IPPAPI(IppStatus, ippgDFTInv_CCSToR_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9337. IPPAPI(IppStatus, ippgDFTInv_CCSToR_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9338. IPPAPI(IppStatus, ippgDFTFwd_RToPack_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9339. IPPAPI(IppStatus, ippgDFTFwd_RToPack_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9340. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9341. IPPAPI(IppStatus, ippgDFTFwd_RToPerm_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9342. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9343. IPPAPI(IppStatus, ippgDFTFwd_RToCCS_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9344. IPPAPI(IppStatus, ippgDFTInv_PackToR_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9345. IPPAPI(IppStatus, ippgDFTInv_PackToR_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9346. IPPAPI(IppStatus, ippgDFTInv_PermToR_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9347. IPPAPI(IppStatus, ippgDFTInv_PermToR_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9348. IPPAPI(IppStatus, ippgDFTInv_CCSToR_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9349. IPPAPI(IppStatus, ippgDFTInv_CCSToR_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9350. /* /////////////////////////////////////////////////////////////////////////////
  9351. // Discrete Hartley Transforms of fixed size
  9352. ///////////////////////////////////////////////////////////////////////////// */
  9353. /* /////////////////////////////////////////////////////////////////////////////
  9354. // Name: ippgHartley
  9355. // Purpose: compute Hartley transform of a real signal
  9356. // Note: Hartley transform is involutary (self-inverse)
  9357. // Normalization choices: IPP_NODIV_BY_ANY, IPP_DIV_BY_SQRTN,
  9358. // IPP_DIV_FWD_BY_N is same as IPP_DIV_INV_BY_N
  9359. // Arguments:
  9360. // pSrc - pointer to source complex signal
  9361. // pDst - pointer to destination complex signal
  9362. // length - number of samples in the input signal pSrc
  9363. // valid values for length are [ 2 .. 64 ]
  9364. // flag - normalization flag
  9365. //
  9366. // Return:
  9367. // ippStsNoErr no errors
  9368. // ippStsNullPtrErr pSrc == NULL or pDst == NULL or
  9369. // ippStsFftFlagErr bad the normalization flag value
  9370. */
  9371. IPPAPI(IppStatus, ippgHartley_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int length, int flag) )
  9372. IPPAPI(IppStatus, ippgHartley_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int length, int flag) )
  9373. IPPAPI(IppStatus, ippgHartley_2_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9374. IPPAPI(IppStatus, ippgHartley_2_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9375. IPPAPI(IppStatus, ippgHartley_3_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9376. IPPAPI(IppStatus, ippgHartley_3_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9377. IPPAPI(IppStatus, ippgHartley_4_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9378. IPPAPI(IppStatus, ippgHartley_4_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9379. IPPAPI(IppStatus, ippgHartley_5_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9380. IPPAPI(IppStatus, ippgHartley_5_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9381. IPPAPI(IppStatus, ippgHartley_6_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9382. IPPAPI(IppStatus, ippgHartley_6_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9383. IPPAPI(IppStatus, ippgHartley_7_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9384. IPPAPI(IppStatus, ippgHartley_7_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9385. IPPAPI(IppStatus, ippgHartley_8_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9386. IPPAPI(IppStatus, ippgHartley_8_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9387. IPPAPI(IppStatus, ippgHartley_9_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9388. IPPAPI(IppStatus, ippgHartley_9_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9389. IPPAPI(IppStatus, ippgHartley_10_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9390. IPPAPI(IppStatus, ippgHartley_10_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9391. IPPAPI(IppStatus, ippgHartley_11_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9392. IPPAPI(IppStatus, ippgHartley_11_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9393. IPPAPI(IppStatus, ippgHartley_12_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9394. IPPAPI(IppStatus, ippgHartley_12_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9395. IPPAPI(IppStatus, ippgHartley_13_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9396. IPPAPI(IppStatus, ippgHartley_13_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9397. IPPAPI(IppStatus, ippgHartley_14_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9398. IPPAPI(IppStatus, ippgHartley_14_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9399. IPPAPI(IppStatus, ippgHartley_15_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9400. IPPAPI(IppStatus, ippgHartley_15_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9401. IPPAPI(IppStatus, ippgHartley_16_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9402. IPPAPI(IppStatus, ippgHartley_16_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9403. IPPAPI(IppStatus, ippgHartley_17_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9404. IPPAPI(IppStatus, ippgHartley_17_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9405. IPPAPI(IppStatus, ippgHartley_18_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9406. IPPAPI(IppStatus, ippgHartley_18_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9407. IPPAPI(IppStatus, ippgHartley_19_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9408. IPPAPI(IppStatus, ippgHartley_19_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9409. IPPAPI(IppStatus, ippgHartley_20_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9410. IPPAPI(IppStatus, ippgHartley_20_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9411. IPPAPI(IppStatus, ippgHartley_21_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9412. IPPAPI(IppStatus, ippgHartley_21_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9413. IPPAPI(IppStatus, ippgHartley_22_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9414. IPPAPI(IppStatus, ippgHartley_22_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9415. IPPAPI(IppStatus, ippgHartley_23_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9416. IPPAPI(IppStatus, ippgHartley_23_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9417. IPPAPI(IppStatus, ippgHartley_24_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9418. IPPAPI(IppStatus, ippgHartley_24_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9419. IPPAPI(IppStatus, ippgHartley_25_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9420. IPPAPI(IppStatus, ippgHartley_25_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9421. IPPAPI(IppStatus, ippgHartley_26_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9422. IPPAPI(IppStatus, ippgHartley_26_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9423. IPPAPI(IppStatus, ippgHartley_27_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9424. IPPAPI(IppStatus, ippgHartley_27_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9425. IPPAPI(IppStatus, ippgHartley_28_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9426. IPPAPI(IppStatus, ippgHartley_28_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9427. IPPAPI(IppStatus, ippgHartley_29_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9428. IPPAPI(IppStatus, ippgHartley_29_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9429. IPPAPI(IppStatus, ippgHartley_30_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9430. IPPAPI(IppStatus, ippgHartley_30_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9431. IPPAPI(IppStatus, ippgHartley_31_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9432. IPPAPI(IppStatus, ippgHartley_31_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9433. IPPAPI(IppStatus, ippgHartley_32_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9434. IPPAPI(IppStatus, ippgHartley_32_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9435. IPPAPI(IppStatus, ippgHartley_33_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9436. IPPAPI(IppStatus, ippgHartley_33_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9437. IPPAPI(IppStatus, ippgHartley_34_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9438. IPPAPI(IppStatus, ippgHartley_34_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9439. IPPAPI(IppStatus, ippgHartley_35_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9440. IPPAPI(IppStatus, ippgHartley_35_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9441. IPPAPI(IppStatus, ippgHartley_36_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9442. IPPAPI(IppStatus, ippgHartley_36_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9443. IPPAPI(IppStatus, ippgHartley_37_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9444. IPPAPI(IppStatus, ippgHartley_37_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9445. IPPAPI(IppStatus, ippgHartley_38_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9446. IPPAPI(IppStatus, ippgHartley_38_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9447. IPPAPI(IppStatus, ippgHartley_39_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9448. IPPAPI(IppStatus, ippgHartley_39_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9449. IPPAPI(IppStatus, ippgHartley_40_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9450. IPPAPI(IppStatus, ippgHartley_40_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9451. IPPAPI(IppStatus, ippgHartley_41_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9452. IPPAPI(IppStatus, ippgHartley_41_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9453. IPPAPI(IppStatus, ippgHartley_42_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9454. IPPAPI(IppStatus, ippgHartley_42_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9455. IPPAPI(IppStatus, ippgHartley_43_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9456. IPPAPI(IppStatus, ippgHartley_43_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9457. IPPAPI(IppStatus, ippgHartley_44_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9458. IPPAPI(IppStatus, ippgHartley_44_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9459. IPPAPI(IppStatus, ippgHartley_45_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9460. IPPAPI(IppStatus, ippgHartley_45_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9461. IPPAPI(IppStatus, ippgHartley_46_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9462. IPPAPI(IppStatus, ippgHartley_46_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9463. IPPAPI(IppStatus, ippgHartley_47_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9464. IPPAPI(IppStatus, ippgHartley_47_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9465. IPPAPI(IppStatus, ippgHartley_48_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9466. IPPAPI(IppStatus, ippgHartley_48_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9467. IPPAPI(IppStatus, ippgHartley_49_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9468. IPPAPI(IppStatus, ippgHartley_49_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9469. IPPAPI(IppStatus, ippgHartley_50_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9470. IPPAPI(IppStatus, ippgHartley_50_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9471. IPPAPI(IppStatus, ippgHartley_51_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9472. IPPAPI(IppStatus, ippgHartley_51_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9473. IPPAPI(IppStatus, ippgHartley_52_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9474. IPPAPI(IppStatus, ippgHartley_52_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9475. IPPAPI(IppStatus, ippgHartley_53_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9476. IPPAPI(IppStatus, ippgHartley_53_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9477. IPPAPI(IppStatus, ippgHartley_54_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9478. IPPAPI(IppStatus, ippgHartley_54_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9479. IPPAPI(IppStatus, ippgHartley_55_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9480. IPPAPI(IppStatus, ippgHartley_55_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9481. IPPAPI(IppStatus, ippgHartley_56_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9482. IPPAPI(IppStatus, ippgHartley_56_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9483. IPPAPI(IppStatus, ippgHartley_57_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9484. IPPAPI(IppStatus, ippgHartley_57_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9485. IPPAPI(IppStatus, ippgHartley_58_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9486. IPPAPI(IppStatus, ippgHartley_58_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9487. IPPAPI(IppStatus, ippgHartley_59_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9488. IPPAPI(IppStatus, ippgHartley_59_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9489. IPPAPI(IppStatus, ippgHartley_60_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9490. IPPAPI(IppStatus, ippgHartley_60_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9491. IPPAPI(IppStatus, ippgHartley_61_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9492. IPPAPI(IppStatus, ippgHartley_61_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9493. IPPAPI(IppStatus, ippgHartley_62_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9494. IPPAPI(IppStatus, ippgHartley_62_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9495. IPPAPI(IppStatus, ippgHartley_63_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9496. IPPAPI(IppStatus, ippgHartley_63_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9497. IPPAPI(IppStatus, ippgHartley_64_32f, (const Ipp32f *pSrc, Ipp32f *pDst, int flag) )
  9498. IPPAPI(IppStatus, ippgHartley_64_64f, (const Ipp64f *pSrc, Ipp64f *pDst, int flag) )
  9499. #if defined (_IPP_STDCALL_CDECL)
  9500. #undef _IPP_STDCALL_CDECL
  9501. #define __stdcall __cdecl
  9502. #endif
  9503. #ifdef __cplusplus
  9504. }
  9505. #endif
  9506. #endif /* __IPPS_H__ */
  9507. /* ////////////////////////// End of file "ipps.h" ////////////////////////// */