summaryrefslogtreecommitdiff
path: root/src/libnml/buffer/phantom.cc
blob: cf83b5448fc80188e5ac66f7d0f8331250647f4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/********************************************************************
* Description: phantom.cc
*
*   Derived from a work by Fred Proctor & Will Shackleford
*
* Author:
* License: LGPL Version 2
* System: Linux
*    
* Copyright (c) 2004 All rights reserved.
*
* Last change: 
********************************************************************/

#include "cms.hh"		/* enum CMS_STATUS */
#include "phantom.hh"		/* class PHANTOMMEM */

PHANTOMMEM::PHANTOMMEM(const char *bufline, const char *procline):CMS(bufline, procline)
{
}

PHANTOMMEM::~PHANTOMMEM()
{
}

CMS_STATUS PHANTOMMEM::main_access(void *_local)
{
    switch (internal_access_type) {
    case CMS_READ_ACCESS:
    case CMS_PEEK_ACCESS:
	return (status = CMS_READ_OLD);
    case CMS_WRITE_ACCESS:
    case CMS_WRITE_IF_READ_ACCESS:
	return (status = CMS_WRITE_OK);
    case CMS_CHECK_IF_READ_ACCESS:
    case CMS_CLEAR_ACCESS:
    case CMS_ZERO_ACCESS:
	header.was_read = 0;
	return (status);
    default:
	break;
    }
    return (status);
}