Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 15 additions & 7 deletions avs_core/include/avisynth.h
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@

#include "avs/config.h"
#include "avs/capi.h"
#include "avs/cpuid.h"
#include "avs/types.h"

#ifdef AVS_POSIX
Expand Down Expand Up @@ -165,7 +166,17 @@ enum AvsVersion {
#define _ASSERT(x) assert(x)
#endif

#if defined(BUILDING_AVSCORE) || defined(AVS_STATIC_LIB)
# ifndef offsetof
# include <stddef.h>
# endif
#endif

// Use C-style linkage on Windows if targetting any CPU architecture
// other than legacy x86
#if defined(AVS_WINDOWS) && !defined(AVS_WINDOWS_X86)
extern "C" {
#endif

// I had problems with Premiere wanting 1-byte alignment for its structures,
// so I now set the Avisynth struct alignment explicitly here.
Expand Down Expand Up @@ -510,10 +521,6 @@ extern __declspec(dllimport) const AVS_Linkage* const AVS_linkage;
extern const AVS_Linkage* AVS_linkage;
# endif

# ifndef offsetof
# include <stddef.h>
# endif

# define AVS_BakedCode(arg) { arg ; }
# define AVS_LinkCall(arg) !AVS_linkage || offsetof(AVS_Linkage, arg) >= (size_t)AVS_linkage->Size ? 0 : (this->*(AVS_linkage->arg))
# define AVS_LinkCall_Void(arg) !AVS_linkage || offsetof(AVS_Linkage, arg) >= (size_t)AVS_linkage->Size ? (void)0 : (this->*(AVS_linkage->arg))
Expand Down Expand Up @@ -1525,8 +1532,6 @@ class PFunction
#undef AVS_BakedCode


#include "avs/cpuid.h"

// IScriptEnvironment GetEnvProperty
enum AvsEnvProperty {
AEP_PHYSICAL_CPUS = 1,
Expand Down Expand Up @@ -2045,7 +2050,6 @@ AVSC_API(IScriptEnvironment*, CreateScriptEnvironment)(int version = AVISYNTH_IN
#define VARNAME_Enable_PlanarToPackedRGB "OPT_Enable_PlanarToPackedRGB" // AVS+ convert Planar RGB to packed RGB (VfW)

// C exports
#include "avs/capi.h"
AVSC_API(IScriptEnvironment2*, CreateScriptEnvironment2)(int version = AVISYNTH_INTERFACE_VERSION);

#ifndef BUILDING_AVSCORE
Expand All @@ -2054,4 +2058,8 @@ AVSC_API(IScriptEnvironment2*, CreateScriptEnvironment2)(int version = AVISYNTH_

#pragma pack(pop)

#if defined(AVS_WINDOWS) && !defined(AVS_WINDOWS_X86)
}
#endif // extern "C"

#endif //__AVISYNTH_12_H__