summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorsletz <sletz@0c269be4-1314-0410-8aa9-9f06e86f4224>2011-10-28 09:33:24 +0000
committersletz <sletz@0c269be4-1314-0410-8aa9-9f06e86f4224>2011-10-28 09:33:24 +0000
commit1e00bb344851fade98dfb9fa5313dd9c8d87ad82 (patch)
tree06fa4353b6fbf7c10456c17be6b98dc43cfc92cc /common
parent370f0419d4d04394c535aaff8a89cca59b6e52c1 (diff)
downloadjack2-1e00bb344851fade98dfb9fa5313dd9c8d87ad82.tar.gz
John Emmas POST_PACKED_STRUCTURE patch.
git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@4555 0c269be4-1314-0410-8aa9-9f06e86f4224
Diffstat (limited to 'common')
-rw-r--r--common/JackActivationCount.h1
-rw-r--r--common/JackAtomicArrayState.h3
-rw-r--r--common/JackAtomicState.h2
-rw-r--r--common/JackClientControl.h1
-rw-r--r--common/JackConnectionManager.h6
-rw-r--r--common/JackEngineControl.h1
-rw-r--r--common/JackEngineProfiling.h4
-rw-r--r--common/JackFilters.h5
-rw-r--r--common/JackFrameTimer.h2
-rw-r--r--common/JackGraphManager.h1
-rw-r--r--common/JackPort.h1
-rw-r--r--common/JackTransportEngine.h1
-rw-r--r--common/shm.h7
13 files changed, 32 insertions, 3 deletions
diff --git a/common/JackActivationCount.h b/common/JackActivationCount.h
index 8a22bc67..7efc031c 100644
--- a/common/JackActivationCount.h
+++ b/common/JackActivationCount.h
@@ -33,6 +33,7 @@ struct JackClientControl;
\brief Client activation counter.
*/
+PRE_PACKED_STRUCTURE
class JackActivationCount
{
diff --git a/common/JackAtomicArrayState.h b/common/JackAtomicArrayState.h
index 177158da..a2c0139d 100644
--- a/common/JackAtomicArrayState.h
+++ b/common/JackAtomicArrayState.h
@@ -30,7 +30,7 @@ namespace Jack
/*!
\brief Counter for CAS
*/
-
+PRE_PACKED_STRUCTURE
struct AtomicArrayCounter
{
union {
@@ -109,6 +109,7 @@ Requirement:
// CHECK livelock
+PRE_PACKED_STRUCTURE
template <class T>
class JackAtomicArrayState
{
diff --git a/common/JackAtomicState.h b/common/JackAtomicState.h
index eaf164ee..1eef4e11 100644
--- a/common/JackAtomicState.h
+++ b/common/JackAtomicState.h
@@ -31,6 +31,7 @@ namespace Jack
\brief Counter for CAS
*/
+PRE_PACKED_STRUCTURE
struct AtomicCounter
{
union {
@@ -84,6 +85,7 @@ struct AtomicCounter
// CHECK livelock
+PRE_PACKED_STRUCTURE
template <class T>
class JackAtomicState
{
diff --git a/common/JackClientControl.h b/common/JackClientControl.h
index d035ccd0..925f09dd 100644
--- a/common/JackClientControl.h
+++ b/common/JackClientControl.h
@@ -34,6 +34,7 @@ namespace Jack
\brief Client control possibly in shared memory.
*/
+PRE_PACKED_STRUCTURE
struct JackClientControl : public JackShmMemAble
{
char fName[JACK_CLIENT_NAME_SIZE + 1];
diff --git a/common/JackConnectionManager.h b/common/JackConnectionManager.h
index 804ffcc3..5041557a 100644
--- a/common/JackConnectionManager.h
+++ b/common/JackConnectionManager.h
@@ -36,6 +36,7 @@ struct JackClientControl;
\brief Utility class.
*/
+PRE_PACKED_STRUCTURE
template <int SIZE>
class JackFixedArray
{
@@ -122,6 +123,7 @@ class JackFixedArray
\brief Utility class.
*/
+PRE_PACKED_STRUCTURE
template <int SIZE>
class JackFixedArray1 : public JackFixedArray<SIZE>
{
@@ -158,6 +160,7 @@ class JackFixedArray1 : public JackFixedArray<SIZE>
\brief Utility class.
*/
+PRE_PACKED_STRUCTURE
template <int SIZE>
class JackFixedMatrix
{
@@ -253,6 +256,7 @@ class JackFixedMatrix
\brief Utility class.
*/
+PRE_PACKED_STRUCTURE
template <int SIZE>
class JackLoopFeedback
{
@@ -366,6 +370,7 @@ class JackLoopFeedback
\brief For client timing measurements.
*/
+PRE_PACKED_STRUCTURE
struct JackClientTiming
{
jack_time_t fSignaledAt;
@@ -402,6 +407,7 @@ struct JackClientTiming
</UL>
*/
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackConnectionManager
{
diff --git a/common/JackEngineControl.h b/common/JackEngineControl.h
index 412ade55..32445958 100644
--- a/common/JackEngineControl.h
+++ b/common/JackEngineControl.h
@@ -45,6 +45,7 @@ class JackGraphManager;
\brief Engine control in shared memory.
*/
+PRE_PACKED_STRUCTURE
struct SERVER_EXPORT JackEngineControl : public JackShmMem
{
// Shared state
diff --git a/common/JackEngineProfiling.h b/common/JackEngineProfiling.h
index c06487a0..04fdb953 100644
--- a/common/JackEngineProfiling.h
+++ b/common/JackEngineProfiling.h
@@ -37,6 +37,7 @@ namespace Jack
\brief Timing stucture for a client.
*/
+PRE_PACKED_STRUCTURE
struct JackTimingMeasureClient
{
int fRefNum;
@@ -59,6 +60,7 @@ struct JackTimingMeasureClient
\brief Timing interval in the global table for a given client
*/
+PRE_PACKED_STRUCTURE
struct JackTimingClientInterval
{
int fRefNum;
@@ -78,6 +80,7 @@ struct JackTimingClientInterval
\brief Timing stucture for a table of clients.
*/
+PRE_PACKED_STRUCTURE
struct JackTimingMeasure
{
unsigned int fAudioCycle;
@@ -102,6 +105,7 @@ struct JackTimingMeasure
class JackClientInterface;
class JackGraphManager;
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackEngineProfiling
{
diff --git a/common/JackFilters.h b/common/JackFilters.h
index 23980900..6b5f0d32 100644
--- a/common/JackFilters.h
+++ b/common/JackFilters.h
@@ -38,7 +38,8 @@ namespace Jack
#define MAX_SIZE 64
- struct JackFilter
+ PRE_PACKED_STRUCTURE
+ struct JackFilter
{
jack_time_t fTable[MAX_SIZE];
@@ -65,6 +66,7 @@ namespace Jack
} POST_PACKED_STRUCTURE;
+ PRE_PACKED_STRUCTURE
class JackDelayLockedLoop
{
@@ -147,6 +149,7 @@ namespace Jack
} POST_PACKED_STRUCTURE;
+ PRE_PACKED_STRUCTURE
class JackAtomicDelayLockedLoop : public JackAtomicState<JackDelayLockedLoop>
{
public:
diff --git a/common/JackFrameTimer.h b/common/JackFrameTimer.h
index afac2f78..3ab3e153 100644
--- a/common/JackFrameTimer.h
+++ b/common/JackFrameTimer.h
@@ -32,6 +32,7 @@ namespace Jack
\brief A structure used for time management.
*/
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackTimer
{
@@ -73,6 +74,7 @@ class SERVER_EXPORT JackTimer
\brief A class using the JackAtomicState to manage jack time.
*/
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackFrameTimer : public JackAtomicState<JackTimer>
{
diff --git a/common/JackGraphManager.h b/common/JackGraphManager.h
index c208741b..65abcbf2 100644
--- a/common/JackGraphManager.h
+++ b/common/JackGraphManager.h
@@ -36,6 +36,7 @@ namespace Jack
\brief Graph manager: contains the connection manager and the port array.
*/
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackGraphManager : public JackShmMem, public JackAtomicState<JackConnectionManager>
{
diff --git a/common/JackPort.h b/common/JackPort.h
index 88edf1ba..db09f36f 100644
--- a/common/JackPort.h
+++ b/common/JackPort.h
@@ -35,6 +35,7 @@ namespace Jack
\brief Base class for port.
*/
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackPort
{
diff --git a/common/JackTransportEngine.h b/common/JackTransportEngine.h
index 882dad67..b6a4ddcf 100644
--- a/common/JackTransportEngine.h
+++ b/common/JackTransportEngine.h
@@ -89,6 +89,7 @@ We have:
class JackClientInterface;
+PRE_PACKED_STRUCTURE
class SERVER_EXPORT JackTransportEngine : public JackAtomicArrayState<jack_position_t>
{
diff --git a/common/shm.h b/common/shm.h
index a0cf9bb9..2a6d6096 100644
--- a/common/shm.h
+++ b/common/shm.h
@@ -116,6 +116,7 @@ extern "C"
* attached to the address space.
*/
+ PRE_PACKED_STRUCTURE
typedef struct _jack_shm_info {
jack_shm_registry_index_t index; /* offset into the registry */
uint32_t size;
@@ -124,9 +125,13 @@ extern "C"
char ptr_size[8];
} ptr; /* a "pointer" that has the same 8 bytes size when compling in 32 or 64 bits */
}
+#ifdef _MSC_VER
+ jack_shm_info_t; POST_PACKED_STRUCTURE
+#else
POST_PACKED_STRUCTURE jack_shm_info_t;
+#endif
- /* utility functions used only within JACK */
+ /* utility functions used only within JACK */
void jack_shm_copy_from_registry (jack_shm_info_t*,
jack_shm_registry_index_t);