From 4b2667ef53cee941bd5a6dee915ffaeef6e01d9a Mon Sep 17 00:00:00 2001 From: Kevin Cotugno Date: Fri, 24 Jun 2011 12:00:00 -0700 Subject: [PATCH] init --- Aspect_Ratio.cpp | 388 +++++++++++++++++++++++++++++++ Aspect_Ratio.h | 110 +++++++++ Aspect_RatioPiPL.r | 65 ++++++ Aspect_Ratio_Strings.cpp | 40 ++++ Aspect_Ratio_Strings.h | 23 ++ win/Aspect_Ratio.sln | 27 +++ win/Aspect_Ratio.vcxproj | 286 +++++++++++++++++++++++ win/Aspect_Ratio.vcxproj.filters | 270 +++++++++++++++++++++ win/Aspect_RatioPiPL.rc | 84 +++++++ 9 files changed, 1293 insertions(+) create mode 100644 Aspect_Ratio.cpp create mode 100644 Aspect_Ratio.h create mode 100644 Aspect_RatioPiPL.r create mode 100644 Aspect_Ratio_Strings.cpp create mode 100644 Aspect_Ratio_Strings.h create mode 100644 win/Aspect_Ratio.sln create mode 100644 win/Aspect_Ratio.vcxproj create mode 100644 win/Aspect_Ratio.vcxproj.filters create mode 100644 win/Aspect_RatioPiPL.rc diff --git a/Aspect_Ratio.cpp b/Aspect_Ratio.cpp new file mode 100644 index 0000000..2336866 --- /dev/null +++ b/Aspect_Ratio.cpp @@ -0,0 +1,388 @@ +/* + * Aspect_Ratio.cpp + * + * Copyright (c) 2011 Kevin Cotugno. + * + * Created on 6/24/11. + */ +#include "Aspect_Ratio.h" + + +static A_short +RoundPixelData(A_FpLong cur_val) +{ + int rnd_dec = 0; + + if((cur_val + 0.5) >= (A_short(cur_val) + 1)) + rnd_dec = (A_short)cur_val + 1; + else + rnd_dec = (A_short)cur_val; + + return rnd_dec; +} + +static void +CalculateRectSize( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output, + PF_Rect *rect, + int rect_type) +{ + A_FpLong LongCalcValue = ((A_FpLong)in_data->width / params[ASPECT_AMOUNT]->u.fs_d.value) * + ((A_FpLong)in_data->pixel_aspect_ratio.num / (A_FpLong)in_data->pixel_aspect_ratio.den); + + LongCalcValue = (A_FpLong)in_data->height - LongCalcValue; + LongCalcValue /= 2.0; + + A_short FinalValue = RoundPixelData(LongCalcValue / ((A_FpLong)in_data->downsample_x.den / (A_FpLong)in_data->downsample_x.num)); + + if(rect_type == ASPECT_RATIO_RECT_TYPE_TOP) { + rect->bottom = FinalValue; + rect->left = (A_short)output->width; + rect->right = 0; + rect->top = 0; + } else { + rect->bottom = (A_short)output->height; + rect->left = (A_short)output->width; + rect->right = 0; + rect->top = (A_short)output->height - FinalValue; + } +} + +static A_long +GetNewCompHeight( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output) +{ + return (A_long)RoundPixelData(((A_FpLong)in_data->width / params[ASPECT_AMOUNT]->u.fs_d.value) * + ((A_FpLong)in_data->pixel_aspect_ratio.num / (A_FpLong)in_data->pixel_aspect_ratio.den)); +} + +static PF_Err +About ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output ) +{ + AEGP_SuiteHandler suites(in_data->pica_basicP); + + suites.ANSICallbacksSuite1()->sprintf( out_data->return_msg, + "%s %d.%d\r\r%s\r\rMore info on aspect ratios:\r%s", + STR(StrID_Name), + MAJOR_VERSION, + MINOR_VERSION, + STR(StrID_Description), + STR(StrID_MoreInfo)); + return PF_Err_NONE; +} + +static PF_Err +NewSizeDialog ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output) +{ + AEGP_SuiteHandler suites(in_data->pica_basicP); + + A_short height = (A_short)GetNewCompHeight( in_data, + out_data, + params, + output); + + suites.ANSICallbacksSuite1()->sprintf( out_data->return_msg, + "%s %hd pixels.", + STR(StrID_NewHight_Description), + height); + + return PF_Err_NONE; +} + +static PF_Err +GlobalSetup ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output ) +{ + PF_Err err = PF_Err_NONE; + + out_data->my_version = PF_VERSION( MAJOR_VERSION, + MINOR_VERSION, + BUG_VERSION, + STAGE_VERSION, + BUILD_VERSION); + + out_data->out_flags = PF_OutFlag_I_DO_DIALOG| + PF_ParamFlag_SUPERVISE; + + return err; +} + + +static PF_Err +ParamsSetup ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output ) +{ + PF_Err err = PF_Err_NONE; + PF_ParamDef def; + PF_EffectUISuite1 *EffectUISuiteP = NULL; + + AEFX_CLR_STRUCT(def); + + def.flags = PF_ParamFlag_CANNOT_TIME_VARY | + PF_ParamFlag_SUPERVISE; + + PF_ADD_POPUP( STR(StrID_Aspcet_Preset_Name), + ASPECT_PRESET_NUM, + ASPECT_PRESET_DFLT, + STR(StrID_Aspect_Preset_Choices), + ASPECT_PRESET_ID); + + AEFX_CLR_STRUCT(def); + + def.flags = PF_ParamFlag_SUPERVISE; + + PF_ADD_FLOAT_SLIDER(STR(StrID_Aspect_Amount_Param_Name), + ASPECT_RATIO_AMOUT_MIN, + ASPECT_RATIO_AMOUT_MAX, + ASPECT_RATIO_AMOUT_MIN, + ASPECT_RATIO_AMOUT_MAX, + 0, + ASPECT_RATIO_AMOUT_DFLT, + ASPECT_RATIO_AMOUT_PREC, + 0, + 0, + ASPECT_AMOUNT_ID); + + AEFX_CLR_STRUCT(def); + + out_data->num_params = ASPECT_NUM_PARAMS; + + ERR(AEFX_AcquireSuite( in_data, + out_data, + kPFEffectUISuite, + kPFEffectUISuiteVersion1, + "Couldn't load suite.", + (void**)&EffectUISuiteP)); + + EffectUISuiteP->PF_SetOptionsButtonName( in_data->effect_ref, + STR(StrID_NewHight)); + + ERR(AEFX_ReleaseSuite( in_data, + out_data, + kPFEffectUISuite, + kPFEffectUISuiteVersion1, + "Couldn't release suite")); + + return err; +} + +static PF_Err +HandleChangedParam ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output, + PF_UserChangedParamExtra *extra) +{ + PF_Err err = PF_Err_NONE; + + // Change the preset popup to the correct value when the user manually selects a value for the aspect slider. + if (extra->param_index == ASPECT_AMOUNT) { + + // Let AE know to update the parameter. + params[ASPECT_PRESET]->uu.change_flags = PF_ChangeFlag_CHANGED_VALUE; + + if((params[ASPECT_AMOUNT]->u.fs_d.value >= 1.7755001) && (params[ASPECT_AMOUNT]->u.fs_d.value <= 1.785)) { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_178; + } + + else if((params[ASPECT_AMOUNT]->u.fs_d.value >= 1.84) && (params[ASPECT_AMOUNT]->u.fs_d.value <= 1.855)) { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_185; + } + + else if((params[ASPECT_AMOUNT]->u.fs_d.value >= 2.385) && (params[ASPECT_AMOUNT]->u.fs_d.value <= 2.395)) { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_239; + } + + else if((params[ASPECT_AMOUNT]->u.fs_d.value >= 2.395) && (params[ASPECT_AMOUNT]->u.fs_d.value <= 2.405)) { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_240; + } + + else if((params[ASPECT_AMOUNT]->u.fs_d.value >= 2.545) && (params[ASPECT_AMOUNT]->u.fs_d.value <= 2.555)) { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_255; + } + + else { + params[ASPECT_PRESET]->u.pd.value = ASPECT_PRESET_CUSTOM; + } + + + // Change the apect slider value to match the correct value of the preset the user selected. + } else if (extra->param_index == ASPECT_PRESET) { + + // Let AE know to update the parameter. + params[ASPECT_AMOUNT]->uu.change_flags = PF_ChangeFlag_CHANGED_VALUE; + + switch (params[ASPECT_PRESET]->u.pd.value) { + + case ASPECT_PRESET_178: + params[ASPECT_AMOUNT]->u.fs_d.value = 1.7777777; + break; + + case ASPECT_PRESET_185: + params[ASPECT_AMOUNT]->u.fs_d.value = 1.85; + break; + + case ASPECT_PRESET_239: + params[ASPECT_AMOUNT]->u.fs_d.value = 2.39; + break; + + case ASPECT_PRESET_240: + params[ASPECT_AMOUNT]->u.fs_d.value = 2.40; + break; + + case ASPECT_PRESET_255: + params[ASPECT_AMOUNT]->u.fs_d.value = 2.55; + break; + } + } + + return err; +} + +static PF_Err +Render ( + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output ) +{ + PF_Err err = PF_Err_NONE; + AEGP_SuiteHandler suites(in_data->pica_basicP); + PF_Pixel *PixelColorBlack = new PF_Pixel; + PF_Rect *TopRect = new PF_Rect, *BottomRect = new PF_Rect; + + PixelColorBlack->alpha = 0; + + ERR(suites.WorldTransformSuite1()->copy( in_data->effect_ref, + ¶ms[ASPECT_INPUT]->u.ld, + output, + NULL, + NULL)); + // Get the top rect. + CalculateRectSize( in_data, + out_data, + params, + output, + TopRect, + ASPECT_RATIO_RECT_TYPE_TOP); + + // Get the bottom rect. + CalculateRectSize( in_data, + out_data, + params, + output, + BottomRect, + ASPECT_RATIO_RECT_TYPE_BOTTOM); + + + // Top letterbox. + ERR(suites.FillMatteSuite1()->fill( in_data->effect_ref, + PixelColorBlack, + TopRect, + output)); + + // Bottom letterbox. + ERR(suites.FillMatteSuite1()->fill( in_data->effect_ref, + PixelColorBlack, + BottomRect, + output)); + + // Clean up memory. + delete PixelColorBlack; + delete TopRect; + delete BottomRect; + + return err; +} + +DllExport +PF_Err +EntryPointFunc ( + PF_Cmd cmd, + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output, + void *extra) +{ + PF_Err err = PF_Err_NONE; + + try { + switch (cmd) { + case PF_Cmd_ABOUT: + + err = About(in_data, + out_data, + params, + output); + break; + + case PF_Cmd_GLOBAL_SETUP: + + err = GlobalSetup( in_data, + out_data, + params, + output); + break; + + case PF_Cmd_PARAMS_SETUP: + + err = ParamsSetup( in_data, + out_data, + params, + output); + break; + + case PF_Cmd_DO_DIALOG: + + err = NewSizeDialog( in_data, + out_data, + params, + output); + break; + + case PF_Cmd_RENDER: + + err = Render( in_data, + out_data, + params, + output); + break; + + case PF_Cmd_USER_CHANGED_PARAM: + + err = HandleChangedParam( in_data, + out_data, + params, + output, + reinterpret_cast(extra)); + + break; + } + } + catch(PF_Err &thrown_err){ + err = thrown_err; + } + return err; +} diff --git a/Aspect_Ratio.h b/Aspect_Ratio.h new file mode 100644 index 0000000..55f4889 --- /dev/null +++ b/Aspect_Ratio.h @@ -0,0 +1,110 @@ +/* + * Aspect_Ratio.h + * + * Copyright (c) 2011 Kevin Cotugno. + * + * Created on 6/24/11. + */ + +#pragma once + +#ifndef ASPECT_RATIO_H +#define ASPECT_RATIO_H + +typedef unsigned char u_char; +typedef unsigned short u_short; +typedef unsigned short u_int16; +typedef unsigned long u_long; +typedef short int int16; + +#define PF_TABLE_BITS 12 +#define PF_TABLE_SZ_16 4096 + +#include "AEConfig.h" + +#ifdef AE_OS_WIN + typedef unsigned short PixelType; + #include +#endif + +#include "entry.h" +#include "AE_Effect.h" +#include "AE_EffectCB.h" +#include "AE_Macros.h" +#include "Param_Utils.h" +#include "AE_EffectCBSuites.h" +#include "String_Utils.h" +#include "AE_GeneralPlug.h" +#include "AEFX_ChannelDepthTpl.h" +#include "AEGP_SuiteHandler.h" +#include "PF_Suite_Helper.h" + +#include "Aspect_Ratio_Strings.h" + +/* Versioning information */ + +#define MAJOR_VERSION 1 +#define MINOR_VERSION 0 +#define BUG_VERSION 0 +#define STAGE_VERSION PF_Stage_RELEASE +#define BUILD_VERSION 1 + + +enum +{ + ASPECT_RATIO_RECT_TYPE_TOP = 0, + ASPECT_RATIO_RECT_TYPE_BOTTOM +}; + + +/* Parameter defaults */ + +#define ASPECT_PRESET_NUM 5 +#define ASPECT_PRESET_DFLT 4 + +#define ASPECT_RATIO_AMOUT_MIN 1.0f +#define ASPECT_RATIO_AMOUT_MAX 5.0f +#define ASPECT_RATIO_AMOUT_DFLT 2.40f +#define ASPECT_RATIO_AMOUT_PREC 2 + + +enum { + ASPECT_INPUT = 0, + ASPECT_PRESET, + ASPECT_AMOUNT, + ASPECT_NUM_PARAMS +}; + +enum { + ASPECT_PRESET_ID = 1, + ASPECT_AMOUNT_ID +}; + +enum { + ASPECT_PRESET_178 = 1, + ASPECT_PRESET_185, + ASPECT_PRESET_239, + ASPECT_PRESET_240, + ASPECT_PRESET_255, + ASPECT_PRESET_CUSTOM +}; + + +#ifdef __cplusplus + extern "C" { +#endif + +DllExport PF_Err +EntryPointFunc( + PF_Cmd cmd, + PF_InData *in_data, + PF_OutData *out_data, + PF_ParamDef *params[], + PF_LayerDef *output, + void *extra) ; + +#ifdef __cplusplus +} +#endif + +#endif // ASPECT_RATIO_H \ No newline at end of file diff --git a/Aspect_RatioPiPL.r b/Aspect_RatioPiPL.r new file mode 100644 index 0000000..7e8dfc5 --- /dev/null +++ b/Aspect_RatioPiPL.r @@ -0,0 +1,65 @@ +#include "AEConfig.h" + +#ifndef AE_OS_WIN + #include +#endif + +resource 'PiPL' (16000) { + { /* array properties: 12 elements */ + /* [1] */ + Kind { + AEEffect + }, + /* [2] */ + Name { + "Aspect Ratio" + }, + /* [3] */ + Category { + "Kevin Cotugno" + }, +#ifdef AE_OS_WIN + CodeWin32X86 {"EntryPointFunc"}, +#else + #ifdef AE_OS_MAC + CodeMachOPowerPC {"EntryPointFunc"}, + CodeMacIntel32 {"EntryPointFunc"}, + #endif +#endif + /* [6] */ + AE_PiPL_Version { + 2, + 0 + }, + /* [7] */ + AE_Effect_Spec_Version { + 12, + 12 + }, + /* [8] */ + AE_Effect_Version { + 525825 /* 1.1 */ + }, + /* [9] */ + AE_Effect_Info_Flags { + 0 + }, + /* [10] */ + AE_Effect_Global_OutFlags { + 96 + + }, + AE_Effect_Global_OutFlags_2 { + 0x00000000 + }, + /* [11] */ + AE_Effect_Match_Name { + "ADBE Aspect_Ratio" + }, + /* [12] */ + AE_Reserved_Info { + 0 + } + } +}; + diff --git a/Aspect_Ratio_Strings.cpp b/Aspect_Ratio_Strings.cpp new file mode 100644 index 0000000..4fc372c --- /dev/null +++ b/Aspect_Ratio_Strings.cpp @@ -0,0 +1,40 @@ +/* + * Aspect_Ratio_Strings.cpp + * + * Copyright (c) 2011 Kevin Cotugno. + * + * Created on 6/24/11. + */ +#include "Aspect_Ratio.h" + +typedef struct { + unsigned long index; + char str[256]; +} TableString; + + + +TableString g_strs[StrID_NUMTYPES] = { + StrID_NONE, "", + StrID_Name, "Aspect Ratio", + StrID_Description, "Adjust the aspect ratio of the image by creating a letterbox over the image.\r\rCopyright (c) 2011 Kevin Cotugno.", + StrID_MoreInfo, "en.wikipedia.org/wiki/Aspect_ratio_(image)", + StrID_NewHight, "New Height", + StrID_NewHight_Description, "The new comp height is", + StrID_Aspcet_Preset_Name, "Presets", + StrID_Aspect_Preset_Choices, "(1.78:1 or 16x9) Standard widescreen ratio of HDTV's.|" + "(1.85:1) 35mm widescreen for theatrical films.|" + "(2.39:1) 35mm anamorphic for theatrical films.|" + "(2.40:1) 2.39 films converted for disc.|" + "(2.55:1) Orignal aspect ratio of CinemaScope.|" + "Custom", + StrID_Aspect_Amount_Param_Name, "Aspect Ratio", + StrID_Err_LoadSuite, "Error loading suite.", + StrID_Err_FreeSuite, "Error releasing suite.", +}; + + +char *GetStringPtr(int strNum) +{ + return g_strs[strNum].str; +} diff --git a/Aspect_Ratio_Strings.h b/Aspect_Ratio_Strings.h new file mode 100644 index 0000000..9c4e76f --- /dev/null +++ b/Aspect_Ratio_Strings.h @@ -0,0 +1,23 @@ +/* + * Aspect_Ratio_Strings.h + * + * Copyright (c) 2011 Kevin Cotugno. + * + * Created on 6/24/11. + */ +#pragma once + +typedef enum { + StrID_NONE, + StrID_Name, + StrID_Description, + StrID_MoreInfo, + StrID_NewHight, + StrID_NewHight_Description, + StrID_Aspcet_Preset_Name, + StrID_Aspect_Preset_Choices, + StrID_Aspect_Amount_Param_Name, + StrID_Err_LoadSuite, + StrID_Err_FreeSuite, + StrID_NUMTYPES +} StrIDType; diff --git a/win/Aspect_Ratio.sln b/win/Aspect_Ratio.sln new file mode 100644 index 0000000..d4b6018 --- /dev/null +++ b/win/Aspect_Ratio.sln @@ -0,0 +1,27 @@ +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual C++ Express 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Aspect_Ratio", "Aspect_Ratio.vcxproj", "{2C8DED3E-111D-4272-A54A-F1865F02A90E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2C8DED3E-111D-4272-A54A-F1865F02A90E}.Debug|Win32.ActiveCfg = Debug|Win32 + {2C8DED3E-111D-4272-A54A-F1865F02A90E}.Debug|Win32.Build.0 = Debug|Win32 + {2C8DED3E-111D-4272-A54A-F1865F02A90E}.Release|Win32.ActiveCfg = Release|Win32 + {2C8DED3E-111D-4272-A54A-F1865F02A90E}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(SourceCodeControl) = preSolution + SccNumberOfProjects = 1 + SccProjectUniqueName0 = Skeleton.vcproj + SccProjectName0 = Perforce\u0020Project + SccLocalPath0 = . + SccProvider0 = MSSCCI:Perforce\u0020SCM + CanCheckoutShared = true + EndGlobalSection +EndGlobal diff --git a/win/Aspect_Ratio.vcxproj b/win/Aspect_Ratio.vcxproj new file mode 100644 index 0000000..293fcfb --- /dev/null +++ b/win/Aspect_Ratio.vcxproj @@ -0,0 +1,286 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {2C8DED3E-111D-4272-A54A-F1865F02A90E} + Aspect_Ratio + Aspect_Ratio + + + + DynamicLibrary + false + + + DynamicLibrary + false + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + .\Debug\ + .\Release\ + .\Debug\ + .\Release\ + true + true + true + true + + + .aex + ..aex + + + + _DEBUG;%(PreprocessorDefinitions) + true + true + Win32 + .\Debug/Skeleton.tlb + + + + + Disabled + ..\..\..\Headers\SP;..\..\..\Headers\Legacy;..\..\..\Headers\AS;..\..\..\Headers\ADM;..\..\..\Resources;..\..\..\Util;..\..\..\Headers;%(AdditionalIncludeDirectories) + MSWindows;WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + 4Bytes + true + + + AE_Effect.h + .\Debug/Aspect_Ratio.pch + AssemblyAndSourceCode + .\Debug/ + .\Debug/ + .\Debug/ + true + Level3 + true + true + EditAndContinue + Default + + + _DEBUG;%(PreprocessorDefinitions) + 0x0409 + + + NotSet + $(AE_PLUGIN_BUILD_DIR)\Aspect_Ratio_Debug.aex + true + true + .\Debug/Aspect_Ratio.pdb + Windows + .\Debug/Aspect_Ratio.lib + MachineX86 + + + + + + + + + _DEBUG;%(PreprocessorDefinitions) + true + true + Win32 + .\Debug/Skeleton.tlb + + + + + MaxSpeed + ..\..\..\Headers\SP;..\..\..\Headers\Legacy;..\..\..\Headers\AS;..\..\..\Headers\ADM;..\..\..\Resources;..\..\..\Util;..\..\..\Headers;%(AdditionalIncludeDirectories) + MSWindows;WIN32;_WINDOWS;%(PreprocessorDefinitions) + MultiThreadedDLL + 4Bytes + true + + + AE_Effect.h + .\Release/Aspect_Ratio.pch + AssemblyAndSourceCode + .\Release/ + .\Release/ + .\Release/ + true + Level3 + true + true + + + Default + + + %(PreprocessorDefinitions) + 0x0409 + + + NotSet + $(AE_PLUGIN_BUILD_DIR)\Aspect_Ratio.aex + true + false + .\Release/Aspect_Ratio.pdb + Windows + .\Release/Aspect_Ratio.lib + MachineX86 + + + $(OutDir)$(TargetName).xml + + + + + Compiling the PiPL + Compiling the PiPL + cl /I "$(ProjectDir)..\..\..\Headers" /EP ".."\\"%(Filename).r" > "$(IntDir)"\\"%(Filename).rr" +"$(ProjectDir)..\..\..\Resources\PiPLTool" "$(IntDir)%(Filename).rr" "$(IntDir)%(Filename).rrc" +cl /D "MSWindows" /EP $(IntDir)%(Filename).rrc > "$(ProjectDir)"\\"%(Filename)".rc + + cl /I "$(ProjectDir)..\..\..\Headers" /EP ".."\\"%(Filename).r" > "$(IntDir)"\\"%(Filename).rr" +"$(ProjectDir)..\..\..\Resources\PiPLTool" "$(IntDir)%(Filename).rr" "$(IntDir)%(Filename).rrc" +cl /D "MSWindows" /EP $(IntDir)%(Filename).rrc > "$(ProjectDir)"\\"%(Filename)".rc + + $(ProjectDir)%(Filename).rc;%(Outputs) + $(ProjectDir)%(Filename).rc;%(Outputs) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Disabled + Disabled + %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) + MSWindows;WIN32;_DEBUG;_WINDOWS + MSWindows;WIN32;_DEBUG;_WINDOWS + true + true + + + + + Disabled + Disabled + %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) + MSWindows;WIN32;_DEBUG;_WINDOWS + MSWindows;WIN32;_WINDOWS + true + true + + + Disabled + MaxSpeed + %(AdditionalIncludeDirectories) + %(AdditionalIncludeDirectories) + MSWindows;WIN32;_DEBUG;_WINDOWS + MSWindows;WIN32;_WINDOWS + true + true + + + + + + \ No newline at end of file diff --git a/win/Aspect_Ratio.vcxproj.filters b/win/Aspect_Ratio.vcxproj.filters new file mode 100644 index 0000000..d9e6b0e --- /dev/null +++ b/win/Aspect_Ratio.vcxproj.filters @@ -0,0 +1,270 @@ + + + + + {91cc751c-45fa-42ac-84fb-f20843d4b8a4} + ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe + + + {a346e382-fd7f-4ae2-b0b1-5afa43d15faf} + + + {94d99486-fea0-4fc9-9056-c29ab08e8a5b} + + + {9308ecb1-c04c-48ef-8383-69aecfcc64aa} + + + {47b6acbe-64e4-41cc-b483-86b68197efa8} + + + {de703937-fcc4-4083-b352-13e57032e967} + + + {5bc169d4-3f74-4fbb-9224-d82d818e56d0} + + + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\ADM + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\AE\PICA + + + Headers\Windows + + + Headers\Windows + + + Headers + + + Headers + + + Headers + + + + + Supporting code + + + Supporting code + + + + Supporting code + + + Supporting code + + + + + Resources + + + + + Resources + + + \ No newline at end of file diff --git a/win/Aspect_RatioPiPL.rc b/win/Aspect_RatioPiPL.rc new file mode 100644 index 0000000..10d0002 --- /dev/null +++ b/win/Aspect_RatioPiPL.rc @@ -0,0 +1,84 @@ + + + + +16000 PiPL DISCARDABLE +BEGIN + 0x0001, + 0, 0x0, + 12, 0x0, + "MIB8", + "dnik", + 0, 0x0, + 4, 0x0, + "TKFe", + + "MIB8", + "eman", + 0, 0x0, + 16, 0x0, + "\x0CAspect Ratio\0\0\0", + + "MIB8", + "gtac", + 0, 0x0, + 16, 0x0, + "\x0DKevin Cotugno\0\0", + + "MIB8", + "68xw", + 0, 0x0, + 16, 0x0, + "EntryPointFunc\0\0", + + "MIB8", + "RVPe", + 0, 0x0, + 4, 0x0, + 2, 0, + + "MIB8", + "RVSe", + 0, 0x0, + 4, 0x0, + 12, 12, + + "MIB8", + 0x65564552L, + 0L, + 4L + 525825L, + + "MIB8", + 0x65494E46L, + 0L, + 2L + 0L, + + "MIB8", + "OLGe", + 0L, + 4L, + 96L, + + "MIB8", + "2LGe", + 0L, + 4L, + 0L, + + "MIB8", + "ANMe", + 0, 0x0, + 20, 0x0, + "\x11ADBE Aspect_Ratio\0\0", + + "MIB8", + 0x6165464CL, + 0L, + 4L + 0L, + + +END +